条件随机场Conditional Random Field,CRF、隐马尔可夫模型Hidden Markov Model,HMM、马尔可夫随机场、马尔可夫性质傻傻分不清楚?帮你理理关系
前言
条件随机场(Conditional Random Field,CRF)和隐马尔可夫模型(Hidden Markov Model,HMM)都是自然语言处理的基础模型,还有马尔可夫随机场什么什么的。我在初学的时候属于是被搞晕了。在讲CRF的时候还会提到马尔可夫随机场什么的,搞得我云里雾里。
经过一段时间的学习,对这几个东西的区别有了一些认识。进行了一下简单的梳理,希望对大家理解有一些帮助。但我个人的理解多半有些瑕疵,希望大家能批评指正。
注意!!!
本文中的一些公式可能不够严谨,只是为了帮助大家理解。如果需要了解严格的数学推导一定要去看教材!!!
一些基础概念
了解相关的基础概念是区分的关键,不想看的可以直接跳转到区别
马尔可夫性质
其含义是,当一个随机过程在给定现在状态及所有过去状态情况下,其未来状态的条件概率分布仅依赖于当前状态;换句话说,在给定现在状态时,它与过去状态(即该过程的历史路径)是条件独立的,那么此随机过程即具有马尔可夫性质。
上述是节自wiki百科,简单的来说——当前的状态只与上一时刻的状态相关,即满足下式:
这个公式说明的就是的概率仅与相关,与之前的状态无关。即,n+1时刻的状态仅与n时刻的状态相关,与再之前的状态无关。
举个简单的在NLP句子生成的例子——句子中某个单词出现的概率仅与前一个单词相关。比如现在有个句子 They came from
要预测后面的单词,就只会考虑from
来生成一个单词。
上述也叫做一阶马尔可夫,它因为只考虑前一个状态,能力有限。因此可以类推到n阶马尔科夫。比如二阶马尔可夫可以表示为如下:
n阶就是考虑前n个时刻的状态。
马尔可夫链
是指具有马尔可夫性质的随机过程。
隐马尔可夫
用来描述一个系统隐性状态的转移和隐性状态的表现概率(来描述一个含有隐含未知参数的马尔可夫过程)。HMM是个双重随机过程(doubly embedded stochastic process),一个是状态转移,另一个是由状态释放出观测值。
在序列标注(Sequence labelling)任务中,模型就是需要对状态序列进行标注。
一些我在公式上的理解——序列 是不可观测的( 可以是句子中每个单词的词性标注,这是无法直接观测得到的,且是模型的输出),并记所有可能状态的集合为 ,由它们产生一个可观测的观测随机序列(observation sequence) ( 可以是句子中每个单词,这个是能观测的,且是模型的输入)
在标注的时候,我们想要完成的任务是给定一个句子 ,输出序列中每个单词的词性 ,即:
是显性的,所以 也是已知的,实际上是在对 建模,后面建模的具体过程比较复杂,就略过了。
详细的介绍可以看这些资料:
https://www.cnblogs.com/Determined22/p/6750327.html
https://zhuanlan.zhihu.com/p/111899116
随机场
在概率论中, 由样本空间 取样构成的随机变量 所组成的 。若对所有的 式 均成立,则称 为一个随机场。
属于是太抽象了,我也不太理解。给一段百度百科的解释:当给每一个位置中按照某种分布随机赋予相空间的一个值之后,其全体就叫做随机场。我们不妨拿种地来打个比方。其中有两个概念:位置(site),相空间(phase space)。“位置”好比是一亩亩农田;“相空间”好比是种的各种庄稼。我们可以给不同的地种上不同的庄稼,这就好比给随机场的每个“位置”,赋予相空间里不同的值。所以,俗气点说,随机场就是在哪块地里种什么庄稼的事情。
主要了解一些随机场如:马尔可夫随机场(MRF),吉布斯随机场(GRF),条件随机场(CRF)和高斯随机场。
马尔可夫随机场
马尔可夫随机场,又被称为马尔可夫网络或者无向图模型。是一个生成式模型,表示一个联合概率分布。设有联合概率分布 ,它可以用无向图表示,若 满足成对马尔可夫性、局部马尔可夫性和全局马尔可夫性这三个中的任意一个,就称此联合概率分布为马尔可夫随机场或者概率无向图模型。可以理解为:当前的节点只与与该节点直接链接的节点有关系,与随机场中其他的节点都没有关系。
详细的介绍可以看这些资料:
https://blog.csdn.net/weixin_52185313/article/details/120965299
https://www.bookstack.cn/read/huaxiaozhuan-ai/spilt.3.a1c8cb11a2e246b2.md
https://blog.csdn.net/watermelon12138/article/details/91571826
条件随机场
条件随机场针对无向图模型。是一个判别式模型,表示条件概率分布。条件随机场可被看作是最大熵马尔可夫模型在标注问题上的推广。
如果随机变量 构成一个由无向图 表示的马尔可夫随机场,对任意节点 都成立,即
则称条件概率分布 为条件随机场。
其中: 其中 表示除了 以外的所有节点;其中 表示与 相邻的节点
详细的介绍可以看这些资料:
https://www.bookstack.cn/read/huaxiaozhuan-ai/spilt.4.a1c8cb11a2e246b2.md
https://blog.csdn.net/watermelon12138/article/details/91571826
https://zhuanlan.zhihu.com/p/148813079
https://www.cnblogs.com/Determined22/p/6915730.html
线性链条件随机场
线性链条件随机场,也是我们使用的最多的。但只是将条件随机场推广到特殊的图上面,就不做过多的介绍。
区别
-
HMM是有向图,另外两个是无向图
-
Conditional random field (条件随机场) is a conditional 马尔科夫随机场,上文有讲
-
最主要的区别就是生成式模型与判别式模型的区别
- 生成式模型拟合的是数据的表征,即数据分布 或者联合分布
- 判别式模型则直接学习类别之前的分类边界,即 ,因此判别式模型并不知道训练数据集合的分布,只是找一个超平面做直截了当的损失最小化。
-
隐马尔科夫模型(HMM)和马尔科夫随机场都是 生成式模型,对 联合分布 进行建模。条件随机场是 判别式模型,对 条件分布 进行建模。
-
条件随机场计算 ,隐马尔科夫模型和马尔科夫随机场计算 。
- 预测问题的实质是计算 ,就是条件随机场的目标函数,因此相对来说条件随机场可能会准确一点。
- 另外两个的目标函数是 ,因此它们可以被用来完成预测 的任务。
详细的:
模型的区别
模型的区别
模型的区别
生成与判别的区别
如有错误,欢迎大家批评指正!也欢迎讨论!
本文作者:WannaMakeMoney
本文链接:https://www.cnblogs.com/WannaMakeMoney/p/16354513.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步