隐式马尔科夫链与维特比算法

原创 2009年06月15日 20:02:00

1. 隐式马尔科夫链: 马尔科夫链是一系列的状态转换,设为x1...xn,其中xn至于xn-1相关,假设xi 会以p(i)的概率产生yi, 如下图所示:

 

观察到的是Y的序列,由于X序列不可见,是隐式的,因此称为隐式马尔科夫链

 

真实系统中,x与y之间有可能不是一一对应的关系,但总有一个从X到Y的概率

 

现在我们观察到了一个Y的序列,要计算如下两件事情:

1. Y这个序列出现的概率多大?

2. 要出现Y这个序列,则概率最大的X序列是什么?

 

第一个问题:

假设X序列初始状态是Xi的概率为Ii, P(Xi|Xj) = Aij, P(Yi|Xi) = Bi

则Y序列的初始状态是Yi的概率为:P(Yi) =  Ii * Bi

P(Yi + 1) = sum(P(Xi + 1) | Xi) * Bi + 1

 

即,因此要计算序列Y1...Yn的概率,需要计算P(Xn | Y1...Yn-1),计算过程如下:

观察到事实Y1, 计算从状态Xi到所有其他状态在Xj这个事实下的转换概率,计算出在Y1这个事实下,所有X1...Xn的出现概率,依次如此计算,最后计算出Y1...Yn的概率

 

第二个问题:

由于马尔科夫链的关系,假设我们已经求出对应这Y1...Yi的最大概率X序列,那么对Yi +1, 我们只需计算Yi 到 Yi + 1的最大概率序列即可,即是从状态1到状态2的最大概率与状态2到状态3的最大概率无关。

 

举例如下:

例子来自于wiki:http://en.wikipedia.org/wiki/Viterbi_algorithm

 

网上还有一篇非常详细地介绍hmm的文章:

http://jedlik.phy.bme.hu/~gerjanos/HMM/node2.html#SECTION00200000000000000000

隐性马尔可夫链

我是学理科出身的程序员,一直做web,复杂的算法基本上很少用到。最近做了一个自然语言处理相关的项目,我把我的一些理解和大家分享一下。   1.       首先来说一下马尔科夫链。 ...
  • u012116229
  • u012116229
  • 2015年05月11日 19:27
  • 541

维特比算法—解隐含马尔科夫链最大后验概率

维特比算法说白了就是动态规划实现最短路径,只要知道“动态规划可以降低复杂度”这一点就能轻松理解维特比算法 维特比算法在机器学习中非常重要,在求解隐马尔科夫和条件随机场的预测问题中均用到了维特比算法。...
  • Touch_Dream
  • Touch_Dream
  • 2017年04月02日 17:38
  • 664

【深度剖析HMM(附Python代码)】3.隐马尔科夫链所解决的问题

通过隐马尔科夫链,有以下几方面功能: 1. 解码问题  已知某一序列,找到最可能的隐藏状态序列(即所谓的解码问题,利用维比特算法来解决) 解码过程的相关pytho...
  • tostq
  • tostq
  • 2017年04月27日 13:51
  • 1248

序列标注,维特比算法,中文分词(含代码)

使用深度学习进行中文自然语言处理之序列标注
  • ss654271961
  • ss654271961
  • 2017年10月27日 10:55
  • 167

马尔科夫链与吉布斯抽样

Gibbs抽样方法是 Markov Chain Monte Carlo(MCMC)方法的一种,也是应用最为广泛的一种。wikipedia称gibbs抽样为   In statistics and ...
  • raoqiang19911215
  • raoqiang19911215
  • 2014年03月16日 14:46
  • 1807

马尔科夫链MCMC采样算法和LDA Gibbs Sampling

马氏链及其平稳分布 马氏链的数学定义很简单 P(Xt+1=x|Xt,Xt−1,⋯)=P(Xt+1=x|Xt) 也就是状态转移的概率只依赖于前一个状态。 我们先来看马氏链的一个具体的例子。社...
  • shenxiaoming77
  • shenxiaoming77
  • 2014年12月08日 16:53
  • 2090

通俗理解马尔科夫链

在理解马尔科夫链之前先了解一下马尔科夫性质,我们假设某一过程是由一个状态序列构成,就相当于视频由每一帧构成。这个状态序列被称为状态空间,假设某一时刻的状态是其前一时刻状态的函数,则说明该序列有马尔科夫...
  • ali197294332
  • ali197294332
  • 2015年12月03日 22:16
  • 5296

【深度剖析HMM(附Python代码)】2.隐马尔科夫链HMM的EM训练过程

隐马尔科夫链HMM的参数θ的EM训练过程 现在回到前一节最后提出的参数θ的最大似然函数上来,先对其做个对数变换,做对数变换是考虑到序列X的概率计算公式中包含了连乘,为了方便计算同时避免序列X的概率过...
  • tostq
  • tostq
  • 2017年04月27日 13:28
  • 2070

动态规划与维特比算法

关键字:动态规划 维特比算法
  • wagsyang
  • wagsyang
  • 2016年12月24日 19:16
  • 1565

动态规划之隐含马尔可夫模型(HMM)和维特比算法(Viterbi Algorithm)

动态规划之(HMM)和(Viterbi Algorithm)1. 实际问题HMM-韦小宝的骰子 • 两种骰子,开始以2/5的概率出千。 – 正常A:以1/6的概率出现每个点 – 不正常B: 5,...
  • Mr_KkTian
  • Mr_KkTian
  • 2016年10月28日 22:56
  • 1268
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:隐式马尔科夫链与维特比算法
举报原因:
原因补充:

(最多只允许输入30个字)