点击上方,选择星标,每天给你送干货!
关系抽取是信息抽取的基本任务之一,目的是识别文本中实体的目标关系,关系抽取对于知识库的构建以及文本的理解十分重要,特别有利于自然语言处理的一些任务,如问答,文本理解等,而且,关系抽取作为知识图谱构建的核心关键,是必不可少的步骤。
大家熟知的传统关系抽取(二元关于抽取,两个实体之间的关系)已经得到了广泛的研究,并且有很多的研究方法已经落地实践,近些年来,对于复杂场景的变化,传统的简单关系抽取已经无法满足实际场景中的复杂应用,慢慢衍生出需要复杂场景的关系抽取任务。
本文是一篇综述文章,总结了目前简单关系抽取的研究进展以及实践方法,对目前已出现的复杂关系抽取任务进行了总结,并介绍了每个任务的定义、最新进展、挑战和机遇。[1]
一、简单关系抽取
简单的关系抽取目的是从文本中识别两个实体之间的关系,例如下图,根据文本,识别出北京和中国的关系为 the capital of,一般这样的关系抽取称之为二元关系抽取( Binary Relation Extraction,BiRE)。
目前的方法一般分为基于监督学习的 BiRE(Supervised BiRE)、基于半监督学习的 BiRE(Semi-supervised BiRE) 以及基于远程监督学习的 BiRE(Distant Supervised BiRE。具体来说,基于监督学习的 BiRE 侧重于从高质量的标记数据中学习一个关系抽取模型。然而,高质量的标记数据获取很难,而且成本很高,需要花费大量的人力物力,而未标记数据却随处可见。因此,提出了基于半监督学习的 BiRE ,利用少量标注数据以及大量未标注数据来训练关系抽取模型。另外减轻数据标注难度的另一个方法是远程监督学习,基于远程监督学习的 BiRE 是在一组弱标记样本的基础上学习一个可靠的关系抽取模型,采用启发式的方法自动获取标签,通常会包含大量的噪声数据。
1、Supervised BiRE
基于监督学习的简单关系抽取方法利用高质量标记样本数据老训练学习,这些样本数据是通过人工标注或众包而获得,样本数据的格式为( , , ),其中 = ( , ) 是一个实体对。 是包含 的文本, 表示实体对的关系。简单理解为:文本 中包含的实体对 ,他们之间的关系为 。
基于监督学习的关系抽取模型将实体对 ,文本 作为模型的输入,并预测实体对 的关系 作为模型的输出。
现状:近年来,深度学习已被广泛应用于关系抽取任务,并提出了许多新的神经模型。
基于图的神经网络模型:基于图我的神经网络模型已经广泛应用于关系抽取任务,并获得了很高的性能。例如18年基于 GCN 提出的C-GCN方法[2];
基于预训练的方法:BERT、ALBERT、XLNet等预训练语言模型可以将文本编码成适当的分布表示,例如19年结合 BERT 的语义特征构建实体对图,提出的方法 EPGNN[3]。
基于胶囊网络的方法:例如18年有人将胶囊网络与基于注意力的路由算法结合起来,以解决关系抽取中的多标签问题[4]。
SOTA: 公开评测的数据集有 SemEval-2010、ACE 2004、TACRED。下面是目前在SemEval-2020的SOTA结果:
2、Semi-supervised BiRE
在很多场景下,特别是某些特定的领域,很难获得高质量的标记数据,然而却存在大量的未标记数据可用,为了在训练阶段能够利用大量的未标记数据,基于半监督学习的关系抽取模型尝试从标记数据和未标记数据中共同学习。
有以下的预定义, 代表关系集合, = ,其中 i=1 to 代表标记数据, 代表的是未标记数据,其中 代表关系, 和 代表对应数据集的大小。基于半监督学习的关系抽取模型旨在学一个函数,该函数对标记数据和未标记数据进行建模,并预测 的目标关系 。
主要有以下几种方法:
Bootstrapping:作为半监督关系抽取的一个主要分支,从标记种子数据开始学习到一个模型,该模型用于寻找更多的有标记的数据。
教师-学生模型:伴随着教师-学生模型(teacher-student model)在半监督学习的探索,有人[5]将这种模型架构引入半监督关系抽取任务框架,学生从未标记的数据中学习鲁棒性知识表示,教师用标记的数据指导学生。
多任务学习:将半监督关系抽取任务与其他任务联合训练学习。
3、Distant Supervised BiRE
基于远程监督的关系抽取和基于监督的关系抽取很相似,他们都可以表示为( , , ),不同之处在于这些样本数据采用某种自动化的方式获取,比如将已有的知识库(freebase等)对应到丰富的非结构化文本数据中,从而生成大量有标记的训练数据,从而训练关系抽取模型。
在获取样本数据的过程中存在很强大的假设或者规则,会有很多噪音数据,文本无法清晰的表达实体之间的关系。因此,如何减轻噪声数据对远程监督关系抽取性能的影响是目前研究的重点。
强化学习:强化学习的思想已经广泛应用于噪声检测。例如Sun采用强化学习方法检测带有噪音的标签数据,进而获得潜在可能正确的标签数据[6]。
对抗学习:对抗训练也被证明是有效的,它能有效地提高模型对噪声样本的鲁棒性。例如 DSGAN[7]。
各种注意力机制等。
在数据集 NYT 上的 SOTA 模型如下:
![](https://i-blog.csdnimg.cn/blog_migrate/5cbbe796f660abb85e9010fbe244291f.png)
问题
总的来说,简单关系抽取已经取得了显著的进步,许多有效的解决方案已经在实践中得到应用。然而,伴随业务的发展,场景的多元化、以及简单关系抽取的局限性,简单的关系抽取慢慢无法满足需求用程序的快速增长,需要引入更复杂的关系抽取任务。
1、简单关系抽取任务依赖于大量数据,然而,在特定领域数据数据不足的情况下,目前的方法显得颇为吃力,所以由此而要解决的是少量数据关系抽取的问题。
2、简单的关系抽取任务仅限于句子级提取。然而,除了句子级别的信息之外,许多其他来源包含更丰富的语义关系实例。如何从各种来源提取关系是一个有趣而又富有挑战性的问题,包括文档级别的关系抽取、跨语言关系抽取、多模态关系抽取。
3、目前的简单关系抽取仅仅是二元关系建模,远远不能满足一些复杂应用的需求。一般的二元关系不足以建模现实世界的复杂语义,需要更复杂的关系建模,比如多元关系抽取、多粒度关系抽取、嵌套关系抽取等。
4、现有的简单关系抽取不能很好地处理重叠的实体之间的关系。
二、复杂关系抽取
围绕复杂关系抽取(Complex Relation Extration,CoRE)只有非常近期的工作。与简单关系抽取不同,复杂关系抽取试图提取涉及多个实体或在特定约束下的更复杂关系。
1、小样本关系抽取
在大多数情况下,一个关系只有很少的数据,这使得简单的关系抽取模型无能为力,为了解决监督学习中的数据需求问题,一种办法是上述提及的远程监督的方法,自动生成带有标签的训练数据,减轻人工标注数据的成本;另一种办法是研究如何充分利用少量标注数据进行训练,使得模型具有更好的泛化能力,即少样本学习( Few-shot Learning),少样本关系抽取任务的目的是通过少量的标注样本数据训练(或者微调)模型,使模型可以快速学习到一个或几个关系类别的特征信息,从而对这些类别准确分类。
少样本学习主要有两类主要方法:
1、度量学习:谷歌提出的 MTB 模型[8]在FewRel上面取得了 SOTA 的效果,采用对比学习的思想,利用 BERT 预训练模型,引入 matching the blanks 目标:如果两个句子中包含相同的实体对,那么它们关系表示的相似度尽可能高,反之相似度应尽可能低。
2、元学习:元学习在少样本学习方向上主要是优化在假设空间寻找最优参数的策略。
这里有放出的数据集:FewRel,FewRel 2.0。
2、文档关系抽取
文档级别的关系抽取目的是在文档级抽取实体之间的关系,在这个任务中,关系可以跨越多个句子甚至段落,相比于句子级关系抽取,文档级的关系抽取任务更有挑战性,它需要更加复杂的推理技巧,如逻辑推理,共指推理,常识推理等。在一篇文档中,同一实体可能包含在多个句子中,为了识别出跨句子实体之间的关系,关系抽取需要能够对文档中多个实体之间的复杂交互以及实体的上下文信息建模。
文档级别的关系抽取大致上可以分为两大类方法:
Sequence-based model:采用不同的神经网络对实体、句子、文档层次化建模,从而进行文档关系抽取。
Graph-based model:采用文档 graph 来建模文档内实体语义信息,重点在于文档 graph 的构建、文档信息的保留、以及信息的传播。
这里有数据集:CDR、DocRED。
3、跨语言关系抽取
在资源贫乏的语言中,可能缺乏高质量的的标注样本数据,从而不可避免会丢失大量无法提取的关键信息,但是某些实体在某一语言的语料库中出现的频率可能更高,可以很好的弥补这一缺陷,有利于知识库的补全。跨语言关系抽取的目的是试图学习用资源丰富的语言数据训练实体关系抽取模型,并将其转换为目标语言。跨语言关系抽取模型将句子信息和实体作为模型的输入,将实体对之间的关系作为输出。
4、多模态关系抽取
随着互联网信息的爆炸性增长,图像和视频也成为丰富的资源。多模态关系抽取利用了这些大规模语料库的优势,并致力于从中提取关系。图像和视频作为一种生动的信息传递方式,可以蕴含很多知识。一方面,人类喜欢用图像来表达一些常识知识,而不是明确地说出来。另一方面,多模态语料库的结合在许多任务中显示出良好的效果。这种现象突出了从图像或视频中获取关系而不仅仅是只有文本的重要性。
5、多元关系抽取
多元关系抽取(N-ary Relation Extractio,NRE)旨在抽取一个或多个句子上下文中 N 个实体之间的关系。在多元关系抽取任务中,输入可以表示为 ,其中 包含所有实体, 是包 m 个句子。目标是预测这 N 个实体之间的关系。关系集被预定义并表示为 其中 也包含在 中,表示 N 个实体之间没有关系。
多元关系抽取吸引了研究的广泛兴趣,它在检测因果关系和预测药物基因突变等应用中起着至关重要的作用,与二元关系抽取不同的是:针对多元关系抽取任务提出的方法较少。
6、多粒度关系抽取
多粒度关系抽取以从粗到细的方式描述知识。直观地说,细粒度关系的目的是从粗粒度关系中区分隶属关系。将关系映射到不同级别建立分类的方法,对于挖掘特定级别的信息至关重要。
目前的多粒度关系抽取进展相对缓慢:
• 模糊边界:粗粒度关系和细粒度关系之间的边界不明确,现有方法几乎把两种类型关系作为一个整体部分,导致了性能瓶颈。
• 评价度量的公平性:F1值的评估对多粒度的关系抽取是不够的,需要相应的评价指标来更好地以多粒度的方式反映评估质量。
7、条件关系抽取
条件关系抽取旨在提取具有特定约束的关系,例如时间或空间条件。条件关系通常可以表示为 ,其中 是原始的三元组 , 是关系成立的条件。以时间条件为例,总统(Barack Hussein Obama,American)关系只适用于 2008 年至 2017 年这一时间段,所以条件 在这里可以是一个时间区间 [2008,2017]。
目前,大规模知识库包含数百万个实体和关系实例,如 DBpedia、Freebase 和 YAGO。然而,很少有人认为关系是有条件的,或在知识库中包含上述外部条件,它严重地限制了现有知识库对复杂推理任务的适用性,并导致了对条件再推理研究的迫切需求。
8、嵌套关系抽取
传统的简单关系抽取可以表示为 ,而嵌套的关系抽取 (Nested Relation Extraction) 可以形式化为 或 。然而,针对这样的数据,传统的二元关系抽取会丢失信息,导致三元组信息的不完整,嵌套关系抽取有助于更正确地表达原句的意思。另外,嵌套关系抽取会更有利于下游任务,比如问答任务就对三元组的正确性和完备性有哦强依赖。
9、重叠关系抽取
一个句子中不同的关系三元组可能有不同程度的重叠。存在两种重叠类型:实体对重叠 (Entity Pair Overlap,EPO) 和单实体重叠 (Single Entity Overlap,SEO)。EPO 意味着一些三元组共享重叠的实体对。SEO 意味着一些三元组共享一个重叠的实体,但它们不共享重叠的实体对。比如, 和 都是SEO,共享同一个实体 。 和 属于 EPO,它们共享同一个实体对 。
先前的关系抽取是基于给定的实体对来寻找关系,然而,在实际应用中,实体的位置往往是未知的,而且实体之间可能存在多种关系。忽略重叠关系的抽取会丢失很多相关的三元组,导致知识图谱不完整。近年来,一些研究者现在正在研究如何考虑一个句子中的重叠关系,如 CopyR[9]采用 copy 机制的端到端神经网络模型提取重叠关系,这是第一个考虑重叠问题的工作。
重叠关系抽取方面仍然存在一些挑战:
• 关系的复杂性:一个句子中两个实体之间可能没有关系,也可能有多重关系。
• 未知实体和关系:实体和关系的位置未知,很难正确找到。
总结
关系抽取旨在为特定设置下的两个或多个实体识别正确的关系,本文介绍了简单关系关系抽取的最新进展,包括基于监督学习的关系抽取、基于半监督学习的关系抽取以及基于远程监督的关系抽取,但是面对复杂的场景和实际应用,简单的关系抽取不在十分有效,复杂关系抽取的进展我们必须了解,因此,文中也介绍了目前复杂关系抽取的分类。
参考资料
Complex Relation Extraction: Challenges and Opportunities
Graph convolution over pruned dependency trees improves relation extraction
Improving relation classification by entity pair graph
Extracting relational facts by an end-to-end neural model with copy mechanism
Semi-supervised teacher-student architecture for relation extraction
Reinforcement learning for distantly supervised relation extraction
DSGAN: Generative Adversarial Training for Distant Supervision Relation Extraction
Matching the blanks: Distributional similarity for relation learning
Extracting relational facts by an end-to-end neural model with copy mechanism
说个正事哈
由于微信平台算法改版,公号内容将不再以时间排序展示,如果大家想第一时间看到我们的推送,强烈建议星标我们和给我们多点点【在看】。星标具体步骤为:
(1)点击页面最上方“深度学习自然语言处理”,进入公众号主页。
(2)点击右上角的小点点,在弹出页面点击“设为星标”,就可以啦。
感谢支持,比心。
投稿或交流学习,备注:昵称-学校(公司)-方向,进入DL&NLP交流群。
方向有很多:机器学习、深度学习,python,情感分析、意见挖掘、句法分析、机器翻译、人机对话、知识图谱、语音识别等。
记得备注呦
推荐两个专辑给大家:
专辑 | 李宏毅人类语言处理2020笔记
整理不易,还望给个在看!