こちらを読むと
- 機械学習初心者のための入門本が分かります。
- 私が今まで機械学習関連の本を15冊ほど読んだ中から選んでいます。
機械学習は非常に流行っており、本もたくさん出ています。
その分、初心者の方は何から読めばよいのか、路頭に迷うのではないでしょうか。私もそうでした。
この記事では、機械学習を学びたい初心者の方が、入門本として読めばよいのでは、と思う本のベスト3を紹介します!
評価基準
- 理論のわかりやすさ
- サンプルプログラムの充実度
- 実用性
第1位:ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装
評価基準 | 評価 |
---|---|
理論のわかりやすさ | |
サンプルプログラムの充実度 | |
実用性 |
言わずとしれた有名な本ですね。機械学習の中でもディープラーニングに特化して、文字通り”ゼロから”徹底的に解説されています。
通常 ディープラーニングのプログラムは、ライブラリを組み合わせて組んでいくのですが、この本ではフルスクラッチ(全て手書き)で書いていきます。
(numpyは使いますが)
この本のすごいところは、ディープラーニングの知識ゼロの状態で読み始めても、詰まることなく読めちゃうところですね。
本を頭から順番に読んでいったら、いつの間にか全部読めていた、という感じです。
逆に、悩むことなく疑問に思うこともなく読み進められるので、読み終わってから、何がやりたかったんだっけ?となってしまう危険性があります。
なので読んでいる途中は、この章は、こういうことがやりたいんだ、こういうことをゴールにしているんだ、というように各章の目的を意識しながら読み進めていくと良いと思います。
ただし最低限、機械学習とはどんなものか、ざっくりと理解してから取り組んだ方が良いと思います。
第2位:Pythonで動かして学ぶ! あたらしい機械学習の教科書
評価基準 | 評価 |
---|---|
理論のわかりやすさ | |
サンプルプログラムの充実度 | |
実用性 |
ゼロから作るDeepLearningがディープラーニングのフルスクラッチ本だとすると、こちらはディープラーニング以外のモデルのフルスクラッチ本です。
スクラッチのプログラムが充実しており、とにかく手を動かしてコードから理解したい、という方にはお薦めです。
本の冒頭には機械学習で使う数学の問題も書かれているので、機械学習の前提知識ゼロで取り組めると思います。
扱っているモデルとしては、以下のようなものがあります。
- 線形回帰
- ロジスティック回帰
- ディープラーニング
機械学習に欠かせない勾配降下法の説明は、この本が一番分かりやすかったです。
第3位:Pythonではじめる機械学習 ―scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎
評価基準 | 評価 |
---|---|
理論のわかりやすさ | |
サンプルプログラムの充実度 | |
実用性 |
機械学習の各ライブラリを実践的に使っていく本です。
カバーしている範囲がとにかく広く、教師あり学習、教師なし学習、データクレンジング、評価指標など多岐にわたります。
とにかく手を動かしてデータ分析をしてみたい人には、非常にお薦めです。
理論よりは実践にフォーカスされているため、モデルの理論について学習したい方は、上に紹介した2点の本を読むとよいと思います。
実践的なテクニックが盛りだくさんなため、kaggleの問題などに取り組む前に、一度こちらを読んでおくと良いと思います。
読む順番について
今回上げた本を読む順番について、個人的には以下の順番が良いのではないかと思います。
Pythonで動かして学ぶ! あたらしい機械学習の教科書
↓
ゼロから作るDeep Learning
↓
Pythonではじめる機械学習
1点目で機械学習の基本と理論を理解し、2点目でディープラーニングの理論を理解し、3点目で機械学習の実践的なスキルを磨いていく感じです!
まとめ
機械学習初心者のための、個人的入門本を紹介しました。
私と同じく、機械学習を勉強していきたい方は、ぜひ参考にしてもらえればと思います!