信息抽取之关系抽取

本文是接上一篇文章信息抽取之实体抽取,继续探讨信息抽取中的关系抽取。另有信息抽取之事件抽取

3.1关系抽取的任务定义

在构建知识图谱的过程中,完成实体抽取之后,已经得到了许多的实体,这些实体就是知识图谱之中的节点。接下来要做的就是抽取这些节点之间的关系。关系指的是两个实体之间的某种联系,这种联系一般是某种语义关系。关系抽取的任务就是自动地识别实体之间的这种联系。同样的,关系抽取之中的关系,可以是预先定义好类别的,这种抽取叫做限定域的关系抽取。但是能够定义的关系总是有限的,在实际抽取任务之中,总是会出现没有定义的关系。这种没有预先定义关系类别的抽取叫做开放域的关系抽取。
在1998年的第七届MUC,首次提出了模板抽取的任务,后来逐渐发展成为关系抽取。2009 年, ACE 正式纳入文本分析会议(text analysis conference, TAC), 成为知识库总体(knowledge base population, KBP)任务的重要组成部分。关系抽取任务的主要评测会议还有后期出现的语义评估会议(semantic evaluation, SemEval)[32]。

3.2关系抽取技术方法

关系抽取的发展类似于实体抽取,从最初的基于规则,到机器学习方法和深度学习方法。在机器学习方法之中,一些学者对关系抽取和实体抽取联合建模,提出了联合抽取的方法。同时,关系抽取还有许多对弱监督方法的研究。

3.2.1基于规则和句法分析的方法

所谓的基于规则的方法指的是基于自然语言的一些特征,如词汇、句法、语义特征,来设计规则,通过在文本分析中寻找符合这些规则的实例进行实体关系抽取,通常这些规则都是由语言学专家进行设计。最著名的例子是Hearst[33]在1992年提出的“Hearst模式”,其开创性的研究发现,大量的下位词可以通过简单的模式发现,例如“X,such as Y”。 在工业界,也出现了许多基于规则的知识图谱构建系统,例如IBM的SystemT[34, 35],用来开发高质量的规则。Fukumoto等人[36]使用两个实体之间的谓词来判断实体之间的关系,但F值较低,只有39.1%。Humphreys等人[37]利用句法和语义规则来判断实体之间的关系,虽然增加了语义和句法信息,但是F1值依然不高。Aone等人[38, 39]利用语义特点来识别短语中心词和修饰词的关系,取得了较高的F1值。基于规则的方法需要领域专家构建大规模的知识库,并且通常只能在特定领域取得较好的结果,可移植性较差。

3.2.2有监督的关系抽取

大多数有监督的关系抽取方法是把关系抽取视为一种多分类的问题,也就是判断这个句子属于哪一类关系,使用分类器来抽取关系。监督学习的方法包括基于传统的机器学习方法和基于神经网络的方法。
传统的机器学习方法包括基于特征向量的方法和基于核函数的方法。基于特征向量的方法主要是提取关系中的具有区分性的特征并且有效地集成起来,然后使用分类器进行关系分类。基于特征向量的方法,重点在于提取特征,构建特征向量空间。Kambhatla[40]综合考虑实体本身、实体类型、依存树和解析树等特征,然后使用最大熵分类器判断实体间的关系。常用的特征还有照实体属性、二元属性、依存路径等类别等等。而基于核函数的方法不需要构建特征向量空间,而是以结构树为对象来进行计算,可以方便地利用各种特征。如Culotta等人[41]提出基于依存树核函数的实体关系抽取, 使用一些依存规则将句法分析树转换成依存树,并将一些特征依次添加到树节点上,最后使用 SVM 分类器进行关系抽取。Bunescu[42]进一步使用最短依存树核函数来进行关系抽取。基于核函数的方法依赖句法分析等自然语言处理工具,容易产生误差的扩大和传递,影响关系抽取的性能。
基于神经网络的方法,是目前进行关系抽取的主流方法,主要是使用CNN和BiLSTM对句子进行编码,最后再使用SoftMax分类器来进行分类。为了更好的建模句子,还可以加入注意力机制。基于神经网络的关系抽取方法可以分为两类。一类是把实体抽取和关系抽取当作不同的任务来进行,被称为流水线方法。这种方法默认为句子中已经标记出候选实体,也就是实体抽取的任务已经完成。第二类是实体抽取和关系抽取的联合模型,这种方法被称为联合抽取。
早期的基于神经网络的方法一般都是流水线方法。最早用于关系抽取的神经网络模型是卷积神经网络CNN[43, 44],这是因为CNN在文本分类中取得了巨大的成功,在后续研究中并逐渐加入池化层,注意力机制等等。然而CNN不太适合用来学习长距离的语义信息,由于在对长文本建模是,RNN能够捕捉更多的信息,具有更大的优势。对关系抽取的研究,开始转入到使用注意力机制结合RNN以及BiLSTM模型。使用BiLSTM对句子建模,可以更好的捕捉双向的语义依赖,并使词向量级别的注意力机制。基于注意力机制的BiLSTM模型的结果好于绝大多数其他方法[45]。如图6所示,基于注意力机制的BiLSTM模型在其BiLSTM层的输出特征上生成一个权重向量,词汇级特征与这个权重向量相乘得到句子级别的特征,从而增强关系抽取的效果。

