EM Algorithm - iip.ist.i.kyoto-u.ac.jp · PDF fileToC 1.K-meansによるクラスタリング...

49
EM Algorithm The Top Ten Algorithms in Data Mining Chapter 5 2011/06/16 M1:大滝啓介

Transcript of EM Algorithm - iip.ist.i.kyoto-u.ac.jp · PDF fileToC 1.K-meansによるクラスタリング...

EM AlgorithmThe Top Ten Algorithms in Data Mining

Chapter 5

2011/06/16M1:大滝啓介

ToC

1.K-meansによるクラスタリング

2.混合ガウウ分布

3.隠れ変数とEMアルゴリズム

4.その他の話題

• D次元データ N個

•クラスタ K個

•各点の割り当て

K-means

関数Jを最小化する割り当てとクラスタを探す

(a)

2 0 2

2

0

2

データ点

プロトタイプ

(b)

2 0 2

2

0

2

プロトタイプ

割り当て

近い所へ

(b)

2 0 2

2

0

2

(b)

2 0 2

2

0

2 (c)

2 0 2

2

0

2

(b)

2 0 2

2

0

2 (c)

2 0 2

2

0

2 (d)

2 0 2

2

0

2

(b)

2 0 2

2

0

2 (c)

2 0 2

2

0

2 (d)

2 0 2

2

0

2 (e)

2 0 2

2

0

2

(b)

2 0 2

2

0

2 (c)

2 0 2

2

0

2 (d)

2 0 2

2

0

2 (e)

2 0 2

2

0

2 (f)

2 0 2

2

0

2

(b)

2 0 2

2

0

2 (c)

2 0 2

2

0

2 (d)

2 0 2

2

0

2 (e)

2 0 2

2

0

2 (f)

2 0 2

2

0

2 (g)

2 0 2

2

0

2

(b)

2 0 2

2

0

2 (c)

2 0 2

2

0

2 (d)

2 0 2

2

0

2 (e)

2 0 2

2

0

2 (f)

2 0 2

2

0

2 (g)

2 0 2

2

0

2 (h)

2 0 2

2

0

2

(b)

2 0 2

2

0

2 (c)

2 0 2

2

0

2 (d)

2 0 2

2

0

2 (e)

2 0 2

2

0

2 (f)

2 0 2

2

0

2 (g)

2 0 2

2

0

2 (h)

2 0 2

2

0

2 (i)

2 0 2

2

0

2

K-means

J

1 2 3 40

500

1000

クラスタの最適化割り当ての最適化

ガウス分布と最尤推定• 1次元ガウス分布のパラメータμ,σを最

尤推定する

• n個のデータ

ガウス分布と最尤推定•双方性のあるデータに利用してみる

•ガウス分布は単峰性がある

•二つのピークを表現できない

•より複雑なデータ/分布を表現するには?

•分布を混合する

混合ガウス分布

k番目の山から発生する割合のような係数

混合ガウス分布•処理の流れ(混合Ver.)

•データを観測する

•元になっている分布のパラメータを推定する

• 1次元と同じように最尤推定を行いたい

隠れ変数z•混合ガウス分布の何番目からデータが発

生したのか?を表す変数を事前に導入

zは1-out-of-Kな変数ベクトル

xとzの両方を見るk番目の山から発生する確率

zをベクトル化

xの周辺確率 = 混合ガウス分布

p(x,z)を考える

負担率•データxが与えられたときのzの条件付確

率を負担率と呼ぶ

k番目の混合要素がxの観測を説明する度合い

• N個のデータに対して最尤推定を行う

混合ガウス分布

対数尤度を利用してパラメータを推定する…けど…

混合ガウス分布

i番目のデータがk番目の要素から得られることの寄与率

k番目の混合要素に対する寄与率 データの重み付き平均

混合ガウス分布•この最尤解は陽な形ではない

両辺に分布のパラメータが入っている

EMアルゴリズムとはこの陰な解を反復的に求めるためのもの

EM Algorithm•厳密な解が求められない場合に用いる反

復的な求解法

