20141208.名大セミナー

101
ディープラーニング 階層型 Neural Net の温故知新 2014/12/08 電気通信大学 大学院情報理工学研究科 庄野 逸: [email protected] 1 http://www.slideshare.net/HAL9801

Upload: shouno-hayaru

Post on 12-Jul-2015

3.084 views

Category:

Science


4 download

TRANSCRIPT

Page 1: 20141208.名大セミナー

ディープラーニング 階層型 Neural Net の温故知新

2014/12/08 電気通信大学 大学院情報理工学研究科

庄野 逸: [email protected]

1

http://www.slideshare.net/HAL9801

Page 2: 20141208.名大セミナー

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) 歴史的背景

Page 3: 20141208.名大セミナー

Neural net (NN)の基礎知識

基本素子 ネットワークアーキテクチャ 学習

3

Page 4: 20141208.名大セミナー

McCulloch-Pitts 素子モデル(1)

最初の数理的ニューロンモデル (McCulloch&Pitts 43)

入力は線形重ねあわせ

活性化関数 f(・): 閾値制御

4

u

yx1 y

x2Σ u

θ

w1

w2

Page 5: 20141208.名大セミナー

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

Page 6: 20141208.名大セミナー

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

Page 7: 20141208.名大セミナー

Architectureニューラルネットワークアーキテクチャ

階層型(今回のメインはこっち)

相互結合型

7Input

Output

Page 8: 20141208.名大セミナー

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

Page 9: 20141208.名大セミナー

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) 歴史的背景

Page 10: 20141208.名大セミナー

Perceptron (Rosenblatt 57)

10

Page 11: 20141208.名大セミナー

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

It's  "1"

Page 12: 20141208.名大セミナー

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

Page 13: 20141208.名大セミナー

Perceptronの学習: 誤り訂正学習

Hebb 学習則教師 t と出力 y の関係により w を修正

目標{xn, tn} が与えられたとき y(xn) = tn としたい

正解 tn と答え yn が不一致のときのみパラメータを修正

!

解が存在する場合,正しい解に収束する→デモ

13

yx wt

Page 14: 20141208.名大セミナー

単純パーセプトロンの限界

単純パーセプトロン:一本の直線での境界分離(線形分離)

XOR 問題は解けない (Minsky & Papert 68)→ NN 第1次 冬の時代

14

クラス1クラス2

φ2

φ1

Page 15: 20141208.名大セミナー

単純パーセプトロンの限界の打破XOR 問題の解法

複数の分離直線を使えば分離可能

各線の分離結果を合成→階層化は妥当(多分)

15

クラス1クラス2

x2

x1

{xn} {zn}

x1

x2

x0z0

z1

z2

1 1

y

Page 16: 20141208.名大セミナー

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) 歴史的背景

Page 17: 20141208.名大セミナー

Back Propagation with Multi Layer Perceptron

(Rumelhart+ 86) (Amari 67)

17

Page 18: 20141208.名大セミナー

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

Page 19: 20141208.名大セミナー

線形パーセプトロンの勾配学習法(1)

2乗誤差の勾配を用いる学習則デルタ則,adaline 則 (Widrow-Hoff 1960)

19

勾配を使うには微分可能性が必要なのでニューロンの活性化関数に線形関数を使う

u

yx1 y

x2Σ u

w1

w2u

yx1 y

x2Σ u

θ

w1

w2

McCuloch-Pitts

Page 20: 20141208.名大セミナー

線形パーセプトロンの勾配学習法(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

更新則

Page 21: 20141208.名大セミナー

Multi Layer Perceptron の アーキテクチャ

21

yk

tk

k

jwkj

iwji

入力層 x

隠れ層 z

出力層 y

Multi Layer Perceptron(MLP) アーキテクチャ

隠れ層を持つ

信号の処理方向は一方向のみ

教師あり学習 {xn, tn} → {w(1)ji, w(2)kj}

Page 22: 20141208.名大セミナー

連鎖則による微分の導出(1)

22

コスト関数yk

tk

k

jwkj

iwji� j

微係数

割と煩雑に見えるけど…

Page 23: 20141208.名大セミナー

連鎖則による微分の導出(2)

23

コスト関数yk

tk

k

jwkj

iwji� j

微係数 誤差 δ の導入ですっきり

誤差 δ は,上位層からの逆方向の伝達 (Back propagation) で記述可能

Page 24: 20141208.名大セミナー

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)

