Deep Learningのレイヤ
caffe
pylearn2
theano
Digits
Chainer
DNN
Feedforward NeuralNetwork, Stochastic Gradient Descent,
Backpropagation, Autoencoder, Convolutional Neural Network,
Reccurrent Neural Network, Boltzmann machine
数学的背景
大学教養レベルの微積分、行列、ベイズ理論
教科書:“Pattern Recognition and Machine Learning”
(パターン認識と機械学習 - ベイズ理論による統計的予測)
Pycaffe MATLAB
PFIUCB Univ. of Montreal
Nvidia
C++
Torch7
Lua
アルゴリズムフレームワーク
Amazon ML
Azure ML
Google
Prediction API
クラウド
EC2 with GPU
Deep Learning非対応
Tensor
flow
Google
2015/12/18 9
10.
Deep Learning Tutorials
•Université de Montréal - Lisa Labが以下で公開
git@github.com:lisa-lab/DeepLearningTutorials.git
http://deeplearning.net/tutorial
• 古典的なNN,DNNからCNNまで各種論理・技法を解説
– Python + theanoで記述
– 各種学習アルゴリズム
• 教師あり3種、教師なし4種、その他5種
• 教師あり3種を題材に説明
1. Logistic Regression - using Theano for something
2. Multilayer perceptron - introduction to layers
3. Deep Convolutional Network - a simplified version of LeNet5
2015/12/18 10
11.
教師付き学習の例題
1. Logistic Regression- using Theano for something
– 1段:単純パーセプトロン、確率的勾配降下法
2. Multilayer perceptron - introduction to layers
– 2段:線形分離問題、誤差逆伝達法
3. Deep Convolutional Network - a simplified version of LeNet5
– 多段:汎化性向上のための畳み込み
• すべて同じ数字認識(MNIST)問題を扱う
• 高速化の各種実装もあわせて理解する
– 繰り返し処理を行列積(sgemm)演算で置き換え
• refBLAS,OpenBlas, ATLAS, cuBLAS(NVIDIA)
– CNNの畳み込み演算はストライド転送+演算
• cuDNN(NVIDIA)
2015/12/18 11
12.
教師付き学習(MNIST )と誤答率
• 入門用向けの例題
1.Logistic Regression - using Theano for something simple 1950年代
2. Multilayer perceptron - introduction to layers 1980年代
3. Deep Convolutional Network - a simplified version of LeNet5 2010年代*
0
2
4
6
8
10
12
14
1
40
79
118
157
196
235
274
313
352
391
430
469
508
547
586
625
664
703
742
781
820
859
898
937
976
Logistic Regression
Multilayer perceptron
Deep Conventional Network
minibatch
誤答率
1.7%
0.91%
7.5%
多層(deep)化で
誤答率が大幅に
下がる
*1979年に福島邦彦氏が発表したネオコグニトロンの再発明
Deep Learning Tutorials の
例題で実測
2015/12/18 12