16
PCAICA 1017吉田雄介

PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

Embed Size (px)

Citation preview

Page 1: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

PCAとICA

10月17日

吉田雄介

Page 2: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

PCA(1/10)

� PCAとは

� Principal Component Analysisの略で

主成分分析と訳される

� 主成分とは

�分散行列の最大固有値に対応する固有ベクトル

Page 3: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

PCA(2/10)

� Rn上のTこの観測値ベクトルx(1),...,x(T)が与えられたとき単位ベクトル||γ||=1の中で

式(1)

を最小にするγを求める�標本平均をx、ベクトルのノルムを||・||で表す

� 標本平均を0とすると式(1)は式(2)( )∑

=

T

t

Ttxtx

1

22)()( γ

( ){ }∑=

−−−

T

t

Txtxxtx

1

22

)()( γ

Page 4: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

PCA(3/10)

� 第2項を書き換えると

式(3)

と書き換えられ、式(2)は

式(4)

と書き換えられる

( )2

1

)(∑=

T

t

Ttx γγ

( )2

1

)()(∑=

−T

t

Ttxtx γγ

Page 5: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

PCA(4/10)

� 観測値x(t)をある定ベクトルγの方向に定数倍s(t)=γTx(t)して

式(5)

と近似したときにもとの信号を一番良く近似するγを求めるとs(t)はγTx(t)となる

� これより式(4)を書き換えると

式(6)

となり、これを最小にするγを考える

{ }∑∑==

−=−T

t

T

t

tstxtstx1

222

1

)()()()( γγ

γ)(~)( tstx

Page 6: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

PCA(5/10)

� 式(5)を最小化するには

式(7)

を最大化する

� s(t)を代入して

式(8)

∑=

T

t

ts1

2)( γ

( ) ( )

γγ

γγγγ

=

=

∑∑

=

==

T

t

TT

T

t

TT

t

T

txtx

txtx

1

1

2

1

2

)()(

)()(

Page 7: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

PCA(6/10)

� 分散行列を

式(9)

として、式(8)は

式(10)

となり、これを最大にする大きさ1のベクトルを

求める問題になる

∑=

=T

t

Ttxtx

TV

1

)()(1

γγ VT

Page 8: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

PCA(7/10)

� 分散行列は正定値なので、ある直行行列Sを使って

式(11)

のように対角化できる。�ただし、この対角成分はVの固有値で

式(12)

となるようにSは選ぶものとする

=

n

TVSS

λ

λO

1

( )01 ≥≥≥ nλλ L

Page 9: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

PCA(8/10)

� この対角行列を両側から挟み込んで最大にする大きさ1のベクトルは(1,0,…,0)または(-1,0,…,0)であり、正負は問題ないので(1,0,…,0)だけを考えるとすると

式(13)

Vを両側から挟んで最大にするベクトルが求められる

=

0

0

1

MSγ

Page 10: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

PCA(9/10)

� 式(5)の近似は拡張でき、式(14)

というように精度を上げることができる

� 主成分が求められた元の観測値から主成分方向の成分を取り除いた残差

式(15)

に対して同じように主成分分析を繰り返し行うことで式(16)

という分解が得られる

L++ 2211 )()(~)( γγ tststx

nn ttstststx γγγ )()()()()( 2211 +++= L

11 )()( γtstx −

Page 11: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

PCA(10/10)

� (式(17))について� i≠jのときはγiとγjが直交しているので式(17)は0となり、係数は無相関である

� i=jのときは式(17)はλiとなる

� これより

式(18)

とパワーの分解を与えていると解釈できる

∑=

T

t

ji tstsT 1

)()(1

∑∑==

=n

ii

T

t

txT 1

2

1

)(1

λ

Page 12: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

ICA(1/4)

� 式(19)

という変換でy(t)の各成分が独立なのでBを使ってx(t)を分解すると

式(20)

となり、B-1の各列ベクトルをγi、y(t)の各成分をsi(t)として考える

)()( tBxty =

)()( 1tyBtx

−=

Page 13: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

ICA(2/4)

式(21)

ここでγiは行列B-1の第i番目の列ベクトル

γi*は行列Bの第i番目の行ベクトル

( ) ( )

( ) ( )nn

nn

tsts

txtx

tBxB

tBxB

tBxBtx

γγ

γγγγ

)()(

)()(

)(10

1

0

01

0

1

)(

10

00

00

01

)()(

11

**11

1

1

1

++=

++=

++

=

++

=

=

L

L

LMLLM

L

MOM

L

L

L

MOM

L

Page 14: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

ICA(3/4)

� ||γi||=1としてもγiが互いに直交していないので

式(22)

� si(t)とsj(t)はyi, yjの独立性から相関が0になるので、

係数が無相関であるため

式(23)

∑∑∑= ==

≠n

i

T

t

i

T

t

tsT

txT 1 1

2

1

2)(

1)(

1

0)()(1

1

=∑=

T

t

ji tstsT

Page 15: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

ICA(4/4)

� x(t)*はx(t)の双対座標であり、この場合はユークリッド空間なのでx(t)の転置を考え、

式(24)

を定義し式(25)

という分解を考えると、基底の双対性から

式(26)

という分解が成り立つ

***1

*1 )()()( tststx nn

T γγ ++= L

∑∑∑= ==

=n

i

T

tii

T

t

tstsT

txT 1 1

*

2

1

)()(1

)(1

iT

ii txtxts γγ )()()( ** ==

Page 16: PCA ICA - トップ | 深層学習による言語データ解析 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2007/ICA/ica-yoshida...PCA(1/10) PCA とは Principal Component Analysis の略で

PCAとICAの共通点と違い

� 共通点

という形で確率変数ベクトルの分解を考える

� 違い

�分解のために採用する基準γ1,…,γnが線形独立ならどんな分解も可能

� ICAは基底が直交してなくてもよいが

分解の係数が独立になるように基底を選ぶ

� PCAはγとして互いに直交する方向への分解を考え、

分解の係数が無相関になるように基底を選ぶ

nn ttstststx γγγ )()()()()( 2211 +++= L