以下の式で定義される分布 p(z) を仮定する。
p(z)=1Zf(z) (Z は f(z) を z について積分した正規化定数)
まずは p(z) の最頻値を見つける。つまり、
p(z0)′=f(z0)′=0
を満たす z0 を見つける。
z0 は数値最適化アルゴリズムで求められる(Bishop and Nabney, 2008)。
ガウス分布は、対数をとると指数部分の変数の2次関数となるので、 f(z) の対数をテイラー展開を使って、2次関数で近似することを考える。
z0 を中心とした lnf(z) のテイラー展開は、 f(z0)′=0 より一次の項を除いた形となり、
lnf(z)≃lnf(z0)−12{lnf(z0)}′′(z−z0)2
A={lnf(z0)}′′ として両辺で指数をとると、
f(z)≃exp{lnf(z0)−A2(z−z0)2}
=exp{lnf(z0)}⋅exp{−A2(z−z0)2}
=f(z0)exp{−A2(z−z0)2}
となり、任意の分布 f(z) について、ガウス分布と同じ形で書くことができた。
正規化係数をあわせて、近似分布は
q(z)=√A2πexp{−A2(z−z0)2}
ただし、ルートの計算があるので、 A>0 つまり f(z0)での2階微分が負の場合しかこの近似式は使えない。
オレンジは p(z)∝exp(−z2/2)σ(20z+4) で、赤が近似したガウス分布。右のプロットは負の対数。
1変数の場合と同様に p(z)=f(z)/Z の最頻値 z0 を求める。
点 z0 では、勾配 ∇f(z) は0となる。この定常点の周りでテイラー展開すると
lnf(z)≃lnf(z0)−12(z−z0)TA(z−z0)
このとき、 M×M 行列 A は A=−∇∇lnf(z0) である。
1変数のときと同様、対数をとって正規化係数を求めることで以下の近似分布を得る
q(z)=|A|1/2(2π)M/2exp{−12(z−z0)TA(z−z0)}
=N(z|z0,A−1)
前節の結果を用いて、正規化係数 Z も近似することができる。
Z=∫f(z)dz
≃f(z0)∫exp{−12(z−z0)TA(z−z0)}dz
=f(z0)(2π)M/2|A|1/2(4.135)
p(D) を Z, f(θ)=p(D|θ)p(θ) として、式(4.136) より、
p(D)≃f(θMAP)(2π)M/2|A|1/2
=p(D|θMAP,Mi)p(θMAP|Mi)(2π)M/2|A|1/2
対数をとると、
lnp(D)≃lnp(D|θMAP,Mi)+p(θMAP|Mi)+
M2ln(2π)−12ln|A|(4.137)
(4.137) について、事前分布がガウス分布であることと、そのヘッセ行列が非退化(最大階数)であること仮定すれば、モデルエビデンスに対する荒い近似によってBICを導出できる。
lnp(D)≃lnp(D|θMAP,Mi)+p(θMAP|Mi)+
M2ln(2π)−12ln|A|(4.137)
p(θMAP,Mi) にガウス分布を仮定すると、
lnp(θMAP,Mi)
=M2ln2π−12ln|V0|
−12(θMAP−m)TV−10
(θMAP−m)
Mi は簡単のため省略すると、
lnp(D)≃lnp(D|θMAP)
−12ln|V0|
−12(θMAP−m)TV−10
(θMAP−m)−12ln|A|
A=−∇∇lnp(D|θMAP)p(θMAP)(4.138)
より、対数項の積を和に書き直すと、
A
=−∇∇lnp(D|θMAP)−∇∇lnp(θMAP)
=H+V−10
仮定した多変量ガウス分布のが平坦であるか、データ量が十分大きければ、 H に対して V−10 を無視できて、
lnp(D)≃lnp(D|θMAP)−12ln|V0|
−12(θMAP−m)TV−10
(θMAP−m)−12ln|A|
=lnp(D|θMAP)−12ln|V0|
−12(θMAP−m)TV−10
(θMAP−m)−12ln|H|
仮定したガウス分布が所与とすると、 V0 は定数であり、基準値としては無視して良い項となるので、
lnp(D)≃lnp(D|θMAP)−12(θMAP−m)TV−10
(θMAP−m)−12ln|H|
さらに、データ点を i.i.d. と仮定すると、ヘッセ行列をデータ点ごとの影響度の和として表現できるので、その影響度の平均値を ^H とすると、
H=N^H より、
lnp(D)≃lnp(D|θMAP)−12(θMAP−m)TV−10
(θMAP−m)−12ln|N^H|
=lnp(D|θMAP)−12(θMAP−m)TV−10
(θMAP−m)−12ln|N^H|
^H は M×Mの行列だから、最大階数であると仮定すると、
lnp(D)≃lnp(D|θMAP)−12(θMAP−m)TV−10
(θMAP−m)−12MlnN−12ln|^H|
Nは十分大きいと仮定して他の項を無視すると、
lnp(D)
≃lnp(D|θMAP)−12MlnN
BIC=lnp(D|θMAP)−12MlnN
AIC=lnp(D|wML)−M
AIC, BICとも最適なモデルを選択するための指標としてよく用いられる。
近似の際、Nは十分大きいと仮定していることに注意すると、AICと比較し、BICの方がモデルの複雑さにより重いペナルティを課していると分かる。
パラメータ w に関する事後分布をガウス分布で近似したいので、事前分布もガウス分布と仮定するのが自然
事前ガウス分布は一般形 p(w)=N(w|m0,S0) を用いる。
lnp(w|t)
=−12(w−m0)TS−10(w−m0)
+∑Nn=1{tnlnyn+(1−tn)ln(1−yn)}+const
ただし、 yn=σ(wTϕn) である。
S−1N=−∇∇lnp(w|t)=S−10+∑Nn=1yn(1−yn)ϕnϕTn
よって、事後確率分布のガウス分布による近似は q(w)=N(w|wMAP,SN) と書ける。
後は、予測分布を得るために、この近似ガウス分布を積分して周辺化すればよい。
新たな特徴ベクトル ϕ(x) が入力された際のクラス C1 に対する予測分布は、事後確率分布 p(w|t) に関して周辺化して得られる。つまり、
p(C1|ϕ,t)=∫p(C1|ϕ,w)p(w|t)dw
≃∫σ(wTϕ)q(w)dw
2クラス問題を考えると、クラス C2 に対する予測分布は p(C2|ϕ,t)=1−p(C1|ϕ,t) で与えられる。
a=wTϕ とすると、
p(C1|t)=∫σ(a)N(a|μa,σ2a)da
μa=wTMAPϕ,σ2a=ϕTSNϕ
λ は λ2=π/8 であり、下の図のように a=0 での両者の傾きをそろえるための定数。
これにより畳み込み積分の結果別のプロビット関数の逆関数で解析的に評価でき、
∫Φ(λa)N(a|μa,σ2a)da=Φ(μ(λ−2+σ2)1/2)
κ(σ2)=(1+πσ2/8)−1/2 として、Φ を σ に戻すことで、以下の近似予測分布を得る。
p(C1|ϕ,t)=σ(κ(σ2a)μa)