機械学習基礎理論独習

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

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

隠れマルコフモデルの最尤推定

はじめに

本記事は、隠れマルコフモデルの記事の続きです。

登場する変数、定数などのまとめ

隠れマルコフモデルに登場する変数、定数をまとめておきます。
D : 観測変数の次元
N : 観測変数の数
K : 潜在変数の次元
{\bf x}_n\in{\mathbb R}^D\ (n=1,...,N) : 観測変数
{\bf X}=\{{\bf x}_1,\ldots,{\bf x}_N\} : 観測変数の集合
{\bf z}_n=\{z_{n1},\ldots,z_{nK}\}\ (n=1,...,N) : 潜在変数 (z_{nk}\in\{0,1\},\sum_{{\bf z}_n}z_{nk}=1)
{\bf Z}=\{{\bf z}_1,\ldots,{\bf z}_N\} : 潜在変数の集合
\pi_k\ (k=1,...K) : 混合係数 (p(z_{1k}=1)=\pi_k,\ \sum_k\pi_k=1)
{\boldsymbol\pi}=\{\pi_1,\ldots,\pi_K\} : 混合係数の集合
A_{jk}=p(z_{nk}|z_{n-1,j})\ (n=2,\ldots,N,\ j=1,\ldots,K,\ k=1,\ldots,K) : 遷移確率 (0\leqslant A_{jk}\leqslant 1,\ \sum_kA_{jk}=1)
{\bf A}=\{A_{jk}\}\ (j=1,\ldots,K,\ k=1,\ldots,K) : 遷移確率の集合
{\boldsymbol\phi}_k\ (k=1,\ldots,K) : 出力分布のパラメータ
{\boldsymbol\phi}=\{{\boldsymbol\phi}_1,\ldots,{\boldsymbol\phi}_K\} : 出力分布のパラメータの集合
{\boldsymbol\theta}=\{{\boldsymbol\pi},{\bf A},{\boldsymbol\phi}\} : 全パラメータの集合
{\boldsymbol\pi}{\bf z}_1のみ関与し、{\bf A}{\bf z}_n(n\geqslant 2)のみに関与することに注意してください。

潜在変数{\bf Z}と観測変数{\bf X}の条件付き同時分布は次のようになります。

\begin{eqnarray}
p({\bf X},{\bf Z}|{\boldsymbol\theta})&=&p({\bf z}_1|{\boldsymbol\pi})\left(\prod_{n=2}^Np({\bf z}_n|{\bf z}_{n-1},{\bf A})\right)\prod_{n=1}^Np({\bf x}_n|{\bf z}_n,{\boldsymbol\phi})\\
&=&\prod_{k=1}^K\pi_k^{z_{1k}}\left(\prod_{n=2}^N\prod_{k=1}^K\prod_{j=1}^KA_{jk}^{z_{n-1,j}z_{nk}}\right)\prod_{n=1}^N\prod_{k=1}^Kp({\bf x}_n|{\boldsymbol\phi}_k)^{z_{nk}}\tag{1}
\end{eqnarray}

グラフィカルモデルは以下のようになります。
図1
f:id:olj611:20210922232943p:plain:w500

隠れマルコフモデル最尤推定

同時分布の式を潜在変数{\bf Z}について周辺化することによって、尤度関数が得られます。

\begin{eqnarray}
p({\bf X}|{\boldsymbol\theta})=\sum_{\bf Z}p({\bf X},{\bf Z}|{\boldsymbol\theta})\tag{2}
\end{eqnarray}
同時分布p({\bf X},{\bf Z}|{\boldsymbol\theta})は、混合分布とは対照的にnについて分解できません。
また、\sum_{\bf Z}についての和は、項の数が全部でK^Nになるため現実的ではありません。
(\sum_{\bf Z}\sum_{{\bf z}_1}\sum_{{\bf z}_2}\cdots\sum_{{\bf z}_N}であり、\sum_{{\bf z}_n}の項の数がKであるため、項の数が全部でK^Nになります。)

そこで、EMアルゴリズムで解くことにします。

Eステップ

Q({\boldsymbol\theta},{\boldsymbol\theta}^{old})は以下のように定義されるのでした。

\begin{eqnarray}
Q({\boldsymbol\theta},{\boldsymbol\theta}^{old})=\sum_{\bf Z}p({\bf Z}|{\bf X},{\boldsymbol\theta})\ln p({\bf X},{\bf Z}|{\boldsymbol\theta})\tag{3}
\end{eqnarray}