图6 基于注意力机制的BiLSTM模型

流水线方法没有考虑到实体抽取和关系抽取之间紧密的联系,将它们割裂为两个子任务去处理。因此,在使用流水线方法进行关系抽取的时候,会存在三个主要的问题。第一是实体抽取的错误会导致关系抽取的错误。第二是关系抽取中,会对实体抽取得到的实体两两配对,生成笛卡尔积来进行关系的判断,这样会产生大量的冗余信息,提高了关系抽取的错误率。第三是忽视了实体抽取与关系抽取的联系。为了解决这一关键问题,许多学者着手把实体抽取和关系抽取两个任务联合处理,提出了实体关系抽取联合模型(Joint Model)。联合抽取的目标是输入一个句子,通过联合模型同时抽取出实体与关系,也就是直接生成实体关系三元组。
早期的联合抽取模型,都是基于人工构造特征的结构化学习方法,需要设计复杂的特征工程,并且依赖NLP工具。Li[46]等人提出了一种增量联合框架,利用结构感知器和有效的集束搜索同时提取提实体和关系。Xiang等人[47]提出了联合抽取框架Cotype。Cotype设计了一个与领域无关的文本切分算法来针对不同领域的实体识别,同时对关系和实体之间的相互依赖进行建模,同时抽取实体和关系。

