RigelのR言語メモであーる(R言語だけとは言っていない)

RigelのR言語メモであーる(主にpython)

興味あることや趣味、やったことについて書くよ

隠れマルコフモデル(HMM)とBaum-WelchアルゴリズムとViterbiアルゴリズムのよく分からない解説

今回は隠れマルコフモデル(HMM)についてです。
隠れマルコフモデルはRやPythonで実装するのは簡単ですが、理解するのは少々根気が必要です(私は必要でした)。
隠れマルコフモデル自体はシンプルなモデルなので動きは簡単ですが、隠れマルコフモデルで用いられるBaum-WelchアルゴリズムとViterbiアルゴリズムが難しい。
私は説明や解説が下手で、分からないと思いますが簡単に解説します。
そして、個人的メモですがせっかくまとめたのでスライドを共有します。


隠れマルコフモデル(HMM)のよく分からない解説

隠れマルコフモデル(HMM)は状態空間モデルの一種です。
系列ラベリングができます(教師なし学習)。
系列ラベリングとは、時系列データに対するラベル付け(クラスタリング)です。
尤度を利用して時系列データの判別(教師あり学習)もできます。
応用は形態素解析音声認識等、幅広いです。

Baum-Welchアルゴリズムのよく分からない解説

Baum-Welchアルゴリズムは、観測データから隠れマルコフモデルのパラメータを推定します。
かっこいい名前がついてますが、EMアルゴリズムです。
かっこいい名前の由来はBawmさんとWelchさんです。

Viterbiアルゴリズムのよく分からない解説

Viterbiアルゴリズムはモデルの状態を推定するアルゴリズムです。
Baum-Welchアルゴリズムで推定されたパラメータを使います。
このアルゴリズムにより現在どの状態(ラベル)なのかが分かります。
名前の由来はViterbiさんです。

スライド

初めて、Speaker Deckにスライドをアップロードしました。
個人的メモスライドですが、誰かの理解の助けになると嬉しいです。
数式の変形は丁寧に書いているつもりです。

間違いの指摘や質問は、お問い合わせフォームやコメントから気軽にお願いします。

(スライドのアップロードと貼り付けのテストために書いた訳じゃないですよ!そんなことないですよ!)

参考図書

パターン認識と機械学習 下 (ベイズ理論による統計的予測)

パターン認識と機械学習 下 (ベイズ理論による統計的予測)

続・わかりやすいパターン認識―教師なし学習入門―

続・わかりやすいパターン認識―教師なし学習入門―