条件随机场——文献解读《Conditional Random Fields: An Introduction》

《Conditional Random Fields: An Introduction》条件随机场介绍

Hanna M. Wallach 2004.2.24
1、标签序列数据

将标签序列分配给一组观察序列的任务出现在许多领域,包括生物信息学、计算语言学和语音识别。例如,考虑自然语言处理任务,即用相应的词性标记一个句子中的单词。在这个任务中,每个单词都有一个标签,表明它的词性,产生一个带注释的文本,例如:
[主语 他] [动词 估计][介词 当前][名词 帐户][名词 赤字][MD 将][动词 缩小][…]
用这种方式标记句子对于高级自然语言处理任务是一个有用的预处理步骤,POS标记通过明确指出语言固有的某些结构来增加单词本身所包含的信息。
执行这种标记和分割任务的最常见方法之一是使用隐马尔科夫模型(HMMs)或概率有限状态自动机来识别任何给定句子中最可能的标签序列。HMMs是生成模型的一种形式,它定义了一个联合概率分布p(X,Y),其中X和Y分别是在观测序列及其对应标签序列上的随机变量。为了定义这种性质的联合分布,生成模型必须枚举所有可能的观察序列——对于大多数领域来说,这是一项棘手的任务,除非观察元素被表示为独立单元,独立于观察序列中的其他元素。更准确地说,观测元素在任何给定的时刻只能是直接取决于当时的状态或标签。对于一些简单的数据集来说,这是一个适当的假设,但是大多数真实世界的观察序列最好是通过多个交互特性和观察元素之间的长期依赖关系来表示。
这种表示问题是标记序列数据时最基本的问题之一。显然,需要建立一个易于理解推理的模型。但是,一个能够表示数据而又不需要做出无根据的独立假设的模型也是可取的。满足这两个条件的一种方法是使用一个模型,该模型在给定特定观察序列x的标签序列上定义条件概率p(Y | x),而不是在标签序列和观察序列上的联合分布上定义。条件模型通过选择使得条件概率p(y*|x*)最大的标签序列y*,来标记一个新的观察序列x*。这种模型的条件性质意味着不浪费任何精力对观察结果进行建模,而且人们不必对这些序列做出毫无根据的独立假设;模型可以捕获观察数据的任意属性,而且人们不必担心这些属性是如何关联的。
条件随机场(CRFs)是一个基于前一段描述的条件方法的概率框架,用于标记和分割序列数据。CRF是一种无向图形模型,在给定一个特定观测序列的标签序列上定义一个对数线性分布。CRFs相对于隐马尔科夫模型的主要优势在于其条件性质,它使得HMM所需的独立性假设放宽,以确保易于推断。此外,CRFs还避免了标签偏差问题,这是最大熵马尔可夫模型和其他基于有向图模型的条件马尔可夫模型所表现出的弱点。在许多真实的序列标记任务中,CRF优于MEMM和HMM。

2、无向图模型

条件随机场可视为无向图形模型或马尔科夫随机场,全局条件为X,表示观测序列的随机变量。形式上,我们定义G =(V,E)是一个无向图,节点v∈V,与Y中的元素Yv一一对应。如果每个随机变量Yv对G服从马尔科夫性质,则(Y, X)为条件随机场。理论上,图G的结构可以是任意的,只要它表示被建模的标签序列中的条件独立性。但是,在建模序列时,最简单也是最常见的图形结构是与Y元素对应的节点形成一个简单的一阶链,如图1所示。
在这里插入图片描述
图1:序列链结构CRFs的图形结构,模型不生成与无阴影节点对应的变量

2.1 势函数

条件随机场的图形结构可用于将Y上的元素Yv的联合分布分解成严格正实值势函数的标准化积,这是由条件独立的概念导出的。每个势函数作用于在G中顶点表示的随机变量的子集上。根据无向图模型条件独立性的定义,G中两个顶点之间没有边,这意味着在模型中给定所有其他随机变量的情况下,这些顶点表示的随机变量是条件独立的。因此,势函数必须确保有可能分解联合概率,使有条件的独立随机变量不会出现在同一个势函数中。实现这一要求的最简单方法是要求每个势能函数对一组随机变量进行操作,这些随机变量的对应顶点在G内形成一个最大的团。这确保了没有势函数引用任意一对顶点不直接连接的随机变量,如果两个顶点同时出现在一个小集团中,这种关系就会变得明显。对于链式结构的CRF(如图1所示),每个势函数将对相邻的标签变量Yi和Yi+1进行操作。

值得注意的是,孤立的势函数没有直接的概率解释,而是表示了对已定义函数的随机变量的配置的约束。这反过来又会影响全局配置的概率——一个高概率的全局配置可能比一个低概率的全局配置更满足约束条件。

3、条件随机场

