Python
機械学習
MachineLearning
TensorFlow
colaboratory

2018年版もっとも参考になった機械学習系記事ベスト10

こんにちは

NewsPicks Advent Calendar 2018の 5日目を担当させていただきます、NewsPicks の戸辺と申します。

2年ほど前に「機械学習をゼロから1ヵ月間勉強し続けた結果」という記事を書き、多くの方に読んでいただきました。そこから引き続き機械学習に携わっており、今年も多くの機械学習系の記事を拝読させていただきました。それら中から「実戦でためになった」「機械学習の勉強に役に立った」という観点から、僕なりのベスト10をあげてみました。

長い冬休み(余談ですが、社会人で一番長く休めるときですよね!?)は知識のアップデートをするのにいい機会だと思いますので、まとめ読みしてみてはいかがでしょうか。

では、スタート!

まずは 2018年にみんなが使った Colaboratory 関連から

1位: 【スマホOK/実行しながら学ぶ】東大松尾研のデータサイエンティスト育成/ Deep Learning基礎講座を自習する
2位: 【秒速で無料GPUを使う】深層学習実践Tips on Colaboratory

1位と2位はセットで読むと良い、ともに @tomo_makes さんの記事です。2018年現在、手を動かしながら Deep Learning を学ぶなら、東大松尾研のデータサイエンティスト育成講座 / Deep Learning基礎講座 のセットが最強でしょう。それらを効率良く学習するためのガイドとして、1位の記事は完璧といっていいと思います。また、記事末尾にリファレンスが揃っているのもとても助かりました。そのリファレンスにもでてくる、Colaboratory のガイド記事も2位に入れさせていただきました。1位の記事とセットで読むと学習が捗るだけでなく、2位の記事単体でも、結構ハマりどころのある Colaboratory を、ハマらずに使える Tips が揃っていてとても有用でした。2018年は Colaboratory に触れた方も多いと思います。触れた方もそうでないかたも、もう一度触れてみましょう。冬の遊び道具に困らないこと請け合いです。

続いて学習系

3位: [Kaggle]0から本当に機械学習を理解するために学ぶべきこと~一流のデータサイエンティストを例に~

突然ですが、機械学習エンジニアになるための高速道路は以下の3つだと思っています。
1. Coursera の Machine Learning のコース
2. 東大松尾研のデータサイエンティスト育成講座 / Deep Learning基礎講座
3. Kaggle でさらに手を動かす

この3位の記事は、学習の最後の仕上げ、もしくは継続した学習の場である Kaggle を通じて機械学習を学ぶための入り口となります。3部作なので全部読むことをおすすめしますが、ここでは1本目を3位として取り上げさせていただきました。

4位: コピペから脱却して自由に Deep Learning するための TensorFlow 再入門

TensorFlow 限定の話なので、読者対象を選んでしまうかもしれませんが、TensorFlow をしっかりと理解して使えるようになるためには、とても有用な内容となっていました。最初に記事の構成や対象読者を明記してくれているところなど、読み手にわかりやすく伝える配慮が感じられるところもとてもよかったです。TensorFlow に関してはかなりプリミティブなところから、実際に手を動かすところまで、しっかりと理解できる内容となっています。TensorFlow を使う方必見です。

実践系

5位: データ分析で頻出のPandas基本操作

個人的に地味に良かったのがこちら。厳密には機械学習系記事ではないのですが、機械学習をやる場合避けては通れない前処理で、Pandas を使うことは相当多いと思われます。Pandas は機能が多いので「感覚的にこれはPandasでできるはず!」とか思いながらドキュメントとにらめっこすることになると思います。こちらの記事はその時間をぐっと短縮してくれたので、有用性という意味ではピカイチだったのではないかと思います。後述のリファレンス系に入れようかなと迷いましたが、実践時に参照することが多かったのでこちらで紹介しました。

6位: 畳み込みニューラルネットワークすごさを従来の機械学習のアルゴリズムと比較する

記事の厚さがすごいです。画像認識というタスクに対して、従来の機械学習的手法とCNNとをそれぞれ使って実装してみて、その精度を比較してくれています。それぞれの手法に対してすべて実装コードがあり、この記事を書くのにかけた時間もうかがえます。また、それらの実装コード自体がとても参考になるので、この1記事だけでかなり多くのことが得られる、学びの多い実践系記事でした。

