Click here to load reader
Upload
yuki-matsubara
View
698
Download
6
Embed Size (px)
DESCRIPTION
PRML3.5章 大阪PRML(予定)
Citation preview
PRML3.5エビデンス近似
Yuki
3.5 エビデンス近似
3.5 エビデンス近似
• 線形基底関数を完全にベイズ的に捉えたい。
• 超パラメータに対して事前分布を導入する
• 解析的にパラメータすべてを周辺化することは難しい
• パラメータ だけに関して積分して得られた周辺尤度を最大化するような
• パラメータ を決める二段階の近似法↵,�
w
• αとβは事後分布がMAPの周りで尖ってるとしαとβのMAPで近似• MAPは最尤推定で近似する wについてベイズ推定
a,bについてMAP推定
エビデンス近似
3.5 エビデンス近似
p(t|w,�) = N (t|y(x,w),��1)
p(w|t,↵,�) = N (w|mN ,SN )
mN = �SN�T t
S�1N = ↵I+ ��T�
p(t|t) =ZZZ
p(t|w,�)p(w|t,↵,�)p(↵,�|t)dwd↵d�
・予測分布
・パラメータ を固定する↵,�
p(t|t) ' p(t|t, ↵̂, �̂) =Z
p(t|w, �̂)p(w|t, ↵̂, �̂)dw.
p(↵,�|t) / p(t|↵,�)p(↵,�)・ベイズ定理より超パラメータの事後分布
p(Mi|D) / p(D|Mi)p(Mi) (3.66)・モデルの事後分布
(3.53)
(3.54)
(3.8)
(3.49)
�↵↵���'
エビデンス近似
3.5.1 エビデンス関数の評価
p(↵,�|t) / p(t|↵,�)p(↵,�)
・周辺尤度を最大にするパラメータを求める
p(t|↵,�) =Zp(t|w,�)p(w|↵)dw
p(w|↵) = N (w|0,↵�1I)
p(t|w,�) =NY
n=1
N (tn|wT�(xn),�)
p(w|↵) =⇣ ↵
2⇡
⌘M/2exp
n
� 1
2
wT(↵�1I)�1w
o
p(t|↵,�) =✓
�
2⇡
◆N/2✓ ↵
2⇡
◆M/2 Zexp
�� E(w)
dw
E(w) = �ED(w) + ↵EW (w)
=�
2kt� �wk2 + ↵
2wTw
EW (w) =1
2wTw
・ex3.17
・
・
・モデルエビデンス
(3.10)
(3.52)
•周辺尤度関数
p(a,b)を平坦と仮定する。
p(t|w,�) =⇣ �
2⇡
⌘N/2exp{��ED(w)}
ED(w) =1
2
NX
n=1
{tn �w
T�(xn)}2
エビデンス近似
3.5.1 エビデンス関数の評価
ex.3.18
AとAの逆行列を第二項に掛ける
平方完成
同じ値を足して引く
A = ↵I + ��T�
mN = �A�1�T t
E(w) =�
2kt� �wk2 + ↵
2wTw (3.79)
1
2
NX
n=1
{tn �w
T�(xn)}2 +�
2w
Tw
(3.27)
エビデンス近似
3.5.1 エビデンス関数の評価ex.3.18つづき
1
2(�tT t�mT
NAmN )
前頁の第一項
=1
2(�tT t� 2mT
NAmN +mTNAmN )
A = ↵I + ��T�
mN = �A�1�T t
=1
2(�tT t� 2mT
NAA�1�T t� +mTN (↵I + ��T�)mN )
=1
2(�tT t� 2mT
N�T t� + �mTN�T�mN + ↵mT
NmN )
=1
2�(t� �mN )T (t� �mN ) + ↵mT
NmN
=�
2kt� �mNk2 + ↵
2mT
NmN
E(w) = E(mN ) +1
2(w �mN )TA(w �mN )
足して引く
と 展開
平方完成
mN A
= E(mN )
エビデンス近似
3.5.1 エビデンス関数の評価
= exp {�E(mN )}Z
exp
n
� 1
2
(w �mN )
TA(w �mN )
o
= exp {�E(mN )}(2⇡)M/2|A|�1/2
dw
Zexp {� E(w)}dw
ex.3.19
ln p(t|↵,�) = M
2ln↵+
N
2ln� � E(mN )� 1
2ln |A|� N
2ln(2⇡)
p(t|↵,�) =✓
�
2⇡
◆N/2✓ ↵
2⇡
◆M/2 Zexp
�� E(w)
dw
・対数エビデンス関数
(3.86)
エビデンス近似
3.5.1 エビデンス関数の評価
p(t|↵,�) =Zp(t|w,�)p(w|↵)dw
p(w|↵) = N (w|0,↵�1I)
p(t|w,�) =NY
n=1
N (tn|wT�(xn),�)
ex.3.16
2,115より…周辺分布
= N (t|0,��1I + ↵�1��T ) �1
=
1
(2⇡)N/2
1
|��1I + ↵�1��
T |1/2exp
n
� 1
2
tT (��1I + ↵�1��
T)
�1to
・3.10と3.52をパラメータwに関して周辺化する
・2.115を用いて、エビデンス関数を導出する。
エビデンス近似
3.5.1 エビデンス関数の評価
expの中身の展開
(A+BD�1C)�1 = A�1 �A�1B(D + CA�1B)�1CA�1より
= �1
2tT
n
� �I + �I�(↵I + ��T�)�1�T�Io
t
A = ↵I + ��T�
mN = �A�1�T t
置き換えて展開=
�
2tT t� �2
2tT�A�1�T t
=�
2(tT t� 2�tT�A�1�T t+ �tT�A�1�T t)
=�
2(tT t� 2�tT�A�1�T t) +
1
2�2tT�A�1�T t
=�
2(tT t� 2�tT�A�1�T t) +
1
2�2(A�1�T t)TAA�1�T t
=�
2(tT t� 2�mNt) +
1
2mT
NAmTN
=�
2(tT t� 2�mNt) +
1
2mT
N↵ImN +�
2mT
N�T�mN
=�
2(tT t� 2�mNt+mT
N�T�mN ) +1
2mT
N↵ImN
= (t� �mN )T (t� �mN ) +↵
2mT
NmN
ex.3.16つづき
/2をくくる、3項目をたす
を3項目にかけるAA�1
�
Aを展開する
因数分解?
= E(mN )
三項目くくりだす
変数を置き換える
Woodburyの公式
(C.7)
エビデンス近似
3.5.1 エビデンス関数の評価 ex.3.16つづき
1
(2⇡)N/2
1
|��1I + ↵�1��
T |1/2exp
n
� 1
2
tT (��1I + ↵�1��
T)
�1to
より
|��1I + ↵�1��T | = |��1IN ||IN + ↵�1���T |
= |��1IN ||IM + ↵�1��T�|
= |↵�1IM |��1IN ||↵IM + ��T�|
= |↵�1IM |��1IN ||A|
ln p(t|↵,�) = M
2ln↵+
N
2ln� � E(mN )� 1
2ln |A|� N
2ln(2⇡)
p(t|↵,�) = ↵M/2�N/2
2⇡N/2|A|1/2exp(�E(mN ))
(C.14)
・対数エビデンス関数
|IN +ABT | = |IM +ATB|
A = ↵I + ��T�
周辺尤度の対数
(3.86)
エビデンス近似
3.5.1 エビデンス関数の評価
・多項式次数とモデルエビデンスの関係・ ↵ = 5 ⇤ 10�3
多項式次元
・データを説明できる最も簡単なモデルがM=3.
p(D|Mi)
ln p(t|↵,�) = M
2ln↵+
N
2ln� � E(mN )� 1
2ln |A|� N
2ln(2⇡)
・対数エビデンス関数 周辺尤度の対数
ln p(t|↵,�)
エビデンス近似
3.5.2 エビデンス関数の最大化
3.5.2 流れ
�
�
↵停留点求める、しかし に関して陰関数。
停留点求める、しかし に関して陰関数。
↵
�
・
・
ln p(t|↵,�) = M
2ln↵+
N
2ln� � E(mN )� 1
2ln |A|� N
2ln(2⇡)
・対数エビデンス関数
• パラメータ をを定義する
• パラメータ を最大化する
• パラメータ を最大化する
• パラメータの推定値は繰り返しで求められる。
エビデンス近似
3.5.2 エビデンス関数の最大化
ln p(t|↵,�) = M
2ln↵+
N
2ln� � E(mN )� 1
2ln |A|� N
2ln(2⇡)
0 =M
2↵� 1
2mT
NmN � 1
2
X
i
1
�i + ↵
d
d↵
M
2ln↵+
↵
2mT
NmN � 1
2ln |A| = 0
↵mTNmN = M � ↵
X
i
1
�i + ↵
� =X
i
�i
↵+ �i
↵ =�
mTNmN
の定義 の最大化↵�
に関する停留点↵・ ⇣��T�
⌘ui = �iui
↵+ �iAの固有値
M =MX
i
�i + ↵
�i + ↵
ex.3.20
とAより
が に依存するだけでなく事後分布のモード 自身も に依存するため に関する陰関数となる
� ↵ mN
↵ ↵
・
・エビデンス関数
A = ↵I + ��T�
mN = �A�1�T t
= �
(3.53)
(3.81)
d
d↵ln |A| = d
d↵ln
Y
i
(�i + ↵) =d
d↵
Xln(�i + ↵) =
X
i
1
�i + ↵
エビデンス近似
3.5.2 エビデンス関数の最大化
� の最大化
ex.3.22
d
d�ln |A| = d
d�
X
i
ln(�i + ↵) =1
�
X
i
�i
�i + ↵=
�
�
ln p(t|↵,�) = M
2ln↵+
N
2ln� � E(mN )� 1
2ln |A|� N
2ln(2⇡)
A = ↵I + ��T�
mN = �A�1�T t
0 =N
2�� 1
2
NX
n=1
{tn �m
TN�(xn)}2 �
�
2�
1
�=
1
N � �
NX
n=1
{tn �m
TN�(xn)}2
に関する停留点�
陰関数
・
・
d
d�
N
2ln� � E(mN )� 1
2ln |A| = 0
=�
2kt� �mNk2 + ↵
2mT
NmNE(mN )・対数エビデンス関数
d�i
d�=
�i
�
�iが に比例することに注意する�⇣��T�
⌘ui = �iui
エビデンス近似
3.5.3 有効パラメータ数
事前分布と尤度関数の等高線を描く
固有値は尤度関数の歪み具合を表す
は正定値行列 固有値はすべて正� =
X
i
�i
↵+ �i
↵ =�
mTNmN
曲率が小さいと等高線がのびる
曲率と曲率半径との関係
��T�
0 �i
�i + ↵ 1
0 � M
(3.91)
⇣��T�
⌘ui = �iui (3.87)
エビデンス近似
3.5.3 有効パラメータ数
固有値が大きい方向
固有値が小さい方向
(��T�)
(��T�)
�i � ↵
well-determinedパラメータ
最尤推定に近づく�i
�i + ↵は1に近い
データに強く依存
�i ⌧ ↵
�i
�i + ↵は0に近い
パラメータの値の変化に対する 尤度関数の感度が悪い
事前分布に近づく
•尤度関数
事前分布
は有効なパラメータ数を示す。�
パラメータ空間の軸を回転させた。
Hessianの固有ベクトルuiに軸をあわせるために。尤度の精度(?)と同じ?(��T�)
エビデンス近似
3.5.3 有効パラメータ数
�
2ML =
1
N
NX
n=1
(xn � µML)2
�
2MAP =
1
N � 1
NX
n=1
(xn � µML)2
1
�
=1
N � �
NX
n=1
(xn � µML)2
バイアス補正
バイアスを取り除くため、不偏推定量では自由度が落ちる。
バイアスが入るデータに含まれるノイズまでフィット
母集団の統計量と標本の統計量が同じになる量。
分散の各偏差は独立でないある統計量を構成する変数のうち独立な物の数を、その統計量の自由度という以下では を使っているため
独立でない
独立
N � �分だけ補正される
不偏分散は、母分散の不偏推定量(バイアスがない推定値)
偏差総和が0
µML
基底関数の数が増える 次元が増える
エビデンス近似
3.5.3 有効パラメータ数
交点と誤差最小点は近い
三角関数の人口データ集合に対する
�
2↵EW (mN )
ln↵ ln↵
ln p(t|↵,�)
テスト集合に対する誤差
9個のガウス基底関数パラメータb
真の値である11.1に設定する
対数エビデンスの最大値は左プロットの交点に対応している
エビデンス近似
3.5.3 有効パラメータ数
ガウス基底関数の10個のパラメータをプロットパラメータは有効パラメータ数に対して独立
の大きさの変化
は大きさを制御する
すべてのパラメータが well_determined
陰的な和を含み固有値が増える
極限的に
wi
↵
↵ =�
mTNmN
� =X
i
�i
↵+ �i
↵0< <∞に変化させると γは0からMに変化する。
エビデンス近似
3.6 固定された基底関数の限界
線形性により閉じたかいが求まる
ベイズ推定が簡単基底関数を用いることで
任意の非線形変換ができた
欠点データの観測前に基底関数を 固定する仮定
次元の呪い
現実的データの性質
データは限られた非線形多様体上に分布しているすべての次元ではなく、一部の次元に強く反応する
利点
エビデンス近似
e.x 3.8 ベイズ更新?p(w) = N (w|mN ,SN )
p(tN+1|xN+1,w) =
✓�
2⇡
◆1/2
exp
✓� �
2
(tN+1 �w
T�N+1)2
◆
p(w|tN+1,xN+1,mN ,SN )
/ exp
✓� 1
2
(w �mN )
TS�1N (w �mN )� 1
2
�(tN+1 �wT�N+1)2
◆
(w �mN )TS�1N (w �mN ) + �(tN+1 �wT�N+1)
2
= wTS�1N w � 2wS�1
N mN +�wT�
TN+1�N+1w � 2�wT
�N+1tN+1 + const
= wT (S�1N + ��N+1�
TN+1)w � 2wT (S�1
N mN + ��N+1tN+1) + const
S�1N+1 = S�1
N + ��TN+1�N+1
mN+1 = SN+1(S�1N mN + ��T
N+1tN+1)
おまけ
julia言語で実装してみた(何故かうまく行ってない気がする)
・データ
エビデンス関数の評価
エビデンス関数の最大化
エビデンス関数(M)
再推定値
エビデンス近似
やってみた
青 、標準偏差
、真の値
、予測値
水色
赤
エビデンス近似
ベイズ更新
N (w|mN ,SN )
変数変換
正規分布の積
N (x|Ay + b,⌃) = · N (y|A0x+ b
0,⌃0)
⌃0 = (AT⌃�1A)�1
A0 = (AT⌃�1A)�1AT⌃�1
b0 = (AT⌃�1A)�1AT⌃�1b
N (x|a,A)N (x|b,B)
· N (x|(A�1 +B
�1)�1(A�1a+B
�1b), (A�1 +B
�1)�1)
= N (a|b,A+B) = N (b|a,A+B)
変数変換
正規分布の積�0�1
= (��TN+1�N+1)
�1
�0�1= (��T
N+1�N+1)�1�T
N+1�
S�1N+1 = S�1
N + ��TN+1�N+1
mN+1 = SN+1(S�1N mN + ��T
N+1tN+1)
N (tN+1|w�N+1,��1)
N (w|tN+1�N+1,��1)
定数項は消える
N (w|mN+1,SN+1)
エビデンス近似
変数変換
N (x|Ay + b,⌃) = N (y|A0x+ b
0,⌃0)
N (x|Ay + b,⌃) = 1 exp
h� 1
2
⇣(x� b�Ay)
T⌃
�1(x� b�Ay)
⌘i
2 exp
h� 1
2
⇣y
TA
T⌃
�1Ay � 2y
TA
T⌃
�1(x� b)
⌘i
�2(x� b)T⌃�1A
T (AT⌃
�1A)�1
A⌃
�1(x� b))⌘i
3 exp
h� 1
2
⇣y
TA
T⌃
�1Ay � 2y
TA
T⌃
�1(x� b)
3 exp
h� 1
2
⇣(y � (A
T⌃
�1A)
�1A⌃
�1(x� b)
T⌘(A
T⌃A)
4N (y|(AT⌃
�1A)�1
A⌃
�1(x� b), (AT⌃
�1A)�1)
⇣�y(AT⌃�1
A)�1A⌃
�1(x� b)�⌘i
エビデンス近似
正規分布の積
N (x|a,A)N (x|b,B) / N (x|(A�1 +B
�1)�1(A�1a+B
�1b), (A�1 +B
�1)�1)
/ exp
h� 1
2
(x� a)
TA
�1(x� a)� 1
2
(x� b)
TB�1(x� b)
i
/ exp
h� 1
2
(x
T(A
�1+B
�1)x+ 2(A
�1a+B
�1b)x)
i
+(A�1a+B�1b)T (A�1 +B�1)�1(A�1a+B�1b))i
= exph� 1
2
(x
T(A
�1+B
�1)x+ 2(A
�1a+B
�1b)x)