前向-后向算法实例

已知HMM模型参数:

转移概率矩阵A:

0.5 0.2 0.3
0.3 0.5 0.2
0.2 0.3 0.5
混淆矩阵B:

0.5 0.5
0.4 0.6
0.7 0.3
初始概率:

π=(0.2 , 0.4 , 0.4)

求解:三次取球颜色为(红、白、红)的概率P(O|λ)

提示:盒子相当于三种隐状态,两种颜色的球相当于观测情况,观测序列由(红、白、红)给出

(1)计算初值


a1(2) 代表第一个时间下, 从第二个盒子里取出红球的概率

(2)递推计算


(3)终止条件



关于后向算法,直接以盒子(隐)和球(观测)的实例为例推导:

(1)初始化第三次取球为红球时候,即最终时刻所有状态的概率为1


式中下标为观测情况,括号为隐状态,比如第一个式子意思就是第一个隐状态对应的观测到红球的概率

(2)逆推迭代倒数第二次观察情况为白球的情况


第一个式子表示的是第二次观测,如果状态为1,那么第二、三次观测为(白、红)的联合概率分布,a是第二层隐状态(第一个盒子)转移到第三层隐状态(三个盒子)的转移概率,b表示第三层的三个隐状态观测到红球的概率,β(等式右边)表示已知模型参数和第三层隐状态,求第三次观测到红球的概率,其实第(1)步计算是1

第二个式子表示的是第二次观测,如果状态为2,那么第二、三次观测为(白、红)的联合概率分布,a是第二层隐状态(第二个盒子)转移到第三层隐状态(三个盒子)的转移概率,b表示第三层的三个隐状态观测到红球的概率,β(等式右边)表示已知模型参数和第三层隐状态,求第三次观测到红球的概率,其实第(1)步计算是1

同理推导第一层的情况

前向-后向算法实例_第1张图片

(3)计算加和


可以发现前向算法和后向算法的结果相同

【注】前向算法中计算结果舍去了一位,结果应该是0.035512


前向-后向算法实例_第2张图片


你可能感兴趣的:(机器学习)