初めてのディープラーニング(武井 宏将 著)


初めてのディープラーニング –オープンソース”Caffe”による演習付き

概要

ディープラーニング(深層学習)は、機械学習に劇的な進展をもたらしました。
脳の神経回路に似せた“階層の深いニューラルネットワーク”の最適化手法が、
人工知能研究を新時代へ導いたのです。

本書は「基礎編」と「理論編」を通じ、その原理を初学者にも分かりやすく解説します。
画像認識分野での衝撃的な成果など、この技術が注目される背景や研究の歴史的経緯にも言及。
SuperVisionのチャレンジや「Googleの猫」といった実証研究を紹介するほか、
CNN、RNN、AutoEncoderといった代表的アルゴリズム、勾配法による
最適化計算の手法等も明らかにします。

さらに「体験編」では、Linuxユーザーを対象に、
オープンソースのディープラーニングフレームワーク“Caffe”、
および手描き文字のサンプルデータを用い、
ニューラルネットワークのパラメータチューニングを実験してみます。

メモ

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

そもそも機械学習とは何か?から始まりディープラーニングのメジャーなアルゴリズム

  • Convolution Neural Network: 局所的な情報の抽象化と位置不変性を持たせたNN(Neural Network)
  • AutoEncoder: 情報圧縮する構造を持たせたNN(教師無し学習)
  • Recurrent Neural Netwrok: 可変長データを扱えるようにするために隠れ層に再帰的な構造を持たせたNN

を紹介。

ディープラーニングが遂げた成果

NN冬の時代の理由。精度を上げようとするとNNの階層を深くする必要があるが以下の課題があった。

  1. 調整方法が不明確
  2. 乱数による初期値だとうまく学習できないことが多い
  3. 計算量が多い
  4. 他の機械学習の手法(SVMなど)が高い性能を示した

2に対しては2006年にBengioがAutoEncoderによるプレトレーニングを用いた学習方法を提案しうまく学習できることを示した。この論文を契機に深い階層のNNを学習する手法が続々と登場しこれまで困難とされていた階層の深いNNの学習が可能に。
3に対してはGPGPUによる並列計算で高速処理が可能になった。
4に対してはCNNが画像認識コンテストで他の手法を圧倒。一躍有名に。

有名な事例として

  • 音声認識:従来は隠れマルコフモデルが主流だったがディープラーニングの登場でエラー率が25.8%→16.0%に向上。Baidu Deep SpeechではBi-Direction RNNという双方向の入力のあるNNを採用。
  • 画像認識:SuperVisionが大規模NNによる画像認識精度を大幅向上させ有効性を示す。その後もディープラーニングを利用したアルゴリズムの進化は続き2015年には人間と遜色のない精度に。
  • Googleの猫:Youtubeから切り出した大量の画像データをAutoEncoderで学習。各層で強く反応する画像を調べると猫や人の画像だった。教師無し学習でも人が物をみて認知していく仕組みをコンピュータが実現できるのか?と期待されるようになった。

がある。

ディープラーニングを利用した画像認識

従来の画像認識手法(Bag-of-features)とディープラーニングの学習方法とその特徴の違いの紹介。ディープラーニングは特徴量を考えなくて良い分シンプルだが、学習データが大量に必要なのとハイパーパラメータのチューニングが大変。

ディープラーニングアルゴリズムの学習方法

ニューラルネットワークの構成要素と計算方法。学習方法(誤差逆伝播法)。学習を高速化する手法(確率的勾配法、ミニバッチ法)や高精度な学習を実現する手法(Dropout)の紹介。

CNN, AutoEncoder, RNNの学習方法。

  • CNN:通常のNNと同様に学習。通常は確率的勾配法やミニバッチ法を使って学習を行いDropoutも併せて利用することが多い。
  • AutoCoder:単純に誤差逆伝播法を用いると精度がでないことが知られれている。そのため、Hintonらによる3層ごとに学習をしてその重みを初期値とする学習を行う。
  • RNN:再帰入力があるので時間方向に展開して誤差逆伝播法を用いる

シェアする

  • このエントリーをはてなブックマークに追加

フォローする