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)} .\]