『PythonとKerasによるディープラーニング』の改訂新版、『Pythonによるディープラーニング』がついに発売!どう変わった?|Tech Book Zone Manatee

マナティ

『PythonとKerasによるディープラーニング』の改訂新版、『Pythonによるディープラーニング』がついに発売!どう変わった?

2018年の発行以来、今でもTensorFlow/Kerasの解説書としてご好評いただいている『PythonとKerasによるディープラーニング』の改訂新版にあたる『Pythonによるディープラーニング』Deep Learning with Python, Second Edition)が3月についに発売します!
改訂にあたり、どのように変わったのか気になりませんか?
そこで、発売を記念して2018年の最初の版と、今回の改訂新版がどう変わったのかをご紹介します。
すでに2018年版を持っているという方にも、持っていない方にもご興味を持っていただければ幸いです。

最新のTensorFlow 2に対応したコードに変更!

2018年に発行された『PythonとKerasによるディープラーニング』ではTensorFlow 1.8に対応していました。
しかし、それから数年が経ってTensorFlowもアップデートを続けて現在は2系が最新になっています。そのため、同じ記述ではうまく動作しない部分やTensorFlow 2から加わった新しい機能もあるようです。
そこで、『Pythonによるディープラーニング』ではTensorFlow 2に対応した最新のコードに内容が書き変わりました。
『PythonとKerasによるディープラーニング』をすでに持っている方はぜひコードを見比べてみてどこが変わったのかを確認してみてください。
もちろん、持っていないという方はこちらを購入して最新のディープラーニングの実装を身に着けるといいでしょう。

機械学習で使う数学の基礎から詳しく解説!

ディープラーニングでどのような処理が行われているのか正しく理解するにはある程度高度な数学の知識が必要になります。
しかし、TensorFlowを使うことで難しい処理はライブラリの内部で実行してくれるので開発者は概要さえ理解していればかなり簡単に実装ができるようになりました。
そのため、たとえばディープラーニングで頻出のテンソル計算の解説はこのようにとてもシンプルなものでした。
 
ベクトルの和については本書で理解することができますが、その他の演算についてはこれだけだとよくわからないという方もいるのではないでしょうか。もちろんどの演算もディープラーニングでは頻出です。
大学で数学を学んだ方なら困らないかもしれませんが、そうでなければこれだけだと不足しているでしょう。
そこで、『Pythonによるディープラーニング』では次のように図を加えて各種のテンソル演算をわかりやすく解説しています。
画像付きの解説で平行移動・回転・拡大などの処理が具体的にどのような操作をしているのかがわかりやすくなったのではないでしょうか。
このように、『Pythonによるディープラーニング』では2章から4章にかけてディープラーニングで使う数学についての解説を増強しているのでTensorFlowで行われている処理をより深く理解して学習を始めることができます。

全9章から全14章に!ページ数も大幅に増えて2018年版を読んだ人にも読み応えのある内容になりました

目次で見る2018年と2022年の違い

『PythonとKerasによるディープラーニング』が発売された2018年以降もディープラーニングの技術は進歩し続けています。当時とくらべてディープラーニングという技術の認知度もずいぶん高まりました。ディープラーニングを解説した技術書もずいぶん増えましたね。
それを踏まえて、まずは目次を見比べてみましょう。

PythonとKerasによるディープラーニング(2018年)

Pythonによるディープラーニング(2022年)

ディープラーニングとは何か

ディープラーニングとは何か

予習:ニューラルネットワークの数学的要素

ニューラルネットワークの数学的要素

入門:ニューラルネットワーク

KerasとTensorFlow

機械学習の基礎

ニューラルネットワーク入門:分類と回帰

コンピュータビジョンのためのディープラーニング

機械学習の基礎

テキストとシーケンスのためのディープラーニング

機械学習のユニバーサルワークフロー

高度なディープラーニングのベストプラクティス

Kerasを使いこなす

ジェネレーティブディープラーニング

コンピュータビジョンのためのディープラーニング

