『機械学習プロフェッショナルシリーズ ベイズ深層学習』
こちらの本の
-> Chapter5 ニューラルネットワークのベイズ推論
-> 5.1 ベイズニューラルネットワークモデルの近似推論法
-> 5.1.2 ラプラス近似による学習
-> 5.1.2.2 予測分布の近似
にて、予測分布を求める計算過程がかなり省略されていると感じ、誰かの役に立つかはわかりませんが、こちらについて私なりの導出過程を記します。
予測分布を解析的に求める過程
\begin{align*}
p(y_* | \mathbf{x}_*, \mathbf{Y}, \mathbf{X}) &\approx \int p(y_* | \mathbf{x}_*, \mathbf{W}) q(\mathbf{W}) \mathrm{d} \mathbf{W} \\
&\approx \int \mathcal{N} (y_* | f( \mathbf{x}_* ; \mathbf{W}_\mathrm{MAP}) + \mathbf{g}^\top (\mathbf{W} - \mathbf{W}_\mathrm{MAP}), \sigma_y^2 ) \\
&\qquad \ \mathcal{N}(\mathbf{W} | \mathbf{W}_\mathrm{MAP}, \{ \mathbf{\Lambda (\mathbf{W}_\mathrm{MAP} ) } \}^{-1}) \mathrm{d} \mathbf{W} \\
&= \mathcal{N}( y_* | f(\mathbf{x}_* ; \mathbf{W}_\mathrm{MAP}), \sigma^2(\mathbf{x}_*) ) \tag{5.14} \\
\\
\sigma^2(\mathbf{x}_*) &= \sigma_y^2 + \mathbf{g}^\top \{ \mathbf{\Lambda (\mathbf{W}_\mathrm{MAP})} \}^{-1} \mathbf{g} \tag{5.15}
\end{align*}
書籍にはこれらの式が記載されており、この記事では2段目の式から3段目の式への過程、
\begin{align*}
\int \mathcal{N} (y_* | f( \mathbf{x}_* ; \mathbf{W}_\mathrm{MAP}) + \mathbf{g}^\top (\mathbf{W} - \mathbf{W}_\mathrm{MAP}), \sigma_y^2 ) \mathcal{N}(\mathbf{W} | \mathbf{W}_\mathrm{MAP}, \{ \mathbf{\Lambda (\mathbf{W}_\mathrm{MAP} ) } \}^{-1}) \mathrm{d} \mathbf{W}
&= \mathcal{N}( y_* | f(\mathbf{x}_* ; \mathbf{W}_\mathrm{MAP}), \sigma^2(\mathbf{x}_*) )
\end{align*}
を詳細に導出します。
詳細な導出
導出に用いる公式
ウッドベリーの公式(Woodbury formula)
\begin{align}
(\mathbf{A} + \mathbf{UBV})^{-1} &= \mathbf{A}^{-1} - \mathbf{A}^{-1} \mathbf{U} ( \mathbf{B}^{-1} + \mathbf{V} \mathbf{A}^{-1} \mathbf{U} )^{-1} \mathbf{V} \mathbf{A}^{-1}
\end{align}
行列式の補題(matrix determinant lemma)
\begin{align}
\det (\mathbf{A} + \mathbf{UBV}) &= \det (\mathbf{B}^{-1} + \mathbf{V} \mathbf{A}^{-1} \mathbf{U}) \det(\mathbf{B}) \det(\mathbf{A})
\end{align}
文字の置き換え
元の式の形は複雑であり、また一般性を持たせるために、次のように文字を置き換えます。
\begin{align}
y_* \in \mathbb{R} \quad &\rightarrow \quad \mathbf{y} \in \mathbb{R}^D \\
f( \mathbf{x}_* ; \mathbf{W}_\mathrm{MAP}) \in \mathbb{R} \quad &\rightarrow \quad \boldsymbol{\mu} \in \mathbb{R}^D \\
\mathbf{g} \in \mathbb{R}^M \quad &\rightarrow \quad \mathbf{G} \in \mathbb{R}^{M \times D} \\
\mathbf{W} \in \mathbb{R}^M \quad &\rightarrow \quad \mathbf{x} \in \mathbb{R}^M \\
\mathbf{W}_\mathrm{MAP} \in \mathbb{R}^M \quad &\rightarrow \quad \mathbf{x}_0 \in \mathbb{R}^M \\
\sigma_y^2 \in \mathbb{R} \quad &\rightarrow \quad \mathbf{\Sigma}_\mathbf{y} \in \mathbb{R}^{D \times D} \\
\{ \mathbf{\Lambda (\mathbf{W}_\mathrm{MAP} ) } \}^{-1} \in \mathbb{R}^{M \times M} \quad &\rightarrow \quad \mathbf{\Sigma}_\mathbf{x} \in \mathbb{R}^{M \times M} \\
\end{align}
これより左辺の積分の中身は、
\begin{align}
&\mathcal{N} (y_* | f( \mathbf{x}_* ; \mathbf{W}_\mathrm{MAP}) + \mathbf{g}^\top (\mathbf{W} - \mathbf{W}_\mathrm{MAP}), \sigma_y^2 ) \mathcal{N}(\mathbf{W} | \mathbf{W}_\mathrm{MAP}, \{ \mathbf{\Lambda (\mathbf{W}_\mathrm{MAP} ) } \}^{-1}) \in \mathbb{R} \\
&\quad \rightarrow \quad
\mathcal{N} (\mathbf{y} | \boldsymbol{\mu} + \mathbf{G}^\top (\mathbf{x} - \mathbf{x}_0), \mathbf{\Sigma}_\mathbf{y} ) \mathcal{N}(\mathbf{x} | \mathbf{x}_0, \mathbf{\Sigma}_\mathbf{x}) \in \mathbb{R}
\end{align}
対数についての計算
$\mathbf{z} = \mathbf{x} - \mathbf{x}_0$とおき、文字を置き換えた式の対数を取る。
\begin{align*}
&\ln \left \{ \mathcal{N}(\mathbf{y} | \boldsymbol{\mu} + \mathbf{G}^\top \mathbf{z}, \mathbf{\Sigma}_\mathbf{y}) \mathcal{N} (\mathbf{x} | \mathbf{x}_0, \mathbf{\Sigma}_\mathbf{x}) \right \} \\
&= \dfrac{1}{2} (\mathbf{y} - (\boldsymbol{\mu} + \mathbf{G}^\top \mathbf{z}))^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - (\boldsymbol{\mu} + \mathbf{G}^\top \mathbf{z})) + \dfrac{1}{2} \mathbf{z}^\top \mathbf{\Sigma}_\mathbf{x}^{-1} \mathbf{z} + \ln \dfrac{1}{ \sqrt{ (2 \pi)^{D+M} |\mathbf{\Sigma}_\mathbf{x}| |\mathbf{\Sigma}_\mathbf{y}| } } \\
&= \dfrac{1}{2} \left \{ (\mathbf{y} - (\boldsymbol{\mu} + \mathbf{G}^\top \mathbf{z}))^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - (\boldsymbol{\mu} + \mathbf{G}^\top \mathbf{z})) + \mathbf{z}^\top \mathbf{\Sigma}_\mathbf{x}^{-1} \mathbf{z} \right \} + \ln \dfrac{1}{ \sqrt{ (2 \pi)^{D+M} |\mathbf{\Sigma}_\mathbf{x}| |\mathbf{\Sigma}_\mathbf{y}| } }
\end{align*}
第1項目
第1項目の括弧内について、
\begin{align}
&(\mathbf{y} - (\boldsymbol{\mu} + \mathbf{G}^\top \mathbf{z}))^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - (\boldsymbol{\mu} + \mathbf{G}^\top \mathbf{z})) + \mathbf{z}^\top \mathbf{\Sigma}_\mathbf{x}^{-1} \mathbf{z} \\
&= ((\mathbf{y} - \boldsymbol{\mu}) - \mathbf{G}^\top \mathbf{z})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} ((\mathbf{y} - \boldsymbol{\mu}) - \mathbf{G}^\top \mathbf{z}) + \mathbf{z}^\top \mathbf{\Sigma}_\mathbf{x}^{-1} \mathbf{z} \\
&= ((\mathbf{y} - \boldsymbol{\mu})^\top - \mathbf{z}^\top \mathbf{G}) \mathbf{\Sigma}_\mathbf{y}^{-1} ((\mathbf{y} - \boldsymbol{\mu}) - \mathbf{G}^\top \mathbf{z}) + \mathbf{z}^\top \mathbf{\Sigma}_\mathbf{x}^{-1} \mathbf{z}
\end{align}
ここで、普通に展開すると、
\begin{align}
&((\mathbf{y} - \boldsymbol{\mu})^\top - \mathbf{z}^\top \mathbf{G}) \mathbf{\Sigma}_\mathbf{y}^{-1} ((\mathbf{y} - \boldsymbol{\mu}) - \mathbf{G}^\top \mathbf{z}) \\
&= (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) - (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \mathbf{z} - \mathbf{z}^\top \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) + \mathbf{z}^\top \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \mathbf{z} \\
&= (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) -2 \mathbf{z}^\top \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) + \mathbf{z}^\top \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \mathbf{z} \\
\end{align}
となりますが、$\mathbf{\Sigma_y}$は対称行列なので$\mathbf{\Sigma}_\mathbf{y}^{-1}$も対称行列であり、2項目の転置を取ると
\begin{align}
(- (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \mathbf{z})^\top = - \mathbf{z}^\top \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu})
\end{align}
のように3項目と同じになります。また、
(2項目)
=($1 \times D$行列)($D \times D$行列)($D \times M$行列)($M \times 1$行列)
=($1 \times D$行列)($D \times D$行列)($D \times 1$行列)
=($1 \times D$行列)($D \times 1$行列)
=($1 \times 1$行列)
=(スカラー)
なので、2項目の転置を取ったものは2項目と等しくなります。よって、2項目と3項目は等しくなり、その和はどちらかの項の2倍にまとめることができます。
\begin{align}
&= \cdots \\
&= ((\mathbf{y} - \boldsymbol{\mu})^\top - \mathbf{z}^\top \mathbf{G}) \mathbf{\Sigma}_\mathbf{y}^{-1} ((\mathbf{y} - \boldsymbol{\mu}) - \mathbf{G}^\top \mathbf{z}) + \mathbf{z}^\top \mathbf{\Sigma}_\mathbf{x}^{-1} \mathbf{z} \\
&= (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) -2 \mathbf{z}^\top \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) + \mathbf{z}^\top \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \mathbf{z} + \mathbf{z}^\top \mathbf{\Sigma}_\mathbf{x}^{-1} \mathbf{z} \\
&= \mathbf{z}^\top \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \mathbf{z} + \mathbf{z}^\top \mathbf{\Sigma}_\mathbf{x}^{-1} \mathbf{z} -2 \mathbf{z}^\top \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) + (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) \\
&= \mathbf{z}^\top \left( \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top + \mathbf{\Sigma}_\mathbf{x}^{-1} \right) \mathbf{z} -2 \mathbf{z}^\top \left( \tilde{\mathbf{\Sigma}}^{-1} \tilde{\mathbf{\Sigma}} \right) \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) + (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) \\
&= \mathbf{z}^\top \tilde{\mathbf{\Sigma}}^{-1} \mathbf{z} -2 \mathbf{z}^\top \tilde{\mathbf{\Sigma}}^{-1} \left( \tilde{\mathbf{\Sigma}} \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) \right) + (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) \\
&= \mathbf{z}^\top \tilde{\mathbf{\Sigma}}^{-1} \mathbf{z} -2 \mathbf{z}^\top \tilde{\mathbf{\Sigma}}^{-1} \tilde{\boldsymbol{\mu}} + (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu})
\end{align}
途中で、
\begin{align}
\tilde{\mathbf{\Sigma}}^{-1} &= \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top + \mathbf{\Sigma}_\mathbf{x}^{-1} \\
\tilde{\boldsymbol{\mu}} &= \tilde{\mathbf{\Sigma}} \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu})
\end{align}
と置きました。なお、単位行列$\tilde{\mathbf{\Sigma}}^{-1} \tilde{\mathbf{\Sigma}} = \mathbf{I} \in \mathbb{R}^{M \times M}$を途中で挿入しました。
また、次の式変形(平方完成)では後から前へ計算することで確かめられます。
\begin{align}
&= \cdots \\
&= \mathbf{z}^\top \tilde{\mathbf{\Sigma}}^{-1} \mathbf{z} -2 \mathbf{z}^\top \tilde{\mathbf{\Sigma}}^{-1} \tilde{\boldsymbol{\mu}} + (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) \\
&= (\mathbf{z} - \tilde{\boldsymbol{\mu}})^\top \tilde{\mathbf{\Sigma}}^{-1} (\mathbf{z} - \tilde{\boldsymbol{\mu}}) - \tilde{\boldsymbol{\mu}}^\top \tilde{\mathbf{\Sigma}}^{-1} \tilde{\boldsymbol{\mu}} + (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) \\
&= (\mathbf{z} - \tilde{\boldsymbol{\mu}})^\top \tilde{\mathbf{\Sigma}}^{-1} (\mathbf{z} - \tilde{\boldsymbol{\mu}}) - \left \{ \tilde{\mathbf{\Sigma}} \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) \right\}^\top \tilde{\mathbf{\Sigma}}^{-1} \left \{ \tilde{\mathbf{\Sigma}} \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) \right \} + (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) \\
&= (\mathbf{z} - \tilde{\boldsymbol{\mu}})^\top \tilde{\mathbf{\Sigma}}^{-1} (\mathbf{z} - \tilde{\boldsymbol{\mu}}) - \left \{ (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \tilde{\mathbf{\Sigma}} \right\} \left \{ \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) \right \} + (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) \\
&= (\mathbf{z} - \tilde{\boldsymbol{\mu}})^\top \tilde{\mathbf{\Sigma}}^{-1} (\mathbf{z} - \tilde{\boldsymbol{\mu}}) + (\mathbf{y} - \boldsymbol{\mu})^\top \left( - \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \tilde{\mathbf{\Sigma}} \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \right) (\mathbf{y} - \boldsymbol{\mu}) + (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - \boldsymbol{\mu}) \\
&= (\mathbf{z} - \tilde{\boldsymbol{\mu}})^\top \tilde{\mathbf{\Sigma}}^{-1} (\mathbf{z} - \tilde{\boldsymbol{\mu}}) + (\mathbf{y} - \boldsymbol{\mu})^\top \left( \mathbf{\Sigma}_\mathbf{y}^{-1} - \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \tilde{\mathbf{\Sigma}} \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \right) (\mathbf{y} - \boldsymbol{\mu}) \\
&= (\mathbf{z} - \tilde{\boldsymbol{\mu}})^\top \tilde{\mathbf{\Sigma}}^{-1} (\mathbf{z} - \tilde{\boldsymbol{\mu}}) + (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}^{-1} (\mathbf{y} - \boldsymbol{\mu})
\end{align}
ガウス分布の形にするために、途中で、
\begin{align}
\mathbf{\Sigma}^{-1} &= \mathbf{\Sigma}_\mathbf{y}^{-1} - \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \tilde{\mathbf{\Sigma}} \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1}
\end{align}
と置きました。逆行列の形で定義しましたが、$\mathbf{\Sigma}$自体をウッドベリーの公式を使って次のように求められます。
\begin{align}
&\mathbf{A} \rightarrow \mathbf{\Sigma}_\mathbf{y}^{-1}, \quad \mathbf{U} \rightarrow - \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top, \quad \mathbf{B} \rightarrow \tilde{\mathbf{\Sigma}}, \quad \mathbf{V} \rightarrow \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \\
\\
\mathbf{\Sigma} &= \left( \mathbf{\Sigma}_\mathbf{y}^{-1} - \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \tilde{\mathbf{\Sigma}} \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \right)^\top \\
&= \mathbf{\Sigma}_\mathbf{y} - \mathbf{\Sigma}_\mathbf{y} \left( - \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \right) \left( \tilde{\mathbf{\Sigma}}^{-1} + \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{\Sigma}_\mathbf{y} \left( - \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \right) \right)^{-1} \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{\Sigma}_\mathbf{y} \\
&= \mathbf{\Sigma}_\mathbf{y} + \mathbf{G}^\top \left( \tilde{\mathbf{\Sigma}}^{-1} - \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \right)^{-1} \mathbf{G} \\
&= \mathbf{\Sigma}_\mathbf{y} + \mathbf{G}^\top \left( \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top + \mathbf{\Sigma}_\mathbf{x}^{-1} - \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \right)^{-1} \mathbf{G} \\
&= \mathbf{\Sigma}_\mathbf{y} + \mathbf{G}^\top \left( \mathbf{\Sigma}_\mathbf{x}^{-1} \right)^{-1} \mathbf{G} \\
&= \mathbf{\Sigma}_\mathbf{y} + \mathbf{G}^\top \mathbf{\Sigma}_\mathbf{x} \mathbf{G}
\end{align}
これで、ガウス分布の指数関数の中身を作ることができました。
第2項目
第2項目はガウス分布の係数に関するもので、共分散行列の行列式を確かめる必要があります。天下り的ですが、行列式の補題を次のように適用すると、
\begin{align}
&\mathbf{A} + \mathbf{UBV} \rightarrow \mathbf{\Sigma}, \quad \mathbf{A} \rightarrow \mathbf{\Sigma}_\mathbf{y}, \quad \mathbf{U} \rightarrow \mathbf{G}^\top, \quad \mathbf{B} \rightarrow \mathbf{\Sigma}_\mathbf{x}, \quad \mathbf{V} \rightarrow \mathbf{G} \\
\\
\det \left( \mathbf{\Sigma} \right) &= \det \left( \mathbf{\Sigma}_\mathbf{y} + \mathbf{G}^\top \mathbf{\Sigma}_\mathbf{x} \mathbf{G} \right) \\
&= \det \left( \mathbf{\Sigma}_\mathbf{x}^{-1} + \mathbf{G} \mathbf{\Sigma}_\mathbf{y}^{-1} \mathbf{G}^\top \right) \det \left( \mathbf{\Sigma}_\mathbf{x} \right) \det \left( \mathbf{\Sigma}_\mathbf{y} \right) \\
&= \det \left( \tilde{\mathbf{\Sigma}}^{-1} \right) \det \left( \mathbf{\Sigma}_\mathbf{x} \right) \det \left( \mathbf{\Sigma}_\mathbf{y} \right) \\
&= \left \{ \det \left( \tilde{\mathbf{\Sigma}} \right) \right \}^{-1} \det \left( \mathbf{\Sigma}_\mathbf{x} \right) \det \left( \mathbf{\Sigma}_\mathbf{y} \right) \\
|\tilde{\mathbf{\Sigma}}| |\mathbf{\Sigma}| &= |\mathbf{\Sigma}_\mathbf{x}| |\mathbf{\Sigma}_\mathbf{y} | \\
\therefore \ln \dfrac{1}{ \sqrt{ (2 \pi)^{D+M} |\tilde{\mathbf{\Sigma}}| |\mathbf{\Sigma}| } } &= \ln \dfrac{1}{ \sqrt{ (2 \pi)^{D+M} |\mathbf{\Sigma}_\mathbf{x}| |\mathbf{\Sigma}_\mathbf{y}| } }
\end{align}
第1項目と第2項目のまとめ
結局、第1項目と第2項目それぞれの計算から、
\begin{align}
&\ln \left \{ \mathcal{N}(\mathbf{y} | \boldsymbol{\mu} + \mathbf{G}^\top \mathbf{z}, \mathbf{\Sigma}_\mathbf{y}) \mathcal{N} (\mathbf{x} | \mathbf{x}_0, \mathbf{\Sigma}_\mathbf{x}) \right \} \\
&= \dfrac{1}{2} \left \{ (\mathbf{y} - (\boldsymbol{\mu} + \mathbf{G}^\top \mathbf{z}))^\top \mathbf{\Sigma}_\mathbf{y}^{-1} (\mathbf{y} - (\boldsymbol{\mu} + \mathbf{G}^\top \mathbf{z})) + \mathbf{z}^\top \mathbf{\Sigma}_\mathbf{x}^{-1} \mathbf{z} \right \} + \ln \dfrac{1}{ \sqrt{ (2 \pi)^{D+M} |\mathbf{\Sigma}_\mathbf{x}| |\mathbf{\Sigma}_\mathbf{y}| } } \\
&= \dfrac{1}{2} \left \{ (\mathbf{z} - \tilde{\boldsymbol{\mu}})^\top \tilde{\mathbf{\Sigma}}^{-1} (\mathbf{z} - \tilde{\boldsymbol{\mu}}) + (\mathbf{y} - \boldsymbol{\mu})^\top \mathbf{\Sigma}^{-1} (\mathbf{y} - \boldsymbol{\mu}) \right \} + \ln \dfrac{1}{ \sqrt{ (2 \pi)^{D+M} |\tilde{\mathbf{\Sigma}}| |\mathbf{\Sigma}| } } \\
&= \ln \left \{ \mathcal{N}(\mathbf{z} | \tilde{\boldsymbol{\mu}}, \tilde{\mathbf{\Sigma}}) \mathcal{N} (\mathbf{y} | \boldsymbol{\mu}, \mathbf{\Sigma}) \right \}
\end{align}
すなわち、
\begin{align}
\mathcal{N}(\mathbf{y} | \boldsymbol{\mu} + \mathbf{G}^\top (\mathbf{x}-\mathbf{x}_0), \mathbf{\Sigma}_\mathbf{y}) \mathcal{N} (\mathbf{x} | \mathbf{x}_0, \mathbf{\Sigma}_\mathbf{x}) = \mathcal{N}(\mathbf{x}-\mathbf{x}_0 | \tilde{\boldsymbol{\mu}}, \tilde{\mathbf{\Sigma}}) \mathcal{N} (\mathbf{y} | \boldsymbol{\mu}, \mathbf{\Sigma})
\end{align}
となることがわかります。
この式に元々置き換えられていた文字を元に戻してもよいですが、折角なので一般性を保つためにこのまま積分します。
積分
ここまで来ると積分は非常に簡単で、
\begin{align}
\int \mathcal{N}(\mathbf{y} | \boldsymbol{\mu} + \mathbf{G}^\top (\mathbf{x}-\mathbf{x}_0), \mathbf{\Sigma}_\mathbf{y}) \mathcal{N} (\mathbf{x} | \mathbf{x}_0, \mathbf{\Sigma}_\mathbf{x}) \mathrm{d} \mathbf{x} &= \int \mathcal{N}(\mathbf{x}-\mathbf{x}_0 | \tilde{\boldsymbol{\mu}}, \tilde{\mathbf{\Sigma}}) \mathcal{N} (\mathbf{y} | \boldsymbol{\mu}, \mathbf{\Sigma}) \mathrm{d} \mathbf{x} \\
&= \mathcal{N} (\mathbf{y} | \boldsymbol{\mu}, \mathbf{\Sigma}) \int \mathcal{N}(\mathbf{x}-\mathbf{x}_0 | \tilde{\boldsymbol{\mu}}, \tilde{\mathbf{\Sigma}}) \mathrm{d} \mathbf{x} \\
&= \mathcal{N} (\mathbf{y} | \boldsymbol{\mu}, \mathbf{\Sigma})
\end{align}
途中で$\int \mathcal{N}(\mathbf{x}-\mathbf{x}_0 | \tilde{\boldsymbol{\mu}}, \tilde{\mathbf{\Sigma}}) \mathrm{d} \mathbf{x} = 1$を用いました。
結局、ここまでをまとめると次の式が成立し、
\begin{align}
\int \mathcal{N}(\mathbf{y} | \boldsymbol{\mu} + \mathbf{G}^\top (\mathbf{x}-\mathbf{x}_0), \mathbf{\Sigma}_\mathbf{y}) \mathcal{N} (\mathbf{x} | \mathbf{x}_0, \mathbf{\Sigma}_\mathbf{x}) \mathrm{d} \mathbf{x} = \mathcal{N} (\mathbf{y} | \boldsymbol{\mu}, \mathbf{\Sigma}) \\
\\
\mathbf{\Sigma} = \mathbf{\Sigma}_\mathbf{y} + \mathbf{G}^\top \mathbf{\Sigma}_\mathbf{x} \mathbf{G}
\end{align}
これに、置き換える前の文字を代入すれば冒頭の式(5.14)・(5.15)になることが分かります。
参考
・『機械学習プロフェッショナルシリーズ ベイズ深層学習』, 須山敦志, 2019
・「ベイズニューラルネットワークの原理 マサムネの部屋」,