Hidden Markov Models:隐马尔可夫模型。
隐马尔可夫模型是一个包含隐变量的时序模型,可以从马尔可夫假设角度概率推导:
也可以从概率图(简单紧凑的概率图模型)角度理解依赖关系:
本文结合概率基础,主要从概率图角度理解HMM。
如图即为一个简单的贝叶斯网络,O表示观察值,Q表示隐变量,经常使用的符号还有O-S、X-Y等。
HMM通过建模p(O, Q)预测p(Q|S),属于生成式模型。
HMM主要包含以下几点:
Jurafsky & Martin 《Speech and Language Processing》
Jurafsky & Martin 《Speech and Language Processing》
如果遍历Q,计算复杂度将是O(N^T),N表示Q的空间大小,T表示序列长度;如果采用前向算法,则时间复杂度降到O(N^2 * T)。
对于HMM来说,关键点是X1->X2-> ··· ->Xn,只要中间有一处阻塞,X1影响不到Xn。
The Forward Algorithm,应用于评估问题,求解p(O|λ)。
关于α的定义及递归关系,在概率图上,一目了然。
Jurafsky & Martin 《Speech and Language Processing》
算法流程:
Jurafsky & Martin 《Speech and Language Processing》
The Viterbi Algorithm,应用于解码问题,给定模型λ=(A,B)及观察值O=o1o2···ot,求解最优序列q1q2···qt。
与前向算法形式一致,替换求和(Σ)为最大(max)即可。
Jurafsky & Martin 《Speech and Language Processing》
算法流程:
Jurafsky & Martin 《Speech and Language Processing》
一种最优化方法:
Daniel Ramage CS229 Hidden Markov Models Fundamentals
the backward probability,前向后向算法的一部分,辅助解决学习问题。
算法流程:
Jurafsky & Martin 《Speech and Language Processing》
the Baum-Welch algorithm,解决模型学习问题,给定观察值序列O及隐状态集合,学习矩阵A和B。
采用EM算法,CS229 Daniel Ramage 给出了严谨的证明,假定隐变量期望给定,采用拉格朗日乘子法最优化最大似然,然后根据求解结果,确定实际需要求解的隐变量期望。
Daniel Ramage CS229 Hidden Markov Models Fundamentals
期望示意图:
Jurafsky & Martin 《Speech and Language Processing》
对HMM模型来说:
词性标注:
Jurafsky & Martin 《Speech and Language Processing》
GMM-HMM:
A Learning-Based Approach for Lane Departure Warning Systems With a Personalized Driver Model
DNN-HMM:
HMM是一个有向概率图/贝叶斯网络模型,能够通过序列观察值,推测更能表达事物本质的隐状态。
HMM是通过对p(O,Q)建模推测P(Q|O),是生成式模型,当前状态只和上一时刻状态有关的马尔可夫假设,使模型捕捉上下文信息有所欠缺。
HMM是机器学习非常经典的算法,深度学习时代,对序列建模,采用更多的是RNN、LSTM等。
联系客服