社会人からはじめる機械学習勉強 Week 7 – CNN・RNN・RBM

2016/2/15~2/21

深層学習

深層学習」を継続して勉強中。今週はCNN、RNN、RBMを読んでる。理論の概念理解ができる。でも実装には結びつかない。

  • Convolutional Neural Network
    畳み込みニューラルネットワーク。主に画像処理で扱われる。画像の2次元位置情報を活用し、ローカルな部分にのみ畳み込み計算を実行する。パラメータ重みの共有などでモデルを効率化することができる。
  • Recurrent Neural Network
    再帰ニューラルネットワーク。入力に対して”時間”の概念が加わったもの。自然言語処理での文章解析など、長さが決まっておらず、刻々と次の要素が表れるようなデータに用いられる。LSTM(Long Short Term Memory)についても解説有り。
  • Restricted Boltzmann Machine
    教師なし学習、生成モデル。教師なし学習なので、入力データのみから、そこに存在するデータの統計的偏り=特徴を抽出する。RBMは、入力データに存在する”特徴抽出”を物理的なモデルを使用して行うことができる。
    Deep learningでは層を重ねていくと発生するVanishing gradient問題があるので、各層ごとに独立して学習を進めていく(Pretraining)という手法が有効活用される。RBMを使うと初めの層から独立して学習を進めていくことができる。

日本語でDeep Learningについて学べる本は貴重、特にConvolutional Neural NetworkやRecurrent Neural Networkについて説明してある本はまだ少ないので重宝する。

Coursera

引き続き、Courseraを勉強中。

Coursera “Machine Learning” by Andreaw Ng 
 1日2つVideo見ていっている(通勤前の30分くらいのみ)、2月中に終わりたい。
 PCAやった。Principal Component Analysis・主成分分析。固有値の大きい順に固有ベクトル使うってだけ、超簡単。

実践・実装

これまでずっと理論を学んできた。が、そろそろとにかく実践に進みたい。という事で、”Deep leaning 実践”でググっていくつかSlide shareを読んだ。
caffe, theano, pylearn2, tensor flow, chainerなどなどいろいろなディープラーニングライブラリがある模様。

実践ディープラーニング で勧められていたhttp://deeplearning.net/tutorial/を始めてみたい。
このチュートリアル内に書いてあるように、そのためには事前準備として、Theanoライブラリの勉強から始めることに。

Links

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です