(3)を期待値の表記に直して、式(1)を代入して計算していきます。

\begin{eqnarray}
Q({\boldsymbol\theta},{\boldsymbol\theta}^{old})&=&\langle\ln p({\bf X},{\bf Z}|{\boldsymbol\theta})\rangle_{p({\bf Z}|{\bf X},{\boldsymbol\theta})}\\
&=&\left\langle\ln\left(\prod_{k=1}^K\pi_k^{z_{1k}}\left(\prod_{n=2}^N\prod_{k=1}^K\prod_{j=1}^KA_{jk}^{z_{n-1,j}z_{nk}}\right)\prod_{n=1}^N\prod_{k=1}^Kp({\bf x}_n|{\boldsymbol\phi}_k)^{z_{nk}}\right)\right\rangle_{p({\bf Z}|{\bf X},{\boldsymbol\theta})}\\
&=&\left\langle\sum_{k=1}^Kz_{1k}\ln\pi_k+\sum_{n=2}^N\sum_{k=1}^K\sum_{j=1}^Kz_{n-1,j}z_{nk}\ln A_{jk}+\sum_{n=1}^N\sum_{k=1}^Kz_{nk}\ln p({\bf x}_n|{\boldsymbol\phi}_k)\right\rangle_{p({\bf Z}|{\bf X},{\boldsymbol\theta})}\\
&=&\sum_{k=1}^K\langle z_{1k}\rangle_{p({\bf Z}|{\bf X},{\boldsymbol\theta})}\ln\pi_k+\sum_{n=2}^N\sum_{k=1}^K\sum_{j=1}^K\langle z_{n-1,j}z_{nk}\rangle_{p({\bf Z}|{\bf X},{\boldsymbol\theta})}\ln A_{jk}+\sum_{n=1}^N\sum_{k=1}^K\langle z_{nk}\rangle_{p({\bf Z}|{\bf X},{\boldsymbol\theta})}\ln p({\bf x}_n|{\boldsymbol\phi}_k)\\
&=&\sum_{k=1}^K\langle z_{1k}\rangle_{p({\bf z}_1|{\bf X},{\boldsymbol\theta})}\ln\pi_k+\sum_{n=2}^N\sum_{k=1}^K\sum_{j=1}^K\langle z_{n-1,j}z_{nk}\rangle_{p({\bf z}_{n-1},{\bf z}_n|{\bf X},{\boldsymbol\theta})}\ln A_{jk}+\sum_{n=1}^N\sum_{k=1}^K\langle z_{nk}\rangle_{p({\bf z}_n|{\bf X},{\boldsymbol\theta})}\ln p({\bf x}_n|{\boldsymbol\phi}_k)\tag{4}
\end{eqnarray}

(4)の最後の式変形ですが、

\begin{eqnarray}
&&\langle z_{1k}\rangle_{p({\bf Z}|{\bf X},{\boldsymbol\theta})}=\langle z_{1k}\rangle_{p({\bf z}_1|{\bf X},{\boldsymbol\theta})}\tag{5}\\
&&\langle z_{n-1,j}z_{nk}\rangle_{p({\bf Z}|{\bf X},{\boldsymbol\theta})}=\langle z_{n-1,j}z_{nk}\rangle_{p({\bf z}_{n-1},{\bf z}_n|{\bf X},{\boldsymbol\theta})}\tag{6}\\
&&\langle z_{nk}\rangle_{p({\bf Z}|{\bf X},{\boldsymbol\theta})}=\langle z_{1k}\rangle_{p({\bf z}_n|{\bf X},{\boldsymbol\theta})}\tag{7}\\
\end{eqnarray}
のようにしています。
(7)ですが、z_{nk}の期待値に必要な確率分布はp({\bf z}_n|{\bf X},{\boldsymbol\theta})なので、そのようにしています。式(5),(6)も同様です。
ここで注意すべきは、この時点で、p({\bf z}_n|{\bf X},{\boldsymbol\theta}),p({\bf z}_{n-1},{\bf z}_n|{\bf X},{\boldsymbol\theta})の式の形はわかっていないことです。
本記事では、この期待値は計算しません。(現時点では事後分布が不明なので、できません。) よって、本記事ではEステップについては導出しません。

(4)を見やすくするために、\gamma({\bf z}_n),\xi({\bf z}_{n-1},{\bf z}_n),\gamma(z_{nk}),\xi(z_{n-1,j},z_{nk})を以下のように定義します。

