程序员人生 网站导航

HMM:前向算法实例

栏目:综合技术时间:2015-03-21 09:41:09

看本篇文章,假定你已知道HMM中的前向算法相干概念
如果不知道,推荐先学习HMM学习最好范例中相干文章

这个问题来自于HMM学习最好范例5:前向算法5
只不过再手动算1下,加深1下自己的理解

已知隐马尔科夫模型以下:

1、隐藏状态 (天气):Sunny,Cloudy,Rainy;
2、视察状态(海藻湿度):Dry,Dryish,Damp,Soggy;
3、初始状态几率: Sunny(0.63), Cloudy(0.17), Rainy(0.20);
4、状态转移矩阵:
这里写图片描述
5、混淆矩阵:
这里写图片描述

M=4(海藻湿度状态数)
N=3(天气状态数)
T=3(视察天数)

:A=???0.5000.2500.2500.3750.1250.3750.1250.6250.375???

:B=???0.600.250.050.200.250.100.150.250.350.050.250.50???

:Π=[0.630.170.20]

1,3,4(Dry,Damp,Soggy)

计算

用1个α=N×T的矩阵来保存局部几率
αijt=ia=jj=1sunny的几率,

1.先计算t=1的局部几率,我们需要用到的初始状态向量Π
由于第1天的海藻湿度为1(“Dry”) ,的第1列:
α11=Π1?B11=0.60?0.63=0.378
α21=Π2?B21=0.25?0.17=0.0425
α31=Π3?B31=0.05?0.20=0.01

2.计算t=2的局部几率,当计算t>1的时候,会用到t⑴的局部几率
以计算α21为例子,首先我们要计算,从t=1的天气,通过状态转移矩阵,得出的通过第1天的天气推测出第2天是“sunny”几率:
P(2sunny)=P(1sunny)×P(2sunny|1sunny)+P(1cloudy)

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