一、 问题回顾
计算观测序列概率。
即给定模型λ=(A,B,Π)和观测序列O={o1,o2,…oT},计算在模型λ下观测序列O出现的概率P(O;λ)。这个问题的求解需要用到前向算法和后向算法,我会在隐马尔可夫模型系列的第二篇博客中讲解,这个问题是HMM模型三个问题中最简单的。
二、前向算法
用前向算法来求观测序列O={o1,o2,…oT}的概率,首先定义前向概率。
前向概率:
给定隐马尔可夫模型λ,定义到时刻 t 时的部分观测序列为o1,o2,…ot且此时的状态为qi的概率为前向概率。记为:
αt( i ) = P(o1, o2, … ot, it = qi;λ)
前向概率的递推公式:
我们已经知道 αt( j ) = P(o1, o2, … ot, it = qj;λ),又因为aji 表示在时刻 t 的状态为 qj 的条件下时刻 t+1 的状态为qi的概率,所以αt( j )aji = P(o1, o2, … o