\begin{eqnarray}
&&\gamma({\bf z}_n)=p({\bf z}_n|{\bf X},{\boldsymbol\theta}^{old})\tag{8}\\
&&\xi({\bf z}_{n-1},{\bf z}_n)=p({\bf z}_{n-1},{\bf z}_n|{\bf X},{\boldsymbol\theta}^{old})\tag{9}\\
&&\gamma(z_{nk})=\langle z_{nk}\rangle_{\gamma({\bf z}_n)}=\sum_{{\bf z}_n}\gamma({\bf z}_n)z_{nk}\tag{10}\\
&&\xi(z_{n-1,j},z_{nk})=\langle z_{n-1,j}z_{nk}\rangle_{\xi({\bf z}_{n-1},{\bf z}_n)}=\sum_{{\bf z}_{n-1},{\bf z}_n}\xi({\bf z}_{n-1},{\bf z}_n)z_{n-1,j}z_{nk}\tag{11}
\end{eqnarray}
(10),(11)を式(4)に代入すると、以下のようになります。
\begin{eqnarray}
Q({\boldsymbol\theta},{\boldsymbol\theta}^{old})=\sum_{k=1}^K\gamma(z_{1k})\ln\pi_k+\sum_{n=2}^N\sum_{k=1}^K\sum_{j=1}^K\xi(z_{n-1,j},z_{nk})\ln A_{jk}+\sum_{n=1}^N\sum_{k=1}^K\gamma(z_{nk})\ln p({\bf x}_n|{\boldsymbol\phi}_k)\tag{12}
\end{eqnarray}

中途半端ですが、一旦Eステップに関する導出はこれで終わりにします。

Mステップ

Mステップでは、\gamma(z_{nk})\xi(z_{n-1,j},z_{nk})を定数とみなし、パラメータ{\boldsymbol\theta}=\{{\boldsymbol\pi},{\bf A},{\boldsymbol\phi}\}に関して、Q({\boldsymbol\theta},{\boldsymbol\theta}^{old})を最大化します。

{\boldsymbol\pi}に関する最大化

まずは、{\boldsymbol\pi}に関してQ({\boldsymbol\theta},{\boldsymbol\theta}^{old})を最大化します。
\sum_{k=1}^K\pi_k=1の制約条件の下で、ラグランジュ関数\widetilde{Q}は以下のようになります。
(Q({\boldsymbol\theta},{\boldsymbol\theta}^{old})の項で、\pi_kに無関係なものは無視しています。\sum_{k=1}^KA_{jk}=1の制約条件も無視しています。)

