オライリーのPython & 機械学習本が渋滞気味なので整理してみた

初めて目次を付けてみました。

新刊本絶賛渋滞中

オライリーPythonベースで機械学習を取り扱っている本の出版(日本語翻訳化)の勢いはすごいですね。これを書いている今日(2018/8/17)もこの本が発売になり、早速入手しました。

直感 Deep Learning ―Python×Kerasでアイデアを形にするレシピ

直感 Deep Learning ―Python×Kerasでアイデアを形にするレシピ

半ば反射的に買ってしまう自分も自分ですが、同じオライリーでも似たような本が立て続けに出ており、ブームが終わる前に出せるだけ出しておけという空気を感じなくもありません。

権利関係の話はよく分かりませんが、日本語版のオライリーの本を分類してみると、

  1. 英語版もオライリーレーベルで出しているもの
  2. 英語版では別レーベルだが日本語ではオライリーレーベルになっているもの
  3. 日本語版がオリジナル

これらが一緒くたになってオライリーを名乗って出版されるので、どの本を読めば良いのか分からなくなって、私みたいに全部買うバカも出てくる訳ですね(苦笑)。

ということで、自分なりに整理してみようというのがこの記事の意図です。一応、どっちが良いかというコメントを書いているものもありますが、本の合う合わないは個人差があるので、あくまで参考程度にとどめて下さい。

機械学習の王道部門

いわゆる「機械学習勉強したいんだけど、何か良い本ない?」と聞かれたときに、候補になりそうな本ですね。このブログでも何回か取り上げられているはず。ノミネートはこの2冊。

Pythonではじめる機械学習 ―scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎

Pythonではじめる機械学習 ―scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎

scikit-learnとTensorFlowによる実践機械学習

scikit-learnとTensorFlowによる実践機械学習

個人的には機械学習デビューのきっかけを作ってくれた前者も大好きなのですが、どちらか1冊を勧めてくれという話になるなら、前半はscikit-learn、後半はTensorflowという構成になっている後者の方が良いかなという気がします。あと、Githubリポジトリになるオマケが充実しているので、とりあえず触ってみたいという人にとっては、この1冊で十分だと思います。

Numpy, Pandas, Matplotlibなどの基本がやりたい部門

前段で取り上げたscikit-learnとTensorFlowによる実践機械学習のオマケも相当充実しているので、それでも十分事足りると思いますが、それでもNumpyとかPandasのデータ処理の基本を押さえておきたいという場合に候補になる本です。

Pythonによるデータ分析入門 第2版 ―NumPy、pandasを使ったデータ処理

Pythonによるデータ分析入門 第2版 ―NumPy、pandasを使ったデータ処理

Pythonによるデータ分析入門 第2版 ―NumPy、pandasを使ったデータ処理が2012年の第1版で止まっていたなら、Pythonデータサイエンスハンドブック ―Jupyter、NumPy、pandas、Matplotlib、scikit-learnを使ったデータ分析、機械学習の一択かなというところだったのですが、第2版が出てPython3.6対応になったところで、甲乙付けがたくなりました。前者はpandasの開発者の著作なので、pandasが重めですが、時系列データの扱い方とか、むしろ知りたかったところに手が届くという意味で前者を推したい。

日本オリジナル部門

オライリー本は英語からの翻訳だけではないよねということで、日本オリジナル本を上げてみたいと思います。これは甲乙付ける感じではありませんが。

ゼロから作るDeep Learning ? ―自然言語処理編

ゼロから作るDeep Learning ? ―自然言語処理編

この2冊は、ライブラリに頼らずにきちんと理論的な所を理解しようよという、エンジニアには嬉しいアプローチ。特に前者にはディープラーニング関連の本が日本語化されていない頃に、この本を見て意図を理解するという事を繰り返していたので、神棚に飾っておきたいぐらいの本です。(神棚じゃなくて普通に本棚に置いてありますが)
仕事ではじめる機械学習

仕事ではじめる機械学習

日本オリジナルという意味で、この本も忘れてはいけないですね。実務で機械学習に触れるという観点で書かれているPractioner(実務家)向けの本だと思います。

keras部門

オライリーには長らくkerasを扱った本が見当たらなかったので、比較という意味ではオライリー以外の本を持ってくるしかありません。

直感 Deep Learning ―Python×Kerasでアイデアを形にするレシピ

直感 Deep Learning ―Python×Kerasでアイデアを形にするレシピ

PythonとKerasによるディープラーニング

PythonとKerasによるディープラーニング

前者は読み始めたばかりですが、kerasという意味ではkerasの開発者が書いている後者の圧勝ですね。ただ、直感 Deep Learning ―Python×Kerasでアイデアを形にするレシピの比較対象という意味では、kerasは使っていないものの、内容の比較対象としてはこちらが近いかも。
実践 Deep Learning ―PythonとTensorFlowで学ぶ次世代の機械学習アルゴリズム (オライリー・ジャパン)

実践 Deep Learning ―PythonとTensorFlowで学ぶ次世代の機械学習アルゴリズム (オライリー・ジャパン)

Pythonの基本部門

最後に、Python自体を勉強したいんですけどという場合の本を2冊。Pythonの入門自体も本が多いものの、敢えて中級者向けの本を挙げてみました。

入門 Python 3

入門 Python 3

Fluent Python ―Pythonicな思考とコーディング手法

Fluent Python ―Pythonicな思考とコーディング手法

前者は、このブログで写経シリーズで完走しているので、そちらを見ていただいた方が早いかもしれません。後者はPythonにおけるバイブル。両者とも、内容的に少し古くなりつつあるというか、Python自体にアップデートがかかっているので、最新の情報はwebで追いついておいてねというコメントになるかと思います。とは言え両方とも、機械学習の基礎のためというのであれば、too muchな感じでしょうか。

長くなりましたが、機械学習を楽しみましょう。