リファレンス系

7位: 【保存版・初心者向け】独学でAIエンジニアになりたい人向けのオススメの勉強方法
8位: ディープラーニングに入門するためのリソース集と学習法(2018年版)

それぞれの記事タイトルにも入っている通り「2018年現在の保存版」といい切ってよい、機械学習の勉強のためのリファレンス集です。前述の学習、実践を通じてわからないことがあれば、この2記事で紹介されているいずれかのリソースをあたれば、必ず解決することと思われます。

番外編

9位: 大井競馬で帝王賞を機械学習で当てた話

夢がありますね。個人的にはポーカー、競艇、totoなどをやったりするので、こういう取り組みはとても共感できますwコンピューターでなんとか当てたいものですよね。実際には、日本の公営ギャンブルは控除率が高すぎるので期待値をプラスにするのはほぼ無理だろうと思われます。簡単に言うと、ランダムに買うよりはいい成績を残せるけど、胴元に勝ち切ることはできないということです。

あと、老婆心ながら、せっかく softmax で勝率がでているなら、1位になる馬を買うのではなく、勝率 x オッズが最大になるものを買うほうが良いと思います。ギャンブルで多くの人がやりやすい間違いですが「最も1位になりそうなものを買う」というのは間違いで「実際の勝率とオッズ(みんなの期待値)の乖離が大きいものを買う」というのが正しいです。

具体例でいうと、70%の確率で1位になる馬のオッズが1.4(期待値0.98)で、20%の確率で1位になる馬のオッズが5.5(期待値1.1)なら、後者の馬を買うべきということです。ギャンブルの話だと思わず熱くなってしまいます。すみませんw

10位: ガチ素人が1ヶ月でディープラーニングのジェネラリストになった話

どちらかというとリファレンス系ですがディープラーニングジェネラリストになるために特化した内容だったので番外編として載せました。他の記事と少し毛色が違いますが、これを読んで、僕も受けてみようかなと思えたし、受かりそうだなと思えたので、10位にランクインさせていただきました。

ランキングまとめ(再掲)

今年は機械学習の勉強という観点では、 Colaboratory と松尾研の講座の充実っぷりが目立ちました。機械学習は、盛り上がり始めたのが2015〜2016あたりなので入門記事などは、その頃にでているものがいまだに一番よい気がしますが、学習環境としては、2018 はさらに充実してきたという感覚があります。

それでは最後にランキングを再掲します。

1位: 【スマホOK/実行しながら学ぶ】東大松尾研のデータサイエンティスト育成/ Deep Learning基礎講座を自習する
2位: 【秒速で無料GPUを使う】深層学習実践Tips on Colaboratory
3位: [Kaggle]0から本当に機械学習を理解するために学ぶべきこと~一流のデータサイエンティストを例に~
4位: コピペから脱却して自由に Deep Learning するための TensorFlow 再入門
5位: データ分析で頻出のPandas基本操作
6位: 畳み込みニューラルネットワークすごさを従来の機械学習のアルゴリズムと比較する
7位: 【保存版・初心者向け】独学でAIエンジニアになりたい人向けのオススメの勉強方法
8位: ディープラーニングに入門するためのリソース集と学習法(2018年版)
9位: 大井競馬で帝王賞を機械学習で当てた話
10位: ガチ素人が1ヶ月でディープラーニングのジェネラリストになった話

最後に

NewsPicksは5年後、世界で最も影響力のある経済メディアになるという目標を実現するための仲間を募集しています。他の Advent calendar の記事もご覧いただけると、NewsPicksの事業領域、社風、カルチャーなどもわかると思います。そこに興味をお持ちいただいた方はぜひご連絡ください。

AdventCalendarの明日(12/6)の担当はNewsPicks アカデミアプロダクトオーナーの大日田です。プロダクトマネジメントの話を書いてくれる予定です。お楽しみに!

追記

NewsPicks Advent Calendar 2018 の 6日目、書けたようです。
プロダクトマネージャーについて語るときに僕の語ること
超優秀なプロダクトマネージャーがいかにしてプロダクトマネージャーになったか。
面白く、深く、かつ軽く読めるので是非ご覧ください。