\begin{eqnarray}
\widetilde{Q}=\sum_{k=1}^K\gamma(z_{1k})\ln\pi_k+\lambda\left(\sum_{k=1}^K\pi_k-1\right)\tag{13}
\end{eqnarray}
\widetilde{Q}\pi_k微分して、=0とおきます。
\begin{eqnarray}
&&\frac{\partial \widetilde{Q}}{\partial\pi_k}=0\\
&&\Leftrightarrow\frac{\partial}{\partial\pi_k}\sum_{k'=1}^K\gamma(z_{1k'})\ln\pi_{k'}+\frac{\partial}{\partial\pi_k}\lambda\left(\sum_{k'=1}^K\pi_{k'}-1\right)=0\\
&&\Leftrightarrow\gamma(z_{1k})\frac{1}{\pi_k}+\lambda=0\\
&&\Leftrightarrow \pi_k=-\frac{\gamma(z_{1k})}{\lambda}\tag{14}
\end{eqnarray}
\sum_{k=1}^K\pi_k=1に式(14)を代入します。
\begin{eqnarray}
&&\sum_{k=1}^K-\frac{\gamma(z_{1k})}{\lambda}=1\\
&&\Leftrightarrow \lambda=-\sum_{k=1}^K\gamma(z_{1k})\tag{15}
\end{eqnarray}
(15)を式(14)に代入すると、以下の式を得ます。
\begin{eqnarray}
\pi_k=\frac{\gamma(z_{1k})}{\sum_{k=1}^K\gamma(z_{1k})}\tag{16}
\end{eqnarray}

{\bf A}に関する最大化

次に、{\bf A}に関してQ({\boldsymbol\theta},{\boldsymbol\theta}^{old})を最大化します。
\sum_{k=1}^KA_{jk}=1の制約条件の下で、ラグランジュ関数\widehat{Q}は以下のようになります。
(Q({\boldsymbol\theta},{\boldsymbol\theta}^{old})の項で、A_{jk}に無関係なものは無視しています。\sum_{k=1}^K\pi_k=1の制約条件も無視しています。)

\begin{eqnarray}
\widehat{Q}=\sum_{n=2}^N\sum_{k=1}^K\sum_{j=1}^K\xi(z_{n-1,j},z_{nk})\ln A_{jk}+\sum_{j=1}^K\lambda_j\left(\sum_{k=1}^KA_{jk}-1\right)\tag{17}
\end{eqnarray}
\widehat{Q}A_{jk}微分して、=0とおきます。
\begin{eqnarray}
&&\frac{\partial\widehat{Q}}{\partial A_{jk}}=0\\
&&\Leftrightarrow\frac{\partial}{\partial A_{jk}}\sum_{n=2}^N\sum_{k'=1}^K\sum_{j'=1}^K\xi(z_{n-1,j'},z_{nk'})\ln A_{jk}+\frac{\partial}{\partial A_{jk}}\sum_{j'=1}^K\lambda_{j'}\left(\sum_{k'=1}^KA_{j'k'}-1\right)=0\\
&&\Leftrightarrow\sum_{n=2}^N\xi(z_{n-1,j},z_{nk})\frac{1}{A_{jk}}+\lambda_j=0\\
&&\Leftrightarrow A_{jk}=-\frac{\sum_{n=2}^N\xi(z_{n-1,j},z_{nk})}{\lambda_j}\tag{18}
\end{eqnarray}
\sum_{k=1}^KA_{jk}=1に式(18)を代入します。
\begin{eqnarray}
&&\sum_{k=1}^K\left(-\frac{\sum_{n=2}^N\xi(z_{n-1,j},z_{nk})}{\lambda_j}\right)=1\\
&&\Leftrightarrow \lambda_j=-\sum_{k=1}^K\sum_{n=2}^N\xi(z_{n-1,j},z_{nk})\tag{19}
\end{eqnarray}
(19)を式(18)に代入すると、以下の式を得ます。
\begin{eqnarray}
A_{jk}=\frac{\sum_{n=2}^N\xi(z_{n-1,j},z_{nk})}{\sum_{k=1}^K\sum_{n=2}^N\xi(z_{n-1,j},z_{nk})}\tag{20}
\end{eqnarray}

{\boldsymbol\phi}に関する最大化

最後に、{\boldsymbol\phi}に関してQ({\boldsymbol\theta},{\boldsymbol\theta}^{old})を最大化します。
Q({\boldsymbol\theta},{\boldsymbol\theta}^{old}){\boldsymbol\phi}に関する項は\sum_{n=1}^N\sum_{k=1}^K\gamma(z_{nk})\ln p({\bf x}_n|{\boldsymbol\phi}_k)のみなので、
これを最大化すればいよいことが分かります。

出力分布がガウス分布

出力分布がガウス分布の場合を考えます。
このとき、{\boldsymbol\phi}=\{{\boldsymbol\mu},{\bf\Sigma}\},{\boldsymbol\mu}=\{{\boldsymbol\mu}_1,\ldots,{\boldsymbol\mu}_K\},{\bf\Sigma}=\{{\bf\Sigma}_1,\ldots,{\bf\Sigma}_K\},{\boldsymbol\mu}_k\in{\mathbb R}^D,{\bf\Sigma}_k\in{\mathbb R}^{D\times D},{\boldsymbol\phi}_k=\{{\boldsymbol\mu}_k,{\bf\Sigma}_k\}であり、
出力分布は

\begin{eqnarray}
p({\bf x}_n|{\boldsymbol\phi}_k)&=&{\mathcal N}({\bf x}_n|{\boldsymbol\mu}_k,{\bf\Sigma}_k)\\
&=&\frac{1}{\sqrt{(2\pi)^D|{\bf\Sigma}_k|}}\exp\left(-\frac{1}{2}({\bf x}_n-{\boldsymbol\mu}_k)^\top{\bf\Sigma}_k^{-1}({\bf x}_n-{\boldsymbol\mu}_k)\right)\tag{21}
\end{eqnarray}
です。

出力分布がガウス分布の時の{\boldsymbol\mu}に関する最大化

まず、{\boldsymbol\mu}に関して\sum_{n=1}^N\sum_{k=1}^K\gamma(z_{nk})\ln p({\bf x}_n|{\boldsymbol\phi}_k)を最大化します。
これは、混合ガウス分布の最尤推定に一般のEMアルゴリズムを適用の記事の式(16)で既に導いていますので、結果のみを記載します。

\begin{eqnarray}
{\boldsymbol\mu}_k=\frac{\sum_{n=1}^N\gamma(z_{nk}){\bf x}_n}{\sum_{n=1}^N\gamma(z_{nk})}\tag{22}
\end{eqnarray}

出力分布がガウス分布の時の{\bf\Sigma}に関する最大化

次に、{\bf\Sigma}に関して\sum_{n=1}^N\sum_{k=1}^K\gamma(z_{nk})\ln p({\bf x}_n|{\boldsymbol\phi}_k)を最大化します。
これは、混合ガウス分布の最尤推定に一般のEMアルゴリズムを適用の記事の式(22)で既に導いていますので、結果のみを記載します。

\begin{eqnarray}
{\bf\Sigma}_k=\frac{\sum_{n=1}^N\gamma(z_{nk})({\bf x}_n-{\boldsymbol\mu}_k)({\bf x}_n-{\boldsymbol\mu}_k)^\top}{\sum_{n=1}^N\gamma(z_{nk})}\tag{23}
\end{eqnarray}

出力分布が離散多項分布

出力分布が離散多項分布の場合を考えます。
このとき、x_{ni}\in\{0,1\},\sum_{i=1}^Dx_{ni}=1,{\boldsymbol\phi}={\boldsymbol\mu},{\boldsymbol\mu}=\{{\boldsymbol\mu}_1,\ldots,{\boldsymbol\mu}_K\},{\boldsymbol\mu}_k=\{\mu_{k1},\ldots,\mu_{kD}\},\mu_{ki}\geqslant 0,\sum_{i=1}^D\mu_{ki}=1,{\boldsymbol\phi}_k={\boldsymbol\mu}_kであり、
出力分布は

\begin{eqnarray}
p({\bf x}_n|{\boldsymbol\phi}_k)&=&p({\bf x}_n|{\boldsymbol\mu}_k)\\
&=&\prod_{i=1}^D\mu_{ki}^{x_{ni}}\tag{24}
\end{eqnarray}
です。
(24)に対数を取ると、以下のようになります。
\begin{eqnarray}
\ln p({\bf x}_n|{\boldsymbol\phi}_k)=\sum_{i=1}^Dx_{ni}\ln\mu_{ki}\tag{25}
\end{eqnarray}

出力分布が離散多項分布の時の{\boldsymbol\mu}に関する最大化

{\boldsymbol\mu}に関して\sum_{n=1}^N\sum_{k=1}^K\gamma(z_{nk})\ln p({\bf x}_n|{\boldsymbol\phi}_k)を最大化します。
\sum_{i=1}^D\mu_{ki}=1\ (k=1,\ldots,K)の制約条件の下(制約条件はK個)で、ラグランジュ関数Lは以下のようになります。

\begin{eqnarray}
L=\sum_{n=1}^N\sum_{k=1}^K\gamma(z_{nk})\sum_{i=1}^Dx_{ni}\ln\mu_{ki}+\sum_{k=1}^K\lambda_k\left(\sum_{i=1}^D\mu_{ki}-1\right)\tag{26}
\end{eqnarray}
L\mu_{ki}微分して、=0とおきます。
\begin{eqnarray}
&&\frac{\partial L}{\partial\mu_{ki}}=0\\
&&\Leftrightarrow\frac{\partial}{\partial\mu_{ki}}\sum_{n=1}^N\sum_{k'=1}^K\gamma(z_{nk'})\sum_{i'=1}^Dx_{ni'}\ln\mu_{k'i'}+\frac{\partial}{\partial\mu_{ki}}\sum_{k'=1}^K\lambda_k'\left(\sum_{i'=1}^D\mu_{k'i'}-1\right)=0\\
&&\Leftrightarrow\sum_{n=1}^N\gamma(z_{nk})\frac{x_{ni}}{\mu_{ki}}+\lambda_k=0\\
&&\Leftrightarrow\mu_{ki}=-\frac{\sum_{n=1}^N\gamma(z_{nk})x_{ni}}{\lambda_k}\tag{27}
\end{eqnarray}
\sum_{i=1}^D\mu_{ki}=1に式(27)を代入します。
\begin{eqnarray}
&&\sum_{i=1}^D\mu_{ki}=1\\
&&\Leftrightarrow \sum_{i=1}^D-\frac{\sum_{n=1}^N\gamma(z_{nk})x_{ni}}{\lambda_k}=1\\
&&\Leftrightarrow \lambda_k=-\sum_{i=1}^D\sum_{n=1}^N\gamma(z_{nk})x_{ni}\\
&&\Leftrightarrow \lambda_k=-\sum_{n=1}^N\gamma(z_{nk})\tag{28}
\end{eqnarray}
(28)を式(27)に代入すると、以下の式を得ます。
\begin{eqnarray}
\mu_{ki}=\frac{\sum_{n=1}^N\gamma(z_{nk})x_{ni}}{\sum_{n=1}^N\gamma(z_{nk})}\tag{29}
\end{eqnarray}

出力分布がベルヌーイ分布

出力分布がベルヌーイ分布の場合を考えます。
このとき、x_{ni}\in\{0,1\}{\boldsymbol\phi}={\boldsymbol\mu},{\boldsymbol\mu}=\{{\boldsymbol\mu}_1,\ldots,{\boldsymbol\mu}_K\},{\boldsymbol\mu}_k=\{\mu_{k1},\ldots,\mu_{kD}\},\mu_{ki}\in(0,1),{\boldsymbol\phi}_k={\boldsymbol\mu}_kであり、
出力分布は

\begin{eqnarray}
p({\bf x}_n|{\boldsymbol\mu}_k)=\prod_{i=1}^D\mu_{ki}^{x_{ni}}(1-\mu_{ki})^{(1-x_{ni})}\tag{30}
\end{eqnarray}
です。
(30)に対数を取ると、以下のようになります。
\begin{eqnarray}
\ln p({\bf x}_n|{\boldsymbol\mu}_k)=\sum_{i=1}^D(x_{ni}\ln\mu_{ki}+(1-x_{ni})\ln(1-\mu_{ki}))\tag{31}
\end{eqnarray}

出力分布がベルヌーイ分布の時の{\boldsymbol\mu}に関する最大化

{\boldsymbol\mu}に関して\sum_{n=1}^N\sum_{k=1}^K\gamma(z_{nk})\ln p({\bf x}_n|{\boldsymbol\phi}_k)を最大化します。
\sum_{n=1}^N\sum_{k=1}^K\gamma(z_{nk})\ln p({\bf x}_n|{\boldsymbol\phi}_k)\mu_{ki}微分して、=0とおきます。

\begin{eqnarray}
&&\frac{\partial}{\partial\mu_{ki}}\sum_{n=1}^N\sum_{k=1}^K\gamma(z_{nk})\ln p({\bf x}_n|{\boldsymbol\phi}_k)=0\\
&&\Leftrightarrow\frac{\partial}{\partial\mu_{ki}}\sum_{n=1}^N\sum_{k'=1}^K\gamma(z_{nk'})\sum_{i'=1}^D(x_{ni'}\ln\mu_{k'i'}+(1-x_{ni'})\ln(1-\mu_{k'i'}))=0\\
&&\Leftrightarrow\sum_{n=1}^N\gamma(z_{nk})\left(\frac{x_{ni}}{\mu_{ki}}-\frac{1-x_{ni}}{1-\mu_{ki}}\right)=0\\
&&\Leftrightarrow\frac{1}{\mu_{ki}}\sum_{n=1}^N\gamma(z_{nk})x_{ni}=\frac{1}{{1-\mu_{ki}}}\sum_{n=1}^N\gamma(z_{nk})(1-x_{ni})\\
&&\Leftrightarrow(1-\mu_{ki})\sum_{n=1}^N\gamma(z_{nk})x_{ni}=\mu_{ki}\sum_{n=1}^N\gamma(z_{nk})(1-x_{ni})\\
&&\Leftrightarrow\sum_{n=1}^N\gamma(z_{nk})x_{ni}=\mu_{ki}\sum_{n=1}^N\gamma(z_{nk})\\
&&\Leftrightarrow\mu_{ki}=\frac{\sum_{n=1}^N\gamma(z_{nk})x_{ni}}{\sum_{n=1}^N\gamma(z_{nk})}\tag{32}
\end{eqnarray}

最後に

上で書いたようにこのEMアルゴリズムはEステップが不完全です。
フォワード-バックワードアルゴリズム(α-βアルゴリズム)の記事で、\gamma(z_{nk})\xi(z_{n-1,j},z_{nk})を求めます。

偉人の名言

f:id:olj611:20210924155708p:plain:h300
一旦やろうと思い立ったことは気乗りがしないとか気晴らしがしたいなどという口実で延期するな。
直ちに、たとい見せかけなりとも、とりかかるべし。
いい知恵は浮かぶものなり。
トルストイ

参考文献

パターン認識機械学習 p333-p336

動画

なし

目次へ戻る