57
3. 線形回帰および識別 線形回帰のモデル 正則化項の導入 L2正則化 L1正則化 正則化項のBayes的解釈 線形識別 生成モデルを利用した識別 2乗誤差最小化の線形識別の問題点 クラシックな機械学習の入門 by 中川裕志(東京大学)

クラシックな機械学習の入門 3. 線形回帰および識別

Embed Size (px)

DESCRIPTION

データから母集団の分布を学習する基礎になる線形回帰と線形識別について説明します。特に重要な概念は正規方程式です。発展的な話としては正則化ですが、スパースなモデル学習に効果があるL1正則化について説明します。

Citation preview

Page 1: クラシックな機械学習の入門 3. 線形回帰および識別

3. 線形回帰および識別

線形回帰のモデル

正則化項の導入

L2正則化

L1正則化

正則化項のBayes的解釈

線形識別

生成モデルを利用した識別

2乗誤差最小化の線形識別の問題点

クラシックな機械学習の入門

by 中川裕志(東京大学)

Page 2: クラシックな機械学習の入門 3. 線形回帰および識別

線形モデル

データ の分布状況から線形回帰式を求める

w0

x

y y=w1x+w0

Page 3: クラシックな機械学習の入門 3. 線形回帰および識別

線形モデル

T

101