• Expectation Maximization Algorithm

• Eステップ: 負担率を計算する

•パラメータを固定して

• Mステップ: パラメータを計算する

•負担率を固定して

EM Algorithm

(a)2 0 2

2

0

2

EM Algorithm

(a)2 0 2

2

0

2

(b)2 0 2

2

0

2

EM Algorithm

(a)2 0 2

2

0

2

(b)2 0 2

2

0

2

(c)

L = 1

2 0 2

2

0

2

EM Algorithm

(a)2 0 2

2

0

2

(b)2 0 2

2

0

2

(c)

L = 1

2 0 2

2

0

2

(d)

L = 2

2 0 2

2

0

2

EM Algorithm

(a)2 0 2

2

0

2

(b)2 0 2

2

0

2

(c)

L = 1

2 0 2

2

0

2

(d)

L = 2

2 0 2

2

0

2

(e)

L = 5

2 0 2

2

0

2

EM Algorithm

(a)2 0 2

2

0

2

(b)2 0 2

2

0

2

(c)

L = 1

2 0 2

2

0

2

(d)

L = 2

2 0 2

2

0

2

(e)

L = 5

2 0 2

2

0

2

(f)

L = 20

2 0 2

2

0

2

EM Algorithm• K-meansに比べて収束が遅い

•負担率の計算,パラメータの再計算を繰り返すため

•収束の仕方では極大値に落ちる

•ある混合要素(ガウス分布)が潰れてしまう(特異点): 分散→0

•解析的に解けない場合によく使われる

EM法の解釈•隠れ変数を持つようなモデル(混合ガウ

ス分布はその例)における最尤解を反復的に求めるための一般的な手法

•対数尤度を次のように表す

ln p(X|θ) = ln

��

z

p(X,Z|θ)�

データ 隠れ変数 パラメータ

EM法の解釈• (X,Z)の情報が分かっているとき,この

組を完全データ集合と呼ぶ

• (X,Z)のうちXだけが分かっているとき,この組を不完全なデータと呼ぶ

•不完全データXだけから最尤解を求めるために反復的な解法を用いている

• Eステップ

• Mステップ

• Eステップ: 潜在変数Zの事後確率に関する期待値を計算している(E)

• Mステップ: 現在のパラメータを用いて新しいパラメータを推定する

EM法の解釈

Q(θ, θold) =�

Z

p(Z|X, θold)p(X,Z|θ)

θnew = argmaxθQ(θ, θold)

混合ガウス分布の場合•なぜ期待値を使うのだろう

•完全データ集合(X,Z)に関する尤度を最大化する

Q(θ, θold)

p(X,Z|µ,Σ, π) =�

i

k

πznkk N (xn|µk ,Σk)

znk

ln p(X,Z|µ, Σ, π) =�

i ,k

znk{ln πk + lnN (xn|µk ,Σk)}

ごにょごにょ計算していくとZの事後確率の期待値 = 寄与率の計算に相当する

Implementationγ(zk) ≡ p(zk = 1|x) =

p(zk = 1)p(x|zk = 1)�K

j=1 p(zj = 1)p(x|zj = 1)

Nk =N�

i=1

γ(zik)µk =1

Nk

N�

i=1

γ(zik)xi

Σk =1

Nk

N�

i=1

γ(zik)(xi − µk)(xi − µk)T

=πkN (x|µk ,Σk)�Kj πjN (x|µj ,Σj)

Implementation

初期の分布対象の分布

Implementation

初期の分布対象の分布

Implementation

初期の分布対象の分布

Implementation

初期の分布対象の分布

Implementation

初期の分布対象の分布

Implementation

初期の分布対象の分布

Implementation

初期の分布対象の分布

Implementation

初期の分布対象の分布

Implementation

初期の分布対象の分布

Implementation

初期の分布対象の分布

Implementation

初期の分布対象の分布

参考文献

•統計的機械学習 - 生成モデルに基づくパターン認識 : 杉山将

•パターン認識と機械学習 - ベイズ理論による統計的予測 : C.M.ビショップ