Page 25: 20141208.名大セミナー

Back prop. の応用先

XOR 問題 (Rumelhart+ 86)

Auto-Encoder (Ackley+ 85), 画像圧縮(Cottrell+ 87)

NETtalk (Sejnowski & Rosenberg 87)

ソナー音識別(Gorman & Sejnowski 88)

コンボリューションネット(Le-Net)(LeCun+ 89)

25

Page 26: 20141208.名大セミナー

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) 歴史的背景

Page 27: 20141208.名大セミナー

Neocognitron (Fukushima 1980)

27

Page 28: 20141208.名大セミナー

視覚野(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 を改変)

Page 29: 20141208.名大セミナー

初期視覚野 (V1野) の受容野計測初期視覚野の細胞の観えている範囲(受容野)は狭い

視覚野中の “エッジ” や “線分” といった成分に反応

単純型細胞(simple cell)と複雑型細胞(complex cell)に大きく分けられる

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

Page 30: 20141208.名大セミナー

初期視覚野の性質

線分やエッジなどの成分に反応

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

?

?

Simple Cell Phase Sensitive

Orientation Selective

Receptive Field

Input Stimulus

Fire Not FireNot Fire

Phase InsensitiveComplex Cell

Receptive Field

Input Stimulus

Fire Not FireFire

Page 31: 20141208.名大セミナー

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

Page 32: 20141208.名大セミナー

Simple/Complex Cell 計算論的解釈

32

細胞種類 結合様式 計算の意味 計算操作

Simple cell

特徴抽出 テンプレートマッチ

Gaussian-Tuning (AND 的)

Complex cell

変形の許容 並進不変性

Soft-max (OR 的)

(Poggio 07 を改変)

Page 33: 20141208.名大セミナー

高次視覚野の性質

中程度に複雑な特徴に反応顔細胞の存在

巨大な受容野

時空間的な変化に許容的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 を改変)

Page 34: 20141208.名大セミナー

生理学的な知見

https://grey.colorado.edu/CompCogNeuro/index.php/CCNBook/Perception

細かい特徴 抽象特徴

Page 35: 20141208.名大セミナー

CNN の視覚野的解釈

Hubel & Wiesel : Simple → Complex Cell の階層性

V2 → IT の不明な領野 → 初期視覚野構造のアーキテクチャ外挿

学習によるチューニング可能性

35

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

Page 36: 20141208.名大セミナー

Convolution NN (CNN) (Neocognitron)

畳み込みによる局所特徴抽出と空間プーリング

Neocognitron(Fukushima80): 階層仮説の実装 (Hubel & Wiesel 59)

36

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

Page 37: 20141208.名大セミナー

CNN の動作原理局所特徴抽出(畳み込み)+変形に対する不変性(プーリング)

37

Preferred Feature

(Orientation): XInput: x

Convlution Layer

Blurring

Preferred

Orientation

S-cell responseInput: x

Subsampling Layer

ConvolutionsSubsampling

Convolutions Subsampling

Preferred feature

Page 38: 20141208.名大セミナー

CNN の動作原理(contd.)局所特徴抽出(畳み込み)+変形に対する不変性(プーリング)

38

Page 39: 20141208.名大セミナー

Neocognitron まとめ

畳み込み演算を原理としたネットワーク構造

Perceptron に比べて,結合係数の自由度は低いでも視覚入力は並進対称なので構造としては妥当(多分)

特徴抽出層とプーリング層の階層構造

徴抽出層は学習で決定可能BP使わなくても割りと普通に動く.たぶんクラスタリングアルゴリズムでも動く

プーリングによる空間的な位相ずれの許容

39

Page 40: 20141208.名大セミナー

40

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) 歴史的背景

Page 41: 20141208.名大セミナー

ConvolutionNeural Network

