特異モデルのベイズ学習における 交換モンテカルロ法について

特異モデルのベイズ学習における
交換モンテカルロ法について
永田賢二 渡辺澄夫
東京工業大学 知能システム科学専攻
東京工業大学 精密工学研究所
発表概要

背景




特異モデル
ベイズ学習
MCMC法
提案法


交換モンテカルロ法
ベイズ学習への適用
実験・考察
 まとめ

背景:特異モデル
ニューラルネットワーク
混合正規分布
ベイズネットワーク
これらのモデルは特異モデルと呼ばれ、パターン認識、
システム制御、時系列予測などの応用に用いられている。
背景:ベイズ学習
q(x)
X n  { X 1 , X 2 ,, X n }
 (w)
p ( x | w)
q( X i )
1 n
経験カルバック距離: H n ( w)   log
n i 1
p( X i | w)
1
n
exp( nH n ( w)) ( w)
ベイズ事後分布: p ( w | X ) 
n
Z0 ( X )

規格化定数: Z 0 ( X n )  exp(  nH n ( w)) ( w)dw
n
ベイズ予測分布: p ( x | X ) 
n
p
(
x
|
w
)
p
(
w
|
X
)dw

解析的な計算が困難⇒期待値計算をMCMC法により計算
背景:MCMC法
ある確率分布 p ( w)  exp(  Hˆ ( w)) に従う
サンプルを発生させるアルゴリズム
<メトロポリス法>
p ( w | w)
Hˆ ( w)  Hˆ ( w)  w を採択
確率 P で w を採択
ˆ
ˆ

