自然语言处理2-隐马尔科夫模型(HMM)-forward algorithm(前向算法)和Viterbi(维特比算法)
2013-06-04 19:17
441 查看
1.隐马尔科夫模型(HMM)
实例:隐藏状态:Sunny,Cloudy,Rainy
观察状态:Dry,Dryish,Damp,Soggy
初始向量
状态转移矩阵('A' )
weather yesterday | weather today | |||
Sunny | Cloudy | Rainy | ||
Sunny | 0.500 | 0.375 | 0.125 | |
Cloudy | 0.250 | 0.125 | 0.625 | |
Rainy | 0.250 | 0.375 | 0.375 |
混淆矩阵('B' )
hidden states | observed states | ||||
Dry | Dryish | Damp | Soggy | ||
Sunny | 0.60 | 0.20 | 0.15 | 0.05 | |
Cloudy | 0.25 | 0.25 | 0.25 | 0.25 | |
Rainy | 0.05 | 0.10 | 0.35 | 0.50 |
1.1.前向算法
定义用forward algorithm计算观察出现的概率
t=1时
t = 2, ..., T时
最后
注:at+1(j)表示在时间t+1时,状态j的部分概率;bjk混淆矩阵对应的概率;aij转移矩阵对应的概率,
表示状态j对应的初始概率。
求Pr(Dry,Damp,Soggy|HMM)
t=1
a1(sunny) = 0.63 * 0.6 = 0.37800002
a1(cloudy)=0.17 * 0.25= 0.0425
a1(rainy)=0.2 * 0.05= 0.010000001
t=2
a2(sunny)=(0.37800002*0.5+ 0.0425*0.250 + 0.010000001*0.250) * 0.15
a2(cloudy)=(0.37800002*0.375+ 0.0425*0.125 + 0.010000001*0.375)*0.25
a2(rainy)=(0.37800002*0.125 + 0.0425*0.625 + 0.010000001*0.375) * 0.35
t=3
a3(sunny)=(a2(sunny)*0.5+ a2(cloudy)*0.250 + a2(rainy)*0.250) * 0.05
a3(cloudy)=(a2(sunny)*0.375+ a2(cloudy)*0.125 + a2(rainy)*0.375)*0.25
a3(rainy)=(a2(sunny)*0.125 + a2(cloudy)*0.625 + a2(rainy)*0.375)* 0.50
Pr(Dry,Damp,Soggy|HMM)= a3(sunny) + a3(cloudy)+ a3(rainy)
1.2.Viterbi算法
计算Pr(观察序列| 隐藏状态组合),即计算Pr(dry,damp,soggy|sunny,sunny,sunny),
Pr(dry,damp,soggy|sunny,sunny,cloudy),
Pr(dry,damp,soggy|sunny,sunny,rainy),
. . . .
Pr(dry,damp,soggy| rainy,rainy,rainy)中的最大值,从而获得使dry,damp,soggy出现的最可能序列。
t=1时
当t= 2, ..., T;并且i = 1, ... , n时
找出T(i)中的最大值
当t= T - 1, ..., 1时,通过回溯的方法找出最大概率状态序列
t=1时
t=2时
t=3时
因此可得使dry,damp,soggy出现的最可能序列是sunny,cloudy,rainy。
相关文章推荐
- 隐马尔科夫模型(HMMs)之五:维特比算法及前向后向算法
- 【算法】隐马尔科夫HMM之Viterbi维特比算法原理
- 隐马尔科夫模型之前向算法和维特比算法
- 基于隐马尔科夫模型(HMM)的地图匹配(Map-Matching)算法
- 一文读懂 HMM 模型和 Viterbi 算法
- 自然语言处理之维特比(Viterbi)算法
- 隐马尔科夫模型(HMMs)之五:维特比算法及前向后向算法
- HMM:隐马尔科夫模型-前向算法
- 隐马尔科夫模型HMM的前向算法和后向算法
- 隐马尔科夫模型HMM(三)鲍姆-韦尔奇算法求解HMM参数
- 隐马尔科夫模型HMM(四)维特比算法解码隐藏状态序列
- 隐马尔科夫模型HMM(二)前向后向算法评估观察序列概率
- HMM:隐马尔科夫模型-维特比算法
- 自然语言处理1-马尔科夫链和隐马尔科夫模型(HMM)
- 自然语言处理 HMM 维特比算法(Viterbi Algorithm) 实例转载
- 隐马尔科夫模型 (HMM) 中的三个主要问题及相关算法 (待续)
- HMM:隐马尔科夫模型-维特比算法
- HMM:隐马尔科夫模型-前向算法
- 隐马尔可夫模型(HMM) - 4 - 预测算法(维特比算法)
- 隐马尔科夫模型(HMM)学习之 前向算法