(CNN) (LeCun+ 1986, Okada 1988)

41

Page 42: 20141208.名大セミナー

Convolution-net

基本アーキテクチャNeocognitron (Fukushima 80)

畳み込み演算による,局所特徴抽出+並進不変性

学習則に Back-Propagation (LeCun+86, Okada88)

42

(LeCun+86)

Page 43: 20141208.名大セミナー

CNN デモ

43

http://yann.lecun.com/exdb/lenet/index.html

Rotation Scale

NoiseMultiple Input

Page 44: 20141208.名大セミナー

Deep learning事例: 一般物体認識

IMAGENET Large Scale Visual Recognition Challenge 2012

1000 カテゴリ × 約1000枚の訓練画像

Convolution Neural Network

44

Krizhevsky et al. NIPS 2012

SIFT + FVs: 0.26 test err.CNN: 0.15 test err.

Page 45: 20141208.名大セミナー

45

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) 歴史的背景

Page 46: 20141208.名大セミナー

Boltzmann Machine &

Restricted Boltzmann Machine

(Hinton+85, Hinton 00)

46

Page 47: 20141208.名大セミナー

Boltzmann Machine (Hinton+ 85)

確率型素子

隠れ素子 h と可視素子 v

相互結合型アーキテクチャ

対数尤度最大化による学習

!

出来ること: パターンの生成,模倣確率分布のエミュレート

47

h

v

v1:v2:v3:

学習パターン

p(v) に基づきパターン生成v:

Page 48: 20141208.名大セミナー

Boltzmann Machine: アーキテクチャ

確率モデル

!

!

エネルギー関数

同時分布

48

h

v

vi = {�1,+1}, h j = {�1,+1}

u =

vh

!

p(h, v) =1

Z(W)

exp(�H(h, v))

Z(W) =X

h,vexp(�H(h, v))

(Boltzmann 分布)H(h, v) = �uTWu

Page 49: 20141208.名大セミナー

Boltzmann Machine: 学習モデル

対数尤度最大化

49

h

v

対数尤度

対数尤度の勾配を用いた最大化W (p)

i j = W (p�1)i j + ⌘

@ ln p(v(p))@Wi j

ln p(v(p)

) = ln

X

hexp(�H(h, v(p)

)) � ln Z(W)

@ ln p(v)@Wi j

=Duiu jE

cramp�Duiu jE

free

MCMC 法による期待値→ 恐ろしく時間がかかる

Page 50: 20141208.名大セミナー

Restricted Boltzmann Machine(RBM): アーキテクチャ

BM で恐ろしく時間がかかる理由→結合数が多すぎること

隠れ層と可視層とを階層構造と考え,層内結合を撤廃→ RBM

何ということでしょう.素子が条件付き独立に!

50

h

v

H(h, v) = �X

i, j

h jWi jvi p(h | v) =Y

j

p(h j | v) =Y

j

exp(h jP

i Wi jvi)

2 cosh(

Pi Wi jvi)

p(v | h) =Y

i

p(vi | h) =Y

i

exp(viP

j Wi jh j)

2 cosh(

Pj Wi jh j)

Page 51: 20141208.名大セミナー

関数 exp( ±u ) / 2 cosh( u ) に関して あまり見かけない表記だがシグモイド関数である

!

この表記だと hj = ±1 の値によらない表記で,計算に便利なので(統計)物理屋さんが好む.

補足

51

exp(h ju)

2 cosh(u)

=exp(+u)

exp(+u) + exp(�u)

=1

1 + exp(�2u)

where hj=1

Page 52: 20141208.名大セミナー

Restricted Boltzmann Machine(RBM): 学習モデル

52

h

v

対数尤度最大化

対数尤度と勾配を用いた最大化ln p(v(p)

) = ln

X

hexp(�H(h, v(p)

)) � ln Z(W)

W (p)i j = W (p�1)

i j + ⌘@ ln p(v(p))@Wi j

@ ln p(v)@Wi j

=Dh jviE

cramp�Dh jviE

free

ほぼ一撃計算vi tanh(

X

i

Wi jvi)

