あさのひとりごと

3日坊主にならないように、全力を尽くします。 記事は個人のひとりごとです。所属する組織の意見を代表するほど、仕事熱心じゃないです。

【書評】TensorFlowで学ぶディープラーニング入門を読みました!

私は、某SIerのR&D部門に所属しています。

もともと業務でインフラまわりしかやってきたことがなかったのですが、部署内はAIをメインに研究しているエンジニア多数で、そろそろ私も・・・・

というわけで
これまで機械学習に縁がなかったインフラエンジニアが、9/27に発売の
TensorFlowで学ぶディープラーニング入門 (著)中井 悦司さん
を読ませていただきました。

f:id:dr_asa:20161016171819j:plain:w300

Amazon CAPTCHA

機械学習/データ分析となると、数学の高度な知識が必要になると思われている人も多いかと思いますが、本書を読むにあたり、行列計算や微分方程式あたりが理解できていれば、十分読み進められると思います。

難易度は、理系大学を卒業している人であれば、予備知識は不要かなと思います。ちなみに、私は学生時代、数値流体力学のシミュレーションをやっており、簡単な偏微分方程式などであれば解くことができます。

私のように、「なんとなく、機械学習ってむずかしそう。」みたいな先入観を持っている人
そういう方に、ぜひ手に取って読んでいただきたいなと思います。

というわけで、章ごとの紹介は次の通りです~。



1章:TensorFlow入門
1章は、TensorFlowを使うための環境構築やチュートリアルが説明されています。環境は、クラウドVM(Google Compute Engine)を使う手順で説明されています。が、すべてDockerで動きますので、付録を参考にすれば、WindowsMacOSのクライアント環境でも試すことができます。
チュートリアルでは、多次元配列によるモデルをつかった気温を予測するための数式を解く例で動作確認をしています。
表面的なことだけにとどまらず、本書の全体像が理解できるよう、分かりやすく丁寧に解説されています。



2章:分類アルゴリズムの基礎
2章では、まずロジスティック回帰による二項分類器で、与えられたデータを2種類に分類するモデルの説明があります。最初に数式を用いたモデルの説明があり、それをもとにTensorFlowをつかってコードで記述していくという流れになっています。あと、機械学習でのテストセットの考え方も非常に丁寧な説明があります。もとのデータの8割を使ってトレーニングを行い、残りの2割で正解率をするという例をとって、実際にコードを書いて確認できます。2/3節では、多項分類器によるMNISTデータをつかった手書き文字の分類についての解説があります。オーソドックスな話でしょうが、非常に丁寧な説明で、、、、ちょっと、わかった気になってしまったかもしれません(笑)



3章:ニューラルネットワークを用いた分類
3章では、ニューラルネットワークの構造についての解説があります。複数の数式を組み合わせたかたちで考えるというのが、具体的にはどういうことなのかが説明されています。実際に、MNISTの手書き文字のデータセットを使って分類していく手順を追えますので、多少???が残っても、手を動かしながら理解ができます。あと、TensorBoardがすごいので、、、、おぉおおおってなると思います。



4章:畳み込みフィルターによる画像の特徴抽出
4章では、畳み込みフィルタについての解説があります。そもそも畳み込みフィルタって何・・・・・ってなるのですが、画像処理ソフトで元画像をぼかすための考え方ですと、冒頭に説明があるので、抽象度が高い内容ではありますが、あまり詰まらずに読み進めることができます。ここは数式自体は非常に単純なので、TensorFlowでの実装もわかりやすいです。



5章:畳み込みフィルタの多層化による性能向上
5章では、多層型の畳み込みフィルターによる特徴点の抽出の説明があります。最後に本書のまとめとして、手書き文字を認識するサンプルがあります。あと、カラー画像の分類の話や誤差逆伝播法の数学的な解説がありました。



本書を通して、
「解説が、とてもわかりやすい!」
です。

本書は、1章から5章にかけて、問題がだんだん難しく複雑になっていく構成になっており、1節ずつ読み進めていくと、だんだん全体がわかってくるようになります。これは、中断しても、続きから再開しやすく「今日はここだけやろう!」など学習がしやすくなっていて、挫折しにくいのが特徴です。
どの部分も、「なぜ、その数式でモデル化するのか」「数式をどう解くのか」「それをどのようにコードに落とすのか」が丁寧に説明されています。

というわけで
ディープラーニングについて本質的なところをきちんと理解した上でTensorFlowを動かしたいという人におすすめの本です~。

書籍は9/27より発売中で、すでに重版も決まっているそうです!!!!
中井さん、どうもありがとうございました!