ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

【ML-13-5】条件随机场(CRF-Conditional Random Field)

2020-06-21 22:58:15  阅读:651  来源: 互联网

标签:yi 13 ML 模型 Random 马尔科夫 词性 HMM CRF


目录

  1. 知识串讲
  2. HMM VS MEMM
  3. 从随机场到马尔科夫随机场
  4. 条件随机场(CRF)
  5. MRF因子分解定理
  6. 线性链条件随机场(Linear-CRF)

一句话简介:条件随机场(Conditional Random Fields, 以下简称CRF)是给定一组输入序列条件下另一组输出序列的条件概率分布模型(是给定随机变量X条件下,随机变量Y的马尔科夫随机场。)。可以作为一种软分类模型,在自然语言处理中得到了广泛应用。和HMM很相似,去掉了HMM中的齐次Markov假设和观测序列的独立假设。

   

一、知识串讲

对于解决分类任务的模型,我们可以将其划分为硬模型和软模型。

1.1、分类硬模型

即为输出即为确值(对于二分类就是0 or 1)

  1. SVM(支持向量机):最大支持向量的几何间隔驱动的;
  2. PLA(感知机模型):误分类驱动的
  3. LDA(线性判别模型):类间大,类内小

1.2 分类软模型

即为输出是概率,这里可以再进一步细分为:

1.2.1 一个分支--概率生成模型

是对P(X,Y)进行建模。

朴素贝叶斯(Naive Bayes)朴素贝叶斯这里之所以叫"朴素",是因为这里做了一个比较强的假设,就是在给定y的情况下,xi与xj是相互独立的,因此可以简写NB假设为:P(X|y=1/0)=∏P(xi|y=1/0)

隐马尔科夫(Hidden Markov Model),当朴素贝叶斯模型中的Y从0/1扩展到Seq(序列),那么,模型便扩展为了隐马尔科夫模型(HMM)。这里面也有2个假设:

  1. 齐次Markov假设
  2. 观测独立假设

1.2.2 另一个分支--概率判别模型

是对P(Y|X)进行建模。

逻辑回归(Logistics Regression)/SoftMax Regression。这类问题是对于P(y|x)进行建模的,利用最大熵思想(Maximum Entropy Model)驱动模型。(PS:在最大熵原则下,如果给定均值和方差,那么Gaussian Dist熵最大)

1.2.3 MEMM(Maximum Entropy Markov Model)最大熵马尔科夫模型