MCMC だけど 10回ぐらいでいいよね?

(Hinton 00)

Page 53: 20141208.名大セミナー

Restricted Boltzmann Machine(RBM): 応用先

53

h

v

RBM の応用先 自然画像 (Salakhudinov+ 07) 文書 (Salakhudinov+ 10, ) 協調フィルタ(Salakhudinov+ 07) 運動検出(Taylor+ 07) 音声特徴抽出(Dahl+ 10, Lee+ 10)

Images$&$Video$

Rela:onal$Data/$$Social$Network$

Massive$increase$in$both$computa:onal$power$and$the$amount$of$data$available$from$web,$video$cameras,$laboratory$measurements.$

Mining$for$Structure$

Speech$&$Audio$

Gene$Expression$

Text$&$Language$$

Geological$Data$Product$$Recommenda:on$

Climate$Change$

Mostly$Unlabeled$• $Develop$sta:s:cal$models$that$can$discover$underlying$structure,$cause,$or$sta:s:cal$correla:on$from$data$in$unsupervised*or$semi,supervised*way.$$• $Mul:ple$applica:on$domains.$ Salkahudinov+14 から拝借

Page 54: 20141208.名大セミナー

54

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) 歴史的背景

Page 55: 20141208.名大セミナー

Deep Belief Net (Hinton+ 06)

55

Page 56: 20141208.名大セミナー

p(v | h1) =Y

i

p(vi | h1)

Sigmoid Belief net

Deep Belief Net(DBN): アーキテクチャ

56

RBM は単層モデル (結構成功はしている)

隠れ層の表現をさらに RBM で学習する機械を考えてみよう!

学習後の下層はパターン生成器として働く(Sigmoid Belief net)

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 )

Page 57: 20141208.名大セミナー

Deep Belief Net(DBN): 学習モデル

57

DBN の学習は,階層ごとのRBM学習 (Greedy Layer-wise Learning)

第1層: 勾配法による対数尤度最大化h1

v

RBM

@ ln p(v)@W1

i j=Dvih jE

cramp�Dvih jE

free

ln p(v(p)) =X

i, j

h1jW

1i jv

(p)i � ln Z(W1)

Page 58: 20141208.名大セミナー

Deep Belief Net(DBN): 学習モデル

58

DBN の学習は,階層ごとのRBM学習 (Greedy Layer-wise Learning)

第1層学習後,p(h1 | v) に基づきサンプル {h1(p)} を収集

第2層: 勾配法による対数尤度最大化

h1

v

h2

RBM

Sigmoid Belief net

@ ln p(h1)@W2

jk

=Dh1

jh2k

Ecramp

�Dh1

jh2k

Efree

ln p(h1(p)) =X

j,k

h2kW2

jkh1j(p) � ln Z(W2)

Page 59: 20141208.名大セミナー

Deep Belief Net(DBN): サンプリング

59

DBN によるサンプリング

最上位層 ( p(h1, h2) )の Gibbs サンプリング,h1 のサンプルを生成

得られた表現 h1 を 下層の Sigmoid Belief Net へ投入,p(v | h1) により v のサンプルを生成

h1

v

h2

RBM

Sigmoid Belief net

h2 h2 h2

h1 h1 h1

v

Page 60: 20141208.名大セミナー

Deep Belief Net(DBN): MNIST を使った場合

60

MNIST を用いたDBNの学習

高位層では,より大まかな特徴抽出器として振る舞う

h1

v

h2

RBM

Sigmoid Belief net

Learned�Features

(Salakhudinov13, 14 より)

Page 61: 20141208.名大セミナー

Convolution Net + Deep Belief Net(CDBN): 自然画像への適用

61

Convolution net + DBN の自然画像への応用(Lee+09)Learning�PartͲbased�RepresentationConvolutional DBN

Faces

Trained�on�face�images.

Object�Parts

Groups�of�parts.

Lee�et.al.,�ICML�2009

Page 62: 20141208.名大セミナー

Convolution Net + Deep Belief Net(CDBN): 自然画像への適用

62

Convolution net + DBN の自然画像への応用(Lee+09)Learning�PartͲbased�RepresentationFaces Cars Elephants Chairs

