HMM隐马尔可夫模型的例子、原理、计算和应用
隐马尔可夫模型(Hidden Markov Model,HMM)在语音识别、机器翻译、中文分词、命名实体识别、词性标注、基因识别等领域有广泛的使用。
本文系统的介绍了隐马尔可夫模型,帮助你构建隐马尔可夫模型的知识体系。首先,回顾了一下马尔可夫,马尔可夫性、马尔可夫链、马尔可夫链计算等HMM的数学基础知识;接着,介绍隐马尔可夫模型的假设、图结构、联合概率分布等马尔可夫模型的原理,并结合例子详细说明;然后,详细阐述了马尔可夫模型的前向算法、维特比算法及其在语音识别、中文分词上的应用;最后,指出隐马尔可夫模型的局限,并与朴素贝叶斯模型、条件随机场模型进行对比总结。本文目录结构如下:
一、HMM基础
1、马尔可夫
2、马尔科夫性
3、马尔可夫链
4、马尔可夫链计算
二、HMM原理
1、假设
2、图结构
3、联合概率分布
4、定义
三、HMM应用
1、概率计算算法
2、学习算法
3、预测算法
四、HMM总结
1、HMM的局限
2、HMM VS CRF
3、HMM VS Bayes
接下来,让我们一起探索HMM隐马尔可夫模型的世界吧!
从中国传统模式“三仙归洞”引出类“马尔可夫链”。
三仙归洞的一种玩法:把一个杯里的球变到另一个杯中。
一、HMM基础
主要介绍马尔可夫、马尔可夫性、马尔可夫链和马尔可夫链计算等。
1、马尔可夫的生平
2、什么是马尔可夫性?
马尔可夫性,可以通俗的理解为:现在决定未来。
3、什么是马尔可夫链?
4、计算马尔可夫链在时刻t的状态分布
用数学语言描述“三仙归洞”魔术。
n次移动后,球的(状态)概率分布。
二、HMM原理
主要介绍隐马尔可夫模型的假设、隐马尔可夫的图结构、隐马尔可夫的联合概率分布和隐马尔可夫的定义等。
提出问题:什么是隐马尔可夫模型?
举个隐马尔可夫模型的例子——例1。
例1的图结构,如下图所示:
1966年,LEONARD E. Baum 和 J. A. EAGON在论文《An inequality with applications to statistical estimation for probabilistic functions of Markov processes and to a model for ecology 》中首次提出隐马尔可夫模型。
1、隐马尔可夫模型的假设
2、隐马尔可夫模型的图结构
隐马尔可夫模型的状态转移概率
隐马尔可夫模型的观测概率
隐马尔可夫模型的初始状态概率
3、隐马尔可夫的联合概率分布
4、隐马尔可夫的定义
三、HMM应用
主要介绍隐马尔可夫模型的概率计算算法、学习算法、预测算法及其对应的应用。
隐马尔可夫模型的三个基本问题,分别是识别问题、学习问题、解码问题。
1、概率计算算法
什么是识别问题?
什么是前向算法?
例1的前向算法的计算。
概率计算算法的应用。
HMM语音识别的图结构如下图所示:
2. 学习算法
什么是学习问题?
什么是鲍姆-韦尔奇算法?
学习算法的应用——语音识别的声学模型训练、机器翻译的翻译模型训练。
3、预测算法
什么是解码问题?
什么是维特比算法?
动态规划,维特比算法的原理。
求例1的最优状态序列。
先求t=1,t=2时。
接着求 t=3 时,
例1的状态路径栅栏图。
穷举例1的状态路径
求例1的最优路径的几何描述。
我们看一下维特比算法的性能,从时间复杂度来看:
(1)穷举法: 个状态 次观测共有n的m次方条路径
例子:3个状态5次观测,即3*3*3*3*3
(2)维特比算法的路径次数m*n*n
例子:维特比算法的路径次数5*3*3。
即数据量大时,维特比算法效果明显,可以降到线性计算量。
预测算法的应用——中文分词。
HMM的中文分词原理的详情可参考:《中文分词的原理、方法与工具》
jieba结巴中文分词就应用了隐马尔可夫模型的原理,jieba的代码实现可参考:
向前算法、鲍姆-韦尔奇算法、 维特比算法的本质。
四、HMM总结
主要介绍隐马尔可夫模型的局限,与贝叶斯模型、条件随机场模型的对比。
1、隐马尔可夫模型的局限
2、隐马尔可夫模型与条件随机场模型的对比
CRF的原理可以参考:《CRF条件随机场的原理、例子、公式推导和应用》
3、隐马尔可夫模型与贝叶斯模型的对比
结束语:
HMM隐马尔可夫模型是关于时序的概率模型,描述由一个隐藏的马尔可夫链随机生成不可观测的状态的序列,再由各个状态随机生成一个观测从而产生观测序列的过程。
基于隐马尔可夫模型,使用前向算法、鲍姆-韦尔奇算法以及维特比算法,很好地解决了一些识别、学习以及预测场景问题,并广泛应用在语音识别、生物信息、自然语言处理、数字通信等领域。
参考文献
能力和水平有限,我的可能是错的。