Lafferty等人定义了给定观测序列x作为势函数的标准化积,特定标签序列y的概率:
在这里插入图片描述
tj(yi-1,yi,x,i)是整个观察序列和标签序列中位置i和i-1处的标签的过渡特性函数,sk(yi, x, i)是在位置i和观测序列的标签的状态特征函数,λj和μk是要从训练数据估计的参数。
在定义特征函数时,我们构造了一组观测的实值特征b(x, i)来表达训练数据的经验分布的一些特征,这些特征也应该包含在模型分布中。这种特性的一个例子是:
在这里插入图片描述
如果当前状态(在状态函数的情况下)或之前和当前状态(在转换函数的情况下)具有特定的值,则每个特征函数都具有这些实值观测特征之一的值b(x, i)。因此,所有的特征函数都是实值的。例如,考虑以下转换函数:
在这里插入图片描述
在本报告的其余部分中,通过以下公式简化符号:
在这里插入图片描述
其中每个fj(yi-1,yi,x,i)是状态函数s(yi-1,yi,x,i)或转换函数t(yi-1,yi,x,i)。这使得给定观察序列x的标签序列y的概率被写为:
(3)
Z(x)是一个标准化因子。

4、最大熵

CRF的形式,如(3)所示,很大程度上受到最大熵原理的推动,这是一个从一组训练数据估计概率分布的框架。概率分布的熵是不确定性的一种度量,当所讨论的分布尽可能均匀时,熵最大化。最大熵原理认为,由不完全信息(如有限的训练数据)构成的唯一合理的概率分布,是在一组受约束表示的可用信息下具有最大熵的概率分布。任何其他分布都是不合理的假设。
如果信息封装在训练数据是使用一组如前一节所描述的特性函数:最大熵模型分布尽可能均匀,同时确保每个特性函数对训练数据的经验分布的期望值等于特征函数对模型分布的期望值。识别这种分布是一个约束优化问题。

5、极大似然参数推断

假设训练数据{(x(k),y(k)}独立同分布,(3)所有训练序列的乘积,作为参数λ的函数,被称为似然函数,用p({y(k) } | { x(k)},λ)表示。最大似然函数的训练选择使得对数似然函数最大化的参数值。对于CRF,对数似然由下式给出:
在这里插入图片描述
该函数为凹函数,保证收敛到全局最大值。
对数似然函数关于参数λj取微分得到:
在这里插入图片描述
其中P(X,Y) 代表训练数据的经验分布,Ep(·)表示对分布p的期望。注意,将该导数设置为零产生最大熵模型约束:每个特征相对于模型分布的期望等于训练数据的经验分布下的预期值。
不可能通过分析使对数似然函数最大化从而确定参数值——将梯度设置为零,并且对λ求解并不总是产生闭合解。相反,必须使用迭代技术(例如迭代缩放或基于梯度的方法)来识别最大似然参数。
6、CRF概率作为矩阵计算
对于链结构的CRF,其中每个标记序列由起始和结束状态y0和yn + 1增加,分别标记为开始和结束,给定观察序列x的标记序列y的概率p(y | x,λ)可以使用矩阵有效计算。
设Y是标签的字母表,从这个表中得到Y和Y’的标签。我们定义一组n + 1维的矩阵
{Mi(x)| i = 1 ,.。。 ,n + 1},其中每个Mi(x)是| Y×Y | 的矩阵,具有下列形式的元素。
在这里插入图片描述
给定观测序列x,标号序列y的非规范化概率可以写成这对序列的n+ 1矩阵的适当元素的乘积:
在这里插入图片描述
类似地,观测序列x的归一化因子Z(x)可以使用闭半环从Mi(x)矩阵的集合中计算出来,闭半环是一种代数结构,为图形中路径问题的求解提供了一般框架。省略细节,Z(x)由所有n + 1 Mi(x)矩阵的乘积的(开始,结束)项给出:在这里插入图片描述

7、动态规划

为了确定最大似然参数值——不管是否使用迭代缩放或基于梯度的方法——必须能够有效地计算关于CRF模型分布的每个特征函数对训练数据中每个观测序列x的期望,由以下给出:
(5)
执行这样的计算是棘手的,由于需要对所有标签序列求和:如果观测序列x(k)有n个元素,有n|Y|个可能对应的标签序列。把这些可能相加在一起代价太大了。
幸运的是,上式的右边可以重写为
在这里插入图片描述
无需对n | Y |个序列求和, 此外,类似于隐马尔可夫模型的前向 - 后向算法的动态编程方法可用于计算p(Yi-1 = y’,Yi = y | x(k),λ)。
通过以下基本情况分别定义前向和后向矢量-αi(x)和βi(x):
在这里插入图片描述
以及递归关系:
在这里插入图片描述
给定观察序列x(k)的Yi和Yi-1取标签y’和y的概率可写为:
在这里插入图片描述
Z(x)由(4)中所有n + 1个 Mi(x)矩阵的乘积的(开始,停止)项给出。将该表达式代入(6)可得到计算特征期望的有效动态规划方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值