输入:
模型λ=(A,B,π)\lambda=(A, B, \pi)
观测O
输出:
最优状态序列I*

定义: σt(i)\sigma_t(i):t时刻状态为i的所有路径的概率中的的最大值
σt(i)=maxi=1NP(it=qiλ) \sigma_t(i) = \max_{i=1}^NP(i_t=q_i|\lambda) ψt(i)\psi_t(i):t时刻状态为i时,当σt(i)\sigma_t(i)取得最大值时记录一下t-1的状态

过程:

  1. 初始化
    σ1(i)=πibi(o1)ψ1(i)=0 \begin{aligned} \sigma_1(i) = \pi_ib_i(o_1) \\ \psi_1(i) = 0 \end{aligned}
  2. 递推
    σt(i)=max1jN[σt1(j)ajibi(ot)] \sigma_t(i) = \max_{1\le j\le N}[\sigma_{t-1}(j)a_{ji}b_i(o_t)] 保存导致σt(i)\sigma_t(i)最大的it1i_{t-1}
  3. 终止
    P=maxσT P* = \max \sigma_T 根据保存的ψ\psi向前追溯最优路径。

results matching ""

    No results matching ""