EM(Expectation-Maximization)算法
由于HMM中的状态序列是观察不到的(隐变量),以上的最大似然估计不可行。EM算法可用于含有隐变量的统计模型的最大似然估计。
EM算法是一个由交替进行的“期望(E过程)”和“极大似然估计(M过程)”两部分组成的迭代过程:
对于给定的不完全数据和当前的参数值,“E过程”从条件期望中相 应地构造完全数据的似然函数值,“M过程”则利用参数的充分统计量,重新估计概率模型的参数,使得训练数据的对数似然最大。
EM算法的每一次迭代过程必定单调地增加训练数据的对数似然值,于是迭代过程渐进地收敛于一个局部最优值。
向前向后算法(Baum-Welch算法)
1.初始化:随机地给πi ,aij , bjk 赋值(满足概率条件),得到模型λ0,设 i=0 ;
2.EM步骤:
E步骤:由λi根据公式(1)和(2),计算期望值ξt(i,j) 和 γt(i);
M步骤:用E步骤所得的期望值,根据公式(3)重新估计πi ,aij ,bjk ,得到模型 λi+1 ;
3.循环设计:i=i +1 ;重复EM步骤,直至πi ,aij ,bjk 值收敛。