Lee�et.al.,�ICML�2009

Page 63: 20141208.名大セミナー

Deep Neural Net (Hinton+ 06)

63

Page 64: 20141208.名大セミナー

MLP における Back Prop.

64

過学習問題

訓練誤差 ≫ 汎化誤差

勾配情報の拡散

識別器だけなら上位層で実現可能

全体のトレーニングは難しい

全結合型 NN で顕著

データに対してパラメータ数が過多O(Mk Mk+1 )

Page 65: 20141208.名大セミナー

Deep Neural Net(DNN): アーキテクチャ

65

DBN の構造↔ MLP の構造

識別モデルとして使ったら?

h1

v

h2

p(h1

j | v) =exp(h1

jP

i W1

i jvi)

2 cosh(

Pi W1

i jvi)

y

p(h2

k | h1

) =exp(h2

kP

j W2

jkh1

j )

2 cosh(

Pj W2

jkh1

j )

p(yl = 1 | h2

) =exp(

Pk W3

klh2

k)

Pm exp(

Pk W3

kmh2

k)

SoftMax

Page 66: 20141208.名大セミナー

Deep Neural Net(DNN): 学習

66

Back Prop の問題点: 局所解の存在

DBN を初期状態として使う(Pre-Training)

ネットワークの結合 (Unroll)

結合したネットワークを MLP としてBP 学習(Fine Tuning)h1

v

h2

y

h2

h1

RBM

RBM

SoftMax

Page 67: 20141208.名大セミナー

Deep Neural Net(DNN): MNIST への応用

67

DBNs$for$Classifica:on$

• $Aber$layerSbySlayer$unsupervised*pretraining,$discrimina:ve$fineStuning$$by$backpropaga:on$achieves$an$error$rate$of$1.2%$on$MNIST.$SVM’s$get$1.4%$and$randomly$ini:alized$backprop$gets$1.6%.$$

• $Clearly$unsupervised$learning$helps$generaliza:on.$It$ensures$that$most$of$the$informa:on$in$the$weights$comes$from$modeling$the$input$data.$

W +�W

W

W

W +�

W +�

W +�

W

W

W

W

1 11

500 500

500

2000

500

500

2000

5002

500

RBM

500

20003

Pretraining Unrolling Fine�tuning

4 4

2 2

3 3

1

2

3

4

RBM

10

Softmax Output

10RBM

T

T

T

T

T

T

T

T

誤識別率→ DNN: 1.2 %, SVM 1.4 %, MLP: 1.6 %

Page 68: 20141208.名大セミナー

Deep Auto Encoder DNN の応用

68

Deep$Autoencoders$

!

!

! !�

!

!

!

!

! !�

! !�

! !�

!

! !�

! !�

! !�

!�

!

!

!

!

!

!

"

#$$$

%&'

#

#$$$

"$$$

