【ベイズ深層学習】ベイズニューラルネットワークモデルの予測分布の導出


『機械学習プロフェッショナルシリーズ　ベイズ深層学習』

https://www.amazon.co.jp/%E3%83%99%E3%82%A4%E3%82%BA%E6%B7%B1%E5%B1%A4%E5%AD%A6%E7%BF%92-%E6%A9%9F%E6%A2%B0%E5%AD%A6%E7%BF%92%E3%83%97%E3%83%AD%E3%83%95%E3%82%A7%E3%83%83%E3%82%B7%E3%83%A7%E3%83%8A%E3%83%AB%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA-%E9%A0%88%E5%B1%B1-%E6%95%A6%E5%BF%97/dp/4065168708


こちらの本の
-> Chapter5 ニューラルネットワークのベイズ推論
　-> 5.1 ベイズニューラルネットワークモデルの近似推論法
　　-> 5.1.2 ラプラス近似による学習
　　　-> 5.1.2.2 予測分布の近似
にて、予測分布を求める計算過程がかなり省略されていると感じ、誰かの役に立つかはわかりませんが、こちらについて私なりの導出過程を記します。

# 予測分布を解析的に求める過程
```math
\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段目の式への過程、
```math
\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）
```math
\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）
```math
\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}
```

## 文字の置き換え
元の式の形は複雑であり、また一般性を持たせるために、次のように文字を置き換えます。
```math
\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}
```
これより左辺の積分の中身は、
```math
\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$とおき、文字を置き換えた式の対数を取る。

```math
\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項目の括弧内について、
```math
\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}
```
ここで、普通に展開すると、
```math
\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項目の転置を取ると
```math
\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倍にまとめることができます。

```math
\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}
```
途中で、
```math
\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}$を途中で挿入しました。
また、次の式変形（平方完成）では後から前へ計算することで確かめられます。

```math
\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}
```
ガウス分布の形にするために、途中で、
```math
\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}$自体をウッドベリーの公式を使って次のように求められます。

```math
\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項目はガウス分布の係数に関するもので、共分散行列の行列式を確かめる必要があります。天下り的ですが、行列式の補題を次のように適用すると、

```math
\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項目それぞれの計算から、

```math
\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}
```

すなわち、
```math
\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}
```
となることがわかります。
この式に元々置き換えられていた文字を元に戻してもよいですが、折角なので一般性を保つためにこのまま積分します。

## 積分
ここまで来ると積分は非常に簡単で、
```math
\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$を用いました。

結局、ここまでをまとめると次の式が成立し、

```math
\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

https://www.amazon.co.jp/%E3%83%99%E3%82%A4%E3%82%BA%E6%B7%B1%E5%B1%A4%E5%AD%A6%E7%BF%92-%E6%A9%9F%E6%A2%B0%E5%AD%A6%E7%BF%92%E3%83%97%E3%83%AD%E3%83%95%E3%82%A7%E3%83%83%E3%82%B7%E3%83%A7%E3%83%8A%E3%83%AB%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA-%E9%A0%88%E5%B1%B1-%E6%95%A6%E5%BF%97/dp/4065168708

・「ベイズニューラルネットワークの原理　マサムネの部屋」, 

https://masamunetogetoge.com/bayes-nn#easy-footnote-bottom-5-3145