プログラマ脳を鍛える!エンジニアが読むべきアルゴリズムと数学の本

どんな言語でプログラムを書くにしても不可欠なアルゴリズムの知識。昨今のAIやIoTに代表される機械学習・ディープラーニングを支える数学。
エンジニア・プログラマーとしてスキルアップしていくために、これらの知識を深めてみませんか?
プログラミング脳の基礎となるアルゴリズムと数学をもう一度しっかり学び直したい方・これから学習する方、より良いコードを書くための閃きや知識を得たい方におすすめの書籍をご紹介します。
【こんな人におすすめ】
- アルゴリズム・機械学習の基礎を学びたい
- プログラマ脳・数学力を鍛えたい
- アルゴリズム理解に役立つ知識をインプットしたい
定番のアルゴリズム入門書
『アルゴリズム図鑑 増補改訂版 絵で見てわかる33のアルゴリズム』
『図解まるわかり アルゴリズムのしくみ』
『アルゴリズムの絵本 第2版 プログラミングが好きになる新しい9つの扉』
『おうちで学べるアルゴリズムのきほん』
あらゆるIT関係者、デジタルマーケターにもおすすめ!アルゴリズムの入門書
アルゴリズムの基本となる考え方や、開発&活用力(=問題解決力)、機械学習や深層学習など身近なテクノロジーへの活用例についてわかりやすく解説した入門書。
自宅のPCで実際に試しながら学習を進めていきます。ダウンロードサンプル付。プログラマだけでなく、Web制作者やIT企業の営業マン、デジタルマーケター、中高生でも楽しみながらアルゴリズムの知識を得ることができます。
『見て試してわかる機械学習アルゴリズムの仕組み 機械学習図鑑』
『なっとく!アルゴリズム 第2版』
プログラミングに効く頭の体操
『プログラミングとロジカルシンキングが一気にわかる本 アルゴリズムで論理の流れが見えてくる』
プログラミングとロジカルシンキングは同時にマスターできる
プログラミングは最適な手順を作り、自分の意図した通りシステムを動かせること。ロジカルシンキングは目的を達成するために物事の筋道を考えて、計画的に実行すること。両者の親和性は強いです。
論理的思考は、「なぜそうなるのか」→「どうしたらできるのか」→「どうやってやるのか」→「実施」→「結果どうだったか」というプロセスをたどりますが、プログラミングもこの流れで動いていきます。
本書では、こうしたプログラミングとロジカルシンキングの類似性を理解することで、一石二鳥でプログラミングを通してロジカルシンキングが簡単に身に付けられます。
『プログラマを育てる脳トレパズル 遊んでおぼえるPythonプログラミング&アルゴリズム』
『プログラマ脳を鍛える数学パズル シンプルで高速なコードが書けるようになる70問』
『もっとプログラマ脳を鍛える数学パズル アルゴリズムが脳にしみ込む70問』
『偉大な定理に迫る!理系脳を鍛える数学クイズ』
知識を深める
『なっとく!AIアルゴリズム』
実践的かつ具体的なサンプルで理解を促すディープラーニングとAIのコアアルゴリズム
機械学習やディープラーニングなど、大規模なデータをもとにした統計・分析をベースに、ユーザーへの利便性を図るよう進化を続けるAIは、はたしてどのようなアルゴリズムに則っているのか。
本書はAIを構成するアルゴリズムをエンジニア向けにイラストを多用してわかりやすく解説した1冊です。
『Pythonではじめるアルゴリズム入門 伝統的なアルゴリズムで学ぶ定石と計算量』
『Pythonで動かして学ぶ!あたらしい数学の教科書 第2版 機械学習・深層学習に必要な基礎知識』
『暗号技術のすべて』
『みんなの量子コンピュータ』
『戦略ゲームAI 解体新書 ストラテジー&シミュレーションゲームから学ぶ最先端アルゴリズム』
大学数学をもう一度学ぶ
『その理屈、証明できますか?【PDF版】』
『技術者のための基礎解析学 機械学習に必要な数学を本気で学ぶ』
『技術者のための線形代数学 大学の基礎数学を本気で学ぶ』
【シリーズ第二弾】線形代数学をもう一度学ぶ
理工系の大学生が学ぶ『線形代数学』を基礎から解説。実数ベクトルに限定して、「一次変換」「行列式」「固有値問題(行列の対角化)」といった定番の内容、そして、ベクトル空間の公理にもとづいた、より一般的なベクトル空間の性質を取り扱います。各章の最後には演習問題を用意。
お好みのノートと筆記用具を用意して、本書の説明と、数式にもとづいた論理展開をみなさんの「手と頭」で、ぜひ再現してみてください。「厳密な数学」の世界をあらためて振り返り、じっくりと味わえることでしょう。
『技術者のための確率統計学 大学の基礎数学を本気で学ぶ』
【シリーズ第三弾】確率統計学をもう一度学ぶ
理工系の大学生が学ぶ『確率統計学』を基礎から解説。「コンピューターの乱数によるシミュレーションで現実世界の不確定な現象を再現する」ことを確率モデルの目標とすることで、抽象的な確率空間が果たす役割を明確にするというアプローチを取っています。
確率空間の「仕組み」を理論的に理解することで、パラメトリック推定や仮説検定など、確率モデルを構成・検証する手続きについて、その役割をより明瞭に理解することができます。付録として、シリーズ三部作を総括した「機械学習への応用例」を収録。