線形識別機構 閾値論理

21
パパパパパパパパ パパパパパパパパパパパパパ パパ パパ パパ パパ A513 Email [email protected] パパパパパ http://wada1.sys.wakayama- u.ac.jp/PRA/ パパパパパパ パパパパ

Upload: billy

Post on 31-Jan-2016

71 views

Category:

Documents


0 download

DESCRIPTION

パターン認識特論 ー閾値論理と線形識別機構ー 担当:和田 俊和     部屋  A513 Email [email protected] 講義資料は http://wada1.sys.wakayama-u.ac.jp/PRA/. 線形識別機構 閾値論理. B. B. B. A. B. A. B. A. A. B. A. A. A. B. A. A. 線形識別関数とは. 識別面 :異なるカテゴリー(クラス)に属するパターンを分離する面 線形識別面 :線形方程式として表現できる識別面. B. B. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 線形識別機構 閾値論理

パターン認識特論ー閾値論理と線形識別機構ー

担当:和田 俊和    部屋  A513

Email   [email protected]講義資料は http://wada1.sys.wakayama-u.ac.jp/PRA/

線形識別機構閾値論理

Page 2: 線形識別機構 閾値論理

線形識別関数とは

識別面:異なるカテゴリー(クラス)に属するパターンを分離する面

線形識別面:線形方程式として表現できる識別面

AA

AA

A A

A

A

A

BB

B

B B

B

B

Page 3: 線形識別機構 閾値論理

線形識別関数の数学的表現線形識別の方法:線形識別面に直交するベクト

ル W 上にパターンxを投影し、原点からその投影点までの長さVの大小関係によって帰属するクラスを決定する。

AA

AA

A A

A

A

A

BB

B

B B

B

B

w w・x 

|w|V =

θ’

If v <θ’,  x  belongs to AOtherwise, x  belongs to B

Page 4: 線形識別機構 閾値論理

線形識別関数の数学的表現

真面目に長さを計らなくても良い。

AA

AA

A A

A

A

A

BB

B

B B

B

B

w

w ・x | w |v  =

θ’

If w・x <θ,  x belongs to AOtherwise, x  belongs to B

| w | v  = w ・x 

したがって、 w ・x と| w | θ’ (= θ )の大小関係を調べれば良い.

Page 5: 線形識別機構 閾値論理

w ・xの意味( TLU との関係 )TLU : Threshold Logic Unit (McCulloch and Pitts,

1943)If w ・x <θ,  y=0Otherwise, y=1

w ・x は、 TLU の内部活性度と見なすことができる。

w=(w1,…,wn)

x=(x1,…,xn)

Page 6: 線形識別機構 閾値論理

W の拡張xn+1= -1 につながった入力を付加する。

If w・x <0,  y=0Otherwise, y=1

閾値 θ をベクトル w に含めてしまう。xn+1=-1

-1

Wn+1

Page 7: 線形識別機構 閾値論理

線形識別関数の学習( 誤識別した場合のwの調整 )

教師付き学習:入力データとクラスデータの (セット x ,t )を与える。( t=0 ⇒y=0, t=1 ⇒y=1 )

誤識別のケース:

•w ・x >0   (y=1) and t  =0

•w ・x <0 (y=0) and t  =1

x

w

w’

αx

x

w

w’‐αx

w’=w+α(t - y)x

α :学習率

Page 8: 線形識別機構 閾値論理

線形識別関数の学習の例( ANDゲート )

初期値:w = ( 0 ,0.4,0.3 ) ,α=0.25

Page 9: 線形識別機構 閾値論理

応用: Perceptron(Rosenblatt,1962) 拡張されたTLUAssociation Unit は任意の二値論理関数(固定)

Page 10: 線形識別機構 閾値論理

y2: (AD)/(BC)y1: (AB)/(CD)

TLUを用いた多クラスの識別

C

C CC

DD

D

D

D

B B

B

AA

A A

B

C

Σ Σ ΣΣ

A B C D

Σ Σ

Page 11: 線形識別機構 閾値論理

y2: (AD)/(BC)y1: (AB)/(CD)

多段TLUの学習(1)

C

C CC

DD

D

D

D

B B

B

AA

A A

B

C

Σ Σ

層毎に学習する方法

