Download - 20140705.西野研セミナー
Deep Learning 勉強会(1)
2014/07/05 電気通信大学 大学院情報理工学研究科
庄野 逸: [email protected]
1
http://www.slideshare.net/HAL9801
2
Simple/Complex cell (Hubel&WIesel 59)
Linear resp. func. (Anzai+ 99)
201020001990198019701960
Perceptron (Rosenblatt 57)
Neocognitron (Fukushima 80)
Conv. net (LeCun+ 89) Deep learning
(Hinton+ 06)
“Linear Separable” (Minski & Papert 68)
Sparse Coding (Olshausen&Field 96)
Stochastic GD (Amari 67)
Boltzmann Mach. (HInton+85)
Back Prop.(Rumelhart+ 86)
今ココ
第1期 第2期
Neural network (NN) 歴史的背景
McCulloch-Pitts 素子モデル(1)
最初の数理的ニューロンモデル (McCulloch&Pitts 43)
入力は線形重ねあわせ
活性化関数 f(): 閾値制御
4
u
yx1 y
x2Σ u
θ
w1
w2
McCulloch-Pits 素子モデル(2)
モデルパラメータ {w, θ} の変更→様々な論理素子
5
u
yx1 y
x2Σ u
θ
w1
w2
w w θAND 1 1 1.5OR 1 1 0.5NAND -1 -1 -1.5
y
y
現代のNN の基本素子入力の線形和
非線形活性化関数
Logistic-Sigmoid Rectified Linear Hyperbolic Tangent, etc...
6
y1
y3
x1
x2
x3
y2
z2
u
f (u)u
j
=
3X
i=1
w
ji
x
i
+ b
j
y
j
= f
⇣u
j
⌘
u
yx1 y
x2Σ u
θ
w1
w2
NN の学習とは?
モデルパラメータ {w, θ} で振る舞いが変化
モデルパラメータをデータから決定する→学習
8
w w θAND 1 1 1.5OR 1 1 0.5NAND -1 -1 -1.5
9
Simple/Complex cell (Hubel&WIesel 59)
Linear resp. func. (Anzai+ 99)
201020001990198019701960
Perceptron (Rosenblatt 57)
Neocognitron (Fukushima 80)
Conv. net (LeCun+ 89) Deep learning
(Hinton+ 06)
“Linear Separable” (Minski & Papert 68)
Sparse Coding (Olshausen&Field 96)
Stochastic GD (Amari 67)
Boltzmann Mach. (HInton+85)
Back Prop.(Rumelhart+ 86)
今ココ
第1期 第2期
Neural network (NN) 歴史的背景
Perceptron のアーキテクチャMcClloch-Pits ニューロンによる階層型ネットワーク
S層 - A層 間は固定ランダム結合
A 層 - R 層 間が学習で決定される結合
11
y2(xn)y1(xn)w20
w21w22w23 y3(xn)
{xn}x3n
1
x2nx1n
Sensory Layer
Associative Layer
Response Layer
Simple Perceptron による識別
2入力1出力単純パーセプトロン
12
φ2
φ1
y = sgn
0BBBBBB@X
j
w j� j
1CCCCCCA
= sgn (w0 + w1�1 + w2�2)
w0 + w1�1 + w2�2 = 0
�1
�2
y
クラス1クラス2
Perceptronの学習: 誤り訂正学習
Hebb 学習則教師 t と出力 y の関係により w を修正
{xn, tn} が与えられたとき y(xn) = tn としたい
正解 tn と答え yn が不一致のときのみパラメータを修正
!
解が存在する場合,正しい解に収束する→デモ
13
yx wt
単純パーセプトロンの限界
単純パーセプトロン:一本の直線での境界分離(線形分離)
XOR 問題は解けない (Minsky&Papert 68)→ NN 第1次 冬の時代
14
クラス1クラス2
φ2
φ1
単純パーセプトロンの限界の打破XOR 問題の解法
複数の分離直線を使えば分離可能
各線の分離結果を合成→階層化が妥当
15
クラス1クラス2
x2
x1
{xn} {zn}
x1
x2
x0z0
z1
z2
1 1
y
16
Simple/Complex cell (Hubel&WIesel 59)
Linear resp. func. (Anzai+ 99)
201020001990198019701960
Perceptron (Rosenblatt 57)
Neocognitron (Fukushima 80)
Conv. net (LeCun+ 89) Deep learning
(Hinton+ 06)
“Linear Separable” (Minski & Papert 68)
Sparse Coding (Olshausen&Field 96)
Stochastic GD (Amari 67)
Boltzmann Mach. (HInton+85)
Back Prop. (Rumelhart+ 86)
今ココ
第1期 第2期
Neural network (NN) 歴史的背景
Error Back-propagation
単純 Perceptron の線形分離可能性→ 階層性による打破
階層にした場合の学習則
基本アイディアは勾配法
微分の連鎖則を活用
18
x0
x1
xD
z0
z1
zM
y1
yK
w
(1)MD
w
(2)KM
w
(2)10
hidden units
inputs
outputs
線形パーセプトロンの勾配学習法(1)
2乗誤差の勾配を用いる学習則デルタ則,adaline 則 (Widrow-Hoff 1960)
19
勾配を使うには微分可能性が必要なのでニューロンの活性化関数に線形関数を使う
u
yx1 y
x2Σ u
w1
w2
線形パーセプトロンの勾配学習法(2)
2乗誤差の勾配を用いる学習則デルタ則,adaline 則 (Widrow-Hoff 1960)
20
E(w) =12
�
n
�tn � y(xn)�2コスト関数
{xn}t1nt2nt3n
{tn}y2(xn)y1(xn)
y3(xn)x3n
1
x2nx1n
φ3(xn)w23
更新則
Multi Layer Perceptron の設定
21
yk
tk
k
jwkj
iwji
入力層 x
隠れ層 z
出力層 y
Multi Layer Perceptron(MLP) アーキテクチャ
隠れ層を持つ
信号の処理方向は一方向のみ
教師あり学習 {xn, tn} → {w(1)ji, w(2)kj}
連鎖則による微分の導出(2)
23
コスト関数yk
tk
k
jwkj
iwji� j
微係数 誤差 δ の導入ですっきり
誤差 δ は,上位層からの逆方向の伝達 (Back propagation) で記述可能
Back Propagation の連鎖則
24
yk
tk
k
jwkj
� j = f 0(u j)X
k
�kwk jiwji� j
勾配の連鎖則
確率的降下法(Stochastic GD, Amari 67)
1サンプル毎は非効率↔全サンプルの平均勾配(Batch)は困難
mini Batch: 数個~100個程度の平均勾配
準ニュートン法や,共益勾配法 (Le+11)
Back prop の応用先
XOR 問題 (Rumelhart+ 86)
Auto-Encoder (Ackley+ 85), 画像圧縮(Cottrell+ 87)
NETtalk (Sejnowski & Rosenberg 87)
ソナー音識別(Gorman & Sejnowski 88)
コンボリューションネット(Le-Net)(LeCun+ 89)
25
26
Simple/Complex cell (Hubel&WIesel 59)
Linear resp. func. (Anzai+ 99)
201020001990198019701960
Perceptron (Rosenblatt 57)
Neocognitron (Fukushima 80)
Conv. net (LeCun+ 89) Deep learning
(Hinton+ 06)
“Linear Separable” (Minski & Papert 68)
Sparse Coding (Olshausen&Field 96)
Stochastic GD (Amari 67)
Boltzmann Mach. (HInton+85)
Back Prop.(Rumelhart+ 86)
今ココ
第1期 第2期
Neural network (NN) 歴史的背景
視覚野(Ventral pathway)の性質
視覚野: 階層構造を持ち,階層ごとに異なる視覚課題の解決
初期視覚野: 狭い受容野,単純な特徴抽出Simple Cell,Complex Cellの存在
高次視覚野: 広い受容野,中程度に複雑な特徴に選択的
28
V1
V2
V4PIT
CIT
Ventral Pathway
AIT
TEO
TE
V1
V2
V3 VP
V4 MT VA/V4
PIT
AIT/CIT 8 TF
LIP MST DPL VIP
7a
V3A
V1
V4
V2
IT
Small receptive field
Edge, Line segmentdetector
Large receptive field
Face, Complex featuredetector
?
?
(Felleman & van Essen 91 を改変)
初期視覚野 (V1野) の計測
29
2
ĉƻ�8ƙĵ�ǷPMC48�Ɖ7 5G�¹bp{d
QǬ´&C(�":-F�ɑɆ�KŽ3�MŘƞĉQǷ
PMƙĵ;G�x]f�:Ɣɀ4;�LC*R�Řƞĉ
8; 150ɇɅ:Řƞĉƻ��Lj9KN3�C(�500ɇ
ĝ:ŘľɃ�K 150ɇɅ:ƻ�870-:4(�K�¬
K�:Ɣɀ�ż�Û8ɑɆ4á03�C(�
� 6:J�7ƔɀƂɧ�á03�M:�Q¸Ư(M-
F8;��ĝ�ĝ:ƞĉľɃ�1CL�Ʌ�Ʌ:ƞĉƻ
��ǜ�ƔɀQƏľ8ljMȦɠ��LC(��1:ȣƓ
8ɘĦ7Ɂɂ;ĝ�:ľɃ:ŰɜɕQljM"54(�A
5R6 180ǻ8þ�ī$Qś1ȃȴĝǒ:Řɕ5�7L�
ĝ�:ŘÅľɃ8503:Řɕ;�Ƣ�8�MJ�8Æ
ǻ8&3 1~ƥǻ:ö�Ƞ�8ĜKN3�C(�":J�
7�ĝ�:ƞĉľɃ�ĤōČ8Ǔ&3ÌŰƨQś1ɰ�
5,:ĄQŰɜɕ5ğ=C(�Űɜɕ;ŘÅľɃ850
3;��P<¿»8½�N-ƈ$7ǃ4�M5��"5�4�C(�ŘÅľɃ:Űɜɕ:Ą;�ɑ
Ɇ�KĴŝ:Ȕɰ�C4:ÀǠ¾4�ȆǧDz7��Qś03�C(�Űɜɕ:ĄQĔN<�,:ľ
Ƀ�¶DžǤ8ÔCNM6:J�7Ą8ĽGɯ ȝ¦(M:��ɚlj4�C(�
� -5�<�Řƞĉƻ�:�Ʌ�Ʌ;ɑɆ8�MƞĉƶľɃ5��ůɳ:ľɃ�KŽ3�ŘƊ5�
�Ȕ:Ǥƛȯȵ8�MƞĉÂ:ľɃ8bp{dQ·&317�LC(��"NK:ƞĉƶľɃ:Ű
ɜɕ;ȋŻ:Ȅƛ£ă:ĮdžQ&3�C(�":-F�ƈ$7Ǥƛȯȵ8ɍM�Ĥ:d�jnQ�
ȄŜ8,:ŲL8�Mo�pkƕ:ȯȵ8��ōČQǯŠ(M5ĽGɯ ȝ¦&C(�ŘƊ:ľɃ
GA5R6Ȅɝ:ŰɜɕQś03�C(�Ĥ�Ǥƛȯȵ5��^ƕ:ŲȽȯȵ8éB(Ħ±;è8
Ȃ :4�Űɜɕƽǒ8�ɝ8ɍM�ĤQƋŪ&3G�ľɃ;��03ȝ¦&C*R�1CL�Ó
�Ą4`�n�dn�ɯ ȫ�3�7�5�ɑɆ:ľɃ;ɯ ȝ¦&C*R�
����¦: v v:~¯'t3"C?:� ��+7��·�¥:§:¨��
� ǖȔ4Ľƃ8ŘƊ�K:ƞĉƙĵQŰ!ŭMɰ�Q�ŝŘÅɕ(V1)5ğ=C(�":ɰɕ8�M
ľɃ;�ɑɆHŘƊ4;Ħ±Dz.0-Ó�ōČ8;�CLȝ¦&C*R�V1 :ƞĉľɃ; 1960
Ȑĸ�ľɃ8J03�7MȆǮ:Æǻ4Ǫ Ƙ=-ƺƕ:ĤH�ǫƺƕ:ɍ�:ò»8J ȝ¦(
M"5��Ģ8s�|�ƐQŰƐ(MHubel5Wiesel5��ȋơ:°Èū8JLțĔ$NC&-�
":țĔǼƃ�K 1980Ȑ"OC4;�V1:ƞĉľɃ;ƺHWjcò»�Űɜɕ8ȍM5ȝ¦
(M�ƺ:ĒŽÙ�H�WjcĒŽÙ�5&3Ýȓ&3�M:4;7��5ǐ :ēìū�İ�C
&-�
� &�&�ĚŁ;":İ�;ęɉ8;ƫ& 7�0-5$N3�C(�,N; V1ľɃ:Űɜɕ:
� ��n�fq:�r~¯:�³²�http://ohzawa-lab.bpe.es.osaka-u.ac.jp/resources/text/KisokouKoukai2009/Ohzawa2009Koukai04.pdf
初期視覚野の性質
線分やエッジなどの成分に反応
Simple cell: 方位,位相に敏感
Complex cell: 位相には許容的
30
Simple Cell Phase Sensitive
Orientation Selective
Receptive Field
Input Stimulus
Fire Not FireNot Fire
Phase InsensitiveComplex Cell
Receptive Field
Input Stimulus
Fire Not FireFire
V1
V2
V4PIT
CIT
Ventral Pathway
AIT
TEO
TE
V1
V4
V2
IT
Small receptive field
Edge, Line segmentdetector
Large receptive field
Face, Complex featuredetector
?
?
Hubel-Wiesel 階層仮説
Simple Cell の出力合成で,Complex cell は説明可能(Hubel & Wiesel 59)
31
Simple Cell Phase Sensitive
Orientation Selective
Receptive Field
Input Stimulus
Fire Not FireNot Fire
Phase InsensitiveComplex Cell
Receptive Field
Input Stimulus
Fire Not FireFire
Simple/Complex Cell 計算論的解釈
32
細胞種類 結合様式 計算の意味 計算操作
Simple cell
特徴抽出 テンプレートマッチ
Gaussian-Tuning and 素子的
Complex cell
変形の許容 並進不変性
Soft-max or 素子的
(Poggio 07 を改変)
高次視覚野の性質
中程度に複雑な特徴に反応顔細胞の存在
巨大な受容野
時空間的な変化に許容的33
V1
V2
V4PIT
CIT
Ventral Pathway
AIT
TEO
TE
V1
V4
V2
IT
Small receptive field
Edge, Line segmentdetector
Large receptive field
Face, Complex featuredetector
?
?
(Kobatake & Tanaka 94 を改変)
CNN の視覚野的解釈
Hubel & Wiesel : Simple → Complex Cell の階層性
V2 → IT の不明な領野 → 初期視覚野構造のアーキテクチャ外挿
学習によるチューニング可能性
34
V1
V2
V4PIT
CIT
Ventral Pathway
AIT
TEO
TE
V1
V4
V2
IT
Small receptive field
Edge, Line segmentdetector
Large receptive field
Face, Complex featuredetector
?
?
U0 Us1Uc1 Us2Uc2 Us3Uc3 Us4Uc4 Us5Uc5
41x41x1
41x41x8
41x41x8
41x41xK2
21x21xK2
21x21xK3
11x11xK3
11x11xK4
5x5xK4
5x5xK5
1x1xK5
Convolution NN (CNN) (Neocognitron)
畳み込みによる局所特徴抽出と空間プーリング
Neocognitron(Fukushima80): 階層仮説の実装 (Hubel & Wiesel 59)
35
S-Cell Feature Extraction
Us1 Uc1
C-Cell Tolerance to the distortion
Input
Recognition
U0 Us2 Uc2 Us3 Uc3 Us4 Uc4
It’ s “5”
S-Cell S-Cell
C-Cell
S-Cell
C-Cell
Feature IntegrationLocal Feature
Global Feature
CNN の動作原理局所特徴抽出(畳み込み)+変形に対する不変性(プーリング)
36
Preferred Feature
(Orientation): XInput: x
Convlution Layer
Blurring
Preferred
Orientation
S-cell responseInput: x
Subsampling Layer
ConvolutionsSubsampling
Convolutions Subsampling
Preferred feature
38
Simple/Complex cell (Hubel&WIesel 59)
Linear resp. func. (Anzai+ 99)
201020001990198019701960
Perceptron (Rosenblatt 57)
Neocognitron (Fukushima 80)
Conv. net (LeCun+ 89) Deep learning
(Hinton+ 06)
“Linear Separable” (Minski & Papert 68)
Sparse Coding (Olshausen&Field 96)
Stochastic GD (Amari 67)
Boltzmann Mach. (HInton+85)
Back Prop.(Rumelhart+ 86)
今ココ
第1期 第2期
Neural network (NN) 歴史的背景
Convolution-net 基本アーキテクチャNeocognitron (Fukushima 80)
畳み込み演算による,局所特徴抽出+並進不変性
学習則に Back-Propagation (LeCun+86, Okada88)
40
(LeCun+86)
CNN デモ
41
http://yann.lecun.com/exdb/lenet/index.html
Rotataion Scale
NoiseMultiple Input
Deep learning事例: 一般物体認識
IMAGENET Large Scale Visual Recognition Challenge 2012
1000 カテゴリ × 約1000枚の訓練画像
Convolution Neural Network
42
Krizhevsky et al. NIPS 2012
SIFT + FVs: 0.26 test err.CNN: 0.15 test err.
まとめ
ニューラルネットワークの基本要素
素子の振る舞い,アーキテクチャ,学習モデル
階層型ニューラルネットワーク
Perceptron, Neocognitron, CNN
学習則
誤り訂正学習,微分を用いたコスト関数の極小化
CNN の原点は Neocognitron であり,脳に学んだ機械である
CNN は,ビッグデータ時代になって実用化へ
43
参考にしたもの岡谷先生のスライド http://www.vision.is.tohoku.ac.jp/jp/research/
LeCun の Website http://yann.lecun.com/
Overfeat: http://cilvr.nyu.edu/doku.php?id=software:overfeat:start#webcam_demo
DeCAF: A Deep Convolutional Activation Feature for Generic Visual Recognitionhttps://github.com/UCB-ICSI-Vision-Group/decaf-release/
IEEE PAMI 特集号http://ieeexplore.ieee.org/xpl/tocresult.jsp?isnumber=6541932
CVPR 2012 Deep Learning チュートリアルhttp://cs.nyu.edu/~fergus/tutorials/deep_learning_cvpr12/
神経回路と情報処理(福島邦彦: 朝倉書店)
ICONIP 2007 Special Session for Neocognitron
Python と Theano を使った Deepnet 構築 http://deeplearning.net/
44