一、HMM是概率图模型的一种,属于生成模型。HMM模型描述的就是从隐状态生成可观测状态的过程。
image.png
HMM有两个基本假设:
1、马尔科夫假设:第t个隐状态(实体标签)只和前一时刻的t-1隐状态有关,与除此之外的所有隐状态无关。如上图蓝色部分
2、观测独立假设,即任意时刻的观测o(t)只依赖于当前时刻的隐状态i(t).与其他时刻无关。如上图红色部分所示。
二、HMM的5个要素
1、N,表示所有可能的隐状态的集合
image.png
2、M,表示所有观测节点的集合
image.png
3、A, 状态转移概率矩阵,表示由一个隐状态转移到另一个隐状态的概率,如上图中蓝色所示,image.png,它是一个N x N的矩阵,其中
image.png
image.png
4、B, 发射概率矩阵(观测概率矩阵),表示由一个隐状态生成观测节点的概率,如图中红色所示,
image.png
image.png
image.png
上式表示指的是在t时刻由实体标签为q(j),生成观测结果v(k)的概率。
5、π,初始隐状态概率矩阵,表示在t=1时刻,隐状态是某个N状态集N(i)的概率。
image.png
上式表示的是自然语言序列第一个词o(1)是隐状态q(i)的概率。
状态转移概率矩阵A与初始状态概率向量π确定了隐藏的马尔可夫链,生成不可观测的状态序列。
观测概率矩阵B确定了如何从隐状态生成观测状态。
三、HMM的参数学习(监督学习)
使用极大似然估计来估计HMM的参数。
image.png
表示第1时刻是隐状态q(i)占总第一个字o(1)的观测次数的比例。
2、A状态转移概率矩阵的参数估计:
image.png
3、B发射概率矩阵的参数估计:
image.png
表示在t时刻,由隐状态q(j)生成汉字v(k)的概率
极大似然估计:通俗理解来说,就是利用已知的样本结果信息,反推最具有可能(最大概率)导致这些样本结果出现的模型参数值!
注:某大神up主的视频,看了都说好
https://www.bilibili.com/video/BV1MJ411w7xR?spm_id_from=333.999.0.0
https://github.com/aespresso/a_journey_into_math_of_ml/blob/master/05_NER_hidden_markov_model/HMM_NER.ipynb