PRML読書会#7 資料「5.7 ベイズニューラルネットワーク(2)」

これは パターン認識と機械学習(PRML)読書会 #7 (5章 ニューラルネットワーク 後半) での発表用の資料「5.7 ベイズニューラルネットワーク」です。
はてP でプレゼン資料になります。
細かい説明/計算やサンプルは読書会にて板書します。
【10/6】コメント欄での指摘により修正

5.7.2 超パラメータ最適化

  • model evidence p(D|α,β) を最大化するよう hyperparameter α,β を推定する


evidence (marginal likelihood):

 p(\mathcal{D}|\alpha,\beta) = \int p(\mathcal{D}|\bf{w},\beta)p(\bf{w}|\alpha)d\bf{w}

f(\bf{w})=p(\mathcal{D}|\bf{w},\beta)p(\bf{w}|\alpha) とおいて (4.135) を適用&対数をとると

 \ln p(\mathcal{D}|\alpha,\beta) \approx -E(\bf{w}_{\rm{MAP}}) - \frac{1}{2}\ln|\bf{A}| + \frac{W}{2}\ln\alpha + \frac{N}{2}\ln\beta - \frac{N}{2}\ln(2\pi)
  where W: number of weight parameters,
  E(\bf{w}_{\rm{MAP}})=\frac{\beta}{2}\sum_{n=1}^N\{y(\bf{x}_n,\bf{w}_{\rm{MAP}})-t_n\}^2+\frac{\alpha}{2}\bf{w}_{\rm{MAP}}^T \bf{w}_{\rm{MAP}}

  • ★ PRML3.5.1 と同じ手順で周辺化する場合、(3.80)を2次までのテーラー展開による近似にすればOK?

α,β の点推定

(1) evidence \ln p(\mathcal{D}|\alpha,\beta) を最大化するα

eigenvalue equation:

 \beta\bf{H}\bf{u}_i = \lambda_i \bf{u}_i

より、PRML 3.5.2 (3.92) と同様に \bf{A}=\alpha\bf{I}+\beta\bf{H} について ln|A| を評価、αに関する停留点を求めると

 \alpha=\frac{\gamma}{\bf{w}_{\rm{MAP}}^T \bf{w}_{\rm{MAP}}}

  • γ: effective number of parameters \gamma=\sum_{i=1}^W \frac{\lambda_i}{\alpha+\lambda_i} (PRML3.5.3)


(2) evidence を最大化するβ

\frac{d}{d\beta}\ln|\bf{A}| を評価し、βに関する停留点を求めると

 \frac{1}{\beta} = \frac{1}{N-\gamma}\sum_{n=1}^N \{y(\bf{x}_n,\bf{w}_{\rm{MAP}})-t_n\}^2

(3) posterior を更新して w_MAP を求め、(1) に戻る

  • ★収束速度は?
  • ★hyperparametersを更新している内に w_MAP が(他の峰に)入れ替わったりしても問題ないの?
  • ★実装してみたかったけど余裕なかった。ごめん。


異なるモデル(異なる隠れユニット数を持つネットワークなど)を比較する場合、p(D) を評価する

  • p(D|α,β) に最適値を代入して近似値を求める
  • or α,βを周辺化し、再びガウス近似(★=ラプラス近似)

重み空間対称性(weight-space symmetry, PRML5.1.1)を考慮して evidence を M!2^M 倍する必要がある

 p(t|\bf{x},\mathcal{D})=\sum_{i=1}^L p(t|\bf{x},\mathcal{M}_i,\mathcal{D})p(\mathcal{M}_i|\mathcal{D})

  • 式(3.67)に \mathcal{M}_i:対称な各モデル, L=M!2^M を適応
  • 全ての \mathcal{M}_i について p(t|x,M_i,D), p(M_i|D) のそれぞれが等しい