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

## 問題
> この演習問題では. (3.62）で定義される等価カーネルのより深い性質を調べよう．ただし. $S_N$ は（3.54）で定義される．基底関数$\phi_j(\mathbf{x})$は線形独立であると仮定し，データ点の数$N$ は基底関数の数$M$ よりも大きいものとする．さらに．基底関数の1 つは定数，すなわち． $\phi_0(\mathbf{x}) = 1 $とする．これらの基底関数の適当な線形結合を取り，同じ空間を張る新しい基底関数集合$\psi_j(\mathbf{x})$を生成することができる．ただし新しい基底関数は正規直交である．
> 
```math
\begin {align*}
\sum_{n=1}^{N} \psi_{j}\left(\mathbf{x}_{n}\right) \psi_{k}\left(\mathbf{x}_{n}\right)=I_{j k}
\tag{3.115}
\end {align*}
```  
> 
$ I_{jk} $は$j=k$のときを取り．それ以外は$0$を取る．また．$\psi_0(\mathbf{x}) = 1 $と定義する．このとき．$\alpha = 0$に対して．等価カーネルが $k(\mathbf{x}, \mathbf{x}') = \psi(\mathbf{x})^T\psi(\mathbf{x'})$と書けることを示せ．ただし$\psi ＝（\psi_0, ...， \psi_M)^T $である．そしてこの結果を用いて．上記のカーネルが
> 
```math
\begin {align*}
\sum_{n=1}^{N} k\left(\mathbf{x}, \mathbf{x}_{n}\right) = 1
\tag{3.116}
\end {align*}
```  
> 
を満たすことを示せ．

## 方針
等価カーネルは重みを定める役割があると述べられていたが、$\alpha = 0$、つまり無限に広い事前分布のもとでは
> 
```math
\begin {align*}
\sum_{n=1}^{N} k\left(\mathbf{x}, \mathbf{x}_{n}\right) = 1
\tag{3.116}
\end {align*}
```  

となることを示す問題である。この(3.116)を示すには、もとの基底関数$\phi_j(\mathbf{x})$を、同じ空間を張る新しい正規直交の基底関数$\psi_j(\mathbf{x})$に置き換えることが必要となる。そしてこの結果を用いて(3.116)を示すことになる。

## 解答
$\alpha = 0$の時、

>
```math
\begin {align*}
\mathbf{S}_{N}^{-1}=\alpha \mathbf{I}+\beta \boldsymbol{\Phi}^{\mathrm{T}} \boldsymbol{\Phi}
\tag{3.54}
\end {align*}
```  

より、

```math
\begin {align*}
\mathbf{S}_{N}^{-1}&=\beta \boldsymbol{\Phi}^{\mathrm{T}} \boldsymbol{\Phi}\\
\mathbf{S}_{N}&=\beta^{-1}( \boldsymbol{\Phi}^{\mathrm{T}} \boldsymbol{\Phi})^{-1}
\tag{ex3.14.1}
\end {align*}
```  

また、基底関数は、
>
```math
\begin {align*}
k\left(\mathbf{x}, \mathbf{x}^{\prime}\right)=\beta \phi(\mathbf{x})^{\mathrm{T}} \mathbf{S}_{N} \phi\left(\mathbf{x}^{\prime}\right)
\tag{3.62}
\end {align*}
```  

であるため(ex3.14.1)を代入して

```math
\begin {align*}
k\left(\mathbf{x}, \mathbf{x}^{\prime}\right)
&=\beta \phi(\mathbf{x})^{\mathrm{T}} \beta^{-1}( \boldsymbol{\Phi}^{\mathrm{T}} \boldsymbol{\Phi})^{-1}\phi\left(\mathbf{x}^{\prime}\right)\\ 
&=\phi(\mathbf{x})^{\mathrm{T}}( \boldsymbol{\Phi}^{\mathrm{T}} \boldsymbol{\Phi})^{-1}\phi\left(\mathbf{x}^{\prime}\right)
\tag{ex3.14.2}
\end {align*}
```  
この時元の基底関数$\phi_j(\mathbf{x})$が正規直交していれば$\boldsymbol{\Phi}^{\mathrm{T}} \boldsymbol{\Phi} = I$の単位行列となるため$k\left(\mathbf{x}, \mathbf{x}^{\prime}\right)
=\phi(\mathbf{x})^{\mathrm{T}}\phi(\mathbf{x}^{\prime})$となる。ただし、$\phi_j(\mathbf{x})$が正規直交しているかはわからないため、正規直交の基底関数に直す必要がある。そのため、新しい正規直交の基底関数を$\psi_j(\mathbf{x})$とすると、$\phi(\mathbf{x})$から$\psi(\mathbf{x})$への変換行列を$\mathbf{V}$とすると、
$\psi(\mathbf{x}) ＝（\psi_0(\mathbf{x}), ...， \psi_M(\mathbf{x}))^T $、
$\phi(\mathbf{x}) ＝（\phi_0(\mathbf{x}), ...， \phi_M(\mathbf{x}))^T $
であるため、

