【学习记录】隐马尔可夫模型预测习题

1.概念

马尔可夫链(Markov chain): 概率论数理统计中具有马尔可夫性质(Markov property)且存在于离散的指数集(index set)和状态空间(state space)内的随机过程(stochastic process)。即某随机变化的事物的状态,每次状态只取决于上一次。

转移概率矩阵:在一次变化过程中各状态间的转移概率矩阵。

 比如在DNA复制中某一位点的碱基变换过程中,已知A-A,C-C,T-T,G-G的概率(不变),A-T,C-G(或反)的概率(转换),A-G,A-C,T-C,T-G(或反)的概率(颠换),这些变化概率在一定条件下都是固定的。设初始位点后,那么所有碱基的相互转换概率矩阵为转移概率矩阵,第N次复制后位点的碱基状态只取决于第N-1次复制后状态。

隐马尔可夫模型(Hidden Markov Model,HMM):用来描述一个含有隐含未知参数的马尔可夫过程。其难点是从可观察的参数中确定该过程的隐含参数。然后利用这些参数来作进一步的分析,例如模式识别。即需要预测的状态是无法直接得到的,只能观察到一组参数,这组参数对应着不同的状态,可以运用贝叶斯公式等从参数得到状态。

发射概率矩阵:隐状态和显参数的对应矩阵。

 比如已知有三种天气状态阴晴雨,下一天的天气取决于当天,并且对应概率矩阵已知,在这三种状态下衣服的晾干速度不同,但又两种状态,干或湿(不同天气的干湿概率组成发射概率矩阵),那么已知连续N天的衣服状态,求这N天中最有可能的天气状态,可以用到HMM。

viterbi算法(Viterbi Algorithm): 一种动态规划算法用于寻找最有可能产生观测事件序列的-维特比路径-隐含状态序列,特别是在马尔可夫信息源上下文和隐马尔可夫模型中。术语“维特比路径”和“维特比算法”也被用于寻找观察结果最有可能解释相关的动态规划算法。

其使用与常见的动态规划思想相同,从第二步推第三步, 第三步推第四步......一直推到所求。不同之处在于当一条推理在某一步被淘汰后,其后续判断不再进行,即边判断边淘汰。

2.例题

 

在已知今天天气概率的基础上,可以计算出明天的天气概率,不同的time对不同的天气概率把五天的概率都算出来然后相乘。

 

 viterbi算法的特征就是站在第二天,选择从第一天到第二天的最佳路径
站在第三天,选择从第二天到第三天的最佳路径(动态规划思想)

注意:每天发生的事件是固定的,每天的天气是不固定的

例子
在发生了431的情况下,最有可能的天气情况,一共有27种路径,求概率最大的路径

已知第二天发生了事件3
那么第二天有三种情况:
天气a发生事件3/天气b发生事件3/天气c发生事件3
那么就有九条路径:
第一天天气a发生事件4,第二天天气a发生事件3
第一天天气b发生事件4,第二天天气a发生事件3
第一天天气c发生事件4,第二天天气a发生事件3
第一天天气a发生事件4,第二天天气b发生事件3
......
找到第二天天气a发生事件3的三条路径,计算这三条路径的概率,选择其中概率最大的一条做标记

接着跳到第三天继续判断
第三天同样有三种情况,每种情况有三条路径...

hmm = initHMM(c("A","B","C"), c("1","2","3","4"), transProbs=matrix(c(0.5,0.25,0.25,0.375,0.125,0.375,0.125,0.625,0.375),3),
              emissionProbs=matrix(c(0.6,0.25,0.05,0.2,0.25,0.1,0.15,0.25,0.35,0.05,0.25,0.5),3))
print(hmm)
# Sequence of observations
observations = c("4","4","1","3","2","2","1","4","4","3")
# Calculate Viterbi path
viterbi = viterbi(hmm,observations)
print(viterbi)

 

参考:

【机器学习】马尔可夫链与隐马尔可夫模型(HMM)_隐马尔可夫模型和马尔可夫模型的区别-CSDN博客

维特比(Viterbi)算法_维特比算法-CSDN博客 

机器学习 HMM_发射矩阵-CSDN博客 

  • 19
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值