隐型马尔科夫模型(HMM) 简介

先介绍一下马尔科夫模型:

马尔可夫模型(Markov Model)是一种统计模型,广泛应用在语音识别,词性自动标注,音字转换,概率文法等各个自然语言处理等应用领域。经过长期发展,尤其是在语音识别中的成功应用,使它成为一种通用的统计工具。

特征:有限视野、时间不变性

隐性马尔可夫模型:

HMM(Hidden Markov Model), 也称隐性马尔可夫模型,是一个概率模型,用来描述一个系统隐性状态的转移和隐性状态的表现概率。

特征:1)问题是基于序列的,比如时间序列,或者状态序列。2)问题中有两类数据,一类序列数据是可以观测到的,即观测序列;而另一类数据是不能观察到的,即隐藏状态序列,简称状态序列。

HMM的定义:

    对于HMM模型,首先我们假设Q是所有可能的隐藏状态的集合,V是所有可能的观测状态的集合,即:

    Q={q1,q2,...,qN},V={v1,v2,...vM}

    其中,N是可能的隐藏状态数,M是所有的可能的观察状态数。

    对于一个长度为T的序列,I对应的状态序列, O是对应的观察序列,即:

    I={i1,i2,...,iT},O={o1,o2,...oT}

    其中,任意一个隐藏状态itQ,任意一个观察状态otV

    HMM做出了 两个很重要的假设:

       1) 齐次马尔科夫链假设。即任意时刻的隐藏状态只依赖于它前一个隐藏状态。

       2) 观测独立性假设。即任意时刻的观察状态只仅仅依赖于当前时刻的隐藏状态。

HMM模型一共有三个经典的问题需要解决:

    1) 评估观察序列概率。即给定模型λ=(A,B,Π)和观测序列O={o1,o2,...oT},计算在模型λλ下观测序列OO出现的概率P(O|λ)P(O|λ)。这个问题的求解需要用到前向后向算法。这个问题是HMM模型三个问题中最简单的。

    2)模型参数学习问题。即给定观测序列O={o1,o2,...oT},估计模型λ=(A,B,Π)的参数,使该模型下观测序列的条件概率P(O|λ)P(O|λ)最大。这个问题的求解需要用到基于EM算法的鲍姆-韦尔奇算法。这个问题是HMM模型三个问题中最复杂的。

    3)预测问题,也称为解码问题。即给定模型λ=(A,B,Π)和观测序列O={o1,o2,...oT},求给定观测序列条件下,最可能出现的对应的状态序列,这个问题的求解需要用到基于动态规划的维特比算法。这个问题是HMM模型三个问题中复杂度居中的算法。

使用条件:

1.隐性状态的转移必须满足马尔可夫性。(状态转移的马尔可夫性:一个状态只与前一个状态有关)

2. 隐性状态必须能够大概被估计。

在满足条件的情况下,确定问题中的隐性状态是什么,隐性状态的表现可能又有哪些.

HMM适用于的问题在于,真正的状态(隐态)难以被估计,而状态与状态之间又存在联系。

 

 参考博客:http://www.cnblogs.com/pinard/p/6945257.html

posted @ 2018-03-07 21:59  ybf&yyj  阅读(1025)  评论(0编辑  收藏  举报