今更ながら「ゼロから作るDeep Learning」を読んだのでレビューしていこうと思います。
Deep Learningの入門書といえばこれ、みたいなところありますよね。
ゼロから作るDeep Learning
要約
[summary]
pythonを使ってDeep Learningを一から作っていく本です。numpyを活用しながら、一層のパーセプトロンからMNISTの分類ができるニューラルネットワークまで、順番に実装していきます。
[/summary]
読もうと思った理由
まず、なぜこの本を読もうと思ったかですが、研究で機械学習的なものを扱っていて、基礎的な勉強をしたいと思ったからです。
正確には、時系列データ用のリザバーコンピューティングというモデルをハードウェアで実装するという研究で、そこまで機械学習自体を深く扱うわけではないです。ただ、シミュレーションのためのモデル実装などでは、機械学習の知識が必要になるので、基礎勉強としてこの本を選びました。
感想
良かった点
1. コード解説が丁寧
まず、この本はかなり丁寧に書かれているなと思いました。
機械学習に関わらず、コードが載ってる技術書などは、最初は丁寧に書かれていても途中から省略されすぎてついていけない、みたいなことがあるのですが、この本では最後までちゃんと丁寧だったなという印象です。
numpyを使う理由とか、次元の説明とかがなり詳細でした。
2. 初学者でもわかりやすい
また、機械学習に関する内容に関しても、とてもわかりやすかったです。単純に実装していくだけではなく、そうなる理由を詳しく説明したり、数値微分など少し遠回りになってもわかりやすくなるように書かれていました。
個人的には、計算グラフを利用した逆伝搬の説明が特にわかりやすかったです。
最後の方は畳み込みニューラルネットワークや最近(本自体は古いから実際は最近ではなさそう)使用されているモデルなんかも解説してくれています。
このシリーズは全部で5冊あるみたいですが、この一冊でも簡単なニューラルネットワークに関してはかなり理解できたと思います。
微妙な点
1. ちょっと古い?
本が出たのが2016年でもうすぐ10年なので、さすがにちょっと情報が古くなってるかもしれません。
読んでいる限りでは、特に問題ありませんでしが、Pythonのバージョンが3.5であったり、最新のトレンドとかは反映できていないかなと思います。(入門書だからそこまで必要なさそう)
といっても、この実装がいまのChatGPTなどの生成AIの基礎になる(と思う)ので、勉強して損はなかったと思います。
2. 画像がおかしい(Oreilly版のみ)
私は紙の本も持っていますが、外出先で読みたかったのでOreillyで電子版も購入しました。
PDF版で読んでいると、画像と説明が合っていないことがあって、本と比べてみると、PDFでは画像が消えてしまっていたことがありました。
文字は大丈夫だったので、ダウンロードの時に問題あったんですかね?めんどくさかったので再ダウンロードはしていません。。。
まとめ
こういう人におすすめ
- Deep Learningのことをまだ何も知らない人
- 他の本の説明が理解できなかった人
- Deep Learningや機械学習の内部での処理が知りたい人
Deep Learning、機械学習などの入門書として最適だと思います。
やっぱり詳しい本を読むと、自分から抜けてた知識があることに気づいて勉強になります。(研究のモデルがバッチ処理できてなかったけど、この本のおかげで少し高速化できたりしました。)
次はこのシリーズの②を読みたいと思います。次はLSTMとか時系列系のモデルも出てくるみたいなので楽しみです。