这是结合了最大熵+HMM的优点的一个模型,属于概率判别模型,这与HMM的模型有点像,但是区别在于:

  1. HMM是生成模型,是对P(X,Y)进行建模;MEMM是判别模型,是对P(Y|X)进行建模;
  2. 在HMM中,观测变量是隐变量的输出;在MEMM中,观测变量变成输入了;
  3. HMM中是有观测独立假设的;在MEMM中,并不是观测独立的(直观理解:在词性标注任务上,给x2标注的词性y2并不单单与x2有关,也与上下文x1、x3有关,因此假设更加合理。

MEMM的著名问题(缺点):

Label Bias Problem(标注偏差问题):原因是因为局部归一化。

1.2.4 CRF(Condition Random Field)条件随机场模型

为了打破MEMM的标注偏差问题,将MEMM中的有向变成了无向,解决了局部归一化问题,变成了全局归一化。

二、HMM VS MEMM

2.1 HMM模型理解

HMM可以理解为是泛化的GMM、或是泛化的NB模型。其是属于一个概率生成模型。模型参数可以用一个三元组表示:

λ=(π,A,B),其中:π表示初始状态;A表示状态转移矩阵(就是Yt转移到Yt+1的概率);B表示发射矩阵(就是Y"射"到X的概率)。

HMM具有2个假设,(1)齐次1阶马尔科夫;(2)观测独立假设。下面对着两个强假设进行加以解释说明:

2.1.1 齐次1阶马尔科夫

齐次的理解:就是在马尔科夫链{y1,y2,…,yn}中,马氏链中的任意yt转移到yt+1所服从的概率分布是相同的,这个就叫做齐次。(PS:在链中的任意节点yt,其取值有K多种可能且都是离散的,这里所说的相同的概率分布:是指这K种不同状态之间相互转移的概率,这个是相同不变的)用标准化的语言来说:P(yt|yt+1)这个转移概率与时间t无关。

1阶的理解:在马尔科夫链{y1,y2,…,yn}中:1阶Markov的通俗理解:y3只与y2有关,y2只与y1有关;之所以说是1阶,也就是关联链条的长度为1;如果是2阶的话,y5只与y3和y4与y2是无关的。1阶Markov的假设目的是简化计算,因为计算链条变短了。

齐次1阶Markov用数学表达可以表示成:

2.1.2 观测独立假设

用通俗的表述可以理解为:在给定Yt的情况下,Xt与其他的Xk(k≠t)全都无关。用数学表达可以表示成:

观测独立假设的目的还是简化计算,因为不考虑观测序列的内联关系了。

观测独立假设的来源,其实算得上是从NB上扩展来的(因为HMM算是NB的泛化,[Y从0/1扩展到Seq])。例如,判断一个邮件是否为垃圾邮件,经典NB模型解决的垃圾邮件分类问题。

这里我们就做的假设是:每个单词之间是相互独立,当然这个假设是不太合理的,因为一句话中的词语肯定是有着一定语言学上的内在联系的。

2.2 HMM建模

在概率图模型圈出最小单元,如图所示:(可以很明显看出的是观测独立假设),这样根据这个最小单元,我们就很容易可以写出HMM的建模数学表示。

建模对象为:P(X,Y|λ)——注意:生成模型建模的是联合概率分布

2.3 MEMM模型理解

MEMM打破了HMM的观测独立假设,那么,我们来看MEMM是怎么打破的,还是画出MEMM的最小单元,如下图(图的上半部分和下半部分表示意思相同,就是X映射到Y,个人理解:上半部分更能体现观测独立假设被打破,更符合模型定义,下半部分为了和HMM对比使用)。

这图与HMM的最小单元非常相似,唯一的区别在于:对于X与Y之间的发射箭头进行了反转。这时候我们看:给定Y2,这时候x1与x2是否还是独立了么?

这是一个显然的"V"字型结构,head-to-head,在给定Y2的情况下,这时候,x1与x2这个路径就是个连通的了,所以就不再独立了(不科学的解释:y2相当于x1和x2的孩子,给定出孩子,这两个个体更加有联系了)。于此同时,这样的处理,模型就不再是一个概率生成模型了,就变成了一个概率判别模型了。

2.4 MEMM建模

建模对象:P(Y|X,λ)——注意:判别模型建模的是条件概率分布

2.5 MEMM特点

1)打破了观测独立假设,处理的因为:对于待标注的序列而言,事实上,序列的内容本不是独立的,也就是说,打破观测独立性会使得模型变得更加合理

2)为什么说在这里,判别式的模型比生成式模型要好?因为:任务驱动的,在这样的序列标注任务上,在给定一个待标注序列,我们更关注的是标注的是什么,因此,对于这样的任务我们只需要对条件概率建模就可以了,而去求联合概率分布就将问题复杂化了(计算也复杂化)。

2.6 MEMM的缺点

它的主要缺点是会造成Label Bias Problem,(在John Lafferty论文中,指出了MEMM会造成Label Bias Problem问题)。

在最小单元我们把它当成一个系统,系统从yt−1到yt的这样一个转移用数学可以表示成一个函数,是受yt−1、yt与xt共同作用的一个函数,系统对外是有一定能量的,这个函数被称为Mass Score,而且是大于0的。但是问题出现在:这个Mass Score被局部归一化了。条件概率熵越小,那么对于观测值的考虑越少(有时间看一下John Lafferty的论文)

为了能够更好地理解它的问题所在,这里举一个比较极端的例子。

比如,我们训练好了这样的一个模型,现有一个观测序列是[r,i,b]。

在状态0时,由于P(4|0)>P(1|0),所以我们选择从0→4转移路径;问题出现在了第二步转移上:由于P(5|4)=1,是受到了局部归一化的影响,从4状态转移仅有1条路径选择,其转移的条件概率为1,其所具有的熵值为0。

