作者:CHEONG
公众号:AI机器学习与知识图谱
研究方向:自然语言处理与知识图谱
阅读本文之前,首先注意以下两点:
1、机器学习系列文章常含有大量公式推导证明,为了更好理解,文章在最开始会给出本文的重要结论,方便最快速度理解本文核心。需要进一步了解推导细节可继续往后看。
2、文中含有大量公式,若读者需要获取含公式原稿Word文档,可关注公众号后回复:HMM第一讲,本文主要从隐马尔科夫模型背景、定义、两大假设和三个问题来理解HMM。
一、初识HMM
先从整体角度认识一下隐马尔科夫模型HMM,如下图所示,HMM是一种加了时序信息的概率图模型,并且是混合模型。HMM和高斯混合模型GMM有两个明显的区别,其一是HMM含有时序信息,其二是HMM模型状态变量之间非独立的,而GMM的状态变量间是相互独立的。HMM、Kalman Filter和Particle Filter都属于时序混合概率图模型,但HMM状态变量是离散的,Kalman Filter和Particle Filter的状态变量是连续的,且Kalman Filter是线性的,而Particle Filter是非线性的。
二、HMM定义
隐马尔可夫模型描述的是由隐藏的马尔可夫链随机生成观测序列的过程,属于生成模型,常应用在标注问题、语音识别等领域。首先明确一下马尔科夫的定义:
1.状态集合 Z Z Z
2.观测集合 X X X
3.状态转移概率矩阵 A A A
4.观测概率矩阵 B B B
5.初始状态概率 π \pi π
观测变量:
状态变量:
A A A表示状态转移概率矩阵、 B B B表示观测概率矩阵、 π \pi π表示初始状态概率向量
隐马尔科夫概率图如下所示:
三、HMM两个重要假设
1.齐次马尔可夫假设:隐藏的马尔可夫链在任意时刻的状态只依赖于前一时刻的状态,与其他状态以及观测序列无关
2.观测独立假设:任意时刻的观测只依赖于当前时刻隐马尔可夫链的状态,与其他观测和状态无关
四、HMM三大问题
1.Evaluation问题:已知参数 λ = ( π , A , B ) \lambda=(\pi,A,B) λ=(π,A,B),输出观测序列 O O O的概率 p ( O ∣ λ ) p(O|\lambda) p(O∣λ)有多大
解决算法:前向算法、后向算法
2.Learning问题:参数估计问题,即如何求解参数 λ = ( π , A , B ) \lambda=(\pi,A,B) λ=(π,A,B),使用EM算法求解
3.Decoding问题:已知观测序列 X X X,求解使得 p ( Z ∣ X ) p(Z|X) p(Z∣X)最大的隐状态序列 Z Z Z,公式表示为:
从而可引申出两个问题,预测问题: p ( i t + 1 ∣ o 1 , o 2 , . . . , o t ) p(i_{t+1}|o_1,o_2,...,o_t) p(it+1∣o1,o2,...,ot);滤波问题: p ( i t ∣ o 1 , o 2 , . . . , o t ) p(i_{t}|o_1,o_2,...,o_t) p(it∣o1,o2,...,ot)
三、往期精彩
【知识图谱系列】探索DeepGNN中Over-Smoothing问题
【知识图谱系列】知识图谱表示学习综述 | 近30篇优秀论文串讲
【知识图谱系列】动态知识图谱表示学习综述 | 十篇优秀论文导读
Transformer模型细节理解及Tensorflow实现
GPT,GPT2,Bert,Transformer-XL,XLNet论文阅读速递
Word2vec, Fasttext, Glove, Elmo, Bert, Flair训练词向量教程+数据+源码
原稿获取请关注公众号后回复:HMM第一讲 ,原创不易,有用就点个赞呀!