PRML復活の呪文 part11 (3.4)

# TL;DR

- いろいろな複雑さのモデルから最も良いモデルを選択する際にモデルエビデンスを使うと、データへのフィッティング度合いとモデルの複雑さのバランスをとったモデルを選ぶことが出来る

# 3.4 ベイズモデル比較

3.3節ではベイズ的なアプローチで線形回帰モデルの重み$w$の事後分布を推定した。
この節では、モデルの基底の数が少ない単純なモデルから基底の数が多い複雑なモデル、とたくさんのモデルがある状況で、どのモデルを選択/比較すればよいかを考える。

モデル選択では、いくつかのモデルから最も良さそうな１つのモデルを選択する。
モデル比較では、いくつかのモデルをデータへのあてはまりに応じて重みをつけて、重み付き線形和を予測モデルとする。

$ M_1, \cdots, M_L $の$L$個のモデルがあるとしよう。
データを観測する前の時点でどのモデルがよさそうか、を表す事前分布は$p(M_i)$とする。データ観測前にモデルの良し悪しは普通分からないので、簡単のためすべてのモデルの事前確率は等しいとする。
次に、モデルを$M_i$と決めたときに訓練データ集合$D$が得られる確率（尤度）を$ p(D | M_i) $とおけば、ベイズの定理よりモデルの事後分布は

$$
p( M_i | D) \propto p(M_i) p(D | M_i) \tag{3.66}
$$

である。

モデルの事後分布が分かれば、確率のsum rule, product ruleより目標変数$t$の予測分布が得られる。

```math
\begin{align}

p(t | x, D) &= \sum_{i=1}^L p(t, M_i | x, D) \\
&= \sum_{i=1}^L p(t | x, M_i, D) p(M_i | D) \tag{3.67}

\end{align}
```

これは、個々のモデルの予測分布$ p(t | x, M_i, D) $に、訓練データ集合を見た後でこのモデルだと思う事後確率$ p(M_i | D) $が重みとしてかかっている、重み付き平均とみることができる。つまり、個々のモデルの予測分布が混合されている分布なので2.3.9節「混合ガウス分布」で見たような**混合分布**となっている。

個々のモデルの予測分布の求め方は前節でやったので、あとはモデルの事後確率が分かれば上式が求められる。式(3.66)よりモデルの事後分布は、モデルの事前分布と尤度の積に比例しており、さらにすべてのモデルの事前確率は等しいとしているので、実質的に尤度が分かれば事後分布が求められる。

複数のモデルの重み付き平均を予測分布とするのではなく、一番もっともらしいモデルを１つだけ選ぶ方法もある。この方法は**モデル選択 (model selection)** と呼ばれる。



## モデルエビデンスの解釈

上記で尤度と呼んでいた項$ p(D | M_i) $は**モデルエビデンス (model evidence)** と呼ばれ、ベイズモデル比較では重要な働きをする。

モデルエビデンスは、下式のように重みパラメータに関して積分消去することで求められる：

```math
\begin{align}

p( D | M_i ) &= \int p( D | w, M_i ) p( w | M_i) dw \\
&= \int p( D, w | M_i) dw \tag{3.68}

\end{align}
```

パラメータを周辺化した尤度関数とみなすことができるので、**周辺尤度**とも呼ばれる。

式(3.68)の積分計算を単純近似してみよう。まずは重みパラメータ$w$が1次元の場合を考える。*式(3.68)のパラメータに関する尤度の項$ p( D | w, M_i ) $が下図赤線で幅$ \Delta w_{posterior} $、高さ$p( D | w_{MAP} ) $の長方形[^1]、パラメータに関する事前分布$ p( w | M_i) $が下図青線で幅$ \Delta w_{prior} $、高さ$ 1 / \Delta w_{prior} $の長方形と近似すると、式(3.68)の積分は赤線と青線の近似長方形の面積の積で近似できる（自信ない）*

![キャプチャ32.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140135/a197b47c-201d-5266-793f-9f4820c14198.png)

$$
p( D | M_i) = \int p(D | w, M_i) p(w | M_i) \simeq p( D | w_{MAP} ) \frac{ \Delta w_{posterior} }{ \Delta w_{prior} } \tag{3.70}
$$

さらにこの式の対数をとれば

$$
\ln p(D | M_i) \simeq \ln p(D | w_{MAP} ) + \ln \left( \frac{ \Delta w_{posterior} }{ \Delta w_{prior} } \right) \tag{3.71}
$$

となる。重みパラメータ$w$が$M$次元の場合、それぞれのパラメータに対し同様の近似を行うことが出来る。すべてのパラメータが同じ比$ \Delta w_{posterior} / \Delta w_{prior}  $を持つという粗々の近似をすると、

$$
\ln p(D | M_i) \simeq \ln p(D | w_{MAP} ) + M \ln \left( \frac{ \Delta w_{posterior} }{ \Delta w_{prior} } \right) \tag{3.72}
$$

となる（らしい）。

- 第1項はデータへのフィッティング度合いを示す
- 第2項はモデルの複雑さに基づいたペナルティ。$ \Delta w_{posterior} < \Delta w_{prior}$なのでこの項は常に負であり、$ \Delta w_{prior} $に対して$ \Delta w_{posterior} $が小さく（幅が狭く）なると、負の値が大きくなり、ペナルティが強くなる


**モデルエビデンスは、いくつかのモデルの中からもっともよさげなモデルを選択する際の指標となる値であり、モデルの複雑さにペナルティをかけている、と解釈できる。**
過学習を避けるため、過度に複雑なモデルが選ばれないようにしつつ、データへのフィッティング度合いも考慮するという両方のバランスをとった指標である。

[^1]: テキストには「パラメータに関する事後分布を近似する」と書いてあるので、この説明は間違っている気がする...

## モデルエビデンスの解釈２

なぜモデルエビデンスによって、中間程度の複雑さのモデルが選ばれるかを別の解釈で説明する。
モデルエビデンスは$ p( D | M_i ) $なので、モデルを$M_i$と固定したときにデータ集合$D$が得られる確率と解釈できる。

モデルの複雑さが単調増加の関係にある3つのモデル$ M_1, M_2, M_3 $に関して、横軸にデータ集合空間、縦軸にデータ集合の生成確率をとったグラフは下図になる。最も複雑なモデル$M_3$はいろいろなデータ集合を表現（生成）できるので横軸方向に広く広がっている。一方その分、１つ１つのデータ集合の生成確率はほかのモデルに比べ小さくなっている。最も単純なモデル$M_1$は$M_3$の逆と解釈できる。

![キャプチャ33.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140135/7930f479-6873-542b-91b5-831ff7f470a9.png)

さて、あるデータ集合$D_0$に最もあてはまるモデルを選択したいケースを考える。単純すぎるモデルでは、$D_0$を生成できない（フィットしていない）ため、青線モデル$M_1$はモデルエビデンスの指標では選ばれない。

一方、複雑すぎる緑線モデル$M_3$ではフィッティングはしているものの、$ p(D_0) $が中程度の赤線モデル$ M_2 $より低ため、やはりモデルエビデンスの指標では選ばれない。

以上により、モデルエビデンスでは中間程度の複雑さのモデルが選ばれる。