码迷,mamicode.com
首页 > 编程语言 > 详细

马尔可夫特性&&维特比算法

时间:2015-01-17 06:24:10      阅读:265      评论:0      收藏:0      [点我收藏+]

标签:

由于马尔可夫特性,最可能到达状态 Rain5 = true 的路径包含了到达时刻 4 的某个状态的最可能路径 ------ P421

所谓的“马尔可夫特性”究竟是?。。?

维特比算法基于动态规划的思想(DP一般都求最优,不求最优的应用还未见过),

仔细观察“天气和雨伞”模型的维特比算法状态转移方程,

技术分享

维特比算法是自底向上构建的动归

可以知道求解状态t+1的最优概率路径是基于从起始到状态t的所有可能状态(rain/sunny)的最优概率路径

也就是说,对于状态t的每一种可能选择(rain/sunny),固定证据 e1~t 以及该状态(rain/sunny)求得P(x1~xt-1,xt | e1~t) 的最大值,

那么对于咱们的例子,有 P(x1~xt-1,rain | e1~t) 和 P(x1~xt-1,sunny | e1~t),

接着依靠这些来自状态t的概率路径进一步求取状态t+1的概率路径,来自例子的搭配

状态t?????????????????? 状态t+1

rain????????????????????? rain

rain????????????????????? sunny

sunny?????????????????? rain

sunny?????????????????? sunny

再次声明一下,状态都是“隐状态”,因为守卫不知道外面的真实情况,只知道证据---是否有伞

动态规划的基本步骤就是用前一步的状态构造转移至后一步的状态,可以注意到状态t+1的结果是一个概率向量(那个Xt+1大写的)

最后结合一下实例进行说明:

技术分享

对于时间点1(初始时间点)

预估计之rain(0.5)

???? ? ? ?? 0.9 = 0.315

???? 0.7?

??????????? 0.1

0.5

??????????? 0.2 = 0.03

????? 0.3

??????????? 0.8

预估计之sunny(0.5)

???? ? ? ?? 0.9 = 0.135

???? 0.3?

??????????? 0.1

0.5

??????????? 0.2 = 0.07

????? 0.7

??????????? 0.8

由预估计求出第一天隐变量为rain的概率:(0.315+0.135)/(0.315+0.135+0.03+0.07)= 0.45/0.55 = 0.8182 相应sunny概率:0.1818

仔细查看可以看见部分箭头是加粗的,加粗的部分代表被选中的用于搭建后续状态的前状态部分量[迎合动归选优构建状态转移]

下面以倒数第2个状态构建最后一个状态为例

???? ? ????? ? ??? |0.9 = 0.021042 [最后时间点的隐状态为rain,证据为umbrella]

????????? ? |0.7 |

??????????? | ???? |0.1

0.0334 |

?????? ???? | ???? | 0.2 = 0.002004 [最后时间点的隐状态为sunny,证据为umbrella]

?????? ???? |0.3 |

???????? ????????? | 0.8

???? ? ????? ? ??? |0.9 = 0.004671 [最后时间点的隐状态为rain,证据为umbrella]

????????? ? |0.3 |

??????????? | ???? |0.1

0.0173 |

?????? ???? | ???? | 0.2 = 0.002422 [最后时间点的隐状态为sunny,证据为umbrella]

?????? ???? |0.7 |

???????? ????????? | 0.8

对于每种可能的隐状态选取最大值构建最后的时间点,有

| rain --- 0.021042

| sunny --- 0.002422

最后再提醒一点,那些被描黑的框标识出了作为结果的“最大匹配序列”,这是通过反向指针从最后状态倒着找回去的

是不是完全吻合了呢~。。~

马尔可夫特性&&维特比算法

标签:

原文地址:http://www.cnblogs.com/gankai-7/p/4229866.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!