HMM隐马尔科夫模型例题讲解 加深印象

1.题目背景:

有一个小城,这里的天气只有晴天和阴天,有一个小女孩平时经常做的就是三件事:散步、购物、打扫。
她有一个在外地的男朋友,想知道她的城市里最近三天天气如何,但是女孩只告诉他,第一天她去购物,第二天打扫,第三天在散步。
现在男生用这现有的信息要推断出小女孩城市里这三天天气最可能的状态。

2.已知情况:

隐含的天气状态 = { 晴 , 阴 }

可观察的感觉状态 = { 购物, 散步, 打扫 }

男孩预判的小女孩城市天气状态的概率分布 = { 晴:0.6 , 阴: 0.4 }

而且小女孩城市天气状态转换概率分布 =

{
晴->晴: 0.7 ,
晴->阴: 0.3 ,
阴->晴:0.4 ,
阴->阴: 0.6
}

而且男孩知道晴天和阴天状况下,小女孩活动情况的概率分布 =

 {
晴,散步:0.5 ,购物 :0.4,打扫: 0.1 ;
阴,散步:0.1 ,购物 :0.3 ,打扫: 0.6
}
小女孩连续三天的活动依次是: 购物、散步、打扫 。

3.求解过程:

根据 Viterbi 理论,后一天的状态会依赖前一天的状态和当前的可观察的状态。那么只要根据第一天的购物状态依次推算找出到达第三天打扫状态的最大的概率,就可以知道这三天的天气变化情况。

1.初始情况:

·        P(晴) = 0.6,P(阴)=0.4。

2.求第一天的天气情况:
计算在小女孩购物的情况下最可能的天气状态。

·        P(晴|第一天) = P(晴|初始情况)*P(购物|晴) = 0.6 * 0.5 = 0.3

·        P(阴|第一天) = P(阴|初始情况)*P(购物|阴) = 0.4 * 0.1 = 0.04

那么就可以认为第一天最可能的天气状态是:
3.求第二天的天气状况:
计算在小女孩散步的情况下最可能的天气状态。
那么第二天有四种情况,由于第一天的阴或者晴转换到第二天的阴或者晴。

·        P(晴|第二天) = P(晴|第一天)*P(第二天晴|第一天晴)*P(散步|第二天晴) = 0.3 *0.7 * 0.5 = 0.3*0.35=0.105

·        P(阴|第二天) = P(晴|第一天)*P(第二天阴|第一天晴)*P(散步|第二天阴) = 0.3 *0.3 * 0.1 = 0.3*0.03=0.009

那么可以认为,第二天最可能的状态是:
4.求第三天的天气状态:
计算在小女孩打扫的情况下最可能的天气状态。

·        P(晴|第三天) = P(晴|第二天)*P(第三天晴|第二天晴)*P(打扫|第三天晴) = 0.105* 0.7 * 0.1 = 0.105*0.07=0.00735

·        P(阴|第三天) = P(晴|第二天)*P(第三天阴|第二天晴)*P(打扫|第三天阴) = 0.105* 0.3 * 0.6 = 0.105*0.18=0.0189

那么可以认为:第三天最可能的状态是

结论

根据以上判断小女孩城市这三天天气最可能的序列是:晴、晴、阴。


你可能感兴趣的:(算法)