カルバック情報量の分割による特異モデルの学習係数の

Report
カルバック情報量の分割による
特異点モデルの学習係数計算法
永田賢二 渡辺澄夫
東京工業大学工学部情報工学科
東京工業大学精密工学研究所
1
 (w)
背景

順問題
q(x)

X1, X 2 ,, X n
逆問題
?
p( x | w)
p( x | w)
X1, X 2 ,, X n

p( x | w)
2
背景


統計的正則モデル
順問題について解明されている
⇒AIC,BIC,MDLなど
特異モデル
未だ順問題が解明されていない
⇒モデル選択のアルゴリズムが
確立されていない
3
目的


特異モデルの順問題について、
カルバック情報量を分割することにより、
確率的複雑さを分解する方法を提案
その有効性をいくつかの実験により検証
4
 (w)
ベイズ学習
q(x)


X  ( X1, X 2 ,, X n )
n
p( x | w)
n
1
n
p
(
w
|
X
)
 (w) p( X i | w)
事後分布:
n
Z(X )
i 1
ベイズ予測分布: p( x | X ) 
n
 p(x | w) p(w | X
n
)dw
予測分布と真の分布の違いは、サンプルが増え
るにつれて、どのような早さで小さくなってゆくか
5
カルバック情報量

カルバック情報量
q( x)
H (w)   q( x) log
dx
p( x | w)

汎化誤差
q( x)
G(n)  EX n [ q( x) log
dx]
n
p( x | X )

1
  o( ) (  :学習係数)
n
n
6
学習係数の特徴
(1) ( ) は、ゼータ関数
 ( z)   H (w)  (w)dw
z
の最も原点に近い極に等しい。
(2)
  lim
n
 log  exp(nH (w)) (w)dw
log n
log(V (t ) / V (t ))
(3)   lim
t0
log
( V (t ) 


(w)dw )
H ( w)t
7
提案方法と基礎定理

提案方法
H (w)  H1(w)  H2 (w)
 ?

1は既知数
定理
  1  lim
n
 log  exp(nH2 (w))n (w)dw
log n
[ n (w)  exp(nH1 (w)) (w)]
8
定理の証明
Z (n)   exp(nH (w)) (w)dw
  exp(nH1 (w)) exp(nH2 (w)) (w)dw
exp(nH (w)) exp(nH (w)) (w)dw

  exp(nH (w)) (w)dw
 exp(nH (w)) (w)dw
2
1
1
1
  exp(nH1 (w)) (w)dw  exp(nH2 (w))n (w)dw
 log  exp(nH2 (w))n (w)dw
 log Z (n)
  lim
 1  lim
n
n
log n
log n
9
計算アルゴリズム
1、n として幾つかの値を設定する。
2、  n (w) に従うサンプル{wk
: k  1,2,, K} を取り出す
⇒メトロポリス法
1 K
3、 y(n)   log{  exp(nH2 (wk ))} を計算する。
K k 1
4、幾つかの n について組み合わせ (log n, y(n))を求めて
回帰曲線
y  2 x bを最小二乗法で当てはめることにより
2 を求める。
5、
 1  2
を目的の値とする。
10
メトロポリス法
n (w)  exp(nH1 (w)) (w)  exp(Hˆ (w)) とする。
1、 wの初期値を設定する。
2、w' 
w (乱数)により、 w'を得る。
Hˆ (w)  Hˆ (w' )  w' を採択
ˆ (w)  Hˆ (w' )  確率 P で w' を採択
②H
3、①
確率
1 P で wを採択
[P  exp(Hˆ (w' )  Hˆ (w))]
4、1の手続きに戻る。
11
実験(1)
<条件>
H (a, b, c, d )  H1 (a, b, c, d )  H 2 (a, b, c, d )
H1 (a, b, c, d )  (ab  cd )2
H 2 (a, b, c, d )  (ab3  cd 3 )2
<理論値>
  2 / 3, 1  1/ 2
 2  1/ 6  0.1666
<結果>
y  0.1358log n  0.2821
12
実験(2)
<条件>
H (a, b, c, d , e, f )  H1 (a, b, c, d , e, f )  H 2 (a, b, c, d , e, f )
H1 (a, b, c, d , e, f )  (ab  cd  ef )2
H 2 (a, b, c, d , e, f )  (ab3  cd 3  ef 3 )2  (ab5  cd 5  ef 5 )2
<理論値>
  5 / 6, 1  1/ 2
 2  1/ 3  0.3333
<結果>
y  0.2817log n  0.5071
13
考察

H (w) を分割せずに  を計算する方法
f (t )   log  exp(ntH(w)) (w)dw
df
f (1)  
dt
0 dt
nH (w) exp(ntH (w)) (w)dw
1

  dt
0
 exp(ntH(w)) (w)dw
1
確率分布 exp(ntH(w)) (w) による nH (w) の平均値
14
考察


分割しないと・・・
あるnに対してtについての
積分区間[0,1]を細かく分割
分割すると・・・
あるnに対して一回のMCMC法
分割すると演算量が遥かに少ない!
15
今後の課題

新たな計算法
g (t )   log  exp(ntH2 (w))n (w)dw とすると
dg
g (1)  
dt
0 dt
nH2 (w) exp(ntH2 (w))n (w)dw
1

  dt
0
 exp(ntH2 (w))n (w)dw
1
確率分布 exp(ntH2 (w))n (w)による nH2 (w)の
平均値を 2 とし、  1  2 により目的の値を計算
16
結論


カルバック情報量を分割して、学習係数を
計算するアルゴリズムを提案し、その有効
性を実験的に確認
今後の課題として、より正確な学習係数が
求められるようなカルバック情報量の分割
の仕方の最適化の問題がある。
17

similar documents