任乐,张仰森,刘帅康
(北京信息科技大学 信息管理学院,北京 100192)
随着自然语言处理技术的不断发展,实体关系抽取任务因其独特的任务建模方式,受到研究者们的广泛关注。实体关系抽取的目标是在给定文本识别出的实体中提取出实体对之间的语义关系,如“人物之间的配偶关系”“药物与疾病之间的治疗关系”等。准确抽取实体关系有助于从海量文本中构建结构化的知识,并为其他自然语言处理任务提供丰富的语义信息,在语义理解、个性化推荐搜索、机器翻译、智能查询和智能问答等下游任务中发挥着重要作用。
实体关系抽取技术的进步离不开深度学习技术的发展。作为机器学习的一部分,深度学习技术能够为实体关系抽取模型提供技术依托,既能加速实体关系抽取模型的场景化构建,又能支持相关数据算法进行规范化训练。鉴于深度学习技术在实体关系抽取任务中的突出表现,本文以深度学习为切入点,系统地介绍实体关系抽取的发展脉络。为了更清晰地描述本文工作,将所作贡献分为如下几点:
1)对基于深度学习的实体关系抽取方法进行综述,分别讲述各类方法的任务建模方式,并分析其优缺点。
2)对领域内常用数据集进行总结整理,通过表格形式呈现模型在数据集上的性能表现,以提供参考依据。
3)对实体关系抽取未来研究方向和热点进行展望,为领域内研究者提供可能的研究方向。
1998年召开的系列信息理解会议(message understanding conference,MUC)最早提出实体关系抽取任务,采用模板填充法抽取人物、地理位置和产品等实体之间的关系[1]。随后,实体关系抽取领域研究进展迅速。1999年的自动内容抽取(automatic content extraction,ACE)会议整合、扩展并完善了实体关系抽取的评测任务和训练数据集[2]。此后,实体关系抽取任务的评测数据集不断扩充,成为信息抽取的核心研究数据之一。
实体关系抽取作为信息抽取的任务之一,有其独特的任务呈现形式。一般将其建模为三元组或者五元组的形式:三元组形式包含一个谓词和二个形参,即(E1,R,E2),其中E1和E2表示具体实体,R表示关系类型;五元组可表示为(E1,C1,R,E2,C2),其中E1和E2表示具体实体,C1和C2表示实体类别,R表示关系类型。
基于以上呈现形式,实体关系抽取任务可认为是:从识别出的实体中抽取实体之间的语义关系,并表示为预定形式的过程。
根据训练语料的标注情况,可以将关系抽取分为有监督、半监督、无监督和远程监督4种。有监督的方法需要标注好的语料库,人力耗费大,且无法识别出训练语料中不包含的语义关系,在新领域不能很好地泛化。因此,基于半监督、无监督和远程监督的方法相继出现。基于半监督的关系抽取方法能够从标记数据和未标记数据中共同学习,利用少量的标记数据,在迭代过程中不断抽取出高质量的数据加入到已标记数据中,在一定程度上降低了对标注语料库的依赖。基于无监督的方法不需要大量标注语料库,而是利用聚类、图分区等技术,通过分析实体之间的共现模式和语义关联性来发现潜在的关系,可移植性较好。远程监督方法结合了半监督方法和无监督方法的优点,利用已有的结构化知识库(如Freebase、Wikipedia)自动标注数据。这种方法假设知识库中的实体对具有对应的文本实例,并根据实体在知识库中的关联关系,自动生成训练数据。虽然存在一定的噪音问题,但可以扩大训练数据规模,进一步提高了关系抽取模型的泛化能力。
深度学习技术的出现,使得上述方法能够利用模型强大的特征挖掘能力,这在一定程度上避免人工抽取特征带来的差异,改善关系抽取的效果。本文主要集中于基于深度学习技术的有监督和远程监督实体关系抽取方法的讨论。
基于深度学习的关系抽取方法能够利用模型自动抽取特征,具有较高的准确率,获得了更多学者的关注。现有主流的基于有监督的深度学习关系抽取模型主要分为流水线方法和联合抽取方法两类。
流水线方法是指在完成实体识别的基础上,抽取实体之间关系生成三元组的过程。早期的流水线方法主要采用循环神经网络(recurrent neural network,RNN)和卷积神经网络(convolutional neural network,CNN)。随着深度学习技术的不断发展,长短期记忆(long short-term memory,LSTM)网络、门控循环单元(gate recurrent unit,GRU)、生成式预训练transformer(generative pre-trained transformer,GPT)模型和基于transformer的双向编码表示(bidirectional encoder representations from transformers,BERT)模型相继出现,促使关系抽取模型性能得到更大的提升。
2.1.1 基于RNN模型的方法
RNN是一种适用于处理时序型数据的神经网络,因其优秀的时序特征建模能力,被广泛用于实体关系抽取任务建模。
2012年,Socher等[3]提出了矩阵-向量递归神经网络 (matrix-vector recursive neural network,MV- RNN),首次将RNN与向量和矩阵结合起来,自底向上学习较长短语的表示形式。Ebrahimi等[4]提出C-RNN(chain RNN)模型,将称为链(chains)的依赖组成单元和RNN相结合,使模型能够获得更紧凑的实体关系表示。然而,当处理较长序列时,RNN容易造成梯度消失和梯度爆炸,为此研究者们提出了RNN的变体模型LSTM。Sundermeyer等[5]首次提出了LSTM模型,通过引入记忆单元和门控机制,能够更有效地处理长距离依赖关系,在一定程度上改善了梯度消失的问题。早期的RNN和LSTM都是从前往后传递信息,这在很多任务中都有局限性。为解决这一问题,研究者们引入了双向长短期记忆网络 (bi-directional long short-term memory network,BiLSTM)。Zhou等[6]提出了基于注意力机制的双向长短时记忆网络(attention-based bi-directional long short-term memory networks,Att-BiLSTM),利用注意力机制捕捉句子中重要的语义信息,提高了实体关系抽取模型的准确率。李卫疆等[7]在BiLSTM中引入自注意力机制学习实体与实体间的结构信息,从多角度充分考虑各种特征信息。
依托于RNN神经网络出色的时序建模能力,实体关系抽取任务取得了显著进展,并为其他网络模型的使用提供了契机。
2.1.2 基于CNN模型的方法
CNN作为关系抽取模型的主要算法之一,因其擅于捕获句子的局部特征,并能组合得到句子的全局特征的优势,受到学者们的广泛关注。
2014年,Zeng等[8]首次将CNN用于关系抽取任务,利用CNN提取词汇特征和句法特征。2016年,Shen等[9]首次提出一种基于注意力机制的CNN模型,该模型能够更充分利用词嵌入、词性标注嵌入和位置嵌入信息,并能充分挖掘潜藏在句子中的重要特征。此后,研究者们在CNN和注意力机制上进行了一系列改进。Wang等[10]提出了一种依赖多层次注意力机制的CNN架构,该方法能够更好地学习异构结构中的关系分类知识,抽取效果优于之前依赖先验知识的模型。Li等[11]提出了一种新的CNN模型,该模型利用实体感知注意力机制捕获更多特征,实验结果表明该模型具有先进的关系抽取性能。Bai等[12]提出了一种具有分段注意机制的关系抽取模型(convolutional neural network with segment attention mechanism,SEGATT-CNN),该模型能够通过词嵌入提取局部语义特征,在PubMed语料库上取得了更好的结果。曹卫东等[13]提出了一种预训练卷积神经网络模型R-BERT-CNN模型,利用预训练模型融入实体级信息和CNN提取句子级语义,实现了高准确率的实体关系抽取。
基于CNN的方法为关系抽取任务建模提供了新的思路,并在大多数数据集上取得了较好的效果,同时也为后续关系抽取研究奠定了理论基础。
2.1.3 基于预训练模型的方法
基于预训练模型的方法近年来在实体关系抽取任务中取得了显著的进展。预训练模型能够通过大规模无监督的语料库学习通用的语言表示,从而捕捉到丰富的语义信息。这些模型广泛应用于实体关系抽取任务中,并通过微调或结合其他模型进行关系分类和抽取。
2018年,针对关系抽取任务中存在的动态语义问题,Radford等[14]提出了GPT模型,通过预训练和微调的方式一定程度上缓解了动态语义的困扰。同年,Google提出了BERT模型[15],进一步提升了自然语言处理技术的水平。由于预训练语言模型的强大语义建模能力,学者们纷纷投入到对预训练语言模型的研究中。Wu等[16]提出一种结合目标实体信息的预训练语言模型(relation-aware bidirectional encoder representations from transformers,R-BERT),率先将BERT和目标实体信息结合起来解决关系抽取问题。Huang等[17]提出了基于依赖的注意机制,充分考虑了每个单词对目标实体的依赖性,并将该注意力机制与BERT结合起来进行关系抽取。陈晓玲等[18]提出了一种轻量级双向门控循环单元注意力机制(a lite BERT bi-directional gated recurrent unit attention,ALBERT-BiGRU-Attention),实验结果表明,该模型在不依赖领域知识和人工提取特征的情况下,能够有效抽取出园林文本信息中实体对的关系。Xu等[19]提出了一种基于BERT门控多窗注意网络的关系抽取模型,利用BERT对句子及其约束信息进行编码,利用全局门控机制(global gating mechanism,GGM)将上下文信息传递到短语表示中,以增强实体上下文的语义表示能力。
流水线方法的优势在于将实体识别和关系抽取分为独立的阶段,便于分别优化和改进。这种方法虽在一定程度上解决了关系抽取效果不佳的问题,但仍存在两个问题:①错误传播,实体识别模块的错误可能会影响到后续关系抽取的效果;②信息冗余,识别出的实体需成对组合进行关系分类,导致无关联的实体对冗余,增加了关系分类的错误率。为解决这些问题,研究者们将实体识别任务和关系抽取任务结合起来,构建实体关系联合抽取模型。
联合抽取是指使用统一建模的方式进行实体关系抽取,该方法能够从非结构化文本中直接抽取出结构化三元组,这在一定程度上解决了错误传播的问题。根据建模对象的不同,本文将联合抽取方法分为参数共享方法和联合解码方法。
2.2.1 基于参数共享的方法
参数共享方法通过多个模块共享参数,增强实体识别和关系抽取任务之间的交互,以提高模型性能。主要分为三类:①先进行实体识别,然后在此基础上进行关系抽取;②先进行主实体识别,然后进行关系抽取,最后进行客实体识别,从而得到三元组;③先进行关系抽取,然后进行实体识别,得到最终的三元组。其流程如图1所示。
图1 基于参数共享的实体关系抽取方法Fig.1 Entity relation extraction method based on parameter sharing
2016年,Miwa等[20]提出一种基于序列和依存关系树的实体关系联合抽取模型LSTM-RNNs,但该模型的实体识别模块和关系抽取模块仅在一定程度上进行了参数共享,导致模型无法深度挖掘实体识别与关系抽取任务间的联系。Zeng等[21]提出了一种基于复制机制的关系抽取模型(copy relation extraction,CopyRE),该模型采用序列生成框架,依次抽取关系、头实体和尾实体,并对抽取得到的实体进行复制,不断解码得到新的三元组信息,但该模型难以区分头、尾实体,影响模型的抽取效果。Wei等[22]针对重叠三元组问题,提出一种级联二进制关系抽取框架(cascade binary tagging framework for relational triple extraction,CASREL),使用率先抽取头实体,然后根据头实体信息抽取客实体和实体间关系的方法,进行实体关系抽取任务构建,一定程度上克服了关系重叠的问题,并获得了优异的关系抽取效果。Li等[23]提出了一种基于翻译解码机制三阶段模型(translating decoding schema for joint extraction of entities and ralations,TDEER),通过翻译解码共同提取实体和关系来处理重叠的三元组问题。Gao等[24]提出一种基于全局实体配对和关系注意力机制的实体和关系提取模型,不仅可以有效解决重叠三元组问题,而且可以提高模型的时间性能。
基于参数共享的方法虽然能改善传统流水线存在的错误传递问题,但模型中各子模块仍相互独立,因此会产生没有关系的实体对,造成信息冗余。为了加强实体识别和关系抽取子模块的交互,研究者们提出了基于联合解码的方法。
2.2.2 基于联合解码的方法
基于联合解码的方法是指在编码层上使用统一解码器,直接解码得到结构化的三元组。将隐藏层得到的特征向量输入到三种联合解码框架(基于序列标注、基于SPAN、基于表格填充)中,预测主实体、关系类别和客实体,并组合得到关系三元组结果。其流程如图2所示。
图2 基于联合解码的实体关系抽取方法Fig.2 Entity relation extraction method based on joint decoding
2019年,Sun等[25]提出了一种基于图神经网络(graph convolutional network,GCN)的联合抽取模型,该模型引入二元关系分类任务构造实体-关系邻接矩阵,有效捕获两个子任务间的交互信息。为了解决联合抽取模型中的暴露偏差问题,Wang等[26]提出了单阶段的令牌对链接(token pair linking,TPLinker)联合抽取模型,该模型运用“握手标注”方案,利用标注的矩阵提取所有实体及其重叠关系,在关系抽取任务上取得了较好的结果。但TPLinker模型引入了三种矩阵,导致了冗余信息的产生。为解决此问题,Shang等[27]提出了一种新的联合抽取模型(joint entity and relation extraction with one module in one step,OneRel),将关系抽取任务建模为一个细粒度的三分类问题,该方式减少了标注矩阵量,使模型变得更加高效。Wang等[28]基于表填充的方法,提出一种可以共享标签空间的模型(unied label space for entity relation extraction,UNIRE),让实体识别与关系抽取共享编码器、解码器和标签空间,促进两个子任务的交互。
基于联合解码的方法能够使实体识别和关系抽取任务充分交互,进一步降低了错误传递风险,提升了关系抽取准确率。但这种方法需要设计复杂的联合解码算法,对于研究者来说是一个难点。
2009年,Mintz等[29]首次将远程监督方法引入关系抽取任务,并提出了一种假设:如果文本中的实体对与现有知识库中的实体对完全一致,则认为它们具有相同的关系。这一设想实现了利用现有知识库自动标注数据的目标。然而,远程监督方法在数据标注过程中面临两个主要问题:数据噪声和长尾问题。为了解决这些问题,研究者们提出了多种解决方法和改进措施。基于远程监督的实体关系抽取流程如图3所示。
图3 远程监督关系抽取流程Fig.3 Flowchart of remote supervisory relation extraction
由于远程监督方法是上下文无关的,因此不同语境下的同一实体对可能描述不同的关系类型,标注的数据会存在噪声标签。
为解决已有方法在选择有效实例和实体背景知识收集方面存在缺陷的问题,Ji等[30]提出了一种句子级别的注意力模型(attention-based piecewise convolutional neural networks,APCNNs)。该模型从知识库中获取实体描述,弥补了背景知识不足的缺点,为注意力模块提供了更好的实体表示。Wang等[31]提出了一种无标签的远程监督方法,通过引入知识图谱中实体类别的信息来辅助监督,并采用知识图谱嵌入模型生成训练目标,提高了远程监督关系抽取的效率。冯建周等[32]提出了一种基于改进注意力机制的关系抽取模型(improved sentence-level attention,IATT),该模型通过构建组合向量的方法保留正实例句子,更加彻底地去除冗余数据,使模型性能得到进一步提升。Yi等[33]提出了一种新的远程监督关系抽取模型,该模型由基于实体的门控卷积句子编码器和多层句子选择性注意模块组成,能更好地识别有效语句,减少错误标记语句对实验结果的影响。江旭等[34]提出了一种基于残差双向长短时记忆网络与句袋内和句袋间注意力机制的关系抽取模型,句袋内注意力机制能够精确地识别实体和关系,句袋间注意力机制能够降低冗余数据的影响,提升了远程监督关系抽取的性能。季一木等[35]提出了基于TransH(translating on hyperplanes)的双重注意力模型,充分利用实体向量信息,提取更能准确体现关系信息的特征。Gao等[36]结合句子的全局上下文信息来指导去噪过程并生成有效的袋级表示,其实验结果优于最先进的方法。
这些方法有效地改善了数据标注样本中存在噪声的问题,并在实体关系抽取任务中取得了很好的效果,为当前实体关系抽取研究提供理论和算法支持。
长尾问题是指各个关系标签对应的实体对数量或对齐的语料数量不均匀的现象,这会使得有些实体对得不到充分的学习,从而导致模型的训练效果存在偏差。
针对长尾问题,Gui等[37]将解释学习与远程监督结合起来,有效地从长尾数据中学习关系抽取规则,在处理长尾关系抽取方面效果优异。Han等[38]提出了脉冲耦合神经网络(pulse coupled neural network,PCNN)与分层注意力机制(hierarchical attention,HATT)相结合的模型,在关系的层次结构中融入注意力机制,并利用关系之间的相关性,使得模型能够更有效地处理长尾关系数据。Li等[39]提出了一种协作关系增强注意力网络(collaborating relation-augmented attention,CoRA),在此基础上引入层次关系之间共享的特征促进关系的拓展,从而平衡长尾关系数据的影响。Wang[40]提出了一种基于强化学习和分层关系搜索的关系抽取框架(relation extraction with reinforcement learning and hierarchical relational searching,RH-Net),将关系抽取任务转换为树搜索任务,通过共享头部类数据和尾部类数据相关实例的语义来解决长尾问题。Christou等[41]提出了一种新的基于transformer的远程监督关系抽取模型(relation extraction with distant supervision and transformers,REDSandT),通过获得高信息量的实例和标签嵌入,减少信息缺少标记的影响,取得了优异的实体关系抽取效果。Peng等[42]首次将关系相关性引入到远程监督关系抽取任务中,利用层次结构编码器获得了全局层次嵌入信息,通过引入局部概率约束进行句子级别和包级别的分类,在NYT数据集上取得了最先进的性能。
长尾问题作为影响关系抽取模型性能的问题之一,构建模型有效关注各种类别数据,受到学者们的广泛关注。上述模型的提出较好地解决了实体关系抽取任务中的长尾现象,为模型的构建提供了新的解决思路和方向。
在实体关系抽取研究领域,常用于评测模型性能的公开数据集主要有ACE数据集、SemEval-2010 Task8数据集、WebNLG数据集、COAE2016 Task3数据集以及应用于远程监督关系抽取的NYT数据集。
ACE:该数据集是由语言数据联盟(linguistic data consortium,LDC)发布的权威评测数据集,包含英语、阿拉伯语和汉语,共计6种关系类型和18种子关系类型。训练集包含674个带注释的文档和9 638个关系实例,测试集包含97个文档和1 386个关系实例。
SemEval-2010 Task8:该数据集源于2010年国际语义评测大会发布的第八个评测任务,包含因果关系、实体目标关系等9种关系类型和1个无方向的Other类。该数据集包含10 717个注释样本,包括8 000个训练实例和2 717个测试实例。该数据集侧重于识别实体对之间的语义关系,常用来比较不同关系抽取方法的性能差异。
CAOE2016 Task3:该数据集是第八届中文倾向性分析评测发布的第三个任务中的数据集,包含出生日期、出生地、毕业院校等10类关系。该数据集中包含988个训练实例,其中测试实例包括483条已标注的数据和其他未标注的数据。
WebNLG:该数据集最早是为自然语言生成任务创建的,后改编多用于关系三元组提取任务。该数据集包含216种关系类别,有5 019条训练数据,500条验证数据和500条测试数据。
NYT-freebase:该数据集是采用远程监督方法对齐纽约时报新闻文本获取到的数据集,有70%的数据为长尾数据,因此常用于远程监督关系抽取研究。该数据集共有52种语义关系和一个特殊的NA标签,其中NA标签指实体对之间没有关系。该数据集包含56 195条训练数据、5 000条验证数据以及5 000条测试数据。NYT-freebase是将freebase知识库中的三元组和NYT数据集中的文本对齐获取到的数据集。
这些公开数据集为研究者们提供了标准的评测平台,能够对实体关系抽取模型进行性能评估和比较,推动了该领域的进一步发展。
在关系抽取任务中,一般使用精确率(precision)、召回率(recall)以及F1值(F-measure)对模型的效果进行评价。
本文根据不同模型的构建方法、所使用的数据集及模型性能对基于有监督和远程监督的方法进行汇总,结果如表1所示。F1值和精确率根据实验数据保留一位小数。
从表1中可以看出,在基于深度学习的方法中,将注意力机制集成到CNN和RNN等模型中的方法明显优于单独模型的效果,如Att-CNN比CNN+Softmax的F1值提高约3.2百分点。之后预训练模型的广泛应用,也使得关系抽取任务的F1值提升至90%左右。
在远程监督关系抽取中,针对错误标注导致的数据噪声问题,研究者们大多将注意力机制整合到模型中,在一定程度上避免了冗余标签的影响,提高了远程监督关系抽取的精确率。其中GCEK在NYT-freebase数据集上取得了最好的效果,精确率达到了91.7%;而针对长尾问题,模型CoRA和GHE-LPC表现较好,在NYT-freebase数据集上分别取得92.9%和95.6%的精确率。二者均利用关系相关性来构建相应的关系抽取模型,缓解了长尾数据带来的问题,有利于远程关系抽取。
表1 基于深度学习的关系抽取模型性能对比Table 1 Performance comparison of relation extraction models based on deep learning
根据国内外学者对实体关系抽取任务的研究,本文主要聚焦于基于深度学习的主流方法,并对有监督和远程监督关系抽取的研究进展进行了分类总结,阐述了各种方法的核心思想和优缺点。目前,实体关系抽取研究取得了显著进展,并且已经在实践中得到了有效应用。然而随着业务的发展,有些方法无法满足现实的需求。针对关系抽取任务的具体表现形式,本文从以下三个方面对未来研究方向进行展望。
1)小样本关系抽取。小样本数据的挑战在于缺乏足够的标注样本来训练模型。深度学习技术可以通过迁移学习、预训练模型等方法,将模型在大规模语料上进行预训练,然后通过微调在小样本任务上进行训练,提升模型的泛化性能。然而,小样本无法覆盖一个关系的完整语义,因此如何利用已有的语料和其他任务结合起来进行关系抽取是一个值得深入研究的问题。
2)开放域关系抽取。当前的关系抽取研究主要集中在特定领域,很难实现知识在不同领域之间的迁移。开放域关系抽取旨在从大规模文本语料中发现各种未知的关系,而深度学习模型能够通过大规模数据学习,从中挖掘隐含的关系模式和语义信息。虽然已经有了一些开放域关系抽取的研究,但与特定领域的方法相比还存在差距,因此如何提升开放域模型的性能是一个需要深入研究的问题。
3)篇章级关系抽取。目前的关系抽取方法主要基于词汇级和语句级,缺乏必要的背景知识,影响性能。篇章级关系抽取考虑了上下文,有利于真实情景下的关系判别。而深度学习模型能够从长篇语境中学习复杂的关系和语义,具有潜在的重要作用。但是篇章级关系抽取的数据处理较复杂,需要处理较长篇幅的数据,以及跨段落和跨篇章的关系抽取,这是一个具有重要研究意义的问题。