概率图(一)--HMM与CRF对比

先给出二者对比:

1.HMM是生成模型,CRF是判别模型

2.HMM是概率有向图,CRF是概率无向图

3.HMM求解过程可能是局部最优,CRF可以全局最优(这条貌似是和最大熵马尔科夫模型对比的)

4.CRF 的特征可以囊括更加广泛的信息:HMM 基于“上一状态to当前状态”的转移概率以及“当前状态to当前观测”的释放概率,使得当前位置的词(观测)只可以利用当前的状态(词性)、当前位置的状态又只能利用上一位置的状态。但 CRF 的特征函数中,输入包含 (yi−1,yi,x,i)(yi−1,yi,x,i) ,对于当前位置 i 来说可以利用完整的 x 信息

HMM模型中存在两个假设:一是输出观察值之间严格独立,二是状态的转移过程中当前状态只与前一状态有关

5.CRF和HMM都假设隐变量是满足马尔科夫性的,即当前状态仅和上一个状态有概率转移关系而与其它位置的状态无关

接下来对对比结果逐次分析


1.通过两种方式说明HMM是生成式模式

1.1 通过训练过程证明HMM是生成式模式--关于HMM极大似然训练的过程:

从条件概率的定义出发,知


若有足够多的人工标记(Human Annotated)数据,即知道隐含状态mj出现的次数#(mj),以及每次经过这个状态后,生成观测状态vk的次数#(vk,mj),则可用极大似然估计求解

同理,状态转移概率

初始状态概率

(朴素贝叶斯训练也是通过这种数数的方式通过最大似然估计求解, 而且也是生成式模型, 所以这种数数方式都是生成式模式??)

由于数据是人工标记的,因此这种方法称为有监督的训练方法(Supervised Training)。很遗憾的是,很多应用不可能做到这件事情,比如语音识别的声学模型训练,人无法确定产生某个语音的状态序列。而在另外一些应用中,虽然标注数据可行,但成本非常高,比如训练中英文翻译模型时,需要大量中英对照语料,还需要将中英文词组一一对应,成本非常高. 所以对于HMM的训练可以采用非监督训练的EM算法, 这里只需要展示HMM的学习方法, 所以对EM不做展开

通过HMM的最大似然学习, 可知HMM是生成式模型

 

1.2 对比分析

CRF就像一个反向的隐马尔可夫模型(HMM),两者都是用了马尔科夫链作为隐含变量的概率转移模型,只不过HMM使用隐含变量生成可观测状态,其生成概率有标注集统计得到,是一个生成模型;而CRF反过来通过可观测状态判别隐含变量,其概率亦通过标注集统计得来,是一个判别模型。由于两者模型主干相同,其能够应用的领域往往是重叠的,但在命名实体、句法分析等领域CRF更胜一筹。

HMM:从可观察的参数中确定该过程的隐含参数,然后使用隐含变量生成可观测状态,是一个生成模型。通过在一个标注集上进行统计,我们很容易得到一个概率转移矩阵,即任意词性A后紧邻任意词性B的概率都可以被统计出来。对词性与词语直接的映射概率,会直接统计词性-->单词的条件概率矩阵,比如 ”动词“ 生成 ”发射“ 的概率可能为1.5%,而生成”微软“ 的概率为0. 然后对于每一种可能的词性序列结合与条件概率相乘就能得到每一个候选序列的生成概率,然而取概率最高的作为标注结果即可。

CRF:CRF通过可观测状态判别隐含变量,概率亦通过标注集统计得来,是一个判别模型。对CRF来说,可以在二维条件转移矩阵基础上再增加一维词语特征,如“当AB相邻,A是动词且B单词长度超过3时,B是名词的概率是xx"。对词性与词语直接的映射概率,CRF正好反过来,CRF通过发掘词语本身的特征(如长度,大小写,匹配特定词表等,也可以包括词语本身),把每个词语转化成为一个一维特征向量(vector),然后对于每个特征计算特征到词性的条件概率,这样每个词语对候选词性的条件概率即为所有特征条件概率的加和。

比如我们假设特征向量只有两个,且P( ”词语长度>3" --> 名词词性)的概率为0.9,P("词语位于句子末尾“ --> 名词词性)概率为0.4,且一个词恰好满足这两个特征,则其为名词的条件概率为 (0.9 + 0.4) / 2 = 0.65. 这样,CRF根据这个条件转移数值再结合词性的马尔科夫特性,就可以使用与HMM类似的方法寻找最优的词性标注序列了。
 

CRF优于HMM的地方在于,它可以引入更多的特征,包括词语本身特征和词语所在上下文的特征,而非单词本身

HMM无法使用多于一个标记的特征

CRF具有很强的推理能力,并且能够使用复杂、有重叠性和非独立的特征进行训练和推理,能够充分地利用上下文信息作为特征,还可以任意地添加其他外部特征,使得模型能够 获取的信息非常丰富。同时,CRF解决了最大熵模型中的“label bias”问题。CRF与最大熵模型的本质区别是:最大熵模型在每个状态都有一个概率模型,在每个状态转移时都要进行归一化。如果某个状态只有一个后续 状态,那么该状态到后续状态的跳转概率即为1。这样,不管输入为任何内容,它都向该后续状态跳转。而CRF是在所有的状态上建立一个统一的概率模型,这 样在进行归一化时,即使某个状态只有一个后续状态,它到该后续状态的跳转概率也不会为1,从而解决了“labelbias”问题。因此,从理论上讲,CRF非常适用于中文的词性标注。

CRF模型的优点:首先,CRF模型由于其自身在结合多种特征方面的优势和避免了标记偏置问题。其次,CRF的性能更好,CRF对特征的融合能力比较强,对于实例较小的时间类ME来说,CRF的识别效果明显高于ME的识别结果。

综上, 解释了1,3,4
 

总结来说:HMM的状态转移概率和观测概率都可通过数数获得,而CRF根据特征去最大化当前标记的概率, 所以前者是生成式,后者是判别式


2.有向图 vs 无向图

参见: https://blog.csdn.net/asdfsadfasdfsa/article/details/80870974

正是因为无向图这个模型,才决定了CRF可以定义观测序列的全局特征;而HMM只能定义观测序列和标记之间的关系,没法定义全局特征,所以才有局限性


参考:

https://www.cnblogs.com/DjangoBlog/p/9131224.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值