機械学習基礎理論独習

誤りがあればご指摘いただけると幸いです。数式が整うまで少し時間かかります。リンクフリーです。

勉強ログです。リンクフリーです
目次へ戻る

PRML演習問題 7.13(標準)

問題

本文では、RVM回帰モデルに関して、(7.85) の周辺化尤度の最大化から、更新式 (7.87) および (7.88) を導いた。
超パラメータの事前分布を ({\rm B}.26) の形のガンマ分布に変更したときの {\boldsymbol\alpha}\beta に対する更新式を、
同様に事後確率 p({\bf t},{\boldsymbol\alpha},\beta|{\bf X}){\boldsymbol\alpha}\beta に対して最大化することで導出せよ。

参照

\begin{eqnarray}
\ln p({\bf t}|{\bf X},{\boldsymbol\alpha},\beta)&=&\ln {\mathcal N}({\bf t}|{\bf 0},{\bf C})\\
&=&-\frac{1}{2}\left(N\ln(2\pi)+\ln|{\bf C}|+{\bf t}^\top{\bf C}^{-1}{\bf t}\right)\tag{7.85}
\end{eqnarray}

\begin{eqnarray}
{\bf C}=\beta^{-1}{\bf I}+{\boldsymbol\Phi}{\bf A}^{-1}{\boldsymbol\Phi}^\top\tag{7.86}
\end{eqnarray}

\begin{eqnarray}
\alpha_i^{\rm new}=\frac{\gamma_i}{m_i^2}\tag{7.87}
\end{eqnarray}

\begin{eqnarray}
(\beta^{\rm new})^{-1}=\frac{||{\bf t}-{\boldsymbol\Phi}{\bf m}||^2}{N-\sum_i\gamma_i}\tag{7.88}
\end{eqnarray}

\begin{eqnarray}
\gamma_i=1-\alpha_i\Sigma_{ii}\tag{7.89}
\end{eqnarray}

解答

\alpha_i\ (i=1,\ldots,M),\beta の事前分布を以下のように定義します。

\begin{eqnarray}
p(\alpha_i)={\rm Gam}(\alpha_i|a_{\alpha0},b_{\alpha0})\tag{1}
\end{eqnarray}

\begin{eqnarray}
p(\beta)={\rm Gam}(\beta|a_{\beta0},b_{\beta0})\tag{2}
\end{eqnarray}

\alpha_iw_i の精度なので、それぞれ独立とみなすと、式 (1) より、以下が成り立ちます。

\begin{eqnarray}
p({\boldsymbol\alpha})&=&\prod_{i=1}^Mp(\alpha_i)\\
&=&\prod_{i=1}^M{\rm Gam}(\alpha_i|a_{\alpha0},b_{\alpha0})\tag{3}
\end{eqnarray}

事後分布 p({\bf t},{\boldsymbol\alpha},\beta|{\bf X}) は確率の乗法定理より、以下のようになります。

\begin{eqnarray}
p({\bf t},{\boldsymbol\alpha},\beta|{\bf X})=p({\bf t}|{\bf X},{\boldsymbol\alpha},\beta)p({\boldsymbol\alpha})p(\beta)\tag{4}
\end{eqnarray}

(4) に対数を取ります。

\begin{eqnarray}
\ln p({\bf t},{\boldsymbol\alpha},\beta|{\bf X})&=&\ln p({\bf t}|{\bf X},{\boldsymbol\alpha},\beta)+\ln p({\boldsymbol\alpha})+\ln p(\beta)\\
&=&\ln p({\bf t}|{\bf X},{\boldsymbol\alpha},\beta)+\sum_{i=1}^M\ln{\rm Gam}(\alpha_i|a_{\alpha0},b_{\alpha0})+\ln {\rm Gam}(\beta|a_{\beta0},b_{\beta0})\\
&=&\ln p({\bf t}|{\bf X},{\boldsymbol\alpha},\beta)+\sum_{i=1}^M\left((a_{\alpha0}-1)\ln\alpha_i-b_{\alpha0}\alpha_i\right)+(a_{\beta0}-1)\ln\beta-b_{\beta0}\beta+{\rm const}\tag{5}
\end{eqnarray}

(5){\boldsymbol\alpha},\beta に無関係な項は {\rm const} にまとめました。
(5)\alpha_i微分して、=0 とおきます。

\begin{eqnarray}
&&\frac{\partial}{\partial\alpha_i}\ln p({\bf t},{\boldsymbol\alpha},\beta|{\bf X})=0\\
&&\Leftrightarrow\underbrace{\frac{1}{2\alpha_i}-\frac{1}{2}\Sigma_{ii}-\frac{1}{2}m_i^2}_{=\frac{\partial}{\partial\alpha_i}\ln p({\bf t}|{\bf X},{\boldsymbol\alpha},\beta)}+\frac{a_{\alpha0}-1}{\alpha_i}-b_{\alpha0}=0\\
&&\Leftrightarrow\alpha=\frac{1-\alpha\Sigma_{ii}-2a_{\alpha0}-2}{m_i^2-2b_{\alpha0}}\\
&&\Leftrightarrow\alpha=\frac{\gamma_i-2a_{\alpha0}-2}{m_i^2-2b_{\alpha0}}\tag{6}
\end{eqnarray}

\dfrac{\partial}{\partial\alpha_i}\ln p({\bf t}|{\bf X},{\boldsymbol\alpha},\beta) の計算結果は、PRML演習問題 7.12(標準) www の式 (11) を用いました。

(6)\alpha_i の更新式です。

(5)\beta微分して、=0 とおきます。

\begin{eqnarray}
&&\frac{\partial}{\partial\beta}\ln p({\bf t},{\boldsymbol\alpha},\beta|{\bf X})=0\\
&&\Leftrightarrow\underbrace{-\frac{1}{2}\left(\frac{1}{\beta}\left(-N+\sum_{i=1}^M(1-\alpha_i\Sigma_{ii})\right)+||{\bf t}-{\boldsymbol\Phi}{\bf m}||^2\right)}_{=\frac{\partial}{\partial\beta}\ln p({\bf t}|{\bf X},{\boldsymbol\alpha},\beta)}+\frac{a_{\beta0}-1}{\beta}-b_{\beta0}=0\\
&&\Leftrightarrow\beta^{-1}=\frac{||{\bf t}-{\boldsymbol\Phi}{\bf m}||^2+2b_{\beta0}}{a_{\beta0}-2+N-\displaystyle\sum_{i=1}^M(1-\alpha_i\Sigma_{ii})}\\
&&\Leftrightarrow\beta^{-1}=\frac{||{\bf t}-{\boldsymbol\Phi}{\bf m}||^2+2b_{\beta0}}{a_{\beta0}-2+N-\displaystyle\sum_{i=1}^M\gamma_i}\tag{7}
\end{eqnarray}

\dfrac{\partial}{\partial\beta}\ln p({\bf t}|{\bf X},{\boldsymbol\alpha},\beta) の計算結果は、PRML演習問題 7.12(標準) www の式 (20) を用いました。

(7)\beta の更新式です。

目次へ戻る