いのいち勉強日記

Turingで自動運転の開発をしています。京大でPhDをとりました。Kaggle Grandmasterです。

【書評】今尚最高な入門書「ゼロから作るDeep Learning」

斎藤庸毅さん著、オライリージャパンから出版された
「ゼロから作るDeep Learning」
 
この本は2016年の9月に出版されていますが、
未だ内容は古びていません!!!
 
Deep Learningの基礎を学ぶための最適な入門書だと思います。

 

Deep Learningの前提知識不要!

 
わたしがこの本を初めて読んだ時は
「誤差逆伝播」や「畳み込みニューラルネット」なんて聞いたことなかったし、
ましてや「パーセプトロン」も知りませんでした。
つまり、機械学習も全くわかってないということです。
本当にDeep Learningについてなんか何も知らな状態です。
 
ですが、読めました!
全く問題なかったです!

 
しかも、この本では理論をしっかり学べます。
 
「Deep Learningで何ができるかイメージしよう!」ではないです。
 
「Deep Learningのアルゴリズムをしっかり理解する。」
それが本書です。
 
いいなと思ったポイント。
・日本語の説明がしっかりしていてわかりやすい
・図解が多くイメージが湧きやすい

 
当たり前かもしれませんが重要ですよね。
圧倒的に解説がわかりやすいんです!
 
「理解できた!」
そういう感覚が得られますよ!
 

 

Python知らなくても読める!

 
これには二つの意味があります。
 
・一切コーディングしなくても読める。
・Pythonの初心者でもコーディングしながら読める。

 
本書のコンセプトとしては「理論を理解して実際にコーディングして理解を深めよう!」です。
ですが、上でも述べているように、
解説がすごくわかりやすいので読むだけでも十分価値があります。
 
なので、Deep Leaningの理論を学んでみたいという人は、
とりあえず解説を読んでいくというのをお勧めします!
1日もあれば十分通読できると思います。
 
もしプログラミングの経験があるならコードも少し参考にしてみてください!
Pythonのコードはすごく読みやすく簡単にわかるので役立つかもです!
 
もう一つのPythonの初心者でも読めるかというところについて。
 
「コマンドプロンプトってなに?」ってぐらいなら少しきついかもです…。
ネットでもいいのでほんの少しだけ調べてみてください。
 
「Hello worldくらいなら打てる!」
じゃあ大丈夫です!ぜひ本書に挑戦してみてください!

 
はじめに数ページPythonの使い方について説明があるので
そこを読んで適宜戻って確認すればいいと思います。
 
なぜ初心者でも大丈夫かというと
Deep learningのコーディングは数値計算的な要素が多いので
そんなに複雑なことが出てこないからです!

 
強いていうならば、
「クラス」を使うときにちょっと苦戦するかな?くらいです。
ですが、本書を使えばむしろクラスの使い方とかがわかるようになる気もします。
心配な方は、ググるか入門書を一冊手元に置いとけば安心ですよ!
 
 

まとめ

 
この本のようにTensorFlowやKeras、Chainerなどなど
Deep learningのフレームワークを使わないで
1から実装する日本語の本は少ないかと思います。
 
おそらくこの本の完成度が高すぎて
これに競合する本を作るのは無謀だということでしょうか…。
 
本書をしても実務として使えるコードをかけるわけではないです。
しかし、上記のフレームワークを使うときに
理論を一度学んでおくことは非常に重要だと思います。
 
数式ばかりの専門書が厳しい!という方には
アルゴリズムを理解するための最良の書だと思います!

 

 
Deep learningではないですが、
その基礎となる統計をPythonで学べる良書もありますので
ぜひそちらも参考にしてみてください!
統計を知っているかどうかはかなり重要です。
 ブログ記事はこちら
www.inoichan.com