摘自
1.李航的《统计学习方法》
2.http://www.cnblogs.com/pinard/p/6955871.html
一、概率计算问题
上一篇介绍了概率计算问题是给定了λ(A,B,π),计算一个观测序列O出现的概率,即求P(O|λ)。
用三种方法,直接计算法,前向算法,后向算法。
考虑隐马尔可夫模型(一)中的盒子球模型。
假设Q={1,2,3,4}, V = {红,白},在给定λ(A,B,π)的条件下,其中:
, ,
求O=(红,白,红)的概率。
二、直接计算法
说通俗一点,就是暴力求解,穷举法。
- 所有可能的状态序列I,则状态序列I的概率为P(I|λ)
- 对于固定的状态序列I,则观测序列为O的概率P(O|I,λ)
- 联合概率为P(O,I|λ) = P(O|I,λ)P(I|λ)
- 则最后所求为P(O|λ) = ΣP(O|I,λ)P(I|λ)
状态集合有N个,一共有T个状态序列,所以状态序列的可能性为NT,每一种状态序列都要相应乘以T个观测概率矩阵,所以最后的时间复杂度为O(TNT)。
三、前向计算法
首先,记alphai(j)为第i次观测下状态为j,观测值为O(i)的概率,bj(i)为j状态下观测值为O(i)的概率, 暂时记i=1为红球,i=2为白球, aij为矩阵A中i行j列。
1、第一次观测为红球
2、第二次观测为白球
3、第三次观测
4、最后结果
原文地址:https://www.cnblogs.com/ylxn/p/10146053.html
时间: 2024-10-03 13:47:26