H ( w)  H ( w ) 
w
w
w1,, wK ~p(w |
1
K
K
確率 1  P で
[ P  exp(  Hˆ ( w' )  Hˆ ( w))]
X n ) Hˆ (w)  nH n (w)  log  (w)
n
p
(
x
|
w
)

p
(
x
|
w
)
p
(
w
|
X
)dw

k

k 1
w を採択
背景:MCMC法
1
exp( nH n ( w)) ( w)
ベイズ事後分布: p ( w | X ) 
n
Z0 ( X )
n
学習データ数:小
学習データ数:大
学習データ数に応じて、ステップ幅を最適にする必要がある
背景:MCMC法
1
exp( nH n ( w)) ( w)
ベイズ事後分布: p ( w | X ) 
n
Z0 ( X )
n
学習データ数:大
学習データ数:小
特異モデルのベイズ事後分布
+
メトロポリス法
計算量が爆発
対
策
<拡張アンサンブル法>
•マルチカノニカル法
•シミュレーテッド・テンパリング法
•交換モンテカルロ法
目的


特異モデルのベイズ学習において、交換モ
ンテカルロ法を適用することを提案
その有効性をいくつかの実験により検証
交換モンテカルロ法[Hukushima,96]
以下の同時分布に従うサンプルを生成することを考える。
L
Pwl ; tl    Pl ( wl )
l 1
Pl (w)  exp( tl Hˆ (w))
<アルゴリズム>
1. それぞれの分布 Pl (w) に対して、メトロポリス法によりそれぞ
れの分布からのサンプルを生成する。
2. 上記の操作に加え、数ステップごとに、状態 wl と wl 1 を
以下の確率 Pwl , wl 1; tl , tl 1  で交換する。
Pwl , wl 1; tl , tl 1   min( 1, exp( ))
wl , wl 1 ; tl , tl 1   (tl 1  tl ) Hˆ ( wl )  Hˆ ( wl 1 )


交換モンテカルロ法[Hukushima,96]
<メトロポリス法>
P(w)
<交換モンテカルロ法>
P1 (w)
P2 (w)
P3 ( w)
P4 (w)
ベイズ学習への適用
1
p( w | X , t ) 
exp( ntH n ( w)) ( w)
n
Z0 ( X , t)
n
t  0 (事前分布)
0  t 1
緩和しやすい
Pwl , wl 1 ; tl , tl 1   min( 1, exp( ))
t  1(事後分布)
緩和しにくい
wl , wl 1 ; tl , tl 1   n(tl 1  tl )H n ( wl )  H n ( wl 1 ) 
実験条件①
学習データの出方について平均した場合を考える。
1
exp( nH ( w)) ( w)
ベイズ事後分布: p ( w) 
Z 0 ( n)
q ( x)
H ( w)   q( x) log
dx
<学習モデルの設定>
p( x | w)
w  w j : j  1,, d 
d
H ( w)   ( w j ) 2  (w) :標準正規分布
j 1
1
確率的複雑さ: F ( n)   log Z 0 ( n)  log n  ( d  1) log log n  O (1)
2
f  f0
( f 0 :確率的複雑さの理論値、 f :実験値)
評価関数(誤差率):
f0
実験条件②
{t1 ,, t L } : L  32 tl 
0
(l
1)
2l L(otherwise)
<メトロポリス法の条件>
•初期値:事前分布からのランダムサンプル
• p ( w | w) :[  D ( n, t ), D ( n, t )] の一様分布とし、
採択率が6割から8割になるように D ( n, t ) を設定
•初期値の影響をなくすため、サンプル系列の後半50%を期待値計算に使用
<交換モンテカルロ法の条件>
・交換の頻度は、メトロポリス法1ステップに対し1回
・交換を試行する状態の取り方
ステップ数が奇数なら {( w1 , w2 ), ( w3 , w4 ), , ( w31, w32 )}
ステップ数が偶数なら {( w2 , w3 ), ( w4 , w5 ), , ( w30 , w31 )}
実験結果
(サンプル系列の様子)
1
p( w) 
exp( nH ( w)) ( w)
Z 0 ( n)
K  10000, n  10000, d  2
メトロポリス法
交換モンテカルロ法
実験結果
(事後分布からのサンプル数と誤差率の関係)
 100000
パラメータの次元数:d  2
学習データ数:n
メトロポリス法
交換モンテカルロ法
誤
差
率
log(事後分布からのサンプル数)
実験結果
(学習データ数と誤差率の関係)
K  8000
パラメータの次元数: d  2
事後分布からのサンプル数:
メトロポリス法
交換モンテカルロ法
誤
差
率
log(学習データ数)
実験結果
(パラメータの次元数と誤差率の関係)
 8000
学習データ数: n  100000
事後分布からのサンプル数: K
メトロポリス法
交換モンテカルロ法
誤
差
率
パラメータの次元数
まとめ


特異モデルのベイズ学習に交換モンテカルロ法を
適用することを提案した。
実験の結果、以下のことが明らかになった。



メトロポリス法よりも少ないサンプル数で、事後分布を精
度よく近似できる。
特に、その効果は、学習データ数が多いときや、パラ
メータの次元数が高いときに顕著に現れる。
今後の課題



より複雑なモデルへの適用
交換モンテカルロ法の予測精度の解明
変分ベイズ学習との比較
追加資料:確率的複雑さの計算法
確率的複雑さ:
F ( X n )   log Z 0 ( X n )
モデル選択やハイパーパラメータの決定の際の基準
<MCMC法による計算法>
Z 0 (t )   exp( ntH n ( w)) ( w)dw
Z 0 (0)  1
L 1
Z 0 (1) Z 0 (t1 ) Z 0 (t2 )
Z 0 (1)
Z 0 (tl 1 )


 

(t1  0, t L  1)
Z 0 (0) Z 0 (0) Z 0 (t1 )
Z 0 (t L 1 ) l 1 Z 0 (tl )
L 1

l 1
 exp( n(t
l 1
 tl ) H n ( w)) exp( ntl H n ( w)) ( w)dw
n
exp(

nt
H
(
w
))

(
w
)
dw

p
(
w
|
X
, tl )
l
n

L 1
F ( X )   log Z 0 (1)    exp( ntl H n ( w)) p( w | X n , tl )dw
n
l 1
(tl  tl 1  tl )
追加資料
(サンプル1系列での期待値計算の比較)
 100000
パラメータの次元数:d  2
学習データ数:n
メトロポリス法
交換モンテカルロ法
誤
差
率
log(パラメータのサンプル数)