プログラミング初心者が機械学習を1ヶ月勉強し続ける #day14
今日の目標
昨日に引き続き、「pythonではじめる機械学習」を進めていきます。
14日目でやった事
pythonではじめる機械学習
かかった時間:11.5時間
難易度:★★★☆☆〜★★★★☆
第3章:教師なし学習と前処理
前処理、次元削減、PCA、K平均法はすでにcouseraで扱った項目で、schikit-learnでの実装方法が学べました。特微量の抽出なんかは主成分ベクトルが可視化されていて感覚的にわかりやすい解説でした。NMF、t-SNEは新たに学んだアルゴリズムでしたが、そんなものもあるのかという感じで、中身は結構ブラックボックスに感じました。クラスタリングの凝集型クラスタリング、DBSCANも初めて知りましたが、それぞれの仕組みはざっくりと理解できて、どのような場合に向いているかも知ることができました。
第4章:データの表現と特微量エンジニアリング
この章はcouseraでは学んでないことが多く出てきましたが、実際のデータをもとに解析をし始めてみないとイメージが掴みにくいかなと感じました。特微量エンジニアリングが必要になったタイミングでまた読み直したいと思います。
カテゴリ変数に関しては、実際のデータを扱う上ではかなり大事になってくる部分だと感じました。自動特微量選択は便利だと感じましたが、中身がかなりブラックボックスです。。
第5章:モデルの評価と改良
モデルの評価に関してcouseraよりもかなり深いレベルで学べました。交差検証やグリッドサーチを行う際にはscikit-leanにはとても便利なクラスが提供されており、それらを実際に実装できます。また、可視化することによってモデル評価をより効率的にできることもこの章での大きな学びでした。ただ、モデルの評価に関しては実際のデータで自分で試してみないと腹落ちして理解するのは難しいです。。
第6章:アルゴリズムチェーンとパイプライン
パイプラインはかなり有用なテクニックであり、活用できるとかなり効率的にコードを書けそうです。
第7章:テキストデータの処理
映画レビューのセンチメント分析を使って、どうやってテキストデータを処理していくかを学べます。精度をいかにして上げていくかという実践的な過程が見られてとても面白いです。couseraのスパムメール処理で用いられる内容も出てきます。
第8章:おわりに
深掘りするためには次はこんなことを勉強するといいよ、といったことが書かれています。
全体の感想
ゼロから作るディープラーニングと比べるとサイズも大きいし、なんとなく内容も難しそうだと感じていたのですが、アマゾンなどでも高評価なこともあって、日本語訳も読みやすく図を使った説明もわかりやすくて、かなり学びの多い本でした。
特にpythonでの具体的な実装方法がわかったので、この本を見ながらコードを書いていけば機械学習は実装できるなという感覚を掴めたのが大きかったです。ただもちろん一回読んだだけでは、自分のものにできるまで程遠く、この本を何度も見返しながら実装をしていきたいと思います。
各アルゴリズムの簡単な仕組みは書かれているのですが、理論の知識がゼロの状態だとそんなのもあるのか!って感じで理解が一段浅くなる気がします。couseraなどで一度機械学習の全体を学んだ後に、pythonでの実装方法を学ぶというポジションで読むのがしっくりきやすいではないかと感じました。
とてもオススメの本です〜。
明日に向けて
明日で折り返し地点になるので、今後あと半分何を勉強していくかを考えようと思います。明日は一旦休憩的なポジションでKaggleについて勉強します。「Kaggleで勝つデータ分析の技術」という本を読む予定です。