指代消除文献综述
- 基本介绍
- 概念
指代是自然语言中的一种重要的表达方式,它使得语言表达简洁连贯,然而在篇章中大量使用指代,增加了计算机对篇章理解的难度.指代消解的主要任务是识别篇章中对现实世界同一实体不同的表达的过程.从计算语言学的角度,指代消解可以看成是一个分类或者一个聚类的过程.分类的过程主要是判断实体表达之间是否指向同一个实体,聚类的过程主要是判断一个实体表达能否加入到指向某个实体的集合中.从数学的角度上来说,指代消解等同于判断一对实体表达对之间是否满足自反性、对称性、传递性。
- 术语
- 照应语和先行语
句子中如果存在指代关系,抽象的语言单元称为照应语,而具体的实体被称为先行语。
注意:先行语可以在照应语的前面,也可以在后面,如果在前面,照应语与先行语之间的对应关系称为照应关系,简称照应(anaphora);如果在后面,则称为逆照应(cataphora)。
- 指代消解
指代消解就是寻找篇章中先行语与照应语之间的关系,并明确给出照应语所指向的先行语的过程。
- 分类
指代消解根据不同的角度可以分为不同的类型,根据语言学知识从照应语的角度把指代消解分为如下三类:
- 按先行词与照应语出现的顺序分类
在篇章中当照应语的位置在先行语之前则称为预指消解.当照应语位于先行语之后称为回指消解。
- 按照应语的抽象程度分类
根据指代的表现形式的抽象程度,指代消解分为名词消解、代词消解、零代词消解。当句子中的照应语为普通名词时,此时的指代消解叫做普通名词消解。
- 按照应语在句子中语义关系强弱程度分类
当先行语和照应语存在等价关系,并同时指向同一个实体时叫做共指.共指关系在脱离上下文的语义仍旧独立存在,与上下文关系较弱。
非等价消解是指先行语与照应语之间存在着非对称的关系并且和上下文的语义有着紧密联系,在不同的语义和语境下照应语指代的先行语不同。
- 指代消解语料资源
- MUC
美国政府支持的一个致力于真实文本理解的例会。MUC中指代关系的标注引入了2个标注对,采用SGML标注方法:
(1)用<COREF ID=“I”>表示实体的左边界,用</COREF>表示右边界。
(2)用<COREF ID=“J”REF=“M”>表示参照表达式左边界,同样用</COREF>表示右边界,其中,I,J表示顺序号,在一个篇章内,序号由I开始严格单调递增,而M表示J的先行语的编号。如果满足M=I,则表示编号为J的实体为指示语,指向编号为I的名词短语。如果实体1只有ID,没有REF标号,则表示该名词短语无先行词,只是被其他名词短语所引向。
- ACE
从1997年开始酝酿,2000年12月开始启动,从ACE 2004开始加入了中文语料。ACE语料主要来自于广播新闻(40%)、新闻专线(40%)和网络对话(20%),因此,语料又细分成BNEWS,NPAPER和NWIRE 3个子语料。ACE中指代信息是以实体链形式标注的,即具有相同指代关系的实体位于同一指代链,且该指代链拥有唯一的编号。语料中每篇文章的实体链独立记录在对应的XML文件中。
- OntoNotes
OntoNotes语料发展到现在总共有5个版本,其中,OntoNotes V4.0和OntoNotesV5.0分别是CoNLL-2011 shared task以及CoNLL一2012 Shared Task的指定训练、测试语料。语料涉及广播会议、广播新闻、杂志、新闻电讯、电话会议和博客新闻组等六大领域。其中,汉语部分训练语料包含1810个文档,36487个句子;测试语料包含218个文档,4472个句子。常用汉语语料库为:ACE2005、OntoNotesV5.0
- 指代消解评测
- MUC评测
包含召回率R、准确率P和F值三个指标。其中,召回率是指代消解结果中正确消解的对象数目占消解系统应消解对象总数的百分比,它反映了指代消解系统的完备性;准确率是指代消解结果中正确消解的对象数目占实际消解的对象数目的百分比,它反映了指代消解系统的准确程度。比较2个不同系统的性能时,
一般使用F值,F值是召回率和准确率这2个指标的综合值,定义如下:
其中,P为准确率;R为召回率;β为召回率和准确率的相对权重,一般取1,因此,F值可以表示为:
- ACE评测
是以与标准答案的匹配程度作为衡量结果的,主要采用基于漏报(标准答案中有而系统输出中没有)和误报(标准答案中没有而系统输出中有)的方法。由于在人工标注时,对于所有对象是以描述它的最长子串作为标注对象的,因此每一个标注中包含了关于对象的修饰信息,评测时会根据匹配程度记录不同的分值。是目前前唯一的中文指代消解国际评测。与MUC评测不同,ACE评测不是专门针对指代消解的评测,其中涉及很多属性信息的检查,因此,很少有论文采用这种方法进行指代消解的评测。
- ARE评测
目前最为全面的针对英语的指代消解评测,包含4项评测任务:
- 预标注文档上的人称代词消解
文档内所有名词短语均被识别出,且需要消解的代词也被标注出。参加评测的系统需要对每个人称代词在一个不含人称代词的名词列表中找到正确的先行词。
- 预标注文档上的指代消解
文档内所有名词短语均被标识,参加评测的系统需要识别出所有的指代链。
- 生语料上的人称代词消解
文档未进行任何标注,参加评测的系统需要自行识别所需信息,并识别出人称代词对应的先行词。
- 生语料上的指代消解
文档未进行任何标注,参加评测的系统需自行识别所需信息,并识别出所有的指代链信息。
前2项工作在预标注文档上进行,用于评测系统的指代消解算法;后2项不仅评测指代消解算法,还考察了名词短语识别等预处理工作对指代消解的影响。
- 指代消解主要算法模型
- 指代消除的主要方法
- 基于启发式语言学规则的消解方法:
由于缺少标准的语料资源,早期的指代消解系统采用的是基于启发性规则的消解方法。这些方法由人工制定的规则集合所组成,系统根据这些规则判断实体表达间是否存在指代关系.基于规则的指代消解在上个世纪90年代末开始进入一个低谷期,随着基于层次过滤模型的共指消解方法的提出,大量的新文献基于上述两篇文章的思想,基于规则的指代消解方法又有兴起的趋势.基于启发式语言学规则的消解方法分成两个主要部分:早期 Hobbs算法、基于中心理论等算法;近期基于层次过滤消解模型的方法。
- 基于完全解析树的遍历算法:
Hobbs提出了一种不依赖任何语义知识或语篇信息,只利用语法规则和完全解析树信息的指代消解算法。Hobbs算法首先为文档中的每个句子建立完全解析树,然后采用从左到右广度优先的搜索方法遍历完全解析树,最后根据语法结构中的支配和绑定关系选择合法的名词短语作为先行语。
- 基于句法知识的方法:
该方法充分利用句法层面的知识,以启发式的方式运用到指代消解中。例如,Lappin提出了一种RAP算法,使用 Mc Cord提出的槽文法(Slot Grammar)获得文档的句法结构,并通过手工加权的各种语言特征(如主语和宾语)计算各先行语候选的突显性,利用过滤规则确定先行语,实现句内和句间第三人称代词和反身代词的消解。Kennedy等对RAP算法做了修改和扩展,避免构建完整的解析树,只是用自然语言处理工具预处理得到词性标注和句法功能标注等浅层信息,在此基础上确定先行语。Mitkov则在词性标注的基础上,对不同的语言特征进行量化,使用计算权值的方法对可能的候选词进行排序,从中选出先行语,解决代词的指代消解。但上述工作中的语言特征都是手工加权的,为了实现语言特征加权的自动化,Luo等对RAP算法进行了改进,探索了使用最大熵模型来自动确定各种语言特征的权值。
- 基于数据驱动的消解方法:
基于数据驱动的方法主要分为两大类:基于有监督的指代消解方法;基于无监督的指代消解方法。
- 两类指代方法的比较
经过几十年的发展,基于启发性规则和基于数据驱动这两类指代消解方法都不断有文章发表,在此很难一一对其进行比较和说明.表2给出了各类方法经典的算法比较,从中可以得出早期基于规则的指代消解方法主要关注代词消解,而基于数据驱动的消解方法则更加关注名词短语的指代消解.基于规则的指代消解方法便于理解也容易实现,在一定程度上推进了指代消解的发展.由于自然语言的复杂性和多样性,如何针对不同的消解文档选择不同的规则,给不同的规则赋予不同的权重显得尤为困难。一些研究者为了让基于规则的指代消解更加准确,采取了不断地对系统增加新的规则方法.在这个过程中很有可能会引入相矛盾的规则,而且规则的不断引入极有可能会导致推理的复杂化.不断的制定规则需要大量的人力参加,系统的自动化水平很低,可移植性很差.所以这些缺陷很大程度上限制了基于规则的指代消解发展.基于数据驱动的学习的方法都是在国际公认的测评语料上测评,实验结果更加具有普遍性和代表性.因此基于数据驱动的指代消解方法显得更加具有指导意义。
现在指代消解的主流方法都是基于数据驱动的,但是近两年出现一个有趣的现象,只要能准确地抽取丰富的词义、句法、语义以及篇章知识,基于启发性规则的指代消解方法的成功率完全可以和基于数据驱动的指代消解方法媲美,甚至超过该类方法。例如:Lee等提出的基于规则的层次过滤方法在CoNLL-2011shared task 测评中获得最高的准确率。Chen等在COLILING201上分析中文指代消解现状时,对基于层次过滤的指代消解系统和基于实体表达对模型的系统做了一个公平的比较测试实验,该实验是在同语料、同平台、同特征、同实体表达对集合的前提下进行的。实验结果表明基于层次过滤的消解系统要明显优于基于实体表达对模型的消解系统。随后仍旧有文章不断出现,基于启发性规则的指代消解方法有复兴的趋势。
- 研究现状
大多数的指代消解研究已转向基于语料库的指代消解方法的研究。其中主流的方法大致分类如下:
- 基于规则的方法:
Brennan等、Strube和Tetreault利用中心理论,首先根据潜在(Forward-looking)或当前(Backward-looking)中心的不同对先行语候选进行分类,然后使用各种中心获取算法选出先行语。Zhou 等提出了基于限制规则的多代理策略,在此基础上实现的系统代表了目前基于规则的指代消解系统的国际先进水平。
- 基于统计的方法:
Dagan 提出优先考虑同现频率较高的先行语候选作为代词的先行语,对代词“it”的消解进行了研。Ge等提出了一种基于贝叶斯概率统计模型的方法,并将它应用于文本中单数第三人称代词的消解中。Cardie等提出了通过聚类方法进行名词短语的同指消解,其基本思想是收集篇章中的基本名词短语,根据短语的特征对名词短语聚类,判断两个名词是否属于同一个类。
- 基于分类的方法:
Mc Carthy把判断先行语的问题转换成分类问题,通过分类器判断指代语与每个先行语候选之间是否存在指代关系。这一思想为日后指代消解的研究开辟了一条全新的道路。Soon等则首次给出了详尽完整的实现步骤,并开发出了实用的系统。在此基础上,近年来许多研究者对此作了不同程度的扩充,并取得了一定的进展。典型的系统包括:Ng等(2002)对Soon等(2001)的研究进行了扩充,抽取了53个不同的词法、语法和语义特征;Yang等(2003)提出了一个双候选模型,直接学习各先行语候选之间的竞争关系,以更好地确定先行语;2004年,Yang等对先行语侯选指代链中的语义信息在代词(特别是中性代词)指代消解中所起的作用进行了探索,并在此基础上提出了进一步使用上下文信息和网络挖掘技术自动判别代词的语义类别的解决方法,从而更好地解决了代词(特别是中性代词)的指代消解。目前,大多数指代消解系统都采用局部优化方法,即对于每个指代语,依据不同算法,选择最佳的先行语。为了实现全局优化,Luo等(2004)采用贝尔树来表示搜索空间,以求最优化的指代消解方案。Ng(2005)根据不同的系统各有优劣的特点,从不同系统中选择最佳的分区方案。
- 中文指代消解模型
- 基于无监督方法的中文指代消解模型:
根据Cardie等提出的思想实现无监督的指代消解模型。该思想利用距离函数衡量照应语和先行语之间的指代相似性,当距离函数的值小于人工设定的阈值r时,二者存在指代关系,距离函数下所示。其中NPi表示先行语,NPj表示照应语。Similar(NPi,NPj)表示先行语和照应语关于特征f的相容函数,返回值为0或者1。ωf表示特征f的权重,该权重由人工设定。
- 实体表达对模型(Mention-pair model):
实体表达对模型是一种使用最为广泛的中文指代消解模型。通过训练语料训练得出一个二元分类模型,并用该模型判断实体表达对之间<π,δi>指向同一实体的概率Pc,最后通过最近原则或者最优原则的聚类算法把存在指代关系的实体表达对聚成一条指代链。
实体表达对模型的训练正例:每个照应语mi和与之具有指代关系且距离最近的先行语mj构成正例。训练负例:照应语mi和中间词mj+1,mj+2,…,mi-1构成负例。通过上述正负例,基于SVM训练得出实体表达对模型。测试实例:用训练好的模型判断实体表达对之间是否存在指代关系,选择每一个与mi最近的且存在指代关系的实体表达作为先行语。如果没有先行语,则自己成为一条单独的指代链。
- 实体-实体表达模型(Entity-Mention model):
实体-实体表达模型在本质上也是经典的二元分类问题。与实体表达对模型不同的是,实体-实体表达模型估计的是照应语π与之前形成的部分聚类体cj(部分指向同一实体的不同实体表达集合称为部分聚类体)之间是否存在指代关系。如果二者指向同一实体,则把该名词加入部分聚类体。
实体-实体表达模型的训练正例:每个照应语mi和与之具有指代关系且距离最近的部分聚类体cj构成正例。训练负例:照应语mi和部分聚类体ck(ck中的实体表达出现在照应语mi和部分聚类体cj的中间)构成负例。通过上述正负例,基于SVM训练得出实体-实体表达模型。测试实例:用训练好的模型判断实体与部分聚类体之间是否存在指代关系,选择与mi最近的且存在指代关系的部分聚类体cj,作为先行语。
- 实体排序模型(Mention-ranking model):
实体排序模型首先针对每个照应语,创建候选先行语集合A,然后计算集合A中候选先行词δi是照应语π的指代概率。根据指代概率进行排序,选择概率值最高的作为最终的先行语。
实体排序模型的训练正例:每个照应语mi与之具有指代关系且指代概率最高的实体表达mj构成正例。训练负例:照应语mi和中间词mj+1,mj+2,…,mi-1构成负例。通过上述正负例,基于SVM训练得出实体排序模型。测试实例:照应语mi选取指代概率值最高的候选先行语mj作为最终的先行语。
- 基于规则的中文指代消解模型:
Raghunathan等首次提出一种基于规则的层次过滤模型。Lee等扩展上述模型,主要增加了语义层、待消解项识别层、后处理层。Lee的语义层主要是通过WordNet、Wikj—pedia infoboxes、Freebase records获取语义知识。然而中文语义知识库较小,很难包含所有的待消解项。Zhang等在Lee的基础上删除了语义层,并针对中文的特点进行了一定的修改使之更加适合中文指代消解。由于同一条指代链中的实体表达在语义上存在着很大的语义相关性,本文在Zhang等提出模型的基础上增加了语义匹配层,该层通过引入Web语义知识很好地克服了中文语义知识库较小的缺陷。同时,针对中文中存在大量的嵌套名词短语,对待消解项识别层进行了一系列的修改,使之更加适合中文指代消解。基于规则的层次过滤模型的主要思想是人工设定一系列的指代消解过滤规则,模型中各个层次的排列顺序按照每层的消解精度从高到低进行排序,每一层的输人以上一层输出的实体聚类体为基础,结合共享属性(性别、单复数等)得到最终的指代链。该模型中主要包含字符串匹配层、宽松字符串匹配、中心词匹配、准确的结构匹配层、语义匹配层、代词层,具体层次顺序如下所列。
为了更好地评估待消解项对中文指代消解的影响,把待消解项分为自动获取的实体表达(AutoMention)和标准的实体表达(GoldMention)。利用各种基础自然语言处理技术获取的待消解项集合称为AutoMention,直接从标注语料中读取待消解项集合称为GoldMention。
周炫余在“中文指代消解模型的对比研究”一文中以ACE2005中文语料为实验数据,实现了5类经典的中文指代消解模型。通过大量的实验,主要从待消解项识别、特征抽取和消解模型3个方面分析和探讨了影响中文指代消解模型精度的各种因素。通过比较5类模型可知,基于规则的层次过滤模型不需要标注语料训练模型,且该模型无论在AutoMention还是在GoldenMention的Avg_F值都好于其余4类模型,因此该模型比较适合中文指代消解。