PRML　演習問題  3.16（標準）　解答

## はじめに
本記事は, 機械学習の教科書の決定版ともいえる, **Christopher Bishop先生**による[**『Pattern Recognition and Machine Learning （パターン認識と機械学習）』**](https://www.microsoft.com/en-us/research/people/cmbishop/prml-book/), 通称**PRML**の演習問題のうち, 私が解いた問題の解答を記したものです. これは, 私の所属する[生物測定学研究室](https://www.ut-biomet.org/)の輪読会で**PRML**を取り扱っており, その勉強の一環として演習問題を解いたときのものです. なお, 他の演習問題の解答例に関する記事については, [PRML　演習問題　解答集　まとめ](https://qiita.com/Lab_of_Biomet/items/15e38ca34fafa8176d89)をご覧ください.


## 問題
> ```math
\begin{align*}
p \left ( \mathbf t ~ | ~ \alpha,\beta \right ) =\int p \left ( \mathbf t ~ | ~ \mathbf w,\beta \right )  p \left ( \mathbf w ~ | ~ \alpha \right ) \mathrm d\mathbf w
\tag{3.77}
\end{align*}
```
の評価に
$$
\begin{align*}
p \left ( \mathbf y \right ) =N \left ( \mathbf y  ~ | ~ \mathbf A \boldsymbol \mu + \mathbf b, ~ \mathbf L^{-1} + \mathbf A \boldsymbol \Lambda^{-1} \mathbf A^\mathrm T \right )  
\tag{2.115}
\end{align*}
$$
を直接用いて, 
$$
\begin{align*}
\ln p \left ( \mathbf t  ~ | ~  \alpha,\beta \right ) =\frac {M}{2} \ln \alpha + \frac {N}{2} \beta - E \left ( \mathbf m_N \right ) -\frac{1}{2} \ln \left | \mathbf A \right | -\frac {N}{2} \ln \left ( 2 \pi \right )  \tag{3.86}
\end{align*}
$$
で与えられる線形回帰モデルの対数エビデンス関数 $p \left ( \mathbf t ~ | ~ \alpha ,\beta \right ) $ の結果を導け.



## 解答
(3.77) はそれぞれ以下の式の積の積分で表される。

```math
\begin{align*}
p \left ( \mathbf t ~ | ~ \mathbf w,\beta \right )  =N \left ( \mathbf t  ~ | ~ \boldsymbol \Phi \mathbf w, ~ \beta^{-1} \mathbf I_N \right )  
\tag{3.10.1}
\end{align*}
```

```math
\begin{align*}
p \left ( \mathbf w ~ | ~ \alpha \right ) =N \left ( \mathbf w ~ | ~ \mathbf 0, ~  \alpha^{-1} \mathbf I_M \right )  
\tag{3.52}
\end{align*}
```
ここで, (2.115) の式は, 

```math
\begin{align*}
p \left ( \mathbf x \right ) =N \left (  \boldsymbol \mu , ~ \boldsymbol \Lambda^{-1} \right )  
\tag{2.113}
\end{align*}
```

```math
\begin{align*}
p \left ( \mathbf y ~ | ~ \mathbf x \right ) =N \left ( \mathbf y  ~ | ~ \mathbf A \boldsymbol x + \mathbf b, ~ \mathbf L^{-1} \right )  
\tag{2.114}
\end{align*}
```

が与えられた際の周辺分布だったことに注意して, 


(2.113) から (2.115) について, 

```math
\begin{align*}
\mathbf y \rightarrow \mathbf t, \quad \mathbf x \rightarrow\mathbf w, \quad \boldsymbol \mu\rightarrow\mathbf 0, \quad \boldsymbol \Lambda^{-1}\rightarrow\alpha ^{-1}\mathbf I_M,\quad  \mathbf A\rightarrow\boldsymbol \Phi ,\quad \mathbf L^{-1}\rightarrow\beta^{-1} \mathbf I_N
\end{align*}
```

と置き換えると, (3.77) を評価できる。

したがって, (2.115) にそれぞれを代入すると, 

```math
\begin{align*}
p \left ( \mathbf t ~ | ~ \alpha,\beta \right ) =N \left ( \mathbf t  ~ | ~  \mathbf 0, ~ \beta^{-1} \mathbf I_N+\alpha ^{-1} \boldsymbol \Phi  \boldsymbol \Phi^{\mathrm T} \right )  
\end{align*}
```

と求まる。対数を取ると, 

```math
\begin{align*}
\ln p \left ( \mathbf t  ~ | ~  \alpha,\beta \right ) =-\frac {N}{2} \ln \left ( 2 \pi \right )  -  \frac {1}{2} \ln  \left | \beta^{-1} \mathbf I_N+\alpha ^{-1} \boldsymbol \Phi  \boldsymbol \Phi^{\mathrm T} \right | -\frac{1}{2} \mathbf t^{\mathrm T} \left ( \beta^{-1} \mathbf I_N+\alpha ^{-1} \boldsymbol \Phi  \boldsymbol \Phi^{\mathrm T} \right ) \mathbf t 
\end{align*}
```

ここで, 

```math
\begin{align*}
\left | \mathbf I_N+\mathbf {AB}^{\mathrm T} \right | = \left | \mathbf I_M+\mathbf {A}^{\mathrm T} \mathbf B \right | 
\tag{C.14}
\end{align*}
```
より, (3.81) を用いて,

```math
\begin{align*}
\left | \beta^{-1} \mathbf I_N+\alpha ^{-1} \boldsymbol \Phi  \boldsymbol \Phi^{\mathrm T} \right |  
&= \beta^{-N}  \left | \mathbf I_N+\beta \alpha ^{-1} \boldsymbol \Phi  \boldsymbol \Phi^{\mathrm T} \right |  \\
&=  \beta^{-N}  \left | \mathbf I_M+\beta \alpha ^{-1} \boldsymbol \Phi  ^{\mathrm T}\boldsymbol \Phi \right |  \\
&= \beta^{-N} \alpha^{-M} \left | \alpha \mathbf I_M+\beta \boldsymbol \Phi  ^{\mathrm T}\boldsymbol \Phi \right |  \\
&= \beta^{-N} \alpha^{-M} \left | \mathbf A \right |
\end{align*}
```

また, 対数を取った時の第3項目は, Woodburyの公式

```math
\begin{align*}
  \left ( \mathbf A + \mathbf {BD}^{-1} \mathbf C \right ) ^{-1} = \mathbf A^{-1}-\mathbf A^{-1} \mathbf{B} \left ( \mathbf D + \mathbf{CA}^{-1}\mathbf B \right ) ^{-1}\mathbf{CA}^{-1} \tag {C .7}
\end{align*}
```

や,
 
```math
\begin{align*}
 \mathbf A = \alpha \mathbf I_M+\beta \boldsymbol \Phi  ^{\mathrm T}\boldsymbol \Phi \tag{3.81}
\end{align*}
```

```math
\begin{align*}
\mathbf m_N = \beta \mathbf{A}^{-1}  \boldsymbol \Phi  ^{\mathrm T} \mathbf t 
\tag {3.84}
\end{align*}
 ```
を用いると, 

```math
\begin{align*}
-\frac{1}{2} \mathbf t^{\mathrm T} \left ( \beta^{-1} \mathbf I_N+\alpha ^{-1} \boldsymbol \Phi  \boldsymbol \Phi^{\mathrm T} \right ) \mathbf t 
&= -\frac{1}{2} \mathbf t^{\mathrm T} \left [ \beta \mathbf I_N -  \beta \boldsymbol \Phi  \left ( \alpha  \mathbf I_M  + \beta \boldsymbol \Phi^{\mathrm T} \boldsymbol \Phi \right ) ^{-1} \boldsymbol  \Phi^{\mathrm T} \beta  \right ] \mathbf t  \\
&=  -\frac{\beta}{2}\mathbf t^{T} \mathbf t+ \frac{\beta ^2}{2} \mathbf t^{\mathrm T} \boldsymbol \Phi  \mathbf A^{-1}\boldsymbol \Phi^{\mathrm T} \mathbf t\\
&= -\frac{\beta}{2}\mathbf t^{T} \mathbf t+ \frac{1}{2} \mathbf m^{\mathrm T}_N \mathbf A \mathbf m_N\\
&=-\frac{1}{2} \left ( \beta \mathbf t^{T} \mathbf t-2 \mathbf m^{\mathrm T}_N \mathbf A \mathbf m_N +  \mathbf m^{\mathrm T}_N \mathbf A \mathbf m_N \right ) \\
&= - \frac { 1 } { 2 } \left ( \beta \mathbf { t } ^ \mathrm { T } \mathbf { t } - 2  \mathbf { m } ^ \mathrm { T } _ { N } \mathbf { A } \left ( \beta \mathbf { A } ^ { - 1 } \mathbf { \Phi } ^ \mathrm { T } \mathbf { t } \right ) +  \mathbf { m } ^ \mathrm { T } _ { N }  \left ( \alpha \mathbf { I } _ { M } + \beta \mathbf { \Phi } ^ \mathrm { T } \mathbf { \Phi } \right ) \mathbf { m } _ { N } \right ) \\
&=-\frac{1}{2} \left ( \beta \mathbf t^{T} \mathbf t-2 \mathbf m^{\mathrm T}_N  \boldsymbol \Phi  ^{\mathrm T} \mathbf t \beta + \beta  \mathbf m^{\mathrm T}_N  \boldsymbol \Phi  ^{\mathrm T}\boldsymbol \Phi\mathbf m_N+\alpha \mathbf m^{\mathrm T}_N \mathbf m_N \right ) \\
&=-\frac{1}{2} \left ( \beta  \left ( \mathbf t-\boldsymbol \Phi \mathbf m_N \right ) ^{\mathrm T} \left ( \mathbf t-\boldsymbol \Phi \mathbf m_N \right )  +\alpha \mathbf m^{\mathrm T}_N \mathbf m_N \right ) \\
&= -\frac{\beta}{2}  \left | \left | \mathbf t-\boldsymbol \Phi \mathbf m_N \right | \right | ^ 2-\frac{1}{2}\alpha \mathbf m^\mathrm{ T}_N \mathbf m_N 
\end{align*}
```

したがって, これらを対数を取ったものに代入すれば,  

```math
\begin{align*}
\ln p \left ( \mathbf t  ~ | ~  \alpha,\beta \right ) =\frac {M}{2} \ln \alpha + \frac {N}{2} \beta - E \left ( \mathbf m_N \right ) -\frac{1}{2} \ln \left | \mathbf A \right | -\frac {N}{2} \ln \left ( 2 \pi \right )  \tag{3.86}
\end{align*}
```

を導くことができる。 (証明終)