本書のまとめ

コンピュータビジョンのための高度なディープラーニング

 

時系列のためのディープラーニング

 

テキストのためのディープラーニング

 

生成型ディープラーニング

 

現実世界のベストプラクティス

 

本書のまとめ


『PythonとKerasによるディープラーニング』に比べ、『Pythonによるディープラーニング』は章が全9章から全14章に増えていることがわかります。ページ数は全392ページから全496ページに大幅に増えました。それだけ、ここ数年の進歩が目覚ましかったと言えるでしょう。

具体的な内容の違い

どのような内容が増えたのか、具体的に気になる点を確認してみましょう。

機械学習のユニバーサルワークフロー

「機械学習のユニバーサルワークフロー」では、「機械学習の基礎」の章からさらに踏み込んで現実にある機械学習問題を解決するにはどのような手順で開発していくのかを解説しています。
「機械学習の基礎」ではすでにラベル付けされたデータセットが存在していてモデルの訓練を簡単にできる状態であることを前提にモデルを開発しましたが、そうはいかない現実での問題への取り組み方、モデルの評価のしかたについて理解することができます。
基本だけでは物足りないという方が増えたということでしょうか

コンピュータビジョンのための高度なディープラーニング

「コンピュータビジョンのためのディープラーニング」ではCNNを使った基本的な画像分類について解説していました。
『Pythonによるディープラーニング』ではそれに加えて「コンピュータビジョンのための高度なディープラーニング」が追加されています。ここでは、画像分類に加えて画像セグメンテーション物体検出といった手法について学ぶことができます。他にも、最新のCNNアーキテクチャのベストプラクティスや学習した内容の解釈など、タイトルの通り高度な内容になっています。

時系列のためのディープラーニング

「時系列のためのディープラーニング」では、ある単位時間ごとに計測されたデータを用いたデータの活用例を紹介しています。たとえば、一時間ごとの気温や日別の売上データなどがこれにあたります。このようなデータが積み重なることで一時間後の気温や翌日の売上などを予測することができるようになります。

現実世界のベストプラクティス

「現実世界のベストプラクティス」は、これまで小さいデータセットで学んできた基本的なモデルの学習を、現実に当てはめるためのベストプラクティスについて学ぶ章です。
機械学習エンジニアを目指すために必要な内容になっています。
ハイパーパラメータのチューニングや、複数のモデルを組み合わせてより良いモデルを生成するアンサンブルなど、モデルを改善するための手法を学ぶことができます。
また、現実の膨大なデータをより高速に処理するためにクラウドを活用して複数のGPUやTPUを活用する手法も解説しています。
本書の内容はほとんどが小規模のデータセットを使って小さいモデルで学習していましたが、この章を学ぶことで大きい規模のデータを取り扱うヒントが得られるでしょう。
TensorFlowを使ってディープラーニングを実装する、という内容からさらに踏み込んだ高度な内容になっています。

まとめ

『Pythonによるディープラーニング』がTensorFlow 2に対応しているだけではなく、内容が『PythonとKerasによるディープラーニング』に比べて増加していることが伝わったでしょうか。
『PythonとKerasによるディープラーニング』はすでにPythonがわかるエンジニアなら簡単にディープラーニングが実装できるということを解説した技術書です。
発売した2018年時点ではまだディープラーニングが注目され始めたばかりで、技術書もそれほど発行されていませんでした。
2018年から2022年にかけてディープラーニングの世間からの注目度もあがり、ディープラーニングの技術書が各社から多数発行されている現在では2018年版ではちょっと物足りないと感じる方もいるかもしれません。
改訂新版にあたる『Pythonによるディープラーニング』では、より実践的な内容の解説を大幅に増やしているので、『PythonとKerasによるディープラーニング』を買っていない方はもちろん、買っていただいた方にも読み応えのある内容になっているはずです。
最新のTensorFlow 2をいち早く学習したい方には特におすすめの一冊です。
 

著者プロフィール