10. 世界を取り巻く動き
2013/03 Google: DNN research を買収
2013/04 Baidu: Institute of Deep Learning を設立
2013/12 Facebook: AI research lab を設立
2014/01 Google: DeepMind を設立
日本でも人工知能研究拠点の設立へ
ドワンゴ: 人工知能研究所
産総研: 人工知能研究所設立
11
31. Perceptronの学習(1): 誤り訂正学習
Hebb 学習則
教師 t と出力 y の関係により w を修正
目標{xn, tn} が与えられたとき y(xn) = tn としたい
正解 tn と答え yn が不一致のときのみパラメータを修正
解が存在する場合,正しい解に収束する→デモ
32
yx
w
t
42. 多層ネットワークの学習の難しさ
誤り訂正教師信号 t は1階層であれば対応可能
中間層 z1, z2 に対する教師信号はどう生成する?
43
u
yx1 y
x2
Σ
u
θ
w1
w2
u
yx1 y
x2
Σ
u
θ
w1
w2
u
yx1 y
x2
Σ
u
θ
w1
w2
x1
x2
z1
z2
y
tw11
(1)
w22
(1)
w12
(1)
w21
(1)
w1
(2)
w2
(2)
z1
θ
z2
θ
u
u OK!
NG!
43. Error Back-propagation
単純 Perceptron の線形分離問題
→ 階層性による打破
多層Perceptron (MLP)の学習則
基本アイディアは勾配法
微分の連鎖則を活用
44
x0
x1
xD
z0
z1
zM
y1
yK
w
(1)
MD
w
(2)
KM
w
(2)
10
hidden units
inputs outputs
53. MLP の勾配学習
MLP の勾配学習に線形性ではなく微分可能性なのでは?
微分の連鎖則(chain-rule) を適用
多層に意味を持たせるためには
微分可能な非線形活性化関数であれば良い
54
u
yx1 y
x2
Σ
u
θ
w1
w2
u
yx1 y
x2
Σ
u
θ
w1
w2
u
yx1 y
x2
Σ
u
θ
w1
w2
x1
x2
z1
z2
y
tw11
(1)
w22
(1)
w12
(1)
w21
(1)
w1
(2)
w2
(2)
z1
u
z2
u
y
u
@E(w)
@w(1)
22
@E(w)
@w(2)
2
z1
u
z2
u
y
u
55. MLP 学習のコスト関数例
56
yk
tk
k
j
wkj
i
wji
入力層 x
隠れ層 z
出力層 y
回帰問題と同様に考える
n 番目の入力に関するコスト
回帰問題→2乗誤差関数
2値分類→Logisitic-Sigmoid
多値分類→ Softmax
yn
k = yk(xn
; w) として
En
(w) =
1
2
X
k
⇣
tn
k yn
k
⌘2
En
(w) =
X
k
tn
k ln yn
k
+ (1 tn
k )(1 yn
k)
65. 初期視覚野の性質
線分やエッジなどの成分に反応
Simple cell: 方位,位相に敏感
Complex cell: 位相には許容的
66
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
V4
PITCIT
Ventral Pathway
AIT
TEO
TE
V1
V4
V2
IT
Small receptive field
Edge, Line segment
detector
Large receptive field
Face, Complex feature
detector
?
?
Simple Cell
Phase Sensitive
Orientation Selective
Receptive Field
Input Stimulus
Fire Not FireNot Fire
Phase InsensitiveComplex Cell
Receptive Field
Input Stimulus
Fire Not FireFire
66. Hubel-Wiesel 階層仮説
Simple Cell の出力合成で,
Complex cell は説明可能
(Hubel & Wiesel 59)
67
Simple Cell
Phase Sensitive
Orientation Selective
Receptive Field
Input Stimulus
Fire Not FireNot Fire
Phase InsensitiveComplex Cell
Receptive Field
Input Stimulus
Fire Not FireFire
84. Boltzmann Machine:
アーキテクチャ
素子モデル
86
h
v
vi = { 1, +1}, hj = { 1, +1}
u =
v
h
!
とりあえず,系のエネルギーを定義しておく
E(u) =
X
i,i0
Wi0ivivi0
X
j, j0
Wj0 jhjhj0
X
i,j
Wijvihj
係数 W が互いの素子の好感度設定
Wukul において W > 0 ならukとul とは好きどうし
90. Restricted Boltzmann Machine(RBM):
アーキテクチャ
BM で恐ろしく時間がかかる理由
→結合数が多すぎること
隠れ層と可視層を階層構造と考え,
層内結合を撤廃
→ RBM
何ということでしょう.
素子が条件付き独立に!
92
h
v
H(h, v) =
X
i,j
hjWi jvi p(h | v) =
Y
j
p(hj | v) =
Y
j
exp(hj
P
i Wijvi)
2 cosh(
P
i Wijvi)
p(v | h) =
Y
i
p(vi | h) =
Y
i
exp(vi
P
j Wijhj)
2 cosh(
P
j Wijhj)
96. p(v | h1
) =
Y
i
p(vi | h1
)
Sigmoid
Belief net
Deep Belief Net(DBN):
アーキテクチャ
RBM は単層モデル (結構成功はしている)
隠れ層の表現をさらに RBM で
学習する機械を考えてみよう!
学習後の下層はパターン生成器として働く
(Sigmoid Belief net)
98
h1
v
h2
RBM
Sigmoid
Belief net
p(v, h1
, h2
) = p(v | h1
)p(h1
, h2
)
RBM
p(h1
, h2
) =
1
Z(W2)
exp(
X
j,k
h2
kW2
jkh1
j)
97. Deep Belief Net(DBN):
学習モデル
DBN の学習は,階層ごとのRBM学習
(Greedy Layer-wise Learning)
第1層: 勾配法での対数尤度最大化
99
h1
v
RBM
@ ln p(v)
@W1
ij
=
D
vihj
E
cramp
D
vihj
E
free
ln p(v(p)
) =
X
i,j
h1
jW1
i jv(p)
i ln Z(W1
)
98. Deep Belief Net(DBN):
学習モデル
DBN の学習は,階層ごとのRBM学習
(Greedy Layer-wise Learning)
第1層学習後,p(h1 | v) に基づき
サンプル {h1(p)} を収集
第2層: 勾配法による対数尤度最大化
100
h1
v
h2
RBM
Sigmoid
Belief net
@ ln p(h1
)
@W2
jk
=
D
h1
jh2
k
E
cramp
D
h1
jh2
k
E
free
ln p(h1(p)
) =
X
j,k
h2
kW2
jkh1
j
(p)
ln Z(W2
)
99. Deep Belief Net(DBN):
サンプリング
DBN によるサンプリング
最上位層 ( p(h
1
, h
2
) )の Gibbs サンプリング,h
1
のサンプルを生成
得られた表現 h
1
を 下層の Sigmoid Belief Net へ投入,p(v | h
1
)
により v のサンプルを生成
101
h1
v
h2
RBM
Sigmoid
Belief net
h2 h2 h2
h1 h1 h1
v
100. Deep Belief Net(DBN):
MNIST を使った場合
MNIST を用いたDBNの
学習
高位層では,より大まかな
特徴抽出器として振る舞う
102
h1
v
h2
RBM
Sigmoid
Belief net
Learned Features
(Salakhudinov13, 14 より)
101. Convolution Net + Deep Belief Net(CDBN):
自然画像への適用
Convolution net + DBN の自然画像への応用(Lee+09)
103
Learning Part based Representation
Convolutional DBN
Faces
Trained on face images.
Object Parts
Groups of parts.
Lee et.al., ICML 2009
102. Convolution Net + Deep Belief Net(CDBN):
自然画像への適用
Convolution net + DBN の自然画像への応用(Lee+09)
104
Learning Part based Representation
Faces Cars Elephants Chairs
Lee et.al., ICML 2009
104. MLP における Back Prop.
106
過学習問題
訓練誤差 汎化誤差
勾配情報の拡散
識別器だけなら上位層で実現可能
全体のトレーニングは難しい
全結合型 NN で顕著
データに対してパラメータ数が過多
O(Mk Mk+1 )
105. Deep Neural Net(DNN):
アーキテクチャ
DBN の構造 MLP の構造
識別モデルとして使ったら?
107
h1
v
h2
p(h1
j | v) =
exp(h1
j
P
i W1
ijvi)
2 cosh(
P
i W1
ijvi)
y
p(h2
k | h1
) =
exp(h2
k
P
j W2
jkh1
j)
2 cosh(
P
j W2
jkh1
j)
p(yl = 1 | h2
) =
exp(
P
k W3
klh2
k)
P
m exp(
P
k W3
kmh2
k)
SoftMax
106. Deep Neural Net(DNN):
学習
Back Prop の問題点: 局所解の存在
DBN を初期状態として使う
(Pre-Training)
ネットワークの結合 (Unroll)
結合したネットワークを MLP として
BP 学習(Fine Tuning)
108
h1
v
h2
y
h2
h1
RBM
RBM
SoftMax
107. Deep Neural Net(DNN):
MNIST への応用
誤識別率→ DNN: 1.2 %, SVM 1.4 %, MLP: 1.6 %
109
DBNs$for$Classifica:on$
W +W
W
W
W +
W +
W +
W
W
W
W
1 11
500 500
500
2000
500
500
2000
500
2
500
RBM
500
2000
3
Pretraining Unrolling Fine tuning
4 4
2 2
3 3
1
2
3
4
RBM
10
Softmax Output
10
RBM
T
T
T
T
T
T
T
T