这几天在学习HMM模型之训练算法,前向后向算法(又称Baum-Welch)。现将一些没有消化的内容记下来,后面再仔细研究。
HMM训练描述为:给定HMM状态集合,和一系列观测序列,如何对A和B进行训练。
1、符号ξ记做:给定观测序列情况下,t时刻状态为i,t+1时刻状态为j的概率,描述为:
上式中
代入(1)式可得:
符号C(i→j) 记做从状态i转移到状态j的个数,则转移矩阵的定义可写成下式:
根据转移矩阵的定义以及上面所求的结果,可以计算转移矩阵的估计值:
根据a来计算ξ的过程为E-step,根据ξ来算a的过程为M-step,E-step和M-step构成了forward-backward算法的过程。以上就是求矩阵A的前向后项算法(forward-backward)的过程。
2、如何训练得到发射概率矩阵,暂时并没有理解这一过程,后面有时间再搞清楚,补充。
参考: https://blog.youkuaiyun.com/quheDiegooo/article/details/60141241