图7 基于注意力机制的BiLSTM模型
随着深度学习方法逐渐称为关系抽取的主流方法,联合抽取模型也开始使用深度学习方法。Miwa等人[48]提出基于词序信息和依存树结构信息来抽取实体间的关系的方法,该模型使用了双向的LSTM和tree-LSTM结构,通过共享实体抽取和关系抽取模型的嵌入层参数,同时抽取实体及其关系。类似的共享底层参数的方法还有Zheng等人[49]提出的在底层共享嵌入层和BiLSTM层,然后分别使用一个LSTM来进行实体抽取和一个CNN来进行关系抽取,模型结构如图7所示。共享参数的方法虽然能够利用实体抽取和关系抽取之间的联系,但是两个子任务在上层网络种还是分别进行的。Zheng等人[50]提出一种新的标注机制,把实体关系联合抽取转化为序列标注问题,一个实体的标注会包含这个实体关系信息,通过训练一个端对端的神经网络模型可以直接得到关系实体三元组。如图8所示,这种方法融合了序列标注中的BIOES方法和关系标注的方法。在一个句子中,非实体的词语依然是使用“O”进行标注,而实体词语,则在BIOES标注的基础上加入预先定义的关系类别和关系角色的标注,P表示合作关系,最后一位的数字表示是头实体还是尾实体。新的标注机制能够同时进行两个子任务,但是无法解决关系重叠问题,即一个实体存在于多个关系三元组之中。为了解决以上两种方法的问题,Wang等人[51]设计一个有向图机制将联合抽取任务转换为一个有向图问题,使用有向边来表示实体内部结构和关系,使用基于转换的解析框架来联合抽取。Fu等人[52]提出了利用图卷积网络(GCN)提取特征的GraphRel,不仅提取整体序列特征,而且可以提取每个词的区域依赖特征,解决了实体重叠的问题。 ![](https://hongkg.oss-cn-beijing.aliyuncs.com/img/20201011172349.png)
图8 新标注机制下的标注实例

3.2.3弱监督的关系抽取

监督学习的方法都需要大量的标注语料,随后的研究逐渐集中在如何在缺乏标注语料的情况下解析信息抽取。一种思路是采用半监督的方法,使用Bootstrapping算法来迭代地抽取关系。首先使用这种方法的是DIPRE[53]系统,该系统使用少量书名和作者名作为种子实体对,从文本中抽取包含这些种子词的句子,得到抽取模板,基于这些抽取模板去标注新的句子,得到新的抽取模板,不断迭代调整,直到无法抽取三元组或者不符合约束条件。Agichtein等人[54]在此基础上改进,提出了Snowball系统。Snowball开发新的模板定义和模板表示策略,模板抽取上更加灵活;同时Snowball使用向量表示实体和关系元组,通过向量的相似度来迭代抽取;为了避免抽取过程中的错误传递,Snowball建立了一套评估体系,删除不可靠的元组和模板,提高关系抽取的质量。基于Snowball系统,Zhu等人[55]提出了StatSnowball。StatSnowball使用马尔可夫逻辑网络来评判模板的质量,使得系统在评估与选择模板上更为精准。基于Bootstrapping的半监督方法对种子词的质量要求较高,模板的优化对关系抽取的效果有着巨大影响。而且这种方法准确率会有所提高,但是召回率往往不高。
另一种是远程监督方法,利用已有的知识库或者语料库来标注样本。Mintz等人[56]首次将远程监督方法使用到关系抽取之中。远程监督方法假设在文本之中出现知识库之中已有地实体对,就表示它们具有相同的关系。利用远程监督方法可以标注大量语料,从而提取文本特征,用于训练分类器。如图9所示,假设现在存在一个知识库,其中包含着<瓦特,改进,蒸汽机>这样的三元组。当我们要训练关系抽取的模型时,文本之中的包含“瓦特”和“蒸汽机”的句子,可以视为表征了“改进”这个关系,所以,我们可以为这三个句子标注为“改进”这一关系。由于知识库中存在的关系是不完备的,会在标注数据中引入噪声。Zeng等人[57]采用了多示例学习的PCNN,从相同实体对的多个句子中选取可信度最高的句子的关系作为所有句子的关系,从而降低远程监督的噪声影响。这种方法只选择可信度最高的句子进行学习,没有充分利用其他句子的信息。Lin等人[58]提出句子级别的注意力机制,降低标注错误样本的权重,能够充分利用所有句子的信息。基于Bootstrapping的半监督方法与远程监督方法都能够降低对标注语料的依赖。但是二者都存在语义漂移现象。

图9 基于远程监督的关系抽取模型示意图

3.2.4开放域关系抽取

开放域的关系抽取则不需要预先定义好关系类别,直接处理单个句子,使用一些词语来表示这种关系,将其变成三元组样式的结构化表示。典型的开放域关系抽取系统包括KnowItAll,TextRunner[59],Kylin,WOE,ReVerb等。KnowItAll[60]模型通过人工编写规则模板,无监督地从互联网中抽取大量事实,通过语法分析抽取关系,并且KnowItAll是领域无关且可扩展的。TextRunner能够直接从网页纯文本中抽取实体关系,其关系抽取过程类似于语义角色标注,它把动词作为关系名称,通过动词链接两个实体。陈立玮等人[61]提出了基于弱监督学习的开放域关系抽取模型,引入n-gram特征以提高多语言关系抽取模型鲁棒性。

3.3关系抽取的挑战和趋势

总的来说,现阶段的关系抽取方法主要是有监督的方法,对人工标注的数据较为依赖。所以弱监督学习、远程监督以及迁移学习将是研究与应用的主要方法。弱监督学习与远程监督学习目前依然有较大地提升空间,如何解决语义漂移问题还需要更加深入的研究。
另一方面,现阶段的关系抽取任务大多限定在句子级别,而篇章级别的关系抽取则少有研究。而许多实体关系事实只能从多个句子中联合获取[62]。篇章级的关系抽取包含多种复杂的推理类型,包括逻辑推理、指代推理、常识推理,因此模型需要具备多种推理能力才能有效地进行篇章级关系抽取。
并且,目前的关系抽取模型很少考虑到关系重叠问题,即同一对实体之间存在多种关系。解决关系重叠问题,将会有效地提升关系抽取的实际应用能力。
此外,现阶段的实体关系联合抽取,模型效果依然有提升空间。随着图神经网络的引入,将会对实体关系联合抽取产生巨大影响。

参考文献

[32] 谢德鹏, 常青. 关系抽取综述[J]. 计算机应用研究, 2019: 1-5.
[33] HEARST M A. Automatic acquisition of hyponyms from large text corpora, 1992. Association for Computational Linguistics.
[34] LI Y, REISS F R, CHITICARIU L. SystemT: A declarative information extraction system, 2011. Association for Computational Linguistics.
[35] KRISHNAMURTHY R, LI Y, RAGHAVAN S, et al. SystemT: a system for declarative information extraction[J]. ACM SIGMOD Record, 2009,37(4): 7-13.
[36] FUKUMOTO J, MASUI F, SHIMOHATA M, et al. Oki electric industry: Description of the Oki system as used for MUC-7, 1998. Citeseer.
[37] HUMPHREYS K, GAIZAUSKAS R, AZZAM S, et al. University of Sheffield: Description of the LaSIE-II system as used for MUC-7, 1998.
[38] AONE C, HALVERSON L, HAMPTON T, et al. SRA: Description of the IE2 system used for MUC-7, 1998.
[39] AONE C, RAMOS-SANTACRUZ M. REES: a large-scale relation and event extraction system, 2000. Association for Computational Linguistics.
[40] KAMBHATLA N. Combining lexical, syntactic, and semantic features with maximum entropy models for extracting relations, 2004.
[41] CULOTTA A, S. SORENSEN J. Dependency Tree Kernels for Relation Extraction., 2004.01.
[42] BUNESCU R C, MOONEY R J. A shortest path dependency kernel for relation extraction, 2005. Association for Computational Linguistics.
[43] ZENG D, LIU K, LAI S, et al. Relation classification via convolutional deep neural network[J]. the 25th International Conference on Computational Linguistics: Technical Papers, 2014: 2335-2344.
[44] NGUYEN T, GRISHMAN R. Relation Extraction: Perspective from Convolutional Neural Networks, 2015.01.
[45] ZHOU P, SHI W, TIAN J, et al. Attention-Based Bidirectional Long Short-Term Memory Networks for Relation Classification, 2016.08.
[46] LI Q, JI H. Incremental joint extraction of entity mentions and relations, 2014.
[47] XIANG R, WU Z, HE W, et al. CoType: Joint Extraction of Typed Entities and Relations with Knowledge Bases, 2017.
[48] MIWA M, BANSAL M. End-to-End Relation Extraction using LSTMs on Sequences and Tree Structures[J]. 2016.
[49] ZHENG S, HAO Y, LU D, et al. Joint entity and relation extraction based on a hybrid neural network[J]. Neurocomputing, 2017,257: 59-66.
[50] ZHENG S, WANG F, BAO H, et al. Joint Extraction of Entities and Relations Based on a Novel Tagging Scheme, 2017.
[51] WANG S, ZHANG Y, CHE W, et al. Joint Extraction of Entities and Relations Based on a Novel Graph Scheme., 2018.
[52] FU T, LI P, MA W. GraphRel: Modeling text as relational graphs for joint entity and relation extraction, 2019.
[53] BRIN S. Extracting patterns and relations from the world wide web, 1998. Springer.
[54] AGICHTEIN E, GRAVANO L. Snowball: Extracting relations from large plain-text collections, 2000.
[55] ZHU J, NIE Z, LIU X, et al. Statsnowball: a statistical approach to extracting entity relationships, 2009.
[56] MINTZ M, BILLS S, SNOW R, et al. Distant supervision for relation extraction without labeled data: Joint Conference of the Meeting of the Acl & the International Joint Conference on Natural Language Processing of the Afnlp: Volume[C], 2009.
[57] ZENG D, LIU K, CHEN Y, et al. Distant Supervision for Relation Extraction via Piecewise Convolutional Neural Networks, Lisbon, Portugal, 2015.sep.
[58] LIN Y, SHEN S, LIU Z, et al. Neural Relation Extraction with Selective Attention over Instances, Berlin, Germany, 2016.aug.
[59] YATES A, CAFARELLA M, BANKO M, et al. Textrunner: open information extraction on the web, 2007. Association for Computational Linguistics.
[60] ETZIONI O, CAFARELLA M, DOWNEY D, et al. Unsupervised named-entity extraction from the web: An experimental study[J]. Artificial intelligence, 2005,165(1): 91-134.
[61] 陈立玮, 冯岩松, 赵东岩. 基于弱监督学习的海量网络数据关系抽取[J]. 计算机研究与发展, 2013,50(09): 1825-1835.
[62] YAO Y, YE D, LI P, et al. Docred: A large-scale document-level relation extraction dataset[J]. arXiv preprint arXiv:1906.06127, 2019.