隐马尔可夫模型(HMM)

  隐马尔可夫模型原理部分可以概括为三句话:一个定义、两个假设、三个问题

  HMM是一个五元组(Y,X,π,A,B),其中Y是状态(输出)的集合,X是观察值(输入)集合,π是初始状态的概率,A是状态转移概率矩阵,B是输出观察值概率矩阵。

1.定义

  隐马尔可夫模型是关于时序的概率模型,描述由一个隐藏的马尔可夫链随机生成不可观测的状态的序列,再由各个状态随机生成一个观测而产生观测的序列的过程。

  隐马尔可夫模型是一个生成模型,表示状态序列和观测序列的联合分布,但是状态序列是隐藏的,不可观测的。

  隐马尔可夫模型可以用于标注,这时状态对应着标记。标注问题是给定观测序列预测其对应的标记序列。

  隐马尔可夫模型由初始状态概率向量π、状态转移概率矩阵A和观测概率矩阵B决定。

  下面是一个例子,帮助理解隐马尔可夫模型的一些概念。


2.基本假设

  定义I是长度为T的状态序列,O是对应的观测序列,如下所示:

  (1)齐次马尔可夫性假设,即假设隐藏的马尔可夫链在任意时刻t的状态只依赖于前一时刻的转态,与其他时刻的状态及观测无关,也与时刻t无关。

  (2)观测独立性假设,即假设任意时刻的观测只依赖于该时刻的马尔可夫链的状态,与其他观测与状态无关。

3.基本问题

  隐马尔可夫模型有3个基本问题:
  (1)概率计算问题。给定模型=(A,B,π)和观测序列,计算在模型下观测序列O出现的概率P(O|)。
  (2)学习问题。已知观测序列,估计模型 = (A,B,π)参数,使得在模型下观测序列概率P(O|)最大,即用极大似然估计的方法估计参数。
  (3)预测问题,也是解码(decoding)问题。已知模型=(A,B,π)和观测序列,求给定观测序列条件概率P(I|O)最大的状态序列即给定观测序列,求最可能的对应的状态序列。

  下面对这三个基本问题进行详细地介绍:

4.概率计算问题

  (1)前向算法




  (2)后向算法

5.学习算法

  非监督学习算法:Baum-Welch(也就是EM算法)



  Baum-Welch算法


  其中:


6.预测算法

  维特比(Viterbi)算法实际使用动态规划解隐马尔科夫模型预测问题,即用动态规划求概率最大路径(最优路径)。这时一条路径对应着一个状态序列。




  隐马尔可夫模型有诸多的实际应用,比如PageRank、词性标注、命名实体识别等,刚兴趣的读者可以自行阅读相关论文。

参考文献
(1)《统计学习方法》

  • 9
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值