36
PRML読書会第11回 8.4 グラフढ़ルモॹルによる推 2010-02-06 SUHARA YOSHIHIKO (id:sleepy_yoshi)

8.4 グラフィカルモデルによる推論

Embed Size (px)

DESCRIPTION

PRML生駒読書会第11回の発表資料

Citation preview

Page 1: 8.4 グラフィカルモデルによる推論

PRML読書会第11回8.4 グラフ ルモ ルによる推

2010-02-06SUHARA YOSHIHIKO

(id:sleepy_yoshi)

Page 2: 8.4 グラフィカルモデルによる推論

1

目次• 8.4 グラフ ルモ ルによる推

– 8.4.1 連鎖における推– 8.4.2 木– 8.4.3 因子グラフ– 8.4.4 積和アルゴリズム– 8.4.5 max-sumアルゴリズム– 8.4.6 一般のグラフにおける 推– 8.4.7 ループあり 伝播– 8.4.8 グラフ構造の学習

ここまで

Page 3: 8.4 グラフィカルモデルによる推論

2

本発表のポイント(1) 連鎖ノードにおけるメッセージパッシング(2) 因子グラフとは? 因子グラフの作り方

Page 4: 8.4 グラフィカルモデルによる推論

3

8.4 グラフィカルモデルにお

Page 5: 8.4 グラフィカルモデルによる推論

4

グラフ ルモ ルにおける推• 目的: グラフ ルモ ルにおける推

– いくつかのノードが観測された際に,残ったノード(のうちいくつか) の事後分布を知りたい

• アプローチ– グラフ構造を 用して局所的なメッセージの伝播を

用いて を う– cf. は10章で紹介

Page 6: 8.4 グラフィカルモデルによる推論

5

