next up previous contents
次へ: 離散HMMのパラメータ推定 上へ: 認識アルゴリズム 戻る: Viterbiアルゴリズム   目次

Baum-Welchアルゴリズム

観測系列の生成確率を最大にするモデル$\lambda$のパラメータの局所的最適値 を求める方法として,Baum-Welchアルゴリズム(パラメータ再推定法)がある.

モデル$\lambda$が観測系列 $O=o_1,o_2,\cdots,o_T$を生成する場合において, 時刻$t$で状態$i$から状態$j$に遷移する確率$xi_t(i,j)$を次のように定義する.

$\displaystyle \xi_t(i,j)$ $\textstyle =$ $\displaystyle P(s_{t-1}=i,s_t=j\vert O,\lambda)$  
  $\textstyle =$ $\displaystyle \frac{\alpha_{t-1}(i)a_{ij}b_{ij}(o_t)\beta_t(j)}{P(O\vert\lambda)}
     (1\leq t\leq T)$ (22)

ここで,シンボル生成課程で,時刻$t$で状態$j$にいる確率$\gamma_t(j)$を定 義する.
$\displaystyle \gamma_t(j)$ $\textstyle =$ $\displaystyle P(s_t=j\vert O,\lambda)$  
  $\textstyle =$ $\displaystyle \sum^{N}_{i=1}\xi_t(i,j)     (1<\leq t\leq T)$ (23)

この$\gamma_t(i)$$xi_t(i,j)$からモデル$\lambda$の再推定( $\lambda→
\overline{\lambda}$)を次のように行う.
  1. 初期状態確率
    $\displaystyle \overline{\pi}_i=\gamma_0(i)=\frac{\alpha_0(i)\beta_0(i)}{P(O\vert\lambda)}
     (1\leq i\leq N)$     (24)

  2. 状態遷移確率
    $\displaystyle \overline{a}_ij=\frac{\sum^T_{t=1}\xi_t(i,j)}{\sum^{T}_{t=1}\gamm...
...t-1}(i)a_{ij}b_{ij}(o_t)\beta_t(j)}
{\sum^T_{t=1}\alpha_{t-1}(i)\beta_{t-1}(i)}$     (25)

  3. シンボル出力確率
    $\displaystyle \overline{b}_{ij}(O_t)=\frac{\sum_{t\in(o_t=v_k)}\xi_t(i,j)}
{\su...
...b_{ij}(o_t)\beta_t(j)}
{\sum^T_{t=1}\alpha_{t-1}(i)a_{ij}b_{ij}(o_t)\beta_t(j)}$     (26)

再推定された $\overline{\lambda}$の評価は次のようになる.
  1. $\overline{\lambda}=\lambda$    →    (局所的な)収束状態

  2. $P(O\vert\overline{\lambda}) > P(O\vert\lambda)$    →    シンボル系 列$O$を出力するより最適なモデル$\lambda$を推定
Baum-Welchアルゴリズムは,学習データの尤度を最大にするようにパラメータを 学習する.本研究では,HMM初期モデルの再推定に使用されている.



平成20年3月11日