社会人になってからプログラミングを始め、Pythonを勉強してKaggle Expertになりました。
今回はそれまでに読んだ本を5冊紹介します。
なんとかメダルを取れたのは、平日も土日もPCに向かい続けたからだと思っています。
基礎知識さえ抑えたら、たぶんKaggle内の情報だけで銅メダルはとれます。
もしお金が惜しいなら、ネット記事で勉強してKaggleを始めれば十分です。
Pythonではじめる機械学習
勉強を始めたばかりの初心者ならこの本がいいと思います。
ただ、この本だけを読んでKaggleに挑戦すると浦島太郎状態になります。
紹介している技術が古く、最新のモデルには全く歯が立たないためです。
線形回帰やランダムフォレストなどを学べるので、第一歩としては十分です。
Kaggleには”Tabuler Playground Series”というメダル付与がない単純なコンペがあります。
そこでこの本の内容を試し、機械学習に慣れてみるといいかもしれません。
Kaggleで勝つデータ分析の技術
個人的には、今すぐKaggleに登録してコンペに参加するのが最短の勉強法だと思います。
そしてこの本を持っていれば、最低限必要な情報は抑えられるはずです。
ただこの本を読んでも、勝つというか、メダルを取ることはできません。
なぜなら、コンペ参加者はみんなこの本の内容を知った上で工夫しているからです。
もっと言えば、この本に書いてあることを実践したNotebookが公開されたりします。
むしろ本書の内容を知っていることがベースラインであるとも言えますね。
ちなみに、Kaggle系の本で新しいものがあるので、これもおすすめです。
画像や自然言語などディープラーニングについて解説されているので、
直近のコンペによくあてはまった内容になっています。
ゼロから作るDeep Learning
最近のKaggleコンペでの上位モデルは、
ほとんどがディープラーニング(ニューラルネット)を使っています。
本ブログでは、初心者向けのモデルとしてXGBoostやLightGBMを紹介しています。
しかしこれだけでメダルがとれるコンペは、最近はほとんどありません。
そして、画像や文章、音を扱うモデルにおいてはディープラーニングの知識が必要です。
さらに、Transformerというモデルがほとんどの機械学習タスクで猛威を振るっています。
とどめに、テーブルデータにおいてもTabNetが活躍する始末です。
なので、この本で基礎知識(理論)を抑えましょう。
ディープラーニングのライブラリとしては、kerasとpytorchが主流です。
というメリットがあるので、どちらも使い方を知っておきたいところです。
Kaggleの公開コードではpytorchが多めなので、pytorchからが始めやすいと思います。
Python実践データ分析100本ノック
機械学習では、モデル作成だけじゃなくデータ処理(加工)の技術も必要です。
本書で最低限の知識を抑えて、Kaggleで公開されているNotebookの処理を真似てみれば大丈夫です。
費用を抑えたい人は、”Kaggleで勝つデータ分析の技術”だけでも十分かもしれません。
個人的にこの本を最初に読んで前処理を勉強したので、ピックアップしました。
polarsのほうがメモリ消費が小さく速度も速いです。
なので、この本でpandasを勉強した後に、余裕がある人はpolarsでも挑戦すると良いでしょう。
”polars 100本ノック”で検索すると勉強になると思います。
退屈なことはPythonにやらせよう
なぜ選んだのかと言うと、これまでに紹介した4冊ではPythonの文法についてほぼ触れられていないからです。
この本のメリットは、本業の事務作業を自動化しながらもPythonの文法を学べることです。
仕事の作業だとアウトプットが見えやすいので、勉強のモチベーションを維持しやすいですよ。
私はこの本とpythonでexcelを自動化する本の2冊で文法を勉強しました。
ただ、excel操作に関してはVBAで良いと思ってしまったので、本書を推しておきます。
まとめ
今回は、私が機械学習を勉強するために使った本を紹介しました。
逆に言えばこの5冊しか読んでいないので、そんなに読まなくてもExpertにはなれます。

なんか適当に独学してるだけで、
どうやって勉強を進めたらいいかわからんな。。。
と悩んでいる人向けに、
もし私が初心者ならどう勉強するかを解説しているので、参考にどうぞ。
>>コスパよく初心者が機械学習を勉強する方法|ロードマップ
コメント