LoginSignup
0
0

More than 3 years have passed since last update.

はじめに

本記事は, 機械学習の教科書の決定版ともいえる, Christopher Bishop先生による『Pattern Recognition and Machine Learning (パターン認識と機械学習)』 , 通称PRMLの演習問題のうち, 私が解いた問題の解答を記したものです. これは, 私の所属する生物測定学研究室 の輪読会でPRMLを取り扱っており, その勉強の一環として演習問題を解いたときのものです. なお, 他の演習問題の解答例に関する記事については, PRML 演習問題 解答集 まとめ をご覧ください.

問題

ガウス出力密度をもつ隠れマルコフモデルを考える. ガウス分布の平均と共分散のパラメータについての関数 $Q(\boldsymbol{\theta}, \boldsymbol{\theta} ^ \mathrm{old})$ の最大化が, Mステップの方程式

\begin{align*}
    \boldsymbol{\mu}_k = \frac{\sum ^ {N}_{n = 1} \gamma(z_{nk}) \textbf{x}_{n}}{\sum ^ {N}_{n = 1} \gamma(z_{nk})}
\tag {13.20}
\end{align*}

\begin{align*}
\boldsymbol{\Sigma}_k = \frac{\sum ^ {N}_{n = 1} \gamma(z_{nk}) (\textbf{x}_{n} - \boldsymbol{\mu}_k)(\textbf{x}_{n} - \boldsymbol{\mu}_k) ^ \mathrm{T}}{\sum ^ {N}_{n = 1} \gamma(z_{nk})}
\tag{13.21}
\end{align*}

を導くことを示せ.

解答

まず, $Q(\boldsymbol{\theta}, \boldsymbol{\theta} ^ \mathrm{old})$ が

\begin{align*}
    Q(\boldsymbol{\theta}, \boldsymbol{\theta} ^ \mathrm{old}) = \sum ^ {K}_{k = 1} \gamma(z_{1k}) \ln{\pi} + \sum ^ {N}_{n = 2} \sum ^ {K}_{j = 1} \sum ^ {K}_{k = 1} \xi (z_{n - 1, j}, z_{n k}) \ln{A_{jk}} +  \sum ^ {N}_{n = 1} \sum ^ {K}_{k = 1}  \gamma(z_{nk})  \ln {p (\textbf{x}_{n} | \boldsymbol{\phi}_{k})}
\tag{13.17}
\end{align*}

の形で表されたことを思い出そう.
ここで$Q(\boldsymbol{\theta}, \boldsymbol{\theta} ^ \mathrm{old})$ の第3項のみが $\boldsymbol{\phi}$ に依存することを考慮すれば, ガウス分布の平均と共分散のパラメータについての最大化は,

\begin{align*}
\sum ^ {N}_{n = 1} \sum ^ {K}_{k = 1}  \gamma(z_{nk})  \ln {p (\textbf{x}_{n} | \boldsymbol{\phi}_{k})} = \sum ^ {N}_{n = 1} \sum ^ {K}_{k = 1}  \gamma(z_{nk}) \left \{ - \frac{D}{2} \ln {2 \pi} - \frac{1}{2} \ln{|\boldsymbol{\Sigma}_k|} - \frac{1}{2} (\textbf{x}_n - \boldsymbol{\mu}_k) ^ \mathrm{T} \boldsymbol{\Sigma}_k  ^ \mathrm{-1} (\textbf{x}_n - \boldsymbol{\mu}_k) \right \}
\tag{13.7.1}
\end{align*}

の最大化に等しい.

したがって, ガウス分布の平均$\boldsymbol{\mu}_k$ に関する最大化は,

\begin{align*}
    \frac{\partial}{\partial \boldsymbol{\mu}_k} Q(\boldsymbol{\theta}, \boldsymbol{\theta} ^ \mathrm{old}) 
    &= \frac{\partial}{\partial \boldsymbol{\mu}_k} \sum ^ {N}_{n = 1} \sum ^ {K}_{k = 1}  \gamma(z_{nk}) \left \{ - \frac{1}{2} (\textbf{x}_n - \boldsymbol{\mu}_k) ^ \mathrm{T} \boldsymbol{\Sigma}_k  ^ \mathrm{-1} (\textbf{x}_n - \boldsymbol{\mu}_k) \right \} \\
    &= \sum ^ {N}_{n = 1} \gamma(z_{nk}) \boldsymbol{\Sigma}_k  ^ \mathrm{-1} (\textbf{x}_n - \boldsymbol{\mu}_k)
    = 0
\tag{13.7.2}
\end{align*}

より,

\begin{align*}
    \boldsymbol{\mu}_k = \frac{\sum ^ {N}_{n = 1} \gamma(z_{nk}) \textbf{x}_{n}}{\sum ^ {N}_{n = 1} \gamma(z_{nk})}
\tag{13.20}
\end{align*}

が得られる.
次に分散パラメータ $\boldsymbol{\Sigma}_k$ に関する最大化は,

\begin{align*}
    \frac{\partial}{\partial \boldsymbol{\Sigma}_k} Q(\boldsymbol{\theta}, \boldsymbol{\theta} ^ \mathrm{old}) 
&= \frac{\partial}{\partial \boldsymbol{\Sigma}_k} \sum ^ {N}_{n = 1} \sum ^ {K}_{k = 1}  \gamma(z_{nk}) \left \{ - \frac{1}{2} \ln{|\boldsymbol{\Sigma}_k|} - \frac{1}{2} (\textbf{x}_n - \boldsymbol{\mu}_k) ^ \mathrm{T} \boldsymbol{\Sigma}_k  ^ \mathrm{-1} (\textbf{x}_n - \boldsymbol{\mu}_k) \right \} \\
&= \sum ^ {N}_{n = 1} \gamma(z_{nk}) \left \{ - \frac{1}{2} \left( \boldsymbol{\Sigma}_k  ^ \mathrm{-1}  \right) ^ \mathrm{T}  - \frac{1}{2} \frac{\partial}{\partial \boldsymbol{\Sigma}_k} \text{Tr} \left(  \boldsymbol{\Sigma}_k  ^ \mathrm{-1} (\textbf{x}_n - \boldsymbol{\mu}_k) (\textbf{x}_n - \boldsymbol{\mu}_k) ^ \mathrm{T} \right)
\right\} \\
&=  - \frac{1}{2} \sum ^ {N}_{n = 1} \gamma(z_{nk}) \left \{ \boldsymbol{\Sigma}_k  ^ \mathrm{-1}    -   \boldsymbol{\Sigma}_k  ^ \mathrm{-1} (\textbf{x}_n - \boldsymbol{\mu}_k) (\textbf{x}_n - \boldsymbol{\mu}_k) ^ \mathrm{T}  \boldsymbol{\Sigma}_k  ^ \mathrm{-1}
\right\}
= 0
\tag{13.7.3}
\end{align*}

より,

\begin{align*}
    \boldsymbol{\Sigma}_k = \frac{\sum ^ {N}_{n = 1} \gamma(z_{nk}) (\textbf{x}_{n} - \boldsymbol{\mu}_k)(\textbf{x}_{n} - \boldsymbol{\mu}_k) ^ \mathrm{T}}{\sum ^ {N}_{n = 1} \gamma(z_{nk})}
\tag{13.21}
\end{align*}

となることが導出される.
以上で証明は終了である. (証明終)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0