動く隠れマルコフモデル(導出編・前編)- 動く PRML シリーズ(3)

やりたいこと

動く PRML シリーズ、第3回は隠れマルコフモデル (hidden Markov model, HMM) です。混合ガウス分布 (GMM)変分混合ガウス分布 (VB-GMM) に続き第三回です。

反復繰り返し型の機械学習アルゴリズムを理解するには大きく分けて二つの方法があります。一つ目はもちろん、

  • 更新式を導出すること。

反復アルゴリズムの理論的性質はすべて更新式の形に反映されています。従って、この更新式を自力で導出することはとても勉強になります。

そして、二つ目は、

  • イテレーションの内容をグラフにプロットし、実際の挙動を確認すること。

本シリーズでは、更新式の導出・各イテレーションのプロット、の二本立てで機械学習アルゴリズムを深く理解することをめざします。
以下で早速、HMM の生成モデルについて解説していきたいと思います。

生成モデル

はじめに、隠れマルコフ系列の尤度を与えます。時系列のデータ数を N とし、各時刻でとりうる状態の数を K とします。観測データが時刻 n で k 番目の状態から生成されているとき、これを であらわします。
初期確率を 、状態 j から状態 k への遷移確率を であらわすと、 すべての同時分布は次のように書くことができます。

  

観測変数の尤度は GMM とします。ここで重要なことは、隠れマルコフ系列・観測変数の尤度は独立に与えられる、ということです。このことを覚えておくと、後々の Forward-Backward アルゴリズムの実装が非常にすっきり見通しの良いものになります。

  

HMM と EM アルゴリズム

さて…
GMM の E-Step では を計算しました。それは、この値が M-Step で必要になるからです。
HMM の場合は事態がやや複雑です。そこで、今回は M-Step を先に導出することにします。

M-Step

完全データの対数尤度関数は

  
  

と書けます。これを各変数で偏微分することで更新式を得ます。
以下、, と書きます。

初期確率の更新

  

をもとにラグランジュの未定乗数法を使用します。すると

  

を得ます。

遷移確率の更新

  

をもとにラグランジュの未定乗数法を使用します。すると

  

を得ます。

平均・分散(精度)の更新

GMM の場合と同じなので省略します。
基本的に、HMM の観測分布パラメータの更新式は、GMM などの単純な混合分布のパラメータ更新則と一致します。


動く隠れマルコフモデル(導出編2)執筆予定