【为什么从4状态向5转移的条件概率为1?---正是因为MEMM在每一步转移的概率都是要做局部归一化的,也就是说,从4状态向外转移的所有的情况加和要为1,在这里,仅有1中转移情况,所以P(5|4)】

在这种情况下,无论观测值为什么,都不会影响4→5的转移,但是,这样标注出来的序列0→4→5→3,[r,o,b]就与客观事实不符了,这也就是问题的所在。

所以,为了解决局部归一化的问题,CRF取消了Y序列的转移方向,也就是取消了局部归一化,改变为了全局归一化。

三、从随机场到马尔科夫随机场

3.1 随机场RF

  首先,我们来看看什么是随机场。"随机场"的名字取的很玄乎,其实理解起来不难。随机场是由若干个位置组成的整体,当给每一个位置中按照某种分布随机赋予一个值之后,其全体就叫做随机场。还是举词性标注的例子:假如我们有一个十个词形成的句子需要做词性标注。这十个词每个词的词性可以在我们已知的词性集合(名词,动词...)中去选择。当我们为每个词选择完词性后,这就形成了一个随机场。

3.2 马尔科夫随机场MRF

了解了随机场,我们再来看看马尔科夫随机场。马尔科夫随机场是随机场的特例,它假设随机场中某一个位置的赋值仅仅与和它相邻的位置的赋值有关,和与其不相邻的位置的赋值无关。继续举十个词的句子词性标注的例子: 如果我们假设所有词的词性只和它相邻的词的词性有关时,这个随机场就特化成一个马尔科夫随机场。比如第三个词的词性除了与自己本身的位置有关外,只与第二个词和第四个词的词性有关。 

【说明1:1、概率无向图模型(probabilistic undirected graphical model)又称为马尔科夫随机场(Markov Random Field),或者马尔科夫网络。也就是说,两个节点之间并没有明确的前后以及方向关系,两个节点之间存在相互作用,与更远出的点没有关系。 2、有向图模型通常被称为信念网络(belief network)或者贝叶斯网络(Bayesian network)。 对于这个我们要稍加区分。】

【说明2:MRF常用于图像方面——图像分割。图像是一个典型的马尔科夫随机场,在图像中每个点可能会和周围的点有关系有牵连,但是和远处的点或者初始点是没有什么关系的,离这个点越近对这个点的影响越大。这个很好理解,图像中这个像素点是黑色的,那个很有可能周围也是黑色的像素,但是并不能够推断出距离这个像素点远的像素点们也是黑的。当然这个附近,也就是这个领域的范围和大小,是由我们自己去决定的。】

四、条件随机场(CRF)

理解了马尔科夫随机场,再理解CRF就容易了。CRF是马尔科夫随机场的特例,它假设马尔科夫随机场中只有X和Y两种变量,X一般是给定的,而Y一般是在给定X的条件下我们的输出。这样马尔科夫随机场就特化成了条件随机场。在我们十个词的句子词性标注的例子中,X是词,Y是词性。因此,如果我们假设它是一个马尔科夫随机场,那么它也就是一个CRF。

对于CRF,我们给出准确的数学语言描述:设X与Y是随机变量,P(Y|X)是给定X时Y的条件概率分布,若随机变量Y构成的是一个马尔科夫随机场,则称条件概率分布P(Y|X)是条件随机场。

五、MRF因子分解定理

其中,x是个联合概率分布,它的维度是p维;ψ表示势函数;E表示能量函数;K表示最大团的个数;ci表示第i个最大团。

下面对上式子做一个小的变化:

【说明:最大团定义? 通俗理解:就是在无向图中,任意一个子图中,每个节点都能相互的连通,我们就成这个子图为最大团。例如,有4个节点的线性链,[a—b—c—d]。在这个线性链中,最大团的个数就是:3个,即为[a—b],[b—c],[c—d]。具体可参考:https://www.jianshu.com/p/dabbc78471d7】

六、线性链条件随机场(Linear-CRF)

注意在CRF的定义中,我们并没有要求

标签:yi,13,ML,模型,Random,马尔科夫,词性,HMM,CRF
来源: https://www.cnblogs.com/yifanrensheng/p/13174437.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有