カルバック情報量の分割による特異モデルの学習係数の
Download
Report
Transcript カルバック情報量の分割による特異モデルの学習係数の
カルバック情報量の分割による
特異モデルの確率的複雑さの計算法
永田賢二 渡辺澄夫
東京工業大学工学部情報工学科
東京工業大学精密工学研究所
1
(w)
背景
順問題
q(x)
X 1 , X 2 , , X n
逆問題
?
p( x | w)
p1 ( x | w )
X 1 , X 2 , , X n
pM (x | w)
2
背景
統計的正則モデル
順問題について解明されている
⇒AIC,BIC,MDLなど
特異モデル
未だ順問題が解明されていない
⇒モデル選択のアルゴリズムが
確立されていない
3
目的
特異モデルの順問題について、
カルバック情報量を分割することにより、
確率的複雑さを計算する方法を提案
従来法との比較により分割することの
有効性を実験的に検証
4
(w)
ベイズ学習
q(x)
事後分布:
X ( X 1 , X 2 , , X n )
n
p(w | X )
n
n
1
n
Z(X )
ベイズ予測分布: p ( x | X )
n
p( x | w)
( w ) p ( X i | w )
i 1
p( x | w) p(w | X
n
) dw
予測分布と真の分布の違いは、サンプルが増え
るにつれて、どのような早さで小さくなってゆくか
5
カルバック情報量
カルバック情報量
H (w)
q ( x ) log
q( x)
dx
p( x | w)
汎化誤差
G ( n ) E X n [ q ( x ) log
1
o( )
n
n
q( x)
n
dx ]
p(x | X )
( :学習係数)
6
学習係数と確率的複雑さ
F ( n ) log
exp( nH ( w )) ( w ) dw
log n ( m 1) log log n O (1) ( m:定数)
<計算法>
f ( n , t ) log
f ( n ,1)
1
1
0
0
f
t
dt
exp( ntH ( w )) ( w ) dw
とすると
dt
nH ( w ) exp( ntH ( w )) ( w ) dw
exp( ntH ( w )) ( w ) dw
7
メトロポリス法
ある確率分布 p ( w ) exp( Hˆ ( w )) に従う
サンプルを発生させるアルゴリズム
① Hˆ ( w ) Hˆ ( w ' ) w ' を採択
② Hˆ ( w ) Hˆ ( w ' ) 確率 P で w ' を採択
確率 1 P で w を採択
半径 r
[ P exp( Hˆ ( w ' ) Hˆ ( w ))]
w
w'
この操作をK回繰り返し、
K個のサンプルとする。
8
確率的複雑さの数値計算(従来法)
exp( ntH ( w )) ( w )
0
1
~
w1
1
w2
1
wK
t2
~
w1
2
w2
2
wK
tm
~
w1
m
wK
t1
m
w2
1
2
F (n )
m
9
提案方法と基礎定理
提案方法
H (w) H 1(w) H 2 (w)
F (n) ?
F1 ( n ) は既知数
定理
F ( n ) F1 ( n ) log
exp(
nH 2 ( w )) n ( w ) dw
[ n ( w ) exp( nH 1 ( w )) ( w )]
10
定理の証明
Z ( n ) exp( nH ( w )) ( w ) dw
exp( nH 1 ( w )) exp( nH 2 ( w )) ( w ) dw
exp( nH 1
exp( nH ( w )) exp( nH ( w )) ( w ) dw
( w )) ( w ) dw
exp( nH ( w )) ( w ) dw
2
1
1
exp( nH 1 ( w )) ( w ) dw exp( nH 2 ( w )) n ( w ) dw
F ( n ) log Z ( n ) F1 ( n ) log
exp( nH
2
( w )) n ( w ) dw
I (n ) とする
11
計算アルゴリズム1
exp( nH
F ( n ) F1 ( n ) log
2
( w )) n ( w ) dw の計算
確率分布 n (w ) によるexp( nH 2 ( w )) の平均値
n (w)
F1 ( n )
+
w1
w2
wK
I (n)
12
計算アルゴリズム2
exp( ntH
g ( n , t ) log
g ( n ,1)
1
0
dg
( w )) n ( w ) dw とすると
dt
dt
1
0
2
dt
nH
2
( w ) exp( ntH 2 ( w )) n ( w ) dw
exp(
ntH
(
w
))
(
w
)
dw
2
n
確率分布 exp( ntH 2 ( w )) n ( w ) による nH 2 ( w ) の平均値
13
計算アルゴリズム2
exp( ntH 2 ( w )) n ( w )
0
F1 ( n )
t1
~
1
w1
1
w2
1
wK
+
1
2
t2
~
w1
tm
~
w1
m
2
2
w2
wK
m
wK
w2
I (n )
m
14
計算アルゴリズム3
F ( n ) F1 ( n )
0
1
dt
nH
2
( w ) exp( ntH 2 ( w )) n ( w ) dw
exp( ntH
0
2
( w )) n ( w ) dw
n (w)
t1
F1 ( n )
+
t2
I (n)
w1
1
tm
w2
wK
15
実験条件
<カルバック情報量>
<事前分布>
H (a, b) H 1 (a, b) H 2 (a, b)
H 1 (a, b) b
4
H 2 (a, b) a b
2
(a, b)
a b
2
1
2
exp(
2
2
⇒F ( n ), F1 ( n ) ともに積分計算可能
2
<メトロポリス法>
<tについての積分>
•繰り返し回数:K⇒300000
[0:0.1]を
1
10000
毎に分割
•
[0.1:1]を
1
1000
毎に分割
半径 r ⇒
)
O(
1
n
)
16
実験結果①
<従来法>
F (n )
<アルゴリズム2>
F (n )
log( n )
log( n )
計算時間(sec)
従来法
8998.325
アルゴリズム2
8535.850
分割することで
計算精度を向上
17
実験結果②
<アルゴリズム1>
<アルゴリズム2>
<アルゴリズム3>
log( n )
log( n )
log( n )
アルゴリズム1
アルゴリズム2
アルゴリズム3
計算時間(sec)
4.025
8535.850
860.700
計算精度をある程度
抑えた上で計算時間を
大幅に短縮
18
考察
メトロポリス法の精度を上げるには・・・
⇒w
から w 'へ更新される確率が0.5
サンプルを発生させる確率分布ごとに
繰り返し回数と半径の設定の必要あり
各アルゴリズムで最適化を行った上で
比較を行うことが望ましい
19
結論と今後の課題
カルバック情報量を分割することにより確率的複
雑さを計算する方法を3つ提案
実験の結果、分割することで計算精度が向上し、
精度をある程度抑えた上で計算時間を大幅に短
縮できることを確認
今後の課題として、メトロポリス法の条件の最適
化を行った上での提案アルゴリズムの性質の解
明の問題がある。
20
確率的複雑さの数値計算(従来法)
(1)
tについての積分区間[0,1]を
細かく分割し、(2)、(3)の手続きを行う。
(2) exp( ntH ( w )) ( w ) に従うサンプル
{ w k ; k 1, 2 , K }を取り出す。
(3) y ( n , t )
(4)
1
K
K
nH ( w
k
) を計算する。
k 1
y ( n , t ) を目的の値とする。
t
21
計算アルゴリズム1
F ( n ) F1 ( n ) log
exp( nH
2
( w )) n ( w ) dw の計算
確率分布 n (w ) によるexp( nH 2 ( w )) の平均値
(1) n (w ) に従うサンプル{ w k ; k 1, 2 , K } を取り出す。
(2) y ( n )
1
K
K
exp( nH
2
( w k )) を計算する。
k 1
(3) F1 ( n ) log( y ( n )) を目的の値とする。
22
計算アルゴリズム2
(1)
tについての積分区間[0:1]を
細かく分割し、(2)、(3)の手続きを行う。
(2) exp( ntH 2 ( w )) n ( w ) に従うサンプル
{ w k ; k 1, 2 , K } を取り出す。
(3) y ( n , t )
1
K
(4) F1 ( n )
K
nH
2
( w k ) を計算する。
k 1
y ( n , t ) を目的の値とする。
t
23
計算アルゴリズム3
F ( n ) F1 ( n )
1
dt
nH
2
( w ) exp( ntH 2 ( w )) n ( w ) dw
exp( ntH
0
2
( w )) n ( w ) dw
(1) n (w ) に従うサンプル{ w k ; k 1, 2 , K } を取り出す。
(2)t についての積分区間[0:1]を細かく分割し、
y1 ( n , t )
y2 (n, t )
(3) F1 ( n )
K
1
K
1
K
nH
( w k ) exp( ntH 2 ( w k ))
k 1
K
exp( ntH
2
( w k )) を計算する。
k 1
t
2
y1 ( n , t )
y2 (n, t )
を目的の値とする。
24