論理生命学第8回: ベイズ推定と変分ベイズ法 渡辺一帆 内容 ベイズ推定 簡単な場合・・・共役事前分布 変分ベイズ法 潜在変数モデルのベイズ推定のための近似 復習:ベイズ推定 学習データ: x { x1 ,..., x n } 学習モデル: p ( x | w ) パラメータ: w n 尤度関数: p (x | w ) p ( xi | w ) 予測分布 i 1 最尤推定: wˆ ML arg max log p ( x | w ) p ( x | wˆ ML ) w wも確率変数として扱う 事後確率最大化 (MAP)推定: 事前分布: p 0 ( w ) wˆ MAP arg max log p ( x | w ) p 0 ( w ) p ( x | wˆ MAP ) w 事後分布 ベイズ推定: p (w | x) p (x | w ) p0 (w ) p( x | x) Z Z p ( x | w ) p (w | x)dw p (x | w ) p0 (w )dw 規格化定数(実はすごく大事) ベイズ推定(計算しやすい場合) データ: x { x1 ,..., x n } 正規分布 p(x | w) (x w) 1 exp 2 2 2 事前分布 p0 (w) w2 exp 2 2 1 事後分布を計算してみる n p(w | x) wに関する分布 p ( xi | w ) p 0 ( w ) i 1 exp n i 1 ( xi w ) 2 2 2 w 2 wについては定数 n 1 n 2 n 1 2 exp w w xi xi 2 2 i 1 i 1 2 n 1 n 1 exp x w i 2 n 1 i 1 事前分布:正規分布 (平均0、分散1) 事後分布:正規分布 1 n 1 (平均 n 1 x i 、分散 n 1 ) i 1 ベイズ推定(計算しやすい場合) データ: x { x1 ,..., x n } x i {0 , 1} ベルヌーイ分布 事前分布:ベータ分布 p ( x | a ) a (1 a ) x a [ 0 1] 1 x p0 (a ) :パラメータ ( ) ( ) ( ) a 1 1 , ハイパーパラメータ s 1 t ( s ) t e dt はガンマ関数 0 演習 (1)事後分布 p ( a | x ) 1 n Z p ( x i | a ) p 0 ( a ) を計算せよ i 1 ヒント: 1 a 1 (1 a ) 1 da 0 (2)予測分布 (1 a ) p( x | x) p ( x | a ) p ( a | x ) da ヒント: を計算せよ ( s 1) s ( s ) ( ) ( ) ( ) 共役事前分布 モデル 事前分布 正規分布 正規分布 ベルヌーイ、二項分布 ベータ分布 多項分布 ディリクレ分布 ポアソン分布 ガンマ分布 正規分布(分散) ガンマ分布 正規分布(共分散行列) ウィシャート分布 事後分布は事前分布と同じ分布形 ベイズ推定(計算しにくい場合) 潜在変数モデル p(x | w ) p ( x, y | w ) y 事後分布は p (w | x) 1 Z 1 Z 規格化定数 n p 0 ( w ) i 1 p ( xi , yi | w ) yi p (x, y | w ) p0 (w ) p (y , w | x) y y Z p (x, y | w ) p 0 ( w )d w の計算は困難 y Z F log Z 周辺尤度(marginal likelihood) 確率的複雑さ(stochastic complexity) 証拠(evidence) 対数証拠(log-evidence) 分配関数(partition function) 自由エネルギー(free energy) 変分ベイズ法(1) 近似 事後分布 p (y , w | x) F log q (y , w ) p ( x , y | w ) p 0 ( w )d w y 変分自由エネルギー F K ( q ( y , w ) || p ( y , w | x )) 自由エネルギー F [q ] 事後分布からのずれ カルバック情報量 K ( q || p ) y 等号成立は q ( y , w ) log q (y , w ) dw 0 p (y , w | x) q (y , w ) p (y , w | x) K ( q || p ) F [q ] F 変分ベイズ法(2) 制約(潜在変数とパラメータが独立): q (y , w ) q (y )q (w ) q ( y ) を固定したときに最適な q (w ) 1 Cw q (w ) p 0 ( w ) exp log p ( x , y | w ) q (w ) を固定したときに最適な q ( y ) q (y ) 1 exp log p ( x , y | w ) Cy 交互に最適化(代入)を繰り返す q(y ) q(w ) p 期待値 変分ベイズ法(3) q ( y ) を固定したときに最適な F [q ] q ( w ) log q ( w ) q (w ) q ( y ) log p ( x , y | w ) p ( w ) d w +(Const.) 0 y q (w ) q ( w ) log d w +(Const.) p 0 ( w ) exp q ( y ) log p ( x , y | w ) y K ( q || p ) q ( w ) log q (w ) dw 0 p (w ) q (w ) を固定したときに最適な q ( y ) F [q ] q ( y ) log y y q ( y ) q ( w ) log p ( x , y | w ) d w q (y ) q ( y ) log exp q ( w ) log p ( x , y | w ) d w +(Const.) +(Const.) 準備:ディリクレ分布 確率ベクトル上の確率分布 K a ( a 1 , a 2 ,..., a K ) p (a ) K l 1 l K ( l ) a k 0, a k 1 k 1 K k kK1 パラメータ 1 akk 1 k 1 1 2 1 l 1 a1 1 1 2 1 a1 1 1 2 1 K=2のときはベータ分布 期待値 ak p (a ) k log a k K l 1 l p (a ) K k l l 1 x log ( x ) はディガンマ関数 a1 応用例)混合正規分布(1) K 学習モデル: p ( x , y | w ) k 1 事前分布: a k 2 M exp{ || x k || 2 } (k ) K p 0 ( w ) p 0 (a ) p 0 ( k ) k 1 ディリクレ分布 p 0 (a ) 0 、 0 、 正規分布 K 1 ak0 k 1 目標: 2 y q (w ) 1 Cw q (y ) 1 Cy p0 ( k ) 0 2 M ハイパーパラメータ || k 0 || exp 0 2 p 0 ( w ) exp log p ( x , y | w ) exp log p ( x , y | w ) 0 q(w ) q(y ) 応用例)混合正規分布(2) q ( y ) を固定したときに最適な n log p ( x , y | w ) q(y ) i 1 n i 1 n nk y (k ) i i 1 q ( yi ) K k 1 nk (k ) yi k 1 (k ) yi k 1 q (w ) 1 2 || x i k || log a k 2 K q(y ) log a k 1 (k ) yi 2 y i 1 q(y ) 2 || x i k || +(Const.) (*) n (k ) i q(y ) +(Const.) q ( yi ) xi とおくと nk 2 +(Const.) n log a || || n k k k k k 2 k 1 K log p ( x , y | w ) q(y ) p 0 ( w ) exp( ) K ディリクレ分布 q ( a ) nk 0 ( 2 ) パラメータ k n k 0 k 1 正規分布 q( k ) n 0 1 ak k M (n 0 ) exp k || k k 2 || 平均 k n k k 0 0 nk 0 1 分散 n k 0 応用例)混合正規分布(3) q (w ) を固定したときに最適な q ( y ) n log p ( x , y | w ) q(w ) 1 2 || x i k || log a k 2 K i 1 k 1 n K (k ) yi y (k ) i i 1 k 1 log a k q (a ) 1 2 q(w ) || x i k || || x i k || || x i k k k || 2 exp( ) +(Const.) 2 q(k ) 2 || x i k || 2 ( x i k ) ( k k ) || k k || 2 K n q (y ) q( y i 1 n i ) i 1 exp( yi i (k ) (k ) ) K exp( (l ) i ) l 1 (k ) i (†) k 1 (nk 0 ) (n K 0 ) || x i k || 2 2 M 1 2 n k 0 変分ベイズ法:(*)と(†)を繰り返す。(変分自由エネルギーの計算も必要) 2 応用例)アルゴリズムの様子(1) * k 初期化 □:data(n 50 ) q ( y ) を更新 n 3 16 . 9 n1 16 . 4 * * * * * * n 2 16 . 7 (2) q ( yi q (w ) を更新 終了 n1 24 . 3 * n 3 13 . 8 * * n1 14 . 0 * n 2 22 . 2 1) 0 . 82 * n3 1 .0 繰り返す * n 2 24 . 7 応用例)アルゴリズムの様子(2) 終了 n 1 24 . 3 * 終了 n 1 13 . 1 n ** 11 . 8 3 * n3 1 .0 * n 2 24 . 7 2つのクラスタで推定 (1個は自動的に消える) * n 2 25 . 1 3つのクラスタで推定 余分なコンポーネントを自動的に刈り込む。 事前分布の設定でアルゴリズムの振る舞いは変わる。 変分自由エネルギーの最小値 min F [ q ] を評価すると振る舞 q ( y ), q ( w ) いがわかる。 まとめ ベイズ推定 計算しやすい場合:共役事前分布 変分ベイズ法 潜在変数モデルのためのベイズ推定の近似法 演習 (3) 混合ニ項分布( x {0 , 1, 2 ,..., N } N p ( x , y | w ) x x N x ar1 (1 r1 ) w { a , r1 , r2 } は既知) N (1 a ) r y (1 ) x 2 (1 r2 ) N x y (2) に対する変分ベイズ法の適用を考える。 n q (y ) q( y i 1 1 q (w ) Cw i ) を固定したとき、変分自由エネルギーを最小化する n p 0 ( w ) exp log p ( x i , y i | w ) i 1 n を nk i 1 y (k ) i q ( yi ) 及び k 1 nk q (w ) 、 q ( yi ) n i 1 (k ) yi q ( yi ) xi ただし、事前分布を p 0 ( w ) p 0 ( a ) p 0 ( r1 ) p 0 ( r2 ) 1 1 p0 (a ) p 0 ( r1 ) a (1 a ) r1 (1 r1 ) (k=1,2)を用いて表せ。 p 0 ( r2 ) 1 r2 (1 r2 ) とする。
© Copyright 2024 ExpyDoc