イズの の• 2変数x, y上の同時分布を因数分解する

)|()(),( xypxpyxp =

∑='

)'()'|()(x

xpxypyp

???

(a)

(b) yが観測された

)(

)()|()|(

yp

xpxypyxp =

(8.47)

(8.48)

(b) yが観測された

(c) ???

)()|()()|(),( xpxypypyxpyxp == ではダメ?

Page 7: 8.4 グラフィカルモデルによる推論

6

8.4.1 にお

Page 8: 8.4 グラフィカルモデルによる推論

7

無向連鎖のグラフの

※有向グラフと同じ条件付き 性を持つ

( ) ( ) ( )���� xxxxxxZ

p ,,,1

)( 1,1323,2212,1 −−= ψψψ Lx (8.49)

K状態 変数

N-1個 K×Kの表

⇒ 同時分布は (N-1) K2個のパラメータを持つ

Page 9: 8.4 グラフィカルモデルによる推論

8

周辺分布の推• 連鎖 中のノードの周辺分布を推 したい

– どのノードも観測されていない場合

∑ ∑∑ ∑− +

=1 1 1

)()(x x x x

n

n n �

pxp xLL

⇒ xが取りうる状態の数: KN個ポイント: 連鎖の さNに対して

指数オーダーO(KN)のメモリ と計算

周辺分布 (8.50)

xn

コレ

xn以外で周辺化

Page 10: 8.4 グラフィカルモデルによる推論

9

STOP! ポテンシャル関数って何なのさ?• (規格化されるので) ψ(xC) > 0 であればなんでもよい

– えばボル マン分布:– エネルギー関数も本文中に記述なし

• ポテンシャル関数の周辺化ってどういうこと?– 簡単のためxc={x1,x2},x1,x2は0,1の2 変数とする

)}(exp{)( CCC E xx −=ψ

∑ −=2

)},(exp{)( 211

x

C xxExψ

)}1,(exp{)}0,(exp{ 2121 =−+=−= xxExxE

のポテンシャル関数を使って説明しているのは一般性を保つため

くなったら適 に 変換すべし

Page 11: 8.4 グラフィカルモデルによる推論

10

周辺分布の よい推 : て

( ) ( ) ( )∑ −−=�x

���� xxxxxx ,,, 1,1323,2212,1 ψψψ L

( ) ( ) ( )∑ −−

�x

���� xxxxxx ,,, 1,1323,2212,1 ψψψ L

グラフ ルモ ルの条件付き 性を 用xNの周辺化の

( )∑ −−−− ≡�x

������� xxx ,)( 1,11,1 ψψ

====

====

−−−−

−−−−

),(),1(

)1,()1,1(

1,11,1

1,11,1

KxKxKxx

xKxxx

��������

��������

ψψ

ψψ

L

MOM

L

( ))()1( 1,11,1 Kxx ������ == −−−− ψψ L

xNについて周辺化

xNに依存する部分だけでよい

周辺化のイメージ

Page 12: 8.4 グラフィカルモデルによる推論

11

周辺分布の よい推 : 本番

Zxp n

1)( = ( ) ( ) ( )

∑ ∑ ∑

−−

1 2 1

212,1323,21,1 ,,,nx x x

nnnn xxxxxx LL ψψψ

( ) ( )

∑ ∑

+

−−++

1

,, 1,111,

n �x x

����nnnn xxxx LL ψψ

)( nxαµ

)( nxβµ

∑ ∑∑ ∑− +

=1 1 1

)()(x x x x

n

n n �

pxp xLL

( ) ( ) ( )���� xxxxxxZ

p ,,,1

)( 1,1323,2212,1 −−= ψψψ Lx

代入

さき どの条件付き 性を 用

Page 13: 8.4 グラフィカルモデルによる推論

12

入れ えによる計算• 演算 による計算 の :

====

====

),(),1(

)1,()1,1(

212,1212,1

212,1212,1

KxKxKxx

xKxxx

ψψ

ψψ

L

MOM

L

)( cbaacab +=+

),( 212,1 xxψ をx1について周辺化

=

=

)(

)1(

22,1

22,1

Kx

x

ψ

ψM

K×Kの演算同じことをN-1回繰り返すので,p(xn)を求めるために必要な計算 はO(NK2)

3回 ⇒ 2回

ポイント: 連鎖の さNに対して線形オーダーO(NK2)の計算

Page 14: 8.4 グラフィカルモデルによる推論

13

局所的なメッセージ伝播

– μα: 前向きに伝わるメッセージ– μβ: 後ろ向きに伝わるメッセージ

)()(1

)( nna� xxZ

xp βµµ=

∑ ∑− −

= −−

1 2

),()( 1,1

n nx x

nnnnna xxx Lψµ

∑−

−−−=1

)(),( 11,1

nx

nnnnn xxx αµψ

∑ ∑+ +

= ++

1 2

),()( 11,

n nx x

nnnnn xxx Lψµβ

∑+

+++=1

)(),( 111,

nx

nnnnn xxx βµψ

前向き 後ろ向き

∑=nx

nna xxZ )()( βµµ規格化係数

Page 15: 8.4 グラフィカルモデルによる推論

14

連鎖上全てのノードに対しての推

• 伝播中すべてのメッセージを保存(1) メッセージμαをx1からxNまで前向きに伝播(2) メッセージμβをxNからx1まで後ろ向きに伝播

)( 1−na xµ )( na xµ )( �a xµ)( 2xaµ )( 1+na xµ

)( 1−nxβµ )( nxβµ )( 1−�xβµ)( 1xβµ )( 2−nxβµ

(8.54)∑=nx

nnan xxZ

xp )()(1

)( βµµ

任意のノードの周辺分布を式(8.54)を用いて計算可能

※1 計算 は1つのノードに対する計算 の2倍※2 Zは都合のよいノードで計算すればよい

Page 16: 8.4 グラフィカルモデルによる推論

15

演習8.15: する2点の同時分布• する2点の同時分布 p(xn-1, xn)

Zxxp nn

1),( 1 =−

( ) ( ) ( )

∑ ∑∑

−−−−

2 12

212,1323,2121,2 ,,,x xx

nnnn xxxxxxn

LL ψψψ

( ) ( )

∑ ∑

+

−−++

1

,, 1,111,

n �x x

����nnnn xxxx LL ψψ

xn, xn-1以外を周辺化する

)( 1−nxαµ

)( nxβµ

( )nnnn xx ,1,1 −−ψ

⇒ (8.54)

Page 17: 8.4 グラフィカルモデルによる推論

16

補足: チャップマン-コルモゴロフの等式

• ホワイトボードで説明

Page 18: 8.4 グラフィカルモデルによる推論

17

8.4.2 木

Page 19: 8.4 グラフィカルモデルによる推論

18

メッセージパッシングの拡張• ノードの連鎖から成るグラフでは,ノード数に

線形な時間で 推 可能なことを示した• 木 (tree) と呼ばれるクラスでも同様に局所的

なメッセージパッシングによる推 が可能⇒ 連鎖についてのメッセージパッシングを一般化

した積和アルゴリズムを導出

積和アルゴリズムについては8.4.4を乞うご期待!

Page 20: 8.4 グラフィカルモデルによる推論

19

木の種類• 無向木

– 任意のノード間に 一の が存在• 有向木

– 根 (root) と呼ばれる親を持たないノードを1つだけ持ち,他の全てのノードは親を1つだけ持つ

• 多重木– 2つ以上親を持つノードが存在するが,任意の2ノード間の (方向を無

視した) が1つしかない有向グラフ

無向木 有向木 多重木モラル化で変化なし モラル化でループが発生

Page 21: 8.4 グラフィカルモデルによる推論

20

父1父2

習: モラル化• 有向グラフから無向グラフへの変換方法

– 親同士を結婚させる≒できちゃった婚

父結婚!

モラル化

父1父2

子モラル化?!

重婚! ザ・ばっくれ・バークレー・ボーイズby 和

Page 22: 8.4 グラフィカルモデルによる推論

21

モラル化:参考情報

などなど

Page 23: 8.4 グラフィカルモデルによる推論

22

演習8.18• 有向木によって表現される分布が,対応する無向木上の

等価な分布によって (自明に) 表現されることを示せ.無向木で表現される分布が,クリークポテンシャルを適

に規格化することにより,有向木で表現可能であることも示せ.ある与えられた無向木から構築できる有向木の数を計算せよ.

⇒ ホワイトボードで説明

Page 24: 8.4 グラフィカルモデルによる推論

23

8.4.3 因子グラフ

Page 25: 8.4 グラフィカルモデルによる推論

24

因子グラフ• 有向グラフ,無向グラフを因子グラフで表現

– 局所的な変数の部分集合のみに依存する関数の集合の積として表現可能

∏=s

ssfp )()( xx

∏=

=K

k

kkxpp1

)pa|()(x (8.5)

∏=C

CCZ

p )(1

)( xx ψ (8.39)

有向グラフ

無向グラフ

因子グラフ (8.59)

⇒ 親にのみ依存という条件付き 性を 用

⇒ 極大クリーク上のポテンシャル関数の積で表現

Page 26: 8.4 グラフィカルモデルによる推論

25

因子グラフの

• この因数分解のグラフ表現

)(),(),(),()( 3322121 xfxxfxxfxxfp dcba=x

無向グラフ表現では,これらの積はひとつのポテンシャル関数に統合された

⇒ 因子グラフではより詳細な情報が表現される

変数ノード

因子ノード

Page 27: 8.4 グラフィカルモデルによる推論

26

有向グラフからの変換(1) ノードに対応する変数ノードを作る(2) 条件付き分布に対応する因子を付け加える(3) 適 なリンクを加える

),|()()(

),,(

21321

321

xxxpxpxp

xxxf

=

)()( 11 xpxfa =

)()( 22 xpxfb =

),|(),,( 213321 xxxpxxxfc =

これはダメ? なぜ?

条件付き分布に着目

Page 28: 8.4 グラフィカルモデルによる推論

27

無向グラフからの変換(1) 各ノードに対応する変数ノードを作る(2) 極大クリークxsに対応する因子ノードを加える

),,(),,( 321321 xxxxxxf ψ=

),,(

),(),,(

321

32321

xxx

xxfxxxf ba

ψ=

),(),,(),(),,( 3232132321 xxxxxxxfxxxf ba ψψ≠注意点

Page 29: 8.4 グラフィカルモデルによる推論

28

局所的な を持つグラフ• 有向グラフにおいて,適 な因子関数を す

ることにより局所的な を 可能

),|()|()(),,( 213121321 xxxpxxpxpxxxf =

Page 30: 8.4 グラフィカルモデルによる推論

29

複数の因子グラフによる表現• 複数の因子グラフが,ひとつの有向グラフ/無向グラフ

を表現することがある

),,()( 321 xxxfp =x

),(),(),()( 323121 xxfxxfxxfp cba=x

何の条件付き 性も表現しない

Page 31: 8.4 グラフィカルモデルによる推論

30

(再掲) 本発表のポイント(1) 連鎖ノードにおけるメッセージパッシング(2) 因子グラフとは? 因子グラフの作り方

Page 32: 8.4 グラフィカルモデルによる推論

31

発表まとめ• 連鎖による推 を じて,メッセージによる推

の 要を解説した• 有向/無向グラフから因子グラフと因子関数を

生成する方法を解説した• 疑問「因子グラフがなんで嬉しいの?」

続く発表に乞うご期待!

Page 33: 8.4 グラフィカルモデルによる推論

32

次回予告

Page 34: 8.4 グラフィカルモデルによる推論

33

これからが

ほんとうの

ノーテーション

地獄だ…

Page 35: 8.4 グラフィカルモデルによる推論

34

Page 36: 8.4 グラフィカルモデルによる推論

35

おしまい