TensorFlow で学ぶディープラーニング入門

テンソルフローデマナブ ディープラーニングニュウモン

畳み込みニューラルネットワーク徹底解説

TensorFlow で学ぶディープラーニング入門の表紙
その他
著者:
中井 悦司(ナカイエツジ)
出版社:
マイナビ出版
出版日:
2016年09月28日頃
ISBN:
9784839960889
在庫:
在庫あり
3.25(6 件 / 楽天ブックス)
初級者向け
機械学習深層学習TensorFlowニューラルネットワークデータ分析ネットワークアルゴリズム行列計算微分手書き文字認識

なぜ注目されているか

総合153位 言及 4 件

書籍紹介

ディープラーニングの世界へようこそ! 本書は、機械学習やデータ分析を専門とはしない、一般の方を対象とした書籍です。- と言っても、ディープラーニングの歴史や人工知能の将来展望を語る啓蒙書ではありません。ディープラーニングの代表とも言える「畳み込みニューラルネットワーク」を例として、その仕組みを根本から理解すること、そして、TensorFlow を用いて実際に動作するコードを作成することが本書の目標です。

ディープラーニングの解説記事で必ず登場するのが、多数のニューロンが何層にも結合された「多層ニューラルネットワーク」の模式図です。このニューラルネットワークの中でいったいなにが起きているのか、ディープラーニングのアルゴリズムはどのような仕組みで学習をしているのか、「何とかしてこれを理解したい!」 - そんな気持ちを持ったあなたこそが、本書が対象とする読者です。

実の所、ディープラーニングの根底にあるのは、古くからある機械学習の仕組みそのものです。簡単な行列計算と微分の基礎がわかっていれば、その仕組みを理解することはそれほど難しくはありません。本書では、手書き文字の認識処理を行う畳み込みニューラルネットワークについて、これを構成する 1 つひとつのパーツの役割を丁寧に解説していきます。さらに、ディープラーニングの学習処理ライブラリである TensorFlow を利用して、実際に動作するコードを用いながらそれぞれのパーツの動作原理を確認します。レゴブロックを組み立てるかのように、ネットワークを構成するパーツを増やしていくことで、認識精度が向上する様子が観察できることでしょう。

ちなみに、TensorFlow の公式 Web サイトでは、チュートリアルとしてさまざまなサンプルコードが公開されています。これらのコードを実行してみたものの、コードの中身がよくわからず、自分なりの応用をしようにもどこから手をつけていいのかわからない - そんな声を耳にすることもあります。本書を通して、ディープラーニングの根本原理、そして、TensorFlow のコードの書き方を学習すれば、次のステップが見えてくるはずです。ディープラーニングの奥深さ、そして、その面白さを味わうことは、決して専門家だけの特権ではありません。本書によって、知的探究心にあふれる皆さんが、ディープラーニングの世界へと足を踏み入れるきっかけを提供できたとすれば、筆者にとってこの上ない喜びです。

(本書「はじめに」より抜粋)

技書の森解説

『TensorFlow で学ぶディープラーニング入門』 (中井 悦司 著、マイナビ出版、2016 年 9 月刊) は、手書き文字の認識を題材に、畳み込みニューラルネットワークを構成するパーツの働きを 1 つずつ説明し、TensorFlow で動くコードを書きながらその動作原理を確かめる本です。版元ドットコムでは、書名に「畳み込みニューラルネットワーク徹底解説」が添えられています。版元は、機械学習やデータ分析を専門とはしない一般の方を対象に挙げています。版元の紹介文には、仕組みの理解に使う数学として、簡単な行列計算と微分の基礎が挙げられています。

全 5 章と付録 3 本、TensorFlow 入門から多層 CNN まで

Chapter 01「TensorFlow 入門」は、機械学習の考え方とニューラルネットワークの必要性を述べたあと、CentOS 7 での環境準備と Jupyter の使い方を説明し、多次元配列によるモデルの表現からセッションによるトレーニングの実行までを短く巡ります。Chapter 02「分類アルゴリズムの基礎」は、ロジスティック回帰による二項分類器とソフトマックス関数による多項分類器を扱い、MNIST データセットの手書き文字の分類へ進んで、ミニバッチと確率的勾配降下法を説明します。Chapter 03「ニューラルネットワークを用いた分類」は単層から多層への拡張で、TensorBoard によるネットワークグラフの確認を含みます。Chapter 04「畳み込みフィルターによる画像の特徴抽出」と Chapter 05「畳み込みフィルターの多層化による性能向上」で CNN を組み上げ、Chapter 05 は手書き文字の自動認識アプリケーションのあと、その他の話題として CIFAR-10 のカラー写真画像の分類に向けた拡張、「A Neural Network Playground」による直感的理解、バックプロパゲーションによる勾配ベクトルの計算を収めています。付録は A「Mac OS X と Windows での環境準備方法」、B「Python 2 の基本文法」、C「数学公式」の 3 本です。

畳み込みフィルターとプーリング層の働き

ニューラルネットワーク で画像を分類する時、画素の値を一列に並べて全結合の層へ入れると、隣り合う画素どうしの位置の関係が入力の段階で失われます。畳み込みは、小さなフィルターを画像の上でずらしながら掛け合わせ、縦や横の線、輪郭のような局所の特徴を取り出す計算です。プーリング層はその結果を小さな領域ごとにまとめて画像を縮小し、位置の小さなずれに左右されにくい特徴へまとめます。CNN では、このフィルターの値そのものが学習で決まるパラメーターになり、誤差の勾配を出力の側から入力の側へ順に計算するバックプロパゲーションで更新されます。本書の Chapter 04 は、値を決めたフィルターを画像に適用する例から始まり、フィルターを動的に学習させる段を経て、学習されたフィルターを確認する節で終わります。

2016 年 9 月刊と書誌の記録

TensorFlow の GitHub のリリース記録によると、TensorFlow 1.0.0 の公開は 2017 年 2 月です。同じリリース記録によると、2019 年 9 月の TensorFlow 2.0.0 では、計算グラフを組み立てて tf.Session で実行する書き方が推奨されなくなり、通常の Python 関数で書く形に置き換えられました。Python の公式サイトによると、Python 2 の保守は 2020 年 1 月に終了しました。本書は 1.3.3 で「セッションによるトレーニングの実行」を扱い、付録 B に「Python 2 の基本文法」を収めています。ディープラーニングの本の選び方は ディープラーニング本の選び方 にまとめています。

手書き文字の分類を題材に、ロジスティック回帰から多層の畳み込みニューラルネットワークまでを、全 5 章と付録 3 本に収めています。

言及した記事 (4 件)

この本に興味がある方におすすめ

関連する本

中井 悦司 の他の書籍

関連記事

関連用語

共有: