应用
隐马尔科夫模型(HMM,Hidden Markov Model)可用标注问题,在语音识别、NLP、生物信息、模式识别等领域被实践证明是有效的算法。
定义
隐马尔科夫模型是关于时序的概率模型,描述由一个隐藏的马尔科夫链随机生成不可观测的状态的序列,再由各状态随机生成一个观测而产生观测序列的模型(参考李航的《统计学习方法》第10章)。
隐马尔科夫模型随机生成的状态随机序列,称为状态序列;每个状态生成一个观测,由此产生的观测随机序列,称为观测序列。
Q是所有可能的状态的集合,V是所有可能的观测的集合
其中,N是可能的状态数,M是可能的观测数
Q是未知的,V是已知的,我们通过对V来做Q的推论,就是隐马尔科夫模型。
组成
HMM由初始状态概率向量π 、状态转移概率矩阵A以及观测概率矩阵B确定。
HMM的概率计算算法
直接计算
按照概率公式,通过列举所有可能的长度为T的状态序列 I={i1,i2,...,IT} I = { i 1 , i 2 , . . . , I T } ,求各个状态序列I与观测序列 O={o1,o2,...oT} O = { o 1 , o 2 , . . . o T } 的联合概率 P(O,I|λ) P ( O , I | λ ) ,然后对所有可能的状态序列求和,得到 P(O,I) P ( O , I )
前向计算
定义:给定隐马尔可夫模型λ,定义到时刻t部分观测序列为o1,o2,…,ot,且状态为qi的概率为前向概率,记作
可以递归地求得前向概率α t(i)以及观测序列概率P(O|λ)
前向计算的计算过程:
初值: α1(i)=πibi(o1) α 1 ( i ) = π i b i ( o 1 ) ,i=1,2,…,N
递推:对t=1,2,…,T-1
终止:
后向计算
定义:给定隐马尔可夫模型λ,定义到时刻t状态为qi的条件下,从t+1到T的部分观测序列为ot+1,ot+2,…,oT的概率为后向概率,记作
可以用递归的方法 求得后向概率β t(i)以及观测序列概率P(O|λ)
后向计算的计算过程:
初值: βT(i)=1 β T ( i ) = 1
递推:对t=T-1,t=T-2,…,1
终止: