0%

联合实体关系抽取

在信息爆炸的时代,数据呈现出规模巨大、模态多样和高速增长等特征,“信息过载”问题日益严重[1],如何从海量信息中快速准确地获取用户感兴趣地信息已经成为亟需解决的问题[2]。在这种背景下,为使海量自然语言信息变成结构化的形式方便分析[3],信息抽取技术应运而生。信息抽取从大规模的无结构文本中提取出用户感兴趣的信息,并以结构化或半结构化的形式输出[4],其主要包括三项子任务:实体抽取、关系抽取和事件抽取。实体抽取是关系抽取和事件抽取的基础,只有先从句中抽取出基本的信息单元,包括人名、地名、机构名、日期、数额、百分比等实体信息,才能深入理解实体之间的语义关系,提炼实体间语义关系的任务便是关系抽取。关系抽取包括广义和狭义两个层面。实体间的关系可被形式化描述为关系三元组,包括两个从句中抽取的实体和一个关系描述,广义的关系抽取式从句子中自动识别这样一组由一对实体和联系这对实体的关系构成的三元组[5],而狭义的关系抽取以句子和已知的实体对为输入,得到这对实体之间的联系。本文中的关系抽取以广义为主。

背景和意义

关系抽取技术对构建大规模的可重用知识库、搜索引擎和海量信息处理有着重要意义:通过关系抽取技术,从无结构的自然语言文本中抽取出格式统一的关系数据,有助于计算机快速处理大规模的文本数据,提高处理效率;通过抽取实体之间的语义关系,能够建立多个实体之间广泛的信息关联,有助于建立领域本体,促进知识图谱的构建;通过深入挖掘和分析自然语言文本中的语义关系信息,能够进一步理解和匹配用户的查询意图,从而为用户提供更精准的搜索服务。关系抽取在知识库建设、提问回答系统、生物医学的文本挖掘等领域中也有着重要贡献。由此可见,关系抽取技术不仅具有深刻的理论意义,而且具有广阔的应用前景。

本文献综述呈现了近十年来关系抽取的研究历程,从2010到2020。尽管传统的流水线方法[6]将关系抽取任务分为实体识别和关系分类两个独立的子问题,然而随着神经网络模型的发展,联合实体关系抽取模型应运而生,解决了流水线方法误差传递和需要大量资源的问题。本文涵盖了关系抽取任务测试的数据集,重点陈述了近期联合实体关系抽取方法的应用与发展,并对其的未来研究方向有所展望。

数据集

自动内容抽取(ACE)是一项由NIST构造的用于评测实体检测和关系抽取的评估数据集,其识别实体是名词短语,可以嵌套,同时确定实体间的共指关系。ACE05与ACE04是广为使用的关系抽取数据集,ACE05定义了7个粗粒化表示的实体类型和6个粗粒化表示的实体间的关系类型,同时ACE04定义了7个粗粒化表示的实体类型和7个粗粒化表示的关系类型。而随着神经网络模型的发展,数据集也发生了变化。当下主流的两个数据集,一是NYT,是用远监督模型从已有数据集中构造的,NYT24是由从294k的1987到2007年的纽约客新闻文章中提取的1.18M句子构建的,有24个关系类型,NYT29则有29个。另一个数据集是WebNLG数据集,这本是一个自然语言生成任务,该数据集有246个有效的关系。该数据集包含了一系列三元组和由人工以三元组为灵感撰写的句子构成,每个符合标准的句子都包含了三元组示例。除了以新闻为主要内容的数据集,关系抽取可用于其他领域,因此不同知识图谱使用的数据集不同。中文医学领域可使用从上海曙光医院的冠状动脉造影报告收集的数据[7],中文领域可采用百度百科和百度新闻构成的SKE数据集[8]。

将产生三元组的结果与源测试集进行对比,得到三元组在数据集上的查准效果、召回效果及两个值的调和均值用作效果的衡量值。

问题描述

关系元组是包含两个实体和一个关系的三元组,关系元组是从句中抽取得到,其中实体单元来自句子,关系来自人工预定义关系集合R。这些关系元组中的实体可能相互重叠,因此,抽取关系的句子被分类如下:(1) 无实体重叠(NEO):该类里的句子包含一个或多个关系元组,但关系元组中的所有实体单元都不重叠。(2) 实体对重叠(EPO):该类里的句子包含两个以上的关系元组,并且每个句子中至少有两个关系元组的实体对是一样或相反顺序。即一个实体对有两个以上的关系标签。(3) 单实体重叠(SEO):该类里的句子包含两个以上的关系元组,并且每个句子中至少有两个关系元组的实体对有且只有一个相同的实体单元。值得注意的是,一个句子可能属于实体对重叠,也可能属于但是提重叠。本文综述的任务就是从句子中找出所有的关系元组。

国内外研究现状

传统模型

狭义关系抽取任务的主流方法最初是监督学习方法[6]。这些方法需要标注好的数据集,句中的实体单元对配比上预先设定的关系类型,若一对实体单元没有关系则用特殊的关系类型“无”来标识。在这种情况下,关系抽取任务被抽象成多类别分类任务,通过输入句中的实体单元对,得到这些实体对应的类别,而类别则对应了不同的关系类型。监督学习方法又分为基于特征和基于核函数两种方法[9]。基于特征的方法将关系实例通过一定粒度的词法分析和句法分析转换为平面特征向量,然后采用机器学习模型比较特征向量之间的相似性并分类。基于核函数的方法是通过构造核函数,隐式地计算特征向量内积,从而得到关系实例之间地相似性。然而,由于绝大部分关系抽取的相关研究中都是假设关系中的实体已被正确识别,将正确的实体属性作为组合的特征之一,因此监督学习的最主要的缺点就在于需要大量已标注实体单元的句子合集。缺乏资源与消耗大量时间构建训练集的弊端,催生出无监督学习和半监督学习的方法。无监督学习包括聚类分析,而半监督学习方法包括随着大数据时代的到来研究者提出的远监督方法,该方法通过启发式的对齐待抽取关系与自然语言,为关系抽取任务提供大量样本。远监督学习假设对于一个已有的知识图谱中的一个实体关系元组,假设外部文档库中任何包含这对实体的句子,在一定程度上都反映了这种关系,因此远监督学习可以基于一个标注好的小型知识图谱,给外部文档库中的句子标注关系标签,相当于做了样本的自动标注。然而半监督方法能得到大量自动标注的样本,却也面临着噪声即错误样本的问题。文献[10]阐述,为解决噪声问题,大多数模型采用选取一个最佳的自动标注句子,或者计算某个特定实体对在所有句子中的软注意力权重,该文献提出了一个深度强化学习模型,基于关系分类器的效果决定远监督实例的去留,更确切地去除噪声。文献[11]则提出了对抗网络模型,以结构化的方法构建远监督模型。除了使用强化学习的方法去除噪声,人工干预标注也是经常使用的手段。然而由于专家标注耗时耗力,文献[12]提出了神经网络模式诊断框架,配合专家标注的一小部分数据,自动从噪声数据里总结和提炼出高质量关系模式,提高了人工干预的速度。以上多示例学习和对语言文法的专家干涉是目前狭义关系抽取的主要方法,文献[13]还通过预训练模型,增加知识库的储备知识,加速训练;文献[14]使用注意力机制的图卷积网络,以自然语言语义中的依存树为输入,采用软剪枝的方法自动选择对关系抽取任务有用的子结构。尽管能够通过半监督学习方法得到训练数据,自然语言文本一般不会标注好实体单元,限制了关系抽取的应用领域,实体抽取仍然是一个亟需解决的基础问题。

为解决以上问题,流水线方法被提出。流水线方法首先识别句子中的实体单元,抓取实体单元的长度和类型,紧接着用分类器抽取实体对的类别。这种将关系抽取分为两个子任务的方法虽然能够解决缺乏资源的问题,却同时有两个巨大的缺陷:首先,实体识别的抽取质量直接影响着关系抽取的质量。如果命名实体识别不当,模型将无法正确分类错误的实体,即流水线方法很有可能产生从第一阶段(实体识别)到第二阶段(关系抽取)的误差传播[15]。其次,该方法过于简化关系抽取问题。多分类任务没有建模长距离及任务协同依赖[16],没有抓住两个子任务之间的相关性。因此,随着神经网络模型的发展,一系列联合实体关系抽取的模型应时而生。

联合实体关系抽取模型

联合实体关系抽取模型最初是由Roth和Yih[17]于2004年提出的,该模型是最先学习到独立的局部分类器,并在推断测试阶段,给定一个句子,模型会考虑全局,满足特定领域或特定任务的约束条件。模型将句子中的每个词语按语义划分用概率表达其属性,用真假值表示是否存在关系,那么用以以表达两个未知实体间的未知关系的,便是符合约束条件的词语的不等式关系。线性整数规划(ILP)方法即可最小化分配成本函数和约束成本函数,其中分配成本函数是指分类器将其分类给不同类别的花费,当分配给最有可能的分类时分配成本最少,约束成本函数时指强制打破实体与关系间联系需要的花费。该全局决策模型对比流水线模型效果有了显著的提高,在计算过程中也增加了实体识别的质量。Roth和Yih在接下来的研究中继续探讨了其他全局推断的算法[15],并研究了使用概率图模型表示的联合实体关系抽取模型[18]。Singh等的研究[19]是第一个将指代消解与实体关系联系在一起的模型。指代消解指在文本中确定代词指向哪个名词短语的问题。该研究提出了一个联合无向图模型代表指代消解、实体识别、关系分类这三个任务间的各式依赖关系。

尽管以上模型建立了最优的全局决策,然而由于只有独立的局部关系分类器,不能实际模拟关系抽取和实体识别的相互影响,因此接下来的研究的主要方法是重构问题,将关系抽取和实体识别的问题重塑为一个结构化预测问题:给定一个句子,预测出一个输出结构。Li和Ji[16]提出了一种增量联合框架,利用结构感知器和有效的集束搜索同时进行实体识别和关系抽取。该模型根据任意的特征和约束来预测每个句子的隐藏结构,采用半马尔可夫链的思想,其中每个状态对应于输入序列的一段,通过采用一种简单而有效的基于分段的解码器,解决了同一集束中同步不同任务的挑战,利用了一组基于以上任务的语言和逻辑属性的全局特征来预测更一致的结构。该方法在以上任务上都明显优于流水线方法。Miwa和Bansal[20]提出了一种新的端到端模型来提取词序列和依赖树结构上实体间的关系。模型通过使用双向顺序(从左到右和从右到左)和双向树结构(自底向上和自顶向下)LSTM-RNNs,允许在单个模型中对实体和关系进行联合建模,首先识别实体,然后使用单个增量解码的神经网络结构提取被检测实体之间的关系,并使用实体和关系标签对神经网络参数进行联合更新。与传统的增量端到端关系提取模型不同,该模型在训练中进一步加入了两个增强:实体预训练(对实体模型进行预训练)和计划抽样,后者以一定的概率将(不可靠的)预测标签替换为黄金标签。这些增强减轻了在训练的早期阶段发现性能低下的实体的问题,并允许实体信息进一步帮助下游关系分类。该模型主要由三层表示层组成:单词嵌入层、基于单词序列的LSTM-RNN层,最后是基于依赖子树的LSTM-RNN层。在解码过程中,在序列层上建立贪婪的从左到右的实体检测,在依赖层上实现关系分类,每个基于LSTM-RNN的子树对应两个被检测实体之间的关系候选。在解码整个模型结构之后,通过时间反向传播(BPTT)同时更新参数。依赖层叠加在序列层上,嵌入层和序列层由实体检测和关系分类共享,共享参数由实体标签和关系标签共同影响。该方法是联合实体关系抽取的开山之作,首次将神经网络运用到端到端的实体和关系抽取中,获得了优于之前模型性能的结果。然而早期的模型需要复杂的特征工程过程或者极其依赖自然语言处理工具,因此需要改进。

最近在联合实体关系抽取模型主要沿着三个研究路线:表格填充(Table Filling),标注(Tagging)和顺序学习(Sequence-to-Sequence)。以下将从这三个研究方向,分别阐述这三种端到端的联合实体关系抽取模型的发展。

表格填充方法是通过建立实体关系表模拟一个句子里任意两个单词间的关系(如图1所示)。文献[21]提出了一种多任务递归神经网络模型,将实体识别和关系分类任务简化为表格填充问题,这是一种基于语义组合的上下文感知的联合实体和词级关系提取方法。该文献主要针对了传统方法中两个独立的子任务管道无法相互依赖的问题,以及不能在一个句子中处理多个关系实例的局限性,通过统一的多任务递归神经网络对实体识别和关系分类任务进行联合建模,将词的构成引入词级关系分类。

然而表格填充的方法本身存在一定局限性。首先,多个单词构成一个实体的情况在表格中无法被体现和找到。其次,表格是由n(n+1)/2个单元构成的稀疏矩阵,当句子很长而实体关系三元组不多时,暴力搜索的方法是浪费资源的。最后,尽管表格填充可以模拟任意两个单词间产生的关系,但一个句子中两个实体间的关系可能由其周围上下文环境决定。

标注方法是通过监督学习等方法将每个单词都分配一个标签用于提取结果(如图2所示)。文献[22]提出了将联合实体关系抽取任务转换为端到端的标注问题的标注方案。除了与提取结果无关的“O”之外,标签由三部分组成:实体中的单词位置、关系类型和关系角色。由于一个实体属于一个三元组,该模型采用了一个端到端的模型,它包含了双向长短期记忆层来对输入句子和具有偏置损失的基于LSTM的解码层进行编码。该方法挑战了流水线模型的误差传播,通过使用标注方法用神经网络代替复杂的特征工程建模任务,具有有效性。文献[23]则发现了实体识别与联合实体关系抽取的相互依赖性,设计了分层多任务标注模型,将实体识别作底层,联合抽取作上层,采用多任务学习的方法将实体识别的标签结果共享给联合抽取的上层结果。文献[24]在特征抽取阶段使用BERT[25]进行特征抽取,再进行标注。该模型应对了以往模型参数从零开始训练及模型无法并行训练的挑战,使用预处理模型提高准确度,取得了更好的进展。

然而标注方法本身存在一定缺陷。首先,标注方法无法抽取有重叠关系的三元组,即该结构无法识别一个单词的多个属性和标签。其次,尽管标注先后顺序,在实际应用中标注方法无法做到准确识别有向的关系,绝大多数模型都存在这个问题。

序列注意力机制在表达序列数据上十分有效,可以在自然语言处理中完成许多任务。序列模型是关于将模型从一个域(如英语中的句子)转换为另一个域(如相同被翻译为法语的句子序列)的训练模型。同时序列机制有着比表格、标签方法更优势的机制:它可以用于从无实体重叠、实体对重叠和单实体重叠三类语句中全面抽取三元组,即允许一个实体自由地参与多个三元组。文献[26]提出一种基于复制机制的序列学习的端到端模型,该模型可以将自然语言语句转化为固定长度的语义向量,然后解码器读取这个向量并直接生成一个三元组对关系进行预测并从源语句中复制实体。为生成一个三元组,首先由解码器生成关系,然后解码器采用复制机制,从原剧中复制第一个实体,最后解码器从原句中复制出第二个实体。该模型中一个实体可以被复制很多次,因此该模型可以解决三元组重叠问题。然而该模型的缺陷在于无法分辨两个实体的有向关系,以及复制机制只能复制一个单词,不能预测整个实体单元,即不能解决多词实体的问题。文献[27]针对这两个问题做出了进一步的修改。对于不能分辨两个实体的先后关系这个缺点,文献增加了一层非线性全连接层,使得模型能够对头实体和尾实体分别预测分布,而尾实体能够从首实体获取信息。针对多词实体单元,该模型在编码层里增加了一层序列标签层以帮助实体识别过程。准确地说,是使用对命名实体识别进行多任务学习,预测出每个实体单元开始的标志,而解码器依然指向实体单元的最后一个单词。尽管作者在文献里进行了优化,但这个序列学习的模型仍然不能预测出完整的实体单元。文献[28]提出了门控图神经网络(GGNN)模型,第一次将实体单元与关系抽取实例的交互定义在注意力机制的基于门控图神经网络模型的序列学习模型中,这样能够更好地抽取重叠的三元组。基础的端到端序列学习模型将句子输入一个通常由Bi-LSTM构成的编码器得到对句中每个单词的向量表示,再通过通常由LSTM构成的解码器得到实体关系三元组。Bi-LSTM编码器尽管方便又高效,它们只能在输入数据形式是序列的特殊情形下达到高效,为了将上下文区域特征和序列特征结合起来,使用门控图神经网络模型更好地模拟了句子信息,也为重叠三元组的识别提供了更多信息。

BERT模型的产生进一步增加词向量模型泛化能力,充分描述字符级、词级、句子级甚至句子间的关系特征,是双向的编码器。采用Transformer模型而不是Bi-LSTM做编码器,可以有更深的层数并具有更好的并行性。最近的一篇文献[8]使用BERT模型代替Bi-LSTM模型进行特征抽取,随后添加CRF层从句中识别实体单元,并在CRF层上增加软标签嵌入使得实体识别和关系抽取之间的信息能高效互通。模型还利用多s型(multi-sigmoid)层抽取重叠三元组。文献[29]提出了基于BERT的轻量级推理模型,能够搜索所有对三元组的假设并得到重叠三元组的结果。该模型先让句子序列通过BERT模型,列举各类单词组成的实体单元并将其分类,丢弃无法识别为实体单元的词组或单词,剩下的词组可以相互组合并结合两个词组间的文本内容识别可能存在的关系类型。由于加入BERT的研究资料较少,属于尚未成熟的方法,在以后的研究中可能可以展开延伸。

除了以上主流的方向,对联合实体关系抽取模型的研究还有一些独具一格的创新方法,详述如下。

文献[30]提出了基于强化学习的等级框架,该模型在捕获实体识别和关系抽取的相互作用方面,采取了将实体识别当作关系的参数这一方法:在高层次和低层次的强化学习中设计状态表达和反馈表现了实体和关系的相互依赖,高层次强化学习过程是关系抽取主任务,它把信息传递给实体抽取的次任务,低层次强化学习过程,而低层次又将反馈回传给高层次。该模型在解决重叠的三元组任务时,采用了等级框架:通过将关系抽取分解为高低两个层次的任务,使得一个句子里的不同关系可分别按顺序产生,不会互相干扰。该模型的思想在最近的联合实体抽取方法里都有所体现。

文献[31]同样也是一个为了解决重叠三元组的联合实体关系抽取模型。该模型考虑了三个关键点:端到端联合实体关系抽取模型的建立、重叠三元组的抽取和重叠关系间的相互影响。对此,该模型在使用了第一阶段端到端模型用于预测三元组之外,还使用了第二阶段以关系为权重的图卷积网络模型来预测有相互影响关系的三元组。第一阶段通过建立以关系权重为边的全连接图提取句子中节点之间的隐藏特征,第二阶段则再以实体和关系为导向考虑对每条边的最终分类,体现了联合实体关系抽取的思想。

文献[32]提出一种新的方法,将任务转化为一个多回合的问题回答问题,即实体和关系的抽取被转化为从上下文中识别答案的任务。这种多轮问题回答形式化有几个关键的优点,首先,问题查询为想要识别的实体、关系类编码重要信息;其次,问题回答为实体与关系的联合建模提供了一种自然的方式;第三,它能够利用发展良好的机器阅读理解模型。

文献[33]提出了另一种将联合实体关系抽取任务分割的方法以解决冗余实体对和实体识别关系抽取间的内在结构联系。该模型有两个相互有关联的子任务构成,一是辨别与目标关系有关的可能头实体,二是识别每个与头实体有关的尾实体和关系。这两个子任务每个都进一步被解构为一些基于跨度的序列标注问题,使用等级界限标注方法和多跨度解码算法。该方法的优势在于,一开始不会提取出所有实体单元,而是根据目标三元组识别,减少了时间和资源消耗。

文献[34]则提出使用深层特定任务的多任务学习方法提高联合实体关系抽取,通过新增任务特定双向循环神经网络模型,对不同的数据集分别进行层数的调参。

展望与总结

本文陈述了关于关系抽取任务的详尽的近十年的研究方法,首先介绍了关系抽取任务的研究背景和意义,总结了广泛使用的数据集和测试方法,然后以形式化的方法准确地定义了问题,并按时间顺序和方法的分类详细阐述了近十年关系抽取研究方法从流水线方法到联合实体关系抽取模型的改变。科学技术随着时间的推进不断前进、升级与发展,我们发现半监督学习和流水线方法能在缺少实体标注资源的情况下取得不错的效果,远监督学习可以帮助得到训练数据,流水线方法能够进行实体识别和关系抽取。然而远监督学习和流水线方法都未意识到实体识别和关系抽取之间的内在联系,因此联合实体关系抽取模型应运而生。以某种角度来看,联合实体与关系的抽取这个问题更有普世价值和意义,因为好的实体抽取是正确的关系抽取的基础。联合模型允许任务间的信息相互流通相互影响,比起单一子任务可以取得更好的效果。近期的研究里,联合实体关系抽取模型分为表格填空、标注和顺序学习三种研究路线,据观察,顺序学习能够取得更好的效果,因为顺序学习不存在表格填空的不能识别多词的问题,也解决了标注方法无法识别重叠三元组的问题,提高了关系抽取的准确度。本文还观察了将BERT模型作为编码器加入联合实体关系抽取模型的意义,发现BERT模型可以增加词向量模型的泛化能力和并行能力。除了主流方法,以图结构、分解结构和多任务学习方法为基础的尝试也取得了比基础方法更好的结果。近期,对关系抽取方法的趋势就在于BERT模型的应用和创新方法的推进。

尽管近十年关系抽取的最先进的应用技术已经有了飞速的发展,未来在关系抽取任务中的发展仍然有不少可以挖掘的方向,如下是可能的研究方向:

(1) 联合实体关系抽取模型的顺序学习方法有很大的发展空间。目前在NYT24上的F1值可达到0.825,在NYT29上的F1值可达到69.9,尽管平均水平较高,提取重叠三元组和多词实体单元仍然是比较关键的任务,因此还可以构建更有效的方法去获得更好的进步。

(2) n维关系元组的抽取。关系所关联的实体不仅包括两个实体单元,而是三个以上的实体单元,是较少被攻克的难题。在这个问题上,仍然缺少有效且强有力的模型。

(3) 大部分的关系抽取实验于英语,另外一部分实验在中文和阿拉伯文,而ACE数据集中确实包含了这三个语言。模型在不同语言中语种独立性和有效性的研究能够帮助研究语料较少的语言,有很强的普适作用。

(4) 自然语言处理的深度由语法和语义决定,语料处理的模型的作用很低。语言处理模型的研究能够推进关系抽取的效果,未来有延伸空间。

本文献综述能够帮助研究者们理清关系抽取的研究方向,了解技术随时间升级进化的趋势,通过洞悉每个模型的优劣,帮助决定哪个方法适合于他们的项目。关系抽取任务在自然语言处理中占有举足轻重的地位,将会影响人们生活的很多方面,推进着研究者们的工作进程。