1 0y1    (AB) (CD)y2 (AD) (BC)Σ Σ ΣΣ

A B C Dy1 y2 A B C D 1 1 1 0 0 0 1 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0

Page 12: 線形識別機構 閾値論理

多段TLUの学習( 2 )

問題: 各 TLU について  E=1/2 (t - x ・w)とし、これを最小化するように w を変更する。解法: δw = - α      = α(t - x ・ w)x とし、w’=w+δwによって更新する。

f は微分可能ではないが、 活性度 w ・ xは微分可能。 w ・ x を -1,1 の 2 クラスに分けた教師信号を個々の TLU に与えれば、学習が行えるはず。

Σ Σ

Σ Σ ΣΣ

A B C D

結局、全ての TLU に教師信号を与えるので、層ごとの学習と同じことになる。

∂E∂w

2

Page 13: 線形識別機構 閾値論理

問題点

•全てのユニットに教師信号を与えなければ

ならない。(出力層にだけ教師信号を与えた

い。)

•f(x ; w) は不連続関数であり w で微分するこ

とができない。(閾値処理に起因する。)

Page 14: 線形識別機構 閾値論理

ニューラルネット

Σ Σ

Σ Σ ΣΣ

A B C D

Page 15: 線形識別機構 閾値論理

ニューラルネットの学習

Σ Σ

Σ Σ ΣΣ

A B C D

E=1/2(t-σ(x ・ w))2 を w で微分すると  - σ’(x ・ w) (t - σ(x ・ w))xが得られる。このことから、δ= ασ’(x ・ w) (t - σ(x ・ w)) とし、 w’=w+δxによって更新する方法が考えられる。(α は学習係数)教師信号 t を全てのニューロンに

与えなければならない。。。。本当か?

出力層について教師信号を与え、中間(隠れ)層の δ は出力層の δから計算する。

Page 16: 線形識別機構 閾値論理

ニューラルネットの学習  back propagation

j

l

wlj

m

wmj

k

wkj 出力層( j 番目):

δ = ασ’( x ・ w ) (t - σ(x ・ w )) とし、w = w +δxによって更新する。( δ は x に対する w の修正量)

j

j

j

j ’ j j

jjj

j n

wki

i

wkn

k

wkj

中間層 (k 番目 ) :δ= σ’(x ・ w ) Σδwk とし、

w =w +δxによって更新する。(出力層の修正係数 δ を使って 中間層の修正係数を計算する)

k

k

k k j j

j Ik∈

k ’ k k

出力層

中間層

出力層

中間層

Page 17: 線形識別機構 閾値論理

ニューラルネットの学習  back propagation

出力層:δ = ασ’( x ・ w ) (t - σ(x ・ w )) とし、w = w +δxによって更新する。

j

j

j

j ’ j j

jjj

中間層:δ= σ’(x ・ w ) Σ(δwk ) とし、

w =w +δxによって更新する。

k

k

k k j j

j Ik∈

k ’ k k

Forward pass:•入力を与え、中間層の出力を 計算する。•中間層の出力から出力層の 値を計算する。

Backward pass:•教師信号と出力層の値の差  から δ を計算し出力層につ  ながる重み係数を変更する。•出力層の δ から中間層の δ を計算する。

Page 18: 線形識別機構 閾値論理

Δwij(n)=αδjxi

j+λΔwij(n-1)

学習の効率化

学習率 α :大きくすれば、学習の効果が上がるが、学習結果が不安定になる。小さくすれば学習結果は安定になるが、学習がなかなか進まない。 どうするか?

前回の係数変化の傾向を利用することにより、前回も同じ方向に変化したなら、次も同じ方向に移動しやすいバイアスをかける。

Page 19: 線形識別機構 閾値論理

非線型識別関数獲得の由来

TLU でもニューロ素子でもネットワーク化すれば、非線型識別関数は獲得できる

Page 20: 線形識別機構 閾値論理

汎化と分化の制御中間(隠れ層)素子数の設定

中間層の素子数を増やせば分化が進み、減らせば汎化が進む

Page 21: 線形識別機構 閾値論理

レポート課題:線形識別関数の学習

(OR ゲート )初期値:w = ( 0 ,0,0.8 ) ,α=0.25 として、下記の表を完成させなさい

1110111011