0

],,,,[,],,,1[, K

T

Ki

K

i

i wwwxxxwy

wxwx ただし、

入力ベクトル:x から出力:y を得る関数がxの線形関数(wとxの内積)

一般に観測データはノイズを含んでいる。つまり

得られたN個の観測データ の組(y,X)に対して最適なwを推定する。

そこで、yと の2乗誤差を最小化するようにwを選ぶ。

と考える。はノイズで ),0(, 2 Ny wx

wX

Page 4: クラシックな機械学習の入門 3. 線形回帰および識別

2乗誤差の最小化

yXXXw

yXXwXw

XwyXwy

XwyXwyww

x

x

Xy

TT

w

N

1

TT

T

T

K

NKN

K

T

T

Nw

w

w

w

xx

xx

y

y

1

1

0

1

1111

)(

0)()(

)()(minargˆ

1

1

を解くと

の推定値

正規方程式 と呼ばれる基本式

Page 5: クラシックな機械学習の入門 3. 線形回帰および識別

補遺:正規方程式の導出

)(2)()(

..)(

..)(..)(..)(

..)(

..)(..)(..)()()(

)()(rulechain

0222)1(

2

)1(0)()(

)()()(

1

XwyXXwyXXwyX

y

yy

w

y

y

yy

w

y

w

XwyXwy

x

x

x

x

x

x

yXXXw

XwXyXXwXyXXwyX

XwXXXwXwXw

wXXw

w

XwXw

w

XwXw

yXXyw

Xwya

x

xayX

w

yXwa

x

ax

w

XwXw

w

Xwy

w

yXw

w

XwyXwy

XwXwXwyyXwyyXwyXwyXwyXwy

TTT

T

TTTT

TT

TTTTT

TTTTTTTTTTT

TTTTT

TTTT

TTTTTT

TTTTTTTTTT

g

gfggfcf

  

  

 を使えば  の 行列で微分する場合

よりより

Page 6: クラシックな機械学習の入門 3. 線形回帰および識別

正規方程式を解く簡単な例

N

i

i

N

i

iN

i

i

N

i

i

N

i

i

N

i

i

N

i

ii

N

i

i

N

i

i

N

i

i

N

i

i

N

i

ii

N

i

i

N

i

i

N

i

i

N

i

i

N

i

i

N

i

i

N

i

i

N

i

ii

N

i

i

N

i

i

N

i

i

N

i

i

N

i

i

T

TT

N

i

ii

N

i

i

N

i

i

N

i

i

N

i

i

N

N

N

N

T

NN

xwN

yN

w

xxN

yxyxN

N

x

N

y

xxN

yxxyx

w

xxN

yxyxN

w

Nx

xx

xxN

yx

y

w

w

xx

xN

y

y

xxw

w

x

x

xx

w

w

y

y

x

x

1

1

1

02

11

2

111112

11

2

1111

2

0

2

11

2

1111

1

11

2

2

11

2

1

1

1

1

0

1

2

1

1

1

11

0

1

1

1

0

11

11

1

11

1

111

1

1

XX

yXwXX

yXXwXwyXT

    

  

は正規方程式  

Page 7: クラシックな機械学習の入門 3. 線形回帰および識別

用語:誤差、損失、目的関数

線形モデルで最小化したかったのは2乗誤差

真のモデルにおける値(2乗誤差におけるy)と

予測値(2乗誤差におけるXw)の差異を表す関数を損失関数(単に損失)あるいはLossと呼び、Lで表すことが多い。

上記のような最適化問題において最小化(一般的には最適化)したい関数を目的関数と呼ぶ。

線形モデルの2乗誤差最小化では

2乗誤差=損失=目的関数

Page 8: クラシックな機械学習の入門 3. 線形回帰および識別

線形モデルの一般化

T

Ky )](,,)(,1[, 1 xxxw(x)

基底関数 重み

N個の観測データ(y,x)に対して

(y、φ(x))が得られたとすると、2乗誤差を最小化するwは前を同じく以下の通りだが、少し別の見方で解く。

yxφxφxφ TTw )())()((ˆ 1

基底関数の例

T

T

x

x

N

1

N

1

y

y

y

urier Fast Fo:even):(m 2exp

sigmoidal : /exp1

1

Gaussian : 2

exp

lpolynomina :

2

2

m

xjix

sxx

s

xx

xx

j

j

j

j

j

j

j

Page 9: クラシックな機械学習の入門 3. 線形回帰および識別

{x(ベクトル),y}が観測データ(training data)

w,βを決定する、即ち (p(y|x,w,β)を最大化)

N組のi.i.d.観測データすなわち教師データがあるとする。

正規方程式を求める別の方法

K

T

T

T

N

w

w

w

wyy

1

0

1 ),,(

N

1

x

x

Xy

すると次のページのようにp(y|x,w,β)が書ける。

),),(|(),|(

.),0(),(

1

21

wxwx,

wx

φyNyp

Nφy を精度と呼ぶ

Page 10: クラシックな機械学習の入門 3. 線形回帰および識別

両辺のlogをとる

),),|(),( 1

1

N

i

i φyNp w(xwX,|y i

N

i

iyL

LNN

wp

1

2

0

,2

1)(

)(2log2

log2

),,(log

w)(xw

wX,w|y

i

log p(y|w,X,β)をw,βについて最大化したい。まず、wについて最大化する。

Page 11: クラシックな機械学習の入門 3. 線形回帰および識別

yφ(X)φ(X)φ(X)w

wφ(X)φ(X)yφ(X)

w)(x)(x)(x

w)(x)(xw

Xw,|y

iii

ii

TT

TT

N

i

TN

i

i

N

i

i

y

yp

1

11

1

)(ˆ

)(

0

0,),(log

T

N

T

φ

φ

x

x

xφ 1

Page 12: クラシックな機械学習の入門 3. 線形回帰および識別

バイアスw0の部分だけに注目してみると

• 対数近似関数から最適なw0を によって求めると

K

j

N

i

jj

N

i

i

N

i

K

Ki

N

i

K

Ki

N

i

K

Ki

N

i

K

Ki

wN

yN

w

w

w

w

y

w

w

w

y

w

w

w

w

y

w

w

w

w

y

w

L

1 11

0

1

0

1

1

1

1

0

1

0

1

2

0

1

1

0

1

2

1

0

1

0

)11

0))),..(2))),..,1(2

))),..())),..,1(

i

iiii

ii

ii

(x

(x(x(x(x

(x(x(x(x

w

yの平均 基底関数の学習データの平均のw重み付き和

Page 13: クラシックな機械学習の入門 3. 線形回帰および識別

精度βを求める。

log p(y|w,X,β)をβに対して最大化

ただし、wは最適化されたものを用いる

N

i

i

N

i

i

yN

yL

LNp

1

21

1

2

ˆ1ˆ

ˆ2

1)(

)ˆ(2

),ˆ(log

w)φ(x

w)φ(xw

wX,w|y

i

i

yの予測値と観測された値の差の2乗の平均

Page 14: クラシックな機械学習の入門 3. 線形回帰および識別

φ1(x)

φ2 (x)

新規データ:y

S:が張る空間wx

yからSに最も近い点(垂直に落としている)

幾何学的イメージ

Page 15: クラシックな機械学習の入門 3. 線形回帰および識別

計算の効率化 大きなdata setsに対して

の右辺第1項の逆行列計算量が問題

特にデータの次元Nに対してO(N3)なので高次元だと大変

定石は、コレスキー分解O(N2)して上/下半3角行列で表現される連立方程式を2回解く

L(w)を最小化するようなwの数値計算

yφφφwTT 1)(ˆ

T

nnny

L

)())((

)(

)()(

)()1(

xwxw

www

目的関数(すなわち損失L(w))の減る方向へ進む( ーgradientをwに加える)方法をgradient descent は呼ばれ、最適化における基本的数値計算法である。

Page 16: クラシックな機械学習の入門 3. 線形回帰および識別

正則化項の導入

モデルを複雑にするほど学習データにはよく合致するが、学習データ以外のデータには弱いという過学習を起こす。

過学習を抑えるために、損失関数に正則化項を導入。

正則化項にはモデルをできるだけ簡単化する方向に作用する。

データが高次元の場合には次元削減効果あり。

Page 17: クラシックな機械学習の入門 3. 線形回帰および識別

一般的な正則化項

正則化項

q=2のときがL2正則化

q=1のときはLASSO: 1ノルムによる正則化なので L1正則化と呼ぶ

Least Absolute Shrinkage and Selection

Operator

λが十分大きいと、wjのいくつかは0になりやすい → スパースなモデル

q=0のときはL0正則化。解きにくい問題(上記2つと違い凸ではない)

K

j

q

j

N

i

ii wφyL1

2

1

||2

),2

1)(

w(xw

Page 18: クラシックな機械学習の入門 3. 線形回帰および識別

• 制約

のもとで、L(w)を最小化する、と考える。

qK

j

jw1

q=0.5 q=1 q=2 q=4

Page 19: クラシックな機械学習の入門 3. 線形回帰および識別

正則化項

(wの影響を小さくする効果)

Wの2ノルムによる正則化であるので、L2正則化と呼ぶ

yφ(Xφ(Xφ(XIww

www(xw

w

TT

TN

i

ii

L

φyL

))))()(minargˆ

2),

2

1)(

1

2

1

最小化すると

最適なwはL(w)を微分して0とすれば上記のように解析的に閉じた式で求まる。

これはφ(X)とλの案配よって決まり、どの成分も強制的にゼロにしようという力は働かない

L2正則化

Page 20: クラシックな機械学習の入門 3. 線形回帰および識別

K

j

j

N

i

ii wφyL1

2

2

1 2),

2

1)(

w(xw

W1

W2

最短の2乗距離で結ぶ

L2正則化のイメージ

Page 21: クラシックな機械学習の入門 3. 線形回帰および識別

L1正則化

L2正則化ではwの最適値 を損失Lの微分で閉じた式で求められたが、L1正則化では|w|がw=0で微分できないので、ややこしくなる。

L1正則化を行う逐次的な方法と

L1正則化がwの要素の多くをゼロ化する傾向を以下で説明する

w

Page 22: クラシックな機械学習の入門 3. 線形回帰および識別

1

K

j

j

N

i

ii wφyL1

2

1 2),

2

1)(

w(xw

W1

W2

Loss+L1の

最小距離で

結ぶ

Case 3 では、W2=0となる

2

3

Loss L1

しかし、この説明図では大雑把だ!以下でL1正

則化に関してもう少し細かく議論する。

L1正則化イメージ: 軸でのLossの微分=0として を求める

2w 2~w

Page 23: クラシックな機械学習の入門 3. 線形回帰および識別

ある次元dに着目してL(w)を最小化するようなwdを求める。

これを各次元について繰り返し、 L(w)の最小化を図る。 wdについてL(w)を書き直すと

とおきwdの最適値を求めたいが絶対値を含む第2項L1(w)が微分できないので、ひとまずLoss(w)を微分して0とおくと

)101(||2

),2

1)(

1

2

1

LwφyLK

j

j

N

i

ii

w(xw

                    )201(1

22

1

1

2

LLLoss

wwwwyLdj

jd

N

i dj

jijdidi

ww

xxw

0

dw

L w

Page 24: クラシックな機械学習の入門 3. 線形回帰および識別

N

i

id

N

i dj

jijiid

d

d

N

i dj

jijdidiid

N

i dj

jijdidi

dd

wy

w

wwwy

wwyww

Loss

1

2

1

1

1

2

~

~0

2

1

x

xx

xxx

xxw

とするの解を  

これを用いてL(w)を書き換える。ただし、wdに関係しないところは当面定数と見なせるので、無視した。

Constwwww

Constwwywww

ConstwwywwwL

d

N

i

iddd

N

i

idd

d

N

i

N

i

id

dj

jijidid

N

i

idd

N

i

idd

d

N

i dj

jijididdidd

1

2

1

22

1 1

2

1

2

1

22

1

22

~2

2

2)~(2

xx

xxxxx

xxx

  

  

Page 25: クラシックな機械学習の入門 3. 線形回帰および識別

が働くスパース化)される力になりゼロ化 

がゼロに近づくとの解のすなわちにより

  矛盾    すなわちだと       

  矛盾すなわちだと       

  なぜなら なら  

 なので  なら 

  なので なら 

を探すなる

とおくと、ここで

(0

~~3 case

~0~0

~0~0

0~3 case

~00~2 case

~00~1 case

0)(

0undefined

0~0~

)(

~

2

1)(

2

2

1

2

d

ddd

ddd

ddd

dd

dddd

dddd

d

d

d

d

ddd

ddd

d

d

dddddN

i id

w

wwLossw

www

www

ww

wwww

wwww

ww

wL

w

www

www

w

wL

constwwwwwL

w

x

Page 26: クラシックな機械学習の入門 3. 線形回帰および識別

W全体の正則化

[step 1] w の各要素を適当な値に初期化

[step 2] w の各要素の値w_k(k=1,..,K)が収束するまで以下step 3,4,5 を繰り返す

[step 3] k=1,.., Kでstep 4,step 5を繰り返す

[step 4] wj (j ≠ k)を用いて case1,2,3にし たがってwjを計算してゼロ化

[step 5] wkを更新

[step 6] 収束したらwの最終結果とする

Page 27: クラシックな機械学習の入門 3. 線形回帰および識別

wdのゼロ化のイメージ

dw~

dw

Page 28: クラシックな機械学習の入門 3. 線形回帰および識別

L1正則化が支配的になり をゼロ化する様子を下図で例示する

dw

λ大

λ小

wd

L(wd)

dw2乗誤差Loss

が支配的

正規化項L1

が支配的

Page 29: クラシックな機械学習の入門 3. 線形回帰および識別

正則化項のBayes的解釈

Bayesでは事後確率は

観測データの確率×事前確率

事後確率を最大化するパラメタηを求めたい

ここで対数尤度にしてみると、次のように解釈できる

|log|logmaxargˆ

||maxargˆ

PXP

PXP

パラメタは事前分布のハイパー

損失関数 正則化項

Page 30: クラシックな機械学習の入門 3. 線形回帰および識別

例:事前分布、事後分布とも正規分布

ノルムによる正則化項    

とすると  事前分布の重みをここで、

   

  

も同様にすると事前分布

L22

),(2

1maxarg

,0

2

1),(

2

1minarg

),|(log),|(logminarg

2/),|(log

,|

2/),()1,),(|(log)1,|(log

)1,0()(

),,(

2

2

2

1

0

1

wwwx

wwwx

ww,x

www

w

wxwxw,x

wx

w

x

x

Xy

w

w

w

N

1

T

i

ii

T

i

ii

i

ii

T

i

ii

i

ii

i

ii

K

T

T

T

N

φy

φy

pyp

p

p

φyφyNyp

Nφy

w

w

w

yy

事前分布のwの分散:λー1 とも見

える。

Page 31: クラシックな機械学習の入門 3. 線形回帰および識別

例:事前分布がLaplace分布、事後分布が正規分布

ノルムによる正則化項     

  

も同様にすると分布の事前分布は期待値

L12

),(2

1minarg

)|(log),|(logminarg

2)|(log

2exp

4|0

2/),()1,),(|(log)1,|(log

)1,0()(

2

2

wwx

ww,x

ww

ww

wxwxw,x

wx

w

w

i

ii

i

ii

i

ii

i

ii

i

ii

φy

pyp

p

pLaplace

φyφyNyp

Nφy

Page 32: クラシックな機械学習の入門 3. 線形回帰および識別

以上、述べてきた線形回帰のよるモデル化は、生成モデル

当然、線形の識別モデルもある。次以降は線形識別モデルの話

Page 33: クラシックな機械学習の入門 3. 線形回帰および識別

線形識別

と の領域の境界面を線形関数として求める

Page 34: クラシックな機械学習の入門 3. 線形回帰および識別

線形識別

データ:

xがいくつかのクラス(あるいはカテゴリー):Ckのどれかに属する。

例:新聞記事が「政治」「経済」「スポーツ」「芸能」「社会」などのクラスのどれかに属する場合。この場合、データ:xは例えば、記事に現れる単語の集合、など。

データ:xがK個のクラスの各々に属するかどうかの判定は(-1=属さない,1=属する)の2値を要素とするK次元ベクトル:yi=(-1,1,-1,..,1)で表される。

ただし、1つのクラスに属するか属さないかだけを識別すの場合は2クラス分類という。当然、 yi=ー1 or yi = 1

この属するか否かの判断をする式が線形の場合を線形識別という。

T

Mxxx ],,,[ 21 x

Page 35: クラシックな機械学習の入門 3. 線形回帰および識別

線形識別の関数

一般化線形識別の関数は以下

2クラス分類

クラスC1に属するかC2(=notC1)に属するかは、次の通り

if y(x)≥0 then データ:xはC1に属する

otherwiseデータ:xはC2に属する

(すなわちC1に属さない)

wxxw

wx

x

wxx

~,~)(~,1~

,)(

0

0

yw

wy

とおくならあるいは

は非線形でもよいfwfy ),()( 0 wxx

Page 36: クラシックな機械学習の入門 3. 線形回帰および識別

2値分類の直観的説明

y={-1,1}、xは2次元とする。(下図を参照)

{y,x}を教師データとして、2乗誤差の最小化を行っ

て正規方程式を求めると、下図の のようなクラスを分類する分離平面が得られる。

y=-1

y=1

x1

x2

境界面

Page 37: クラシックな機械学習の入門 3. 線形回帰および識別

線形識別関数の幾何学的解釈

x

xa

xb

w

xc

| || |

)(

w

xy

||||

0

wx

wd

直交。すなわち識別境界線とは )(

)()()(0

0)(,0)( 00

ba

baba

bbaa

yy

wywy

xxw

wxxxx

wxxwxx

識別境界線

||||||0||||||||||||

)(0

00

2

0

0

wxwxwww

wx

wx

wxx

x

wwcwc

c

wy

dd

T

T

d

d

dd

d

に代入して整理するとと書ける。これを上式

から、に並行で横ベクトルだは

とおく。の垂線の交点を原点から識別境界線へ

xd

Page 38: クラシックな機械学習の入門 3. 線形回帰および識別

線形識別関数の幾何学的解釈

x

w

xc

| || |

)(

w

xyr

| || |

0

w

w

識別境界線

||||

)(0)(

||||)(||||

)(

||||

00

0

w

xx

wxw

wwwxwxx

ww

wxx

yry

ryrwwy

wr

c

c

TT

c

T

c

だから

を足すとを掛け、から両辺の転置をとり、右

xa xb

xd

Page 39: クラシックな機械学習の入門 3. 線形回帰および識別

wの計算方法:2クラス分類の場合

.

すると新規のデータ:xは が正ならクラスC1に,負ならC2属する

.

で書けるとするの境界がクラス wxx ~,~)(, 21 yCC

)~(xy

wx

wx

WXY

x

x

X

x

~,~

~,~

~~

~

~

~

10,1

),1(,~

111

NN

T

N

T

nn

nn

y

y

yy

NnyN

なら  ただしクラス1なら

があったとき個の教師データ

Page 40: クラシックな機械学習の入門 3. 線形回帰および識別

すると、観測データ(教師データ)において個々のクラスに分類されたか否かの観点からの2乗誤差は次式となる

もう少し詳しく書くと

YWXYWXW ~~~~

)~

(T

E

  

22

11

11

11

~,~~,~

~,~

~,~

~,~~,~

~~~~

NN

NN

NN

T

yy

y

y

yy

wxwx

wx

wx

wxwx

YWXYWX

Page 41: クラシックな機械学習の入門 3. 線形回帰および識別

これを最小化する は で微分して0とおけば、線形回帰のときと同様の計算により求まる。

微分は次式:

YWXYWXW ~~~~

)~

(T

E

W~

W~

YXXXW

YWXXW

W

TT

TE

~)

~~(

~

0~~~

~

~

1

YWXXYWXAAW

A

W

AA

~~~2

~~2 T

TT

Page 42: クラシックな機械学習の入門 3. 線形回帰および識別

新規のデータxnewに対する予測を行うy(xnew)も求まる。

YXXXxWx

x

x

xy

YXXXW

TT

newnew

newK

new

new

TT

y

y~

)~~

(~~~

)~(

)~(

)~(

~)

~~(

~

1

1

1

y(xnew)が大きいほどクラス C1 に属する可能性が高い。

Page 43: クラシックな機械学習の入門 3. 線形回帰および識別

wの計算方法 :多クラス分類の場合 .

すると新規のデータ:xは が最大のkのクラスCkに属する

.

で書けるとする。が線形識別モデルクラス kkk yC wxx ~~)(

)~(xky

Wxwxwx

xxyx

~~~,~~,~

)]()([)(

1

1

K

T

Kk yyKy

             

個並べたベクトルを

KNN

K

N

T

N

T

n

n

nn

K

K

NnN

wxwx

wxwx

WX

y

y

Y

x

x

X

y

x

yx

~,~~,~

~,~~,~

~~

~

~

~

)1,...,1,1,1(

~

),..,1(,~

1

11111

のような形。次元ベクトルは

らに属することもあるな個のクラス内の複数個は注

があったとき個の教師データ

Page 44: クラシックな機械学習の入門 3. 線形回帰および識別

すると、観測データ(教師データ)において個々のクラスに分類されたか否かの観点からの2乗誤差は次式となる

もう少し詳しく書くと

YWXYWXW ~~~~

)~

(T

TrE

22

11

2

11

2

1111

11

111111

11

111111

~,~~,~

~,~~,~

~~~~

~,~~,~

~,~~,~

~,~~,~

~,~~~

~~~~

NKKNKK

NN

T

NKKNNN

KK

NKKNKK

NN

T

yy

yy

Tr

yy

yy

yy

yy

wxwx

wxwx

YWXYWX

wxwx

wxwx

wxwx

wxwx

YWXYWX

  

Page 45: クラシックな機械学習の入門 3. 線形回帰および識別

これを最小化する は で微分して0とおけば、線形回帰のときと同様の計算により求まる。

Trの微分は次式:

YWXYWXW ~~~~

)~

(T

TrE

W~

W~

YXXXW

YWXXW

W

TT

TE

~)

~~(

~

0~~~

~

~

1

YWXXYWXAAW

A

W

AA

~~~2

~~2

)( TTTTr

Page 46: クラシックな機械学習の入門 3. 線形回帰および識別

新規のデータxnewに対する予測を行うy(xnew)も求まる。

YXXXxWx

x

x

xy

YXXXW

TT

newnew

newK

new

new

TT

y

y~

)~~

(~~~

)~(

)~(

)~(

~)

~~(

~

1

1

1

yi(xnew)が大きいほどそのクラス i に属する可能性が高い。

もちろん、 yi(xnew)が最大となるi のクラスに属すると考えるのが自然。だが。。。

Page 47: クラシックな機械学習の入門 3. 線形回帰および識別

生成モデルを利用した識別

識別はベイズ統計的には次式

N個のデータ:xk(k=1,..,N)があるクラスに属するかどうかの判定は(0=属さない,1=属する)の2値を要素とするN個のK次元ベクトル:y=(0,1,0,..,1)で表される。

以下のベイズ統計による分類では、属さない場合を-1ではなく0とすることに注意。

以下ではベイズ統計による2クラス分類をする場合に事後確率について考える。

)(

)()|()|(

x

xx

p

CpCpCp kk

k

Page 48: クラシックな機械学習の入門 3. 線形回帰および識別

Logistic sigmoid function

クラスC1の事後分布は次式(s-1)

)1(

)exp(1

)exp(

)exp(1

1

)exp(1

)exp(

d

d

1log)(1)(

)()|(

)()|(log

function sigmoid logistc1)-(s-)()exp(1

1

)()|()()|(

)()|()|(

2

22

11

2211

111

a

a

aa

a

a

aaa

CpCp

CpCpawhere

aa

CpCpCpCp

CpCpCp

x

x

xx

xx

Page 49: クラシックな機械学習の入門 3. 線形回帰および識別

クラスC1,C2が共分散∑が等しい2つの

正規分布の場合の事後確率 p(C1|x)

式(s-1)によって以下のように導ける。

)(

)(log

2

1

2

1)(

)(

)(log

2

1

2

1

)(

)(log

2

1

2

1

||2log

||2log

)()|(

)()|(log

2

1exp

||

1

2

1)|(

2

12

1

21

1

121

1

2

12

1

2

1

22

1

1

1

1

1

11

1

2

12

1

21

1

12

12

21

2

22

11

1

21

2

Cp

Cp

Cp

Cp

Cp

Cp

CpCp

CpCp

Cp

TTT

TTTTTT

TT

K

K

i

T

iKi

x

xxxx

xxxx

x

x

xxx

∑が2つのクラスで等しいことにとってキャンセルしていることに注意。等しくないともう少し複雑。

Page 50: クラシックな機械学習の入門 3. 線形回帰および識別

クラスC1,C2が共分散∑が等しい2つの

正規分布の場合の事後確率 p(C1|x)

)(

)(log

2

1

2

1

)(

exp1

1)|(

)(

)(log

2

1

2

1)(

)()|(

)()|(log

2

1exp

||

1

2

1)|(

2

12

1

21

1

10

21

1

0

01

2

12

1

21

1

121

1

22

11

1

21

2

Cp

Cpw

where

wwCp

Cp

Cp

CpCp

CpCp

Cp

TT

T

T

TTT

i

T

iKi

w

xwxwx

xx

x

xxx

事後確率:

∑が2つのクラスで等しいことにとってキャンセルしていることに注意。等しくないともう少し複雑。

Page 51: クラシックな機械学習の入門 3. 線形回帰および識別

次に Maximum likelihood solution (つまりw,w0)を求める。これによって、各クラスの事後確率が求まる

ここで各クラスの事前確率が以下だったとする

)10(,....,

1,|)1(,|),,,|(

,|)1()|()(),(

0

,|)|()(),(

1

1)()(

1

2

1

121

2222

2

1111

1

21

sttwhere

ntNnt

Np

Nlikelihood

NCpCpCp

tC

NCpCpCp

tC

CpCp

T

N

n

N

n

n

nnn

nn

nnn

nn

t

xxt

xxx

x

xxx

x

う個あることを思い出そ観測データはは次式ここで

としに属するときが観測データ

としに属するときがこのとき観測データ

Page 52: クラシックな機械学習の入門 3. 線形回帰および識別

(s-10)のlogすなわち log likelihood function を最大化することが目標

まず、最大化するπを求める。

(s-10)のlogのπに関する部分は次式(s-20) logp (π)

に属するデータ数。はクラス

に属するデータ数。はクラス

22

11

21

11

1

1

10

)(log

)1log()1(log)(log

CN

CNwhere

NN

N

N

Nt

N

p

ttp

N

n

n

N

n

nn

Page 53: クラシックな機械学習の入門 3. 線形回帰および識別

次に (s-10)の log を最大化する μ1 を求める。

(s-10)のlogのμ2 に関する部分は次式(s-30) logp (μ1 )

N

n

nn

n

T

n

N

n

nn

N

n

n

tN

p

tNtp

11

1

1

1

1

1

1

1

1

1

1

10

)(log

const2

1),|(log)(log

x

xxx

同様にしてμ1も求めると

N

n

nn

n

T

n

N

n

nn

N

n

n

tN

p

tNtp

12

2

2

2

2

1

2

1

2

1

2

)1(1

0)(log

const

)1(2

1),|(log)1()(log

x

xxx

Page 54: クラシックな機械学習の入門 3. 線形回帰および識別

最後に (s-10)の log を最大化する精度行列 Λ=∑-1 (C1

とC2共分散) を求める。

(s-10)のlogの∑ に関する部分は次式(s-40) logp (∑ )

logp (Λ )をΛ で微分して0とおき、 (s-10)の log を最大化するΛ =∑-1 を求める。

まず第1項の微分は線形代数学の公式より

)40()(2

||log2

)())(1(2

1||log)1(

2

1

)()(2

1||log

2

1)(log

22

11

11

11

sSTrNN

tt

ttp

n

T

n

N

n

n

N

n

n

n

T

n

N

n

n

N

n

n

xx

xx

が対称が対称 1

11 )50(22

||log2

sNN

NT

Page 55: クラシックな機械学習の入門 3. 線形回帰および識別

T

Cn

nn

T

Cn

nnNN

S

Ss

21

))((1

))((1

)40(

2211 xxxx

は次式の

次はTr(ΛS)をΛで微分して0とおき、 logp(Λ) を最大化するΛ を求める。

T

Cn

nn

T

Cn

nn

T

NNS

SNNp

sSSSTr

21

))((1

))((1

022

)(log

)60()(

2211

1

1

xxxx

Page 56: クラシックな機械学習の入門 3. 線形回帰および識別

このようにして、教師データ集合{(xn,tn)n=1,..N}からμ1, μ2,Σ

-1(=Λ),πが求まったので、これらを用いて定義されるw,w0も求まる。

未知データxがクラスC1に属する確率は

なので、この分布を教師データから学習できた。

1log

2

1

2

1

)(

exp1

1)|(

2

1

21

1

10

21

1

0

01

TT

T

T

w

where

wwCp

w

xwxwx

Page 57: クラシックな機械学習の入門 3. 線形回帰および識別

2乗誤差最小化の線形識別の問題点

この領域の判断が困難

この領域に青の境界線が引っ張られることあり。

そもそも、Yの値は正規分布を想定した理論なのに、{0、1}の2値しかとらないとして2乗誤差最小化を当てはめたところに無理がある。