next up previous
次へ: 複数話者識別実験の実験条件 上へ: 最適状態遷移系列の推定について 戻る: Viterbiアルゴリズム


Forwardアルゴリズム

Baum-Welchの学習においては、HMMのパラメータ $\mbox{\boldmath$M$}$がコード系列 $\mbox{\boldmath$O$}$を出力する時の尤度は、各状態からの総和で計算される。し たがって状態遷移系列を、各時刻における最大の尤度を持つ状態と して選択する方法がある。このForwardアルゴリズムは次のように なる。

  1. 全ての $i\in\{1,...,N\}$に対し、

    \begin{displaymath}\delta_1(i) = \pi_i \times b_i(\mbox{\boldmath$o$}_1) \end{displaymath}


    \begin{displaymath}s_1^*= \arg\max_i\delta_1(i) \end{displaymath}

  2. 時間軸$t=2,...,T$に沿って、全ての $j\in\{1,...,N\}$に対し

    \begin{displaymath}\delta_t(j) = \sum_i[\delta_{t-1}(i) \times a_{ij} \times b_j(\mbox{\boldmath$o$}_t)] \end{displaymath}


    \begin{displaymath}s_t^*= \arg\max_j\delta_t(j) \end{displaymath}

  3. 状態遷移系列に対する尤度及び$T$時刻目の最適状態を次式で求める。

    \begin{displaymath}\max_{\mbox{\boldmath$S$}}P(\mbox{\boldmath$O$},\mbox{\boldmath$S$}\mid\mbox{\boldmath$M$}) = \sum_j\delta_T(j) \end{displaymath}


    \begin{displaymath}s_T^* = \arg\max_j\delta_T(j) \end{displaymath}



Jin'ichi Murakami 平成13年10月4日