```math
\begin {align*}
\mathbf{V}\phi(\mathbf{x}) &= \psi(\mathbf{x})\\
\phi(\mathbf{x}) &= \mathbf{V}^{-1}\psi(\mathbf{x})
\tag{ex3.14.3}
\end {align*}
```  

```math
\begin {align*}
\phi(\mathbf{x})^T &= \psi(\mathbf{x})^T(\mathbf{V}^{-1})^T
\tag{ex3.14.4}
\end {align*}
```  
行列形式にすると、

```math
\begin {align*}
  \Psi = \left(
    \begin{array}{c}
      \psi(\mathbf{x_1})^T \\
      :\\
      \psi(\mathbf{x_N})^T
    \end{array}
  \right)
\end {align*}
```  

```math
\begin {align*}
  \Phi = \left(
    \begin{array}{c}
      \phi(\mathbf{x_1})^T \\
      :\\
      \phi(\mathbf{x_N})^T
    \end{array}
  \right)
\end {align*}
```  

となることから、(ex3.14.4)を用いて、

```math
\begin {align*}
  \Phi &= \left(
    \begin{array}{c}
      \psi(\mathbf{x_1})^T(\mathbf{V}^{-1})^T \\
      :\\
      \psi(\mathbf{x_N})^T(\mathbf{V}^{-1})^T
    \end{array}
  \right)\\
\Phi&= \Psi(\mathbf{V}^{-1})^T
\tag{ex3.14.5}
\end {align*}
```  

以上のことから、(ex3.14.2)に(ex3.14.3)(ex3.14.5)を代入すると、

```math
\begin {align*}
k\left(\mathbf{x}, \mathbf{x}^{\prime}\right)=\psi(\mathbf{x})^T(\mathbf{V}^{-1})^T\{(\Psi(\mathbf{V}^{-1})^T)^T\Psi(\mathbf{V}^{-1})^T\}^{-1}\mathbf{V}^{-1}\psi(\mathbf{x})
\tag{ex3.14.6}
\end {align*}
```  
また、

```math
\begin {align*}
\{(\Psi(\mathbf{V}^{-1})^T)^T\Psi(\mathbf{V}^{-1})^T\}^{-1} = \{\mathbf{V}^{-1}\Psi^T\Psi(\mathbf{V}^{-1})^T\}^{-1}
\end {align*}
```
$\psi_j(\mathbf{x})$は正規直交の基底関数のため、$\Psi^T\Psi = I$となる。よって、(ex3.14.6)から下の式が成り立つ。

```math
\begin {align*}
k(\mathbf{x}, \mathbf{x}') = \psi(\mathbf{x})^T\psi(\mathbf{x'})
\end {align*}
```  

さらに、等価カーネルの足し合わせについて考えると、

```math
\begin {align*}
\sum_{n=1}^{N} k\left(\mathbf{x}, \mathbf{x}_{n}\right) &= \sum_{n=1}^{N}\psi(\mathbf{x})^T\psi(\mathbf{x_N})\\
&= \sum_{m=0}^{M-1}\psi_{m}\left(\mathbf{x}\right) \sum_{n=1}^{N}\psi_{m}\left(\mathbf{x}_{n}\right)
\tag{ex3.14.7}
\end {align*}
```  
最初に出てきた正規直交の基底関数における性質、(3.115)において$j = 0$を代入すると、

> 
```math
\begin {align*}
\sum_{n=1}^{N}\psi_{m}\left(\mathbf{x}_{n}\right)=I_{0 m}
\tag{3.115}
\end {align*}
```  

よって(ex3.14.7)は

```math
\begin {align*}
\sum_{n=1}^{N} k\left(\mathbf{x}, \mathbf{x}_{n}\right)
&= \sum_{m=0}^{M-1}\psi_{m}\left(\mathbf{x}\right) I_{0 m}\\
&= 1
\end {align*}
```  

このことから下の(3.116)が示された。

> 
```math
\begin {align*}
\sum_{n=1}^{N} k\left(\mathbf{x}, \mathbf{x}_{n}\right) = 1
\tag{3.116}
\end {align*}
```