这里面有多个关于实体-关系联匼抽取的论文:
本文提出了一种新的实体关系抽取方法。我们将任务转换为一个多回合的问题回答问题即,实体和关系的提取被转化为從上下文中识别答案的任务这种多轮QA形式化有几个关键的优点:首先,问题查询为我们想要识别的实体/关系类编码重要信息;其次QA为实體与关系的联合建模提供了一种自然的方式;第三,它使我们能够利用发展良好的机器阅读理解(MRC)模型
在ACE和CoNLL04语料库上的实验表明,所提出的范例明显优于先前的最佳范例我们能够获得所有ACE04、ACE05和CoNLL04数据集的最新结果,这三个数据集的SOTA结果分别为49.4(+1.0)、60.2(+0.6)和68.9(+2.1)
此外,我们建构了一个新开發的中文资料库它需要多步骤的推理来建构实体的相依性,而不是单一步骤的相依性萃取所提出的多回合质量保证模型在简历数据集仩也达到了最佳的性能。
识别实体及其关系是从非结构化的原始文本中提取结构化知识的前提近年来人们对非结构化的原始文本越来越感兴趣。给定一组自然语言文本实体-关系提取的目标是将其转换为结构化的知识库。例如给定以下文本:
我们需要提取四种不同类型嘚实体,即三种关系:建立关系、建立时间关系和服务角色关系文本将被转换为表1中所示的结构数据集。
表一:提取的结构表的说明
大多數现有的模型通过从文本中提取三元组列表来完成此任务即REL(e1; e2)表示实体e1与实体e2之间的关系REL。以前的模型主要分为两大类:流水线方法它首先使用标记模型来识别实体,然后使用关系提取模型来识别每个实体对之间的关系;联合方法通过约束或参数共享等不同策略将实体模型與关系模型相结合。
当前的方法在任务形式化和算法方面存在几个关键问题在形式化层次上,REL(e1;e2)三元组结构不足以充分表达文本背后的数據结构以Musk为例,标签之间存在层次依赖关系:时间的提取依赖于位置因为一个人可以在不同的时间段内担任公司的多个位置。职位的选擇也取决于公司因为一个人可以在多家公司工作。在算法层面对于大多数现有的关系提取模型(Miwa和Bansal,
2016;王等,2016a;(Ye et al. 2016),模型的输入是两个标记提忣的原始语句输出是两个提及之间是否存在关系。Wang et al. (2016a)指出;Zeng et al.(2018)在这种形式化过程中,神经模型很难捕捉到所有的词汇、语义和句法线索特別是当(1)实体距离较远的时候;(2)一个实体涉及多个三元组;或(3)关系跨有重叠。
本文提出一个新的范式去解决关系抽取问题将关系抽取任务顶一個多轮问答任务:每个实体类型和关系类型由问答模板表征,实体和关系通过回答模板问题来提取答案是文本跨度(text spans),使用现在标准嘚机器阅读理解(MRC)框架提取:预测给定上下文时的答案跨度
将实体关系抽取任务当做多轮QA有以下优势:(1)多轮QA的设置提供了优雅的方式捕获标注的层级依赖。随着多轮QA的进行可以逐步获得下一轮所需的实体。这与多轮槽填充对话系统类似(2)问题查询编码需要识別的关系分类的重要先验知识。这种信息性可以潜在地解决现有关系抽取模型无法解决的问题例如实体对之前距离较远,关系跨度重叠等;(3)QA框架提供了一种同时提取实体和关系的自然方式:大多数MRC模型支持输出特殊的NONE标记表明该问题没有答案。通过这样原始的两个任务-实体抽取和关系抽取可以合并到单独的QA任务中:如果对应于该关系的问题的返回答案不是NONE,则关系成立并且此返回的答案是希望提取的实体。
在本文中我们证明了所提出的范例,将实体-关系抽取任务转换成多回合的QA任务在现有的系统上引入了显著的性能提升。它茬ACE和CoNLL04数据集上实现了最先进的(SOTA)性能这些数据集上的任务被形式化为三重抽取问题,其中两次QA就足够了因此,我们建立了一个更复杂和哽困难的数据集称为RESUME它需要从原始文本中提取个人的传记信息。从RESUME构建结构化知识库需要四到五次QA我们还表明,这种多回合QA设置可以佷容易地集成强化学习(就像在多回合对话系统中一样)以获得额外的性能提升。
本文的其余部分组织如下:第二节详细介绍了相关工作我們在第3节中描述了数据集和设置,在第4节中描述了提出的模型在第5节中描述了实验结果。我们在第6节对本文进行了总结
许多早期的实體-关系提取系统都是流水线的(Zelenko et al., 2003;Miwa等人2009;陈和罗斯,2011年;Lin et al. 2016):实体提取模型首先识别感兴趣的实体,然后关系提取模型构建被提取实体之间的关系尽管流水线系统可以灵活地集成不同的数据源和学习算法,但是它们会受到错误传播的严重影响
为了解决这一问题,提出了联合学習模型早期的联合学习方法通过各种依赖关系将两个模型连接起来,包括用整数线性规划求解的约束(Yang and Cardie, 2013;Roth和Yih, 2007)卡片金字塔解析(Kate和Mooney, 2010),和全球概率图形模型(Yu和Lam,
2010;辛格等人2013)。在后来的研究中Li和Ji(2014)使用结构化感知器和有效的集束搜索来提取实体提及和关系,这比基于约束的方法更有效更省时。Miwa和Sasaki
(2014);Gupta等人(2016);Zhang等人(2017)提出了表格填充方法该方法提供了将更复杂的特征和算法纳入模型的机会,如解码中的搜索顺序和全局特征神經网络模型在文献中也得到了广泛的应用。Miwa和Bansal(2016)提出了一种端到端方法使用具有共享参数的神经网络模型提取实体及其关系,即使用神經标记模型提取实体,使用基于树LSTMs的神经多类分类模型提取关系(Tai
et al. 2015)。Wang等人(2016a)利用多级注意力CNNs提取关系Zeng等人(2018)提出了一种新的框架,利用序列箌序列模型生成实体关系三元组将实体检测与关系检测自然地结合起来。
另一种将实体和关系提取模型进行绑定的方法是采用强化学习戓最小风险训练其中训练信号是基于两个模型的联合决策给出的。Sun等(2018)优化了全局损失函数在最小风险训练框架下联合训练两个模型。Takanobu等(2018)采用分层强化学习的方法以分层的方式提取实体和关系。
主流MRC模型(Seo等2016;王和江,2016;熊等2017;Wang等人,2016b)提取给定查询的段落中的文本跨度文夲跨度提取可以简化为两个多类分类任务,即预测答案的起始和结束位置。类似的策略可以扩展到多通道MRC (Joshi et al. 2017;(Dunn et al.,
2018)我们的工作深受Levy等人(2017)的啟发。Levy等人(2017)和McCann等人(2018)专注于识别两个预定义实体之间的关系并将关系提取任务形式化为单轮QA任务。在本文中我们研究了一个更复杂的场景,其中需要对分层标签依赖关系进行建模单轮QA方法不再适用。我们证明我们的多回合质量保证方法能够解决这一挑战,并获得新的朂先进的结果
ACE和CoNLL-04数据集是为了用来做三元组抽取的,并且两轮的QA已经足够抽取出其中的三元组:一轮用来抽取头实体另一轮用来同时抽取尾实体和关系。这两个数据集都没有包含类似于之前Musk例子中的层次(hierarchical)实体关系然而这种情况在现实生活中是很常见的。
executive occupies/occupied that position)值得注意的是,一个人可以在不同时期为不同的公司工作也可以在同一公司的不同时期担任不同的职务。
表二:RESUME数据集的统计信息
我们征集叻合伙人员以填补表1中的槽位(slot)。每个段落均由两个不同的合伙人员标记 如果两个注释者的标签不一致,则要求一个或多个注释者为句孓加上标签并以多数票作为最终决定。 由于文本的措词通常非常明确和正式因此注释者之间的共识非常高,所有槽位的价值达到93.5% 表2中显示了该数据集的一些统计数据。我们将数据集随机分为训练(80%)验证(10%)和测试集(10%)。
算法的伪代码如Algorithm 1(下图)所示夶概分为两个阶段:
(1)头实体抽取阶段(4-9行)
多回合问答的每个步骤均由一个实体触发,为了抽取这个头实体本文使用EntityQuesTemplates(第四行)将烸个实体类型转化为一个问题,实体e可以通过回答问题(第五行)抽取如果系统输出了特殊的NONE结果,这意味着s没有包含任何符合类型的實体
(2)关系和尾实体抽取阶段(10-24行)
ChainOfRelTemplates定义了一个关系链,我们需要按照该关系链的顺序进行多轮QA因为一些实体的抽取式依赖于其他實体的抽取。举个例子在RESUME数据集中,一个高管的职位取决于他所工作的公司并且时间实体的抽取依赖于公司和职位。当然抽取的顺序是需要手动预定义的。ChainOfRelTemplates同样定义了每个关系的模板每个模板包含了一些待填充的槽。为了生成一个问题(14行)我们将先前抽取的头實体插入到模板槽中,这样的话关系REL和尾实体e可以通过回答生成的问题(15行)进行联合抽取。如果返回了NONE那么说明给定的句子没有答案。
值得注意的是:头实体抽取阶段所抽取到的实体可能并不都是头实体在关系和尾实体抽取阶段,从第一阶段得到的实体最初被假定為头实体并将其馈送到模板以生成问题。如果从第一阶段抽取的实体e确实是一个头实体那么QA模型将会通过回答相应的问题来提取头实體,否则答案将会制定为NONE并忽略掉
每个实体类型都与模板生成的特定类型问题相关联。使用模板生成问题的两种方法:自然语言问题和偽问题对于伪问题而言,它不一定是符合语法规则的例如:对于设施(Facility)这种类型而言,(1)自然语言问句可以为:Which facility is mentioned in the text(2)伪问题为:entity: facility。
在关系和尾实体抽取阶段可以通过将特定于关系的模板与提取的头实体组合来生成问题。这个问题可以是一个自然语言问题也可鉯是一个伪问题。例如表3和表4中的例子:
目前为止很多种机器阅读理解模型(MRC)被提出来,例如BiDAF和QANet在标准的MRC设置中,给定一个问题Q={q1,q2,…,qNq}其中Nq表示问题Q中单词的个数,上下文C={c1,c2,…,cNc}其Nc表示上下文C中单词的个数我们需要预测答案的跨度(span)。对于QA框架而言本文使用BERT作为骨干。BERT使用transformer对大规模数据集进行双向语言模型的预训练并在MRC数据集(例如:SQUAD)上取得了SOTA效果。为了与BERT模型对齐问题Q和上下文C被合并到列表Φ:[CLS,Q,SEP,C,SEP],其中CLS和SEP都是特殊的tokenQ是token化的问题,C是上下文每个上下文token的表示是通过使用多层的transformer获得的。
传统的MRC模型(Wang and Jiang,2016; Xiong et al., 2017)通过将两个softmax层应用于上下文token來预测开始和结束索引这种基于softmax的跨度抽取策略仅仅适用于单答案抽取任务,但是对于本文的任务不合适因为在本文的环境中,一句話/段落可能会获得多个答案为了解决这个问题,本文将任务转化为基于查询的标记问题(Lafferty et
outside)标签每个单词的表示都会馈送到softmax层并输出一個BMEO标签,可以认为我们正在将预测开始和结束索引的两个N类分类任务(其中N表示句子的长度)转换为N个5类分类任务(此处可以理解为beginning, inside, ending , outside 和 other)
Training and Test 在训练的时候,本文共同训练了两个阶段的目标函数:
其中λ∈[0,1]是控制两个目标之间权衡的参数,在验证集上可以调整其值这两个模型都是通过标准的BERT模型进行初始化的,并且在悬链的过程中共享参数在测试的时候,head-entities和tail-entities是基于两个目标分别抽取的
在本文的设定中,在一轮中抽取的答案不仅仅影响到自身的准确率还会影响到下游轮次中问题的构建,反过来还会影响到后面的准确率我们觉得采用強化学习来解决这个问题。
Action and Policy在RL设定中我们需要定义行为(action)和策略(policy)。在多轮QA设定中:action是在每个回合中选择一个文本范围(span)policy定义叻在给定问题和上下文的情况下选择某个范围(span)的可能性。
由于算法依赖于BMEO标注的输出因此选择某个跨度w1,w2…,wn的概率是将w1分配给B(beginning)w2,…,wn?1分配给M(inside)和wn被分配给E(end)的联合概率,公式如下:
Reward对于给定的句子s我们使用正确检索的三元组数作为奖励。我们使用REINFORCE算法(Williams, 1992)–一种策略梯度方法用于找到使期望收益Eπ[R(w)]最大化的最优策略。其中期望值是通过从策略π采样来近似得到,并使用似然比来计算梯度:
其中b表示基准值。对于多回合QA设置中的每回合正确回答都会赢得+1的奖励,这所有轮奖励的累加便可以得到最终的奖励值基线准设置为所有先前奖勵的平均值。我们不会从头开始初始化策略网络而是使用上一节中描述的经过预先训练的头实体和尾实体抽取模型。我们还使用体验重播策略(experience replay
strategyMnih et al,2015):对于每一个batch一半示例通过模拟得来,而另一半则是从先前生成的示例中随机选择的
根据Person(第一轮),Company(第二轮)Position(第三轮)和Time(第四轮)的顺序提取答案,并且每个答案的提取取决于之前的答案
对于基线,我们首先实现一个联合模型在该模型中┅起训练了实体抽取和关系抽取(以标签+关系表示)。 如Zheng等人(2017年)的工作使用BERT标记模型提取实体,并通过将CNN应用于BERTtransformer输出的表示来提取關系
涉及实体和关系识别阶段(管道或联合)的现有基准模型非常适合于三元组提取,但并不是真正适合本文的设置因为在第三和第㈣轮中,需要更多的信息来确定关系而不仅仅是两个实体。例如例如,要提取Postion我们需要Person和Company,而提取时间我们需要Person,Company和Position这类似于依赖项解析任务,但在标签级别而非单词级别(Dozat和Manning2016;
Chen和Manning,2014)因此,本文提出了以下基准该基准将先前的实体+关系策略修改为实体+依賴关系,用标签+依赖表示本文使用BERT标记模型为每个单词分配标记标签,并修改当前的SOTA依存关系解析模型Biaffine(Dozat和Manning2016)来构建标记之间的依存關系。Biaffine依赖模型和实体抽取模型是共同训练的
结果如表5所示。从中可以看出标签+依赖模型优于标签+关系模型。本文提出的多轮QA模型表現最佳而RL增加了其性能提升。 特别地对于仅需要单轮QA的Person提取,多轮QA + RL模型的执行与多轮QA模型相同 标记+关系和标记+依赖性也是如此。
(2017)等在ACE04数据集中,对于实体提取本文提出的多轮QA模型已经比以前的SOTA增长了1.8%,对于关系提取其增长了1.0%。对于ACE05对于实体提取,建议的哆回转QA模型优于先前的SOTA对于实体提取而言,性能提高了+ 1.2%对于关系提取,性能提高了+ 0.6%对于CoNLL04,本文提出的多轮QA模型在关系F1上提升了2.1%
在本小节中,将比较自然语言问题和伪问题的影响具体的结果见表9。
从中可以看到自然语言问题在所有数据集上都实现了严格的F1改進这是因为自然语言问题提供了更细粒度的语义信息,并且可以帮助实体/关系提取 相比之下,伪问题提供了实体和关系类型的粗粒度模棱两可和隐式提示,这甚至可能使模型混乱
本文主要将实体关系提取任务分解为两个子任务:用于头实体提取的多答案任务和用于聯合关系和尾实体提取的单答案任务,然后共同训练两个共享参数的模型并用参数λ控制两个子任务之间的权衡:
ACE05数据集上有关λ的不同值的结果如下表所示:
当λ设置为0时,该系统基本上仅在头实体预测任务上训练 有趣的是,λ= 0不会导致最佳的实体提取性能 这表明第②阶段关系提取实际上有助于第一阶段实体提取,这再次证实了将这两个子任务一起考虑的必要性 对于关系提取任务,当λ设置为0.7时可獲得最佳性能
表10将多轮QA模型的输出与以前的SOTA MRT模型的输出进行了比较(Sun等,2018):
在第一个示例中MRT无法识别john scottsdale和伊拉克之间的关系,因为这兩个实体相距太远但是我们提出的QA模型能够处理此问题。
在第二个示例中句子包含两对相同关系。 MRT模型很难确定如何处理这种情况無法定位ship实体及其相关的关系,多轮QA模型则可以处理这种情况
在本文中,我们提出了一个多回合的问题回答范例来完成实体-关系抽取的任务我们在3个基准数据集上实现了新的最先进的结果。我们还构造了一个新的实体-关系提取数据集该数据集需要层次关系推理,所提絀的模型达到了最佳的性能