($$

($$

"$$$

"$$$

($$

" "

#$$$

#$$$

($$($$

"$$$

"$$$

#$$$

($$

#$$$

)

*)

%&'

+,-.,/01012 31,455012

"$$$ %&'

6

*

6$

6$

701-�.81012

* *

# #

6 6

*)

(

6)

9

#)

:

")

;

<1=4>-,

"

#

6

6$

*

6

#)

")

?4>-@5/A-,

B-=4>-,

%&')4C

DNN の応用入力の自動写像

圧縮表現の生成

PreTraining による効率良い学習

Page 69: 20141208.名大セミナー

DNN の応用: テキスト分類

69

Legal/JudicialLeading Economic Indicators

European Community Monetary/Economic

Accounts/Earnings

Interbank Markets

Government Borrowings

Disasters and Accidents

Energy Markets

Model$P(document)$

Bag$of$words$

Reuters$dataset:$804,414$$newswire$stories:$unsupervised*

Deep$Genera:ve$Model$

(Hinton & Salakhutdinov, Science 2006)!(Hinton+ 06 より)

Page 70: 20141208.名大セミナー

Deep Net階層ベースの NN アーキテクチャ

階層部品: RBM, Convolution layer, AutoEncoder

学習方式

階層間の局所学習 (+Back Prop. などの fine-tune)

RBM 学習 (Deep Belief Net: DBN)

RBM+ Back Prop. (Deep Neural Net: DNN)

疎性の導入

Sparse AutoEncoder

70

Page 71: 20141208.名大セミナー

いま何故 Deep learning なのか? (庄野の偏見)

71

Page 72: 20141208.名大セミナー

72

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期

NN 周辺領域の歴史的背景

Page 73: 20141208.名大セミナー

Face detection (Viola & Jones 01)

HOG (Dalal&Triggs 05)

SURF (Bay+ 06)

SIFT (Lowe 99)

Conv. net (LeCun+ 89)

Deep learning(Hinton+ 06)

Sparse Coding (Olshausen&Field 96)

NN 周辺領域の歴史的背景

73

201020001990

今ココSVM

(Vapnik 95)Boosting

(Schapire 90)L1-recovery

(Candes+ 06)

Bayesian Method

Bayesian net (Pearl 00)

Kernel Method

Internet 普及開始 Google Facebook Twitter

Page 74: 20141208.名大セミナー

NN 界隈で起こったこと(90年台後半~)

アーキテクチャ設計の難しさ for Back Prop.

中間層が少なければ表現がプア

中間層が多ければ過学習 (訓練誤差 ≫ 汎化誤差)

勾配情報の拡散

識別器だけなら上位層で実現可能

全体のトレーニングは難しい データに対してパラメータ数が過多(全結合型 NN で顕著)

74

Page 75: 20141208.名大セミナー

NN 界隈で起こったこと(90年台後半~)

機械学習法の進展

Support VectorMachine / Kernel 法

Boosting

Shallow network で十分じゃないの?的な風潮

そもそもデータがないし…

75

Page 76: 20141208.名大セミナー

一方CV業界では…

76

Page 77: 20141208.名大セミナー

Viola & Jones による顔検出Haar Like Feature + Boosting (Viola & Jones01)

77

Haar Like Detectors

Training Sampleshttp://vimeo.com/12774628

Page 78: 20141208.名大セミナー

SIFT による画像記述Scale Invariant Feature Transform (Lowe99)

特徴点検出とヒストグラムにより特徴記述

回転・スケール変化に不変,照明変化に頑健

78

u

v

l

ガウシアン差分画像 DoG

D( u, v, l )

極値探索

SIFT 特徴点(キーポイント)

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

1 2 3 4 5 6 7 80

0.1

0.2

SIFT 特徴点(キーポイント) SIFT 記述子

ヒストグラム化

特徴点周りの勾配情報の算出

Page 79: 20141208.名大セミナー

Bag of Features による画像認識

特徴量記述量を直接識別器へ (Bag of Visual Words)(Csurka+04)

79http://www.vision.cs.chubu.ac.jp/sift/PDF/sift_tutorial_ppt.pdf

Page 80: 20141208.名大セミナー

画像認識問題の NN 的解釈画像特性(エッジ等)の特徴量構築+機械学習

Shallow Network model?

80

Input

OutputLeopardCat

Feature Detector(Haar, SIFT, HOG...)

Machine Learning (SVM, Boosting...)

Page 81: 20141208.名大セミナー

部分特徴から組み合わせ特徴へBag of Words からの脱却

部分特徴の組み合わせ特徴量へ (Felzenswalb+10, Divvala+12)

81

HierarchicalSDeep$Models$

Collins$&$Quillian$(1969)$

Hierarchical$Bayes$

CategorySbased$Hierarchy$

HD*Models:*Compose$hierarchical$Bayesian$

models$with$deep$networks,$two$influen:al$

approaches$from$unsupervised$learning$

Deep*Networks:*• $learn$mul:ple$layers*of*nonlineari;es.*• $trained$in$unsupervised$fashion$SS$unsupervised*feature*learning*–$no$need$to$rely$on$humanScrabed$input$representa:ons.$

• *labeled*data*is$used$to$slightly$adjust$the$model$for$a$specific$task.$

Hierarchical*Bayes:*• $explicitly*represent*category*hierarchies*for$sharing$abstract$knowledge.*• $explicitly$iden:fy$only$a$small*number*of*parameters*that$are$relevant$to$the$new$concept$being$learned.$

Marr$and$Nishihara$(1978)$

Deep$Nets$

PartSbased$Hierarchy$

(Marr&Nishihara78)

(Felzenswalb+10)

Page 82: 20141208.名大セミナー

特徴抽出機構の設計どうやって(中程度に複雑な)特徴検出器を作るか?

“Token” (Marr82) 的な組み合わせ

!

!

Object parts:

!

!

ハンドメイドな特徴量はしんどい→機械学習による表現獲得

82

Contnuation Coner Junction Cross

Page 83: 20141208.名大セミナー

Face detection (Viola & Jones 01)

HOG (Dalal&Triggs 05)

SURF (Bay+ 06)

SIFT (Lowe 99)

Conv. net (LeCun+ 89)

Deep learning(Hinton+ 06)

Sparse Coding (Olshausen&Field 96)

NN 周辺領域の歴史的背景

83

201020001990

今ココSVM

(Vapnik 95)Boosting

(Schapire 90) L1-recovery (Candes+ 06)

Bayesian Method

Bayesian net (Pearl 00)

Kernel MethodSparse Model

Sparse Model

Page 84: 20141208.名大セミナー

疎表現によるデータ記述基底ベクトルによる線形和表現

なるべく多くの係数が 0 になることを要請

84

y =MX

i

x

i

di

= x1 +x2 +x3 +...

y d1 d2 d3

なるべく0に

{di} を学習で決める

Page 85: 20141208.名大セミナー

疎表現によるデータ記述

85

= x1 +x2 +x3 +...

y d1 d2 d3

なるべく0に

H =X

p

�������yp �X

i

xpi di

�������

2

+ �X

i

kxpi k1

画像をなるべく 忠実に表現

なるべく多くの 係数を 0 に (LASSO)

画像パッチ {yp} から {di} と {xip} を取得可能か?

Page 86: 20141208.名大セミナー

Sparse Coding による特徴抽出自然画像の Sparse coding による表現 (Olshausen&Fields96)

初期視覚野の線形応答関数(Anzai+99), Gabor Waveletに類似

自然音源の Sparse coding による表現 (Terashima&Okada12)

和音の表現

86

50 100 150 200 250 300 350 400 450 500

50

100

150

200

250

300

350

400

450

500

50 100 150 200 250 300 350 400 450 500

50

100

150

200

250

300

350

400

450

500

50 100 150 200 250 300 350 400 450 500

50

100

150

200

250

300

350

400

450

500

Slide credit: Andrew Ng

Page 87: 20141208.名大セミナー

Sparse Representation for MNIST

60K train, 10K test

Dict.size 512

Linear SVM classification

87

H =X

p

�������yp �X

i

xpi di

�������

2

+ �X

i

kxpi k1

Eval. Param.

Slide credit: Kai Yu

Input Feature Classifier

Sparse Coding

Page 88: 20141208.名大セミナー

Sparse Representation for MNIST

λ = 5×10-4 部分的な検出器

88

H =X

p

�������yp �X

i

xpi di

�������

2

+ �X

i

kxpi k1

Eval. Param.

Slide credit: Kai Yu

Page 89: 20141208.名大セミナー

Sparse Representation for MNIST

λ = 5×10-2 部分的な数字検出器

89

H =X

p

�������yp �X

i

xpi di

�������

2

+ �X

i

kxpi k1

Eval. Param.

Slide credit: Kai Yu

Page 90: 20141208.名大セミナー

Sparse Representation for MNIST

λ = 5×10-4 VQ 表現的

90

H =X

p

�������yp �X

i

xpi di

�������

2

+ �X

i

kxpi k1

Eval. Param.

Slide credit: Kai Yu

Page 91: 20141208.名大セミナー

Sparse Auto EncoderPredictive Sparse Decomposition(Ranzato+07)

91

x

p = f (Wy

p)y

p = Dx

p

Sparse Representation {xp}

Input Patchs {yp}

L1-Constraint

minD,W,x

X

p

kyp � Dx

pk2 + kxp � f (Wy

p)k2 + �X

i

kxp

i

k

Encoder

Decoder

Page 92: 20141208.名大セミナー

Sparseness + Hierarchy?Hierarchical Sparse Coding (Yu+11)

DBN (Hinton & Salakhutdinov06)

92

Hiearchy Representation

Input Patchs {yp}

Level 2 Features

Level 1 FeaturesEncoderDecoder

EncoderDecoder

EncoderDecoder

Page 93: 20141208.名大セミナー

Sparseness + Hierarchy?DNN (Hinton & Salakhutdinov06) + 疎性をいれるために Drop-out (Hinton+12) (でも石川&甘利の方が少し古いと思う)

93

Hiearchy Representation

Input Patchs {yp}

Level 2 Features

Level 1 FeaturesEncoder

Encoder

EncoderDecoder を外せば NN として動作

Page 94: 20141208.名大セミナー

Sparseness + Hierarchy?DBN (Hinton & Salakhutdinov06)

94

Hiearchy Representation

Input Patchs {yp}

Level 2 Features

Level 1 Features

Decoder を動作させて最適特徴を導出

Decoder

Decoder

Decoder

Page 95: 20141208.名大セミナー

Hierarchical CNN + Sparse Coding

Sparse coding を用いた階層型識別器(Yu+11, Zeiler+11)

95

Sparse Coding

2nd Layer の基底回転,並進に対応

ConvolutionsSubsampling

Convolutions Subsampling

Page 96: 20141208.名大セミナー

Deep learning事例: 画像特徴の教師なし学習

12層 DNN

パラメータ数 ~1010

教師なし学習による自動特徴抽出

入力: YouTube の画像 108 枚

16 core PC x 103 台 x 3日間

「おばあさん細胞」生成か?

96

Le et al. ICML 2012Preferred Stimuli in Higher level cellExamples of Training images

Page 97: 20141208.名大セミナー

まとめ

ニューラルネットワークの基本要素

素子の振る舞い,アーキテクチャ,学習モデル

階層型ニューラルネットワークは昔から在る

Perceptron, Neocognitron, CNN

学習則

誤り訂正学習,微分を用いたコスト関数の極小化

CNN の原点は Neocognitron であり,脳に学んだ機械である

CNN は,ビッグデータ時代になって実用化へ

97

Page 98: 20141208.名大セミナー

まとめ: cont’d

Deep Learning の発想は古くから存在

ネットワークのアーキテクチャと学習,双方が重要

Deep Learning は何故流行っているか?

Shallow network の性能飽和

Hand-maid Feature detector の難しさSparse Modeling の導入による学習方式の確立

計算機性能の向上による可能性の供給所謂ビッグデータの到来による需要

98

Page 99: 20141208.名大セミナー

やるべきこと

細かい部分は(多分まだ)職人芸を必要とする.

Sparseness の設定,データに応じた素子の個数設定データからのλの推定

設計スキームの一般化 (libsvm 的な何か?)は多分必要

特徴学習・表現学習の期待

Semi-supervised learningラベル付データのコストが高い分野は割りとありそう

マルチデバイスの統合など,イメージフュージョン

99

Page 100: 20141208.名大セミナー

Software-Package

100

Ăąnïƾ�

\L� UV0OKH� Ze� ^l�Pylearn2� Univ. Montrealp

LISA Lab �Python (C++)� NumPylpƎđĈE

ćånÏûǻÐ

Torch7 � NewYork Univ.nm? � Lua/C++� Luao}���¼¯¢�Á�EơźĈpÖ]�

Caffe� Berkeley Vision and Learning Center (UCB)�

C++ (Python)� ƵÉGPUkĀÖƌêL2014/08ċŔM�

Cuda-convnet2� Alex Krizhevsky� C++ (Python)� ²½ GPUƀŸkpƬǔïËLTesla K20x8M

� �元ネタは得居さんのSlideから

Page 101: 20141208.名大セミナー

参考にしたもの岡谷先生のスライド 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/

101