4. ベイズ推定
4.1. パラメータの事後分布
パラメータに対する事前分布として、つぎのガウス分布を考える
(4.2)\[p(\boldsymbol{w})
=
\mathcal{N}(\boldsymbol{w} | \boldsymbol{m}_0, \boldsymbol{S}_0)
=
\frac{1}{\sqrt{(2\pi)^M\left|\boldsymbol{S}_0\right|}}
\exp{\left(
-\frac{1}{2}
(\boldsymbol{w}-\boldsymbol{m}_0)^\top
\boldsymbol{S}_0^{-1}
(\boldsymbol{w}-\boldsymbol{m}_0)
\right)} .\]
\(\boldsymbol{w}\)(と入力\(\boldsymbol{X}\))が与えられたときの
\(\boldsymbol{t}\) の分布(尤度関数)は、式 (1.16)
\[p(\boldsymbol{t} | \boldsymbol{X}, \boldsymbol{w})
=
\frac{1}{\sqrt{(2\pi)^N(\sigma_\varepsilon^2)^N}}
\exp{\left(
-\frac{1}{2\sigma_\varepsilon^2}
(\boldsymbol{t}-\boldsymbol{\Phi}\boldsymbol{w})^\top
(\boldsymbol{t}-\boldsymbol{\Phi}\boldsymbol{w})
\right)}\]
でモデル化する。このときの \(\boldsymbol{w}\) の事後分布を計算する
(4.3)\[p(\boldsymbol{w} | \boldsymbol{X}, \boldsymbol{t})
= \frac{
p(\boldsymbol{t} | \boldsymbol{X}, \boldsymbol{w})
p(\boldsymbol{w})
}{p(\boldsymbol{t} | \boldsymbol{X})} ,\]
(4.4)\[p(\boldsymbol{t} | \boldsymbol{X})
=
\int p(\boldsymbol{t} | \boldsymbol{X}, \boldsymbol{w})
p(\boldsymbol{w})d\boldsymbol{w} .\]
式 (4.3) の分子を書き下すと次のようになる
(\(\beta \equiv \sigma^{-2}_\varepsilon\) とおく)
(4.5)\[p(\boldsymbol{t} | \boldsymbol{X}, \boldsymbol{w})
p(\boldsymbol{w})
=
\frac{1}{
\sqrt{(2\pi)^{NM}(\beta^{-1})^N\left|\boldsymbol{S}_0\right|}
}
\exp{\left(
-\frac{\beta}{2}
\left( \boldsymbol{t} - \boldsymbol{\Phi}\boldsymbol{w} \right)^\top
\left( \boldsymbol{t} - \boldsymbol{\Phi}\boldsymbol{w} \right)
-\frac{1}{2}
\left( \boldsymbol{w} - \boldsymbol{m}_0 \right)^\top
\boldsymbol{S}^{-1}_0
\left( \boldsymbol{w} - \boldsymbol{m}_0 \right)
\right)} .\]
これを \(\boldsymbol{w}\) について整理する
(4.6)\[p(\boldsymbol{t} | \boldsymbol{X}, \boldsymbol{w})
p(\boldsymbol{w})
\propto
\exp{\left(
-\frac{1}{2}
(\boldsymbol{w}-\boldsymbol{m}_1)^\top
\boldsymbol{S}_1^{-1}
(\boldsymbol{w}-\boldsymbol{m}_1)
\right)} .\]
ここで、
(4.7)\[\boldsymbol{S}_1^{-1}
\equiv
\boldsymbol{S}_0^{-1}
+
\beta \boldsymbol{\Phi}^\top \boldsymbol{\Phi} ,\]
(4.8)\[\boldsymbol{m}_1
\equiv
\boldsymbol{S}_1
\left(
\boldsymbol{S}_0^{-1} \boldsymbol{m}_0
+ \beta \boldsymbol{\Phi}^\top \boldsymbol{t}
\right)\]
とおいた。係数や\(\boldsymbol{w}\) を含まない項は分母と打ち消し合うので、
結局 (4.3) は、つぎのガウス分布となる
(4.9)\[p(\boldsymbol{w} | \boldsymbol{X}, \boldsymbol{t})
=
\frac{1}{
\sqrt{(2\pi)^{M} \left|\boldsymbol{S}_1\right|}
}
\exp{\left(
-\frac{1}{2}
(\boldsymbol{w}-\boldsymbol{m}_1)^\top
\boldsymbol{S}_1^{-1}
(\boldsymbol{w}-\boldsymbol{m}_1)
\right)} .\]
4.2. 逐次学習
式 (1.10) の \(N\) 個のデータに加え、新たに \(N_2\)
個のデータを得たという状況を考える
(4.10)\[\boldsymbol{D}_2
\equiv
\{(\boldsymbol{x}_{N+1}, t_{N+1}), \; (\boldsymbol{x}_{N+2}, t_{N+2}),
\; \dots \; (\boldsymbol{x}_{N+N_2}, t_{N+N_2}) \} .\]
また、式 (1.13) に対応する次式を定義しておく
\[\begin{split}\boldsymbol{\Phi}_2
\equiv
\begin{pmatrix}
\phi_0(\boldsymbol{x}_{N+1}) & \cdots & \phi_{M-1}(\boldsymbol{x}_{N+1}) \\
\phi_0(\boldsymbol{x}_{N+2}) & \cdots & \phi_{M-1}(\boldsymbol{x}_{N+2}) \\
\vdots & \cdots & \vdots \\
\phi_0(\boldsymbol{x}_{N+N_2}) & \cdots & \phi_{M-1}(\boldsymbol{x}_{N+N_2}) \\
\end{pmatrix} .\end{split}\]
この状況で、今度は (4.9) を事前分布として、
パラメータ \(\boldsymbol{w}\) の事後分布を考える
(4.11)\[p(\boldsymbol{w} | \boldsymbol{X}_2, \boldsymbol{t}_2, \boldsymbol{X}, \boldsymbol{t})
= \frac{
p(\boldsymbol{t}_2 | \boldsymbol{X}_2, \boldsymbol{w})
p(\boldsymbol{w} | \boldsymbol{X}, \boldsymbol{t})
}{p(\boldsymbol{t}_2 | \boldsymbol{X}_2, \boldsymbol{X}, \boldsymbol{t})} .\]
\(p(\boldsymbol{t}_2 | \boldsymbol{X}_2, \boldsymbol{w})\) として再び (1.16) を用いるならば、
この事後分布の計算は、 (4.9) を求めたときと全く同じになる。すなわち
(4.12)\[\boldsymbol{S}_2^{-1}
\equiv
\boldsymbol{S}_1^{-1}
+
\beta \boldsymbol{\Phi}_2^\top \boldsymbol{\Phi}_2 ,\]
(4.13)\[\boldsymbol{m}_2
\equiv
\boldsymbol{S}_2
\left(
\boldsymbol{S}_1^{-1} \boldsymbol{m}_1
+ \beta \boldsymbol{\Phi}_2^\top \boldsymbol{t}_2
\right) .\]
を定義すれば、 (4.11) は以下のように書ける
(4.14)\[p(\boldsymbol{w} | \boldsymbol{X}_2, \boldsymbol{t}_2, \boldsymbol{X}, \boldsymbol{t})
=
\frac{1}{
\sqrt{(2\pi)^{M} \left|\boldsymbol{S}_2\right|}
}
\exp{\left(
-\frac{1}{2}
(\boldsymbol{w}-\boldsymbol{m}_2)^\top
\boldsymbol{S}_2^{-1}
(\boldsymbol{w}-\boldsymbol{m}_2)
\right)} .\]
結局、常にガウス分布に戻るので、
明らかにこのプロセスは何度でも繰り返すことができる。
4.3. 逐次学習とバッチ学習の等価性
今度は \(N+N_2\) 個のデータが最初からあるという状況で、 (4.2)
の事前分布に戻ってパラメータ \(\boldsymbol{w}\) の事後分布
(4.15)\[p(\boldsymbol{w} | \boldsymbol{X}, \boldsymbol{X}_2, \boldsymbol{t}, \boldsymbol{t}_2)
= \frac{
p(\boldsymbol{t}, \boldsymbol{t}_2 | \boldsymbol{X}, \boldsymbol{X}_2, \boldsymbol{w})
p(\boldsymbol{w})
}{p(\boldsymbol{t}, \boldsymbol{t}_2 | \boldsymbol{X}, \boldsymbol{X}_2)}\]
の計算を行う。(4.7) および (4.8) に対応する式は、
(4.16)\[\tilde{\boldsymbol{S}}_1^{-1}
\equiv
\boldsymbol{S}_0^{-1}
+
\beta \boldsymbol{\Phi}^\top \boldsymbol{\Phi}
+
\beta \boldsymbol{\Phi}_2^\top \boldsymbol{\Phi}_2
=
\boldsymbol{S}_1^{-1}
+
\beta \boldsymbol{\Phi}_2^\top \boldsymbol{\Phi}_2
=
\boldsymbol{S}_2^{-1}\]
(4.17)\[\tilde{\boldsymbol{m}}_1
\equiv
\tilde{\boldsymbol{S}}_1
\left(
\boldsymbol{S}_0^{-1} \boldsymbol{m}_0
+ \beta \boldsymbol{\Phi}^\top \boldsymbol{t}
+ \beta \boldsymbol{\Phi}_2^\top \boldsymbol{t}_2
\right)
=
\boldsymbol{S}_2
\left(
\boldsymbol{S}_1^{-1} \boldsymbol{m}_1
+ \beta \boldsymbol{\Phi}_2^\top \boldsymbol{t}_2
\right)
=
\boldsymbol{m}_2\]
となるので、事後分布は (4.14) と全く同じものになることがわかる。このことは、
データを大量に用意して一度に学習させても(バッチ学習)、
小分けにして少しずつ学習させても(逐次学習)、結果は変わらないことを示している。
そこまでの学習の成果は次式に集約されることになる
(4.18)\[p(\boldsymbol{w} | \boldsymbol{X}_N, \boldsymbol{t}_N)
=
\frac{1}{
\sqrt{(2\pi)^{M} \left|\boldsymbol{S}_N\right|}
}
\exp{\left(
-\frac{1}{2}
(\boldsymbol{w}-\boldsymbol{m}_N)^\top
\boldsymbol{S}_N^{-1}
(\boldsymbol{w}-\boldsymbol{m}_N)
\right)} .\]
4.4. 出力データの予測分布
パラメータの事前分布として式 (4.18) が得られているという状況で、新たな入力 \(\boldsymbol{X}_{\rm new}\)
に対する \(\boldsymbol{t}_{\rm new}\) の予測分布を考える。これは次式で計算される
(4.19)\[p(\boldsymbol{t}_{\rm new} | \boldsymbol{X}_{\rm new}, \boldsymbol{X}_N, \boldsymbol{t}_N)
=
\int p(\boldsymbol{t}_{\rm new} | \boldsymbol{X}_{\rm new}, \boldsymbol{w})
p(\boldsymbol{w} | \boldsymbol{X}_N, \boldsymbol{t}_N) d\boldsymbol{w} .\]
上式の被積分関数は (4.5) と同じ形
\[\exp{\left(
-\frac{\beta}{2}
\left( \boldsymbol{t}_{\rm new} - \boldsymbol{\Phi}_{\rm new}\boldsymbol{w} \right)^\top
\left( \boldsymbol{t}_{\rm new} - \boldsymbol{\Phi}_{\rm new}\boldsymbol{w} \right)
-\frac{1}{2}
\left( \boldsymbol{w} - \boldsymbol{m}_N \right)^\top
\boldsymbol{S}^{-1}_N
\left( \boldsymbol{w} - \boldsymbol{m}_N \right)
\right)}\]
であるが、今度は分子/分母で積分に関係しない項が打ち消しあうということは使えない。そこで、見通しよく計算を進めるために、
まず \(\boldsymbol{w}\) と \(\boldsymbol{t}_{\rm new}\) の同時分布を考える。上式の指数の中身を整理する
\[\begin{split}-\frac{1}{2}
\left( \boldsymbol{w}^\top \;\; \boldsymbol{t}_{\rm new}^\top \right)
\begin{pmatrix}
\boldsymbol{S}_N^{-1} + \beta\boldsymbol{\Phi}_{\rm new}^\top\boldsymbol{\Phi}_{\rm new} &
-\beta\boldsymbol{\Phi}_{\rm new}^\top \\
-\beta\boldsymbol{\Phi}_{\rm new} &
\beta\boldsymbol{I} \\
\end{pmatrix}
\begin{pmatrix}
\boldsymbol{w} \\
\boldsymbol{t}_{\rm new} \\
\end{pmatrix}
+\left( \boldsymbol{w}^\top \;\; \boldsymbol{t}_{\rm new}^\top \right)
\begin{pmatrix}
\boldsymbol{S}_N^{-1}\boldsymbol{m}_N \\
\boldsymbol{0} \\
\end{pmatrix}
-\frac{1}{2}
\boldsymbol{m}_N^\top\boldsymbol{S}_N^{-1}\boldsymbol{m}_N\end{split}\]
(4.20)\[\begin{split}= -\frac{1}{2}
\left[
\left( \boldsymbol{w}^\top \;\; \boldsymbol{t}_{\rm new}^\top \right)
-\left( \boldsymbol{m}_N^\top\boldsymbol{S}_N^{-1} \;\; \boldsymbol{0} \right)
\boldsymbol{R}^\top
\right]
\boldsymbol{R}^{-1}
\left[
\begin{pmatrix}
\boldsymbol{w} \\
\boldsymbol{t}_{\rm new} \\
\end{pmatrix}
-\boldsymbol{R}
\begin{pmatrix}
\boldsymbol{S}_N^{-1}\boldsymbol{m}_N \\
\boldsymbol{0} \\
\end{pmatrix}
\right]
+\frac{1}{2}
\left( \boldsymbol{m}_N^\top\boldsymbol{S}_N^{-1} \;\; \boldsymbol{0} \right)
\boldsymbol{R}
\begin{pmatrix}
\boldsymbol{S}_N^{-1}\boldsymbol{m}_N \\
\boldsymbol{0} \\
\end{pmatrix}
-\frac{1}{2}
\boldsymbol{m}_N^\top\boldsymbol{S}_N^{-1}\boldsymbol{m}_N .\end{split}\]
ここで、
(4.21)\[\begin{split}\boldsymbol{R}^{-1}
\equiv
\begin{pmatrix}
\boldsymbol{S}_N^{-1} + \beta\boldsymbol{\Phi}_{\rm new}^\top\boldsymbol{\Phi}_{\rm new} &
-\beta\boldsymbol{\Phi}_{\rm new}^\top \\
-\beta\boldsymbol{\Phi}_{\rm new} &
\beta\boldsymbol{I} \\
\end{pmatrix}\end{split}\]
とおいた。\(\boldsymbol{R}\) はブロック行列の逆行列の公式より
(4.22)\[\begin{split}\boldsymbol{R}
=
\begin{pmatrix}
\boldsymbol{S}_N &
\boldsymbol{S}_N \boldsymbol{\Phi}_{\rm new}^\top \\
\boldsymbol{\Phi}_{\rm new} \boldsymbol{S}_N &
\beta^{-1}\boldsymbol{I} + \boldsymbol{\Phi}_{\rm new}\boldsymbol{S}_N\boldsymbol{\Phi}^\top_{\rm new} \\
\end{pmatrix}\end{split}\]
となる。これから、
(4.23)\[\begin{split}\boldsymbol{R}
\begin{pmatrix}
\boldsymbol{S}_N^{-1}\boldsymbol{m}_N \\
\boldsymbol{0} \\
\end{pmatrix}
=
\begin{pmatrix}
\boldsymbol{m}_N \\
\boldsymbol{\Phi}_{\rm new}\boldsymbol{m}_N \\
\end{pmatrix}\end{split}\]
と計算されるので、 (4.20) は、右辺第2項と第3項が打ち消し合い、最終的に次のようになる
\[\begin{split}-\frac{1}{2}
\begin{pmatrix}
\boldsymbol{w}^\top - \boldsymbol{m}_N^\top &
\boldsymbol{t}_{\rm new}^\top - \boldsymbol{m}_N^\top\boldsymbol{\Phi}_{\rm new}^\top \\
\end{pmatrix}
\boldsymbol{R}^{-1}
\begin{pmatrix}
\boldsymbol{w} - \boldsymbol{m}_N \\
\boldsymbol{t}_{\rm new} - \boldsymbol{\Phi}_{\rm new}\boldsymbol{m}_N \\
\end{pmatrix} \\\end{split}\]
(4.24)\[=
-\frac{1}{2}
\left( \boldsymbol{w} - \boldsymbol{m}_N - \boldsymbol{S}_{N+1}\boldsymbol{m}^{\prime}_{N+1} \right)^\top
\boldsymbol{S}^{-1}_{N+1}
\left( \boldsymbol{w} - \boldsymbol{m}_N - \boldsymbol{S}_{N+1}\boldsymbol{m}^{\prime}_{N+1} \right)
-\frac{1}{2}
\left( \boldsymbol{t}_{\rm new} - \boldsymbol{\Phi}_{\rm new}\boldsymbol{m}_N \right)^\top
\boldsymbol{A}_{N+1}^{-1}
\left( \boldsymbol{t}_{\rm new} - \boldsymbol{\Phi}_{\rm new}\boldsymbol{m}_N \right)\]
\[=
-\frac{1}{2}
\left( \boldsymbol{w} - \boldsymbol{m}_{N+1} \right)^\top
\boldsymbol{S}^{-1}_{N+1}
\left( \boldsymbol{w} - \boldsymbol{m}_{N+1} \right)
-\frac{1}{2}
\left( \boldsymbol{t}_{\rm new} - \boldsymbol{\Phi}_{\rm new}\boldsymbol{m}_N \right)^\top
\boldsymbol{A}_{N+1}^{-1}
\left( \boldsymbol{t}_{\rm new} - \boldsymbol{\Phi}_{\rm new}\boldsymbol{m}_N \right)\]
ここで
(4.25)\[\boldsymbol{S}_{N+1}^{-1}
\equiv
\boldsymbol{S}_N^{-1} + \beta\boldsymbol{\Phi}_{\rm new}^\top\boldsymbol{\Phi}_{\rm new} ,\]
(4.26)\[\boldsymbol{A}_{N+1}^{-1}
\equiv
\beta\boldsymbol{I} - \beta^2\boldsymbol{\Phi}_{\rm new} \boldsymbol{S}_{N+1} \boldsymbol{\Phi}^\top_{\rm new} ,\]
(4.27)\[\boldsymbol{m}^{\prime}_{N+1}
\equiv
\beta\boldsymbol{\Phi}_{\rm new}^\top
\left(
\boldsymbol{t}_{\rm new} - \boldsymbol{\Phi}_{\rm new} \boldsymbol{m}_{N}
\right) ,\]
(4.28)\[\boldsymbol{m}_{N+1}
\equiv
\boldsymbol{S}_{N+1}
\left(
\boldsymbol{S}_N^{-1} \boldsymbol{m}_N
+ \beta \boldsymbol{\Phi}^\top_{\rm new} \boldsymbol{t}_{\rm new}
\right) ,\]
とおいた。式 (4.24) の最後の等式は、逆行列の公式(1)を用いて導ける。
(4.19) に戻って、 \(\boldsymbol{w}\) についてのガウス積分を実行すると
\[\int d\boldsymbol{w}
\exp{\left(
-\frac{1}{2}
\left( \boldsymbol{w} - \boldsymbol{m}_{N+1} \right)^\top
\boldsymbol{S}^{-1}_{N+1}
\left( \boldsymbol{w} - \boldsymbol{m}_{N+1} \right)
\right)}
=
\sqrt{ \left( 2\pi \right)^M \left| \boldsymbol{S}_{N+1} \right| }\]
なので、
\[p(\boldsymbol{t}_{\rm new} | \boldsymbol{X}_{\rm new}, \boldsymbol{X}_N, \boldsymbol{t}_N)
=
\frac{\sqrt{(2\pi)^M\left| \boldsymbol{S}_{N+1} \right|}}
{\sqrt{(2\pi)^N\beta^{-N}} \sqrt{(2\pi)^M\left| \boldsymbol{S}_N \right|}}
\exp{\left(
-\frac{1}{2}
\left( \boldsymbol{t}_{\rm new} - \boldsymbol{\Phi}_{\rm new}\boldsymbol{m}_N \right)^\top
\boldsymbol{A}_{N+1}^{-1}
\left( \boldsymbol{t}_{\rm new} - \boldsymbol{\Phi}_{\rm new}\boldsymbol{m}_N \right)
\right)}\]
となるが、行列式の公式を用いて係数を整理すると、
最終的に出力データの予測分布は以下のようになる
(4.29)\[p(\boldsymbol{t}_{\rm new} | \boldsymbol{X}_{\rm new}, \boldsymbol{X}_N, \boldsymbol{t}_N)
=
\frac{1}{\sqrt{(2\pi)^N \left| \boldsymbol{A}_{N+1} \right|}}
\exp{\left(
-\frac{1}{2}
\left( \boldsymbol{t}_{\rm new} - \boldsymbol{\Phi}_{\rm new}\boldsymbol{m}_N \right)^\top
\boldsymbol{A}^{-1}_{N+1}
\left( \boldsymbol{t}_{\rm new} - \boldsymbol{\Phi}_{\rm new}\boldsymbol{m}_N \right)
\right)} .\]