Más contenido relacionado La actualidad más candente (20) Similar a 8.4 グラフィカルモデルによる推論 (20) 8.4 グラフィカルモデルによる推論2. 目次
• 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 グラフ構造の学習
1
5. グラフ ルモ ルにおける推
• 目的: グラフ ルモ ルにおける推
– いくつかのノードが観測された際に,残ったノード
(のうちいくつか) の事後分布を知りたい
• アプローチ
– グラフ構造を 用して局所的なメッセージの伝播を
用いて を う
– cf. は10章で紹介
4
6. ???
イズの の
• 2変数x, y上の同時分布を因数分解する
(a) p ( x, y ) = p ( x) p ( y | x)
(b) yが観測された
(c) ???
p ( y ) = ∑ p ( y | x' ) p ( x' ) (8.47)
x'
p ( y | x) p ( x)
p( x | y ) = (8.48)
p( y )
p( x, y ) = p( x | y ) p( y ) = p( y | x) p( x) ではダメ? 5
8. 無向連鎖のグラフの
K状態 変数
1
p(x) = ψ 1, 2 ( x1 , x2 ) 2,3 ( x2 , x3 )Lψ
ψ −1, (x −1 ,x ) (8.49)
Z
K×Kの表
N-1個
⇒ 同時分布は (N-1) K2 個のパラメータを持つ
習
※有向グラフと同じ条件付き 性を持つ
7
9. 周辺分布の推
• 連鎖 中のノードの周辺分布を推 したい
– どのノードも観測されていない場合
コレ
xn
周辺分布 p ( xn ) = ∑L ∑∑L ∑ p(x)
x1 xn−1 xn+1 x
(8.50)
xn以外で周辺化
⇒ xが取りうる状態の数: KN個
ポイント: 連鎖の さNに対して
指数オーダーO(KN)のメモリ と計算 8
10. STOP! ポテンシャル関数って何なのさ?
• (規格化されるので) ψ(xC) > 0 であればなんでもよい
– えばボル マン分布: ψ C (x C ) = exp{− E (x C )}
– エネルギー関数も本文中に記述なし
• ポテンシャル関数の周辺化ってどういうこと?
– 簡単のためxc={x1,x2},x1,x2は0,1の2 変数とする
ψ C ( x1 ) = ∑ exp{− E ( x1 , x2 )}
x2
= exp{− E ( x1 , x2 = 0)} + exp{− E ( x1 , x2 = 1)}
の
ポテンシャル関数を使って説明しているのは一般性を保つため
くなったら適 に 変換すべし
9
11. 周辺分布の よい推 : て
グラフ ルモ ルの条件付き 性を 用
xNの周辺化の ∑ψ (x , x )ψ (x , x )Lψ
x
1, 2 1 2 2,3 2 3 −1, (x −1 ,x )
= ψ 1, 2 ( x1 , x2 ) 2,3 ( x2 , x3 )L ∑ψ
ψ −1, (x −1 ,x )
x
xNに依存する部分だけでよい
周辺化のイメージ ψ −1, (x −1 ) ≡ ∑ψ −1, (x −1 ,x )
x
ψ (x = 1, x = 1) L ψ (x = K , x = 1)
xNについて −1, −1 −1, −1
周辺化 M O M
ψ ( x −1 = 1, x = K ) L ψ ( x −1 = K , x = K )
−1, −1,
(ψ −1, (x −1 = 1) L ψ −1, (x −1 = K )) 10
12. 周辺分布の よい推 : 本番
1
p ( x) = ψ 1, 2 ( x1 , x2 )ψ 2,3 ( x2 , x3 )Lψ −1, (x −1 ,x )
Z
代入
p( xn ) = ∑L ∑∑ L ∑ p(x)
x1 xn−1 xn+1 x
さき どの条件付き 性を 用
1
p ( xn ) = ∑ψ n −1,n ( xn −1 , xn )L ∑ψ 2,3 ( x2 , x3 )∑ψ 1, 2 ( x1 , x2 ) L
Z x
n −1 x 2 x
1
µα ( xn )
∑ψ n ,n +1 (xn , xn+1 )L ∑ψ −1, (x −1 , x ) L
xn+1
x
11
µ β ( xn )
13. 入れ えによる計算
• 演算 による計算 の : ab + ac = a(b + c)
3回 ⇒ 2回
ψ 1, 2 ( x1 , x2 ) をx1について周辺化
ψ 1, 2 ( x1 = 1, x2 = 1) L ψ 1, 2 ( x1 = K , x2 = 1) ψ 1, 2 ( x2 = 1)
M O M M
ψ ( x = 1, x = K ) L ψ ( x = K , x = K ) ψ ( x = K )
1, 2 1 2 1, 2 1 2 1, 2 2
K×Kの演算
同じことをN-1回繰り返すので,p(xn)を求めるために必要な
計算 はO(NK2)
ポイント: 連鎖の さNに対して
線形オーダーO(NK2)の計算 12
14. 局所的なメッセージ伝播
1 規格化係数
p ( x ) = µ a ( xn ) µ β ( xn ) Z = ∑ µ a ( xn ) µ β ( xn )
Z xn
– μα: 前向きに伝わるメッセージ
– μβ: 後ろ向きに伝わるメッセージ
前向き 後ろ向き
µ a ( xn ) = ∑ψ n −1,n ( xn −1 , xn ) ∑ L µ β ( xn ) = ∑ψ n,n +1 ( xn , xn +1 ) ∑ L
xn−1 xn −2 xn+1 xn+ 2
= ∑ψ n −1,n ( xn −1 , xn ) µα ( xn −1 ) = ∑ψ n ,n +1 ( xn , xn +1 ) µ β ( xn +1 )
xn+1
xn−1
13
15. 連鎖上全てのノードに対しての推
• 伝播中すべてのメッセージを保存
(1) メッセージμαをx1からxNまで前向きに伝播
(2) メッセージμβをxNからx1まで後ろ向きに伝播
µ a ( x2 ) µ a ( xn −1 ) µ a ( xn ) µ a ( xn +1 ) µa ( x )
µ β ( x1 ) µ β ( xn − 2 ) µ β ( xn −1 ) µ β ( xn ) µβ ( x −1 )
※1 計算 は1つのノードに対する計算 の2倍
※2 Zは都合のよいノードで計算すればよい
任意のノードの周辺分布を式(8.54)を用いて計算可能
1
p ( xn ) = ∑ µ a ( xn ) µ β ( xn ) (8.54) 14
Z xn
16. 演習8.15: する2点の同時分布
• する2点の同時分布 p(xn-1, xn)
xn, xn-1以外を周辺化する
1
p( xn −1 , xn ) = ψ (x , x )
Z n −1,n n −1 n
∑ψ n − 2,n −1 ( xn − 2 , xn −1 )L ∑ψ 2,3 ( x2 , x3 )∑ψ 1, 2 ( x1 , x2 ) L
xn− 2
x2 x1
µα ( xn−1 )
∑ψ n ,n +1 ( xn , xn +1 )L ∑ψ (x −1 , x ) L
⇒ (8.54)
−1,
xn+1
x
µ β ( xn ) 15
20. 木の種類
• 無向木
– 任意のノード間に 一の が存在
• 有向木
– 根 (root) と呼ばれる親を持たないノードを1つだけ持ち,他の全ての
ノードは親を1つだけ持つ
• 多重木
– 2つ以上親を持つノードが存在するが,任意の2ノード間の (方向を無
視した) が1つしかない有向グラフ
無向木 有向木 多重木
モラル化で変化なし モラル化でループが発生
19
25. 因子グラフ
• 有向グラフ,無向グラフを因子グラフで表現
– 局所的な変数の部分集合のみに依存する関数の集合
の積として表現可能
因子グラフ p ( x) = ∏ f s ( x s ) (8.59)
s
有向グラフ ⇒ 親にのみ依存という条件付き 性を 用
K
p(x) = ∏ p( xk | pa k ) (8.5)
k =1
無向グラフ ⇒ 極大クリーク上のポテンシャル関数の積で表現
1
p(x) = ∏ψ C (x C ) (8.39) 24
Z C
26. 因子グラフの
p(x) = f a ( x1 , x2 ) f b ( x1 , x2 ) f c ( x2 , x3 ) f d ( x3 )
• この因数分解のグラフ表現
変数ノード
因子ノード
無向グラフ表現では,これらの積は
ひとつのポテンシャル関数に統合された
⇒ 因子グラフではより詳細な情報が表現される 25
28. 無向グラフからの変換
(1) 各ノードに対応する変数ノードを作る
(2) 極大クリークxsに対応する因子ノードを加える
f ( x1 , x2 , x3 ) = ψ ( x1 , x2 , x3 ) f a ( x1 , x2 , x3 ) f b ( x2 , x3 )
= ψ ( x1 , x2 , x3 )
注意点
f a ( x1 , x2 , x3 ) f b ( x2 , x3 ) ≠ ψ ( x1 , x2 , x3 )ψ ( x2 , x3 ) 27
29. 局所的な を持つグラフ
• 有向グラフにおいて,適 な因子関数を す
ることにより局所的な を 可能
f ( x1 , x2 , x3 ) = p( x1 ) p( x2 | x1 ) p( x3 | x1 , x2 )
28
32. 発表まとめ
• 連鎖による推 を じて,メッセージによる推
の 要を解説した
• 有向/無向グラフから因子グラフと因子関数を
生成する方法を解説した
• 疑問「因子グラフがなんで嬉しいの?」
続く発表に乞うご期待!
31
34. 地 ノ ほ こ
獄 ー ん れ
だ テ と か
ー う ら
…
シ の が
ョ
ン
33