与PLM有关的知识图谱构建相关文献-阅读笔记

博客原文:个人主页原文

(2023)PiVe

现有的LLM大多基于非结构化的数据进行预训练,所以对于“将文本组织成机器可读的结构化的格式”的任务,它们的表现并不理想

语义图是一种图结构的数据,存储着机器可以访问的信息。从文本生成语义图,成为text-to-graph(T2G)。过去的T2G主要依靠微调的小语言模型来完成。然而对于LLM来说,即使在少样本的条件下,LLM(如GPT-3.5)仍然存在错误

本文中,我们重点讨论了如何提高LLM生成图的能力。为此,我们提出了Prompting through Iterative Verification (PiVe)的框架,如图1所示。PiVe利用外部验证模块(即一个小得多的LM),并将验证模块的反馈合并到prompt中。PiVe反复使用验证器模块,并在将prompt发送回LLM之前,通过纠正指令来完善prompt,从而大大提高生成的语义图的质量

训练验证模块的方法:我们从一个种子数据集开始(包含文本和图的(T, G)对),通过在种子集上随意选取一个图G,并对其中的实体、关系或三元组进行任意的扰动,从而构造成一个图扰动数据集。文本、扰动后的图、以及校正描述(用于逆转施加的扰动)组成了一个验证数据集中的三元组,供验证模块进行自监督学习。随后,我们设计了微调(fine-tuning)和指令调优(instruction-tuning)来分别训练特定领域和通用的验证模块

在通过LLM生成T2G的过程中,验证器从LLM获取文本T和输出的图G,并向LLM发送校正信号(例如,“将文本转换为语义图,并将给定的三元组添加到生成的语义图”)。此过程将持续到验证模块验证输出是否正确为止,称之为Iterative Promoting。此外,验证器模块还有另一种(效率更高的)模式,它一开始调用LLM来以获得一个初始的图,然后剩下的校正步骤都会在验证模块中循环地以离线方式进行,我们称之为迭代离线校正(Iterative Offline Correction)

我们在3个图数据集上的实验结果表明,通过迭代地校正,PiVe框架的有效性在3个数据集上平均提升了26%。我们还表明,验证模块可以用作数据增强工具,以帮助创建高质量的并行文本和图数据集。我们还表明了如何利用PiVe作为一种数据增强技术,来提高自动构建的文本-图数据集的质量

(2023)AutoKG

Intro

知识图(KG)是一个由实体、概念和关系组成的语义网络,它可以催化各种场景的应用,如推荐系统、搜索引擎和问答系统。通常,KG构建由几个任务组成,包括:

  • 命名实体识别(Named Entity Recognition, NER)
  • 关系提取(Relation Extraction, RE)
  • 事件提取(Event Extraction, EE)
  • 实体链接(Entity Link, EL)

另一方面,KG推理,通常被称为链接预测(LP),在理解这些KG中发挥着重要作用。此外,通过对与问题相关的关系子图进行推理,可以在问答(QA)任务中使用KG

早期的KG构建与推理通常以监督学习的方式进行。本文以ChatGPT和GPT-4为例,调研了LLM在KG构建与推理方面的潜力。本文贡献可以归纳为以下几点:

  • 使用8个数据集,通过评估LLM(包括GPT-3.5、ChatGPT、GPT-4)在KG构建和推理方面的zero-shot和one-shot表现,以对他们的能力有一个初步的了解
  • 设计了一个全新的虚拟知识抽取(Virtual Knowledge Extraction)任务,构建了一个VINE数据集。通过评估LLM在这个数据集上的表现,本文证明了LLM具有强大的泛化能力
  • 引入了新的概念AutoKG,使用通信代理(communicative agents)来自动地进行KG构建与推理。利用LLM的知识库,通过迭代的对话,让LLM的多个代理来协助KG的构建和推理过程

相关工作

大语言模型LLM

LLM是在大量的文本数据上预先训练的,已经成为当代NLP研究的重要组成部分。NLP的进步导致了高性能LLM的开发,如GPT-3、ChatGPT和GPT-4,它们在各种NLP任务中表现出非凡的性能,包括机器翻译、文本求和和问答。同时,先前的几项研究表明,LLMs可以在相关的下游任务中取得显著的结果,而在提示中只需很少甚至没有演示。这为LLMs的复杂性和通用性提供了进一步的证据

ChatGPT和GPT-4

ChatGPT是OpenAI开发的一种高级LLM,主要用于进行类似人类的对话。在微调过程中,ChatGPT利用RLHF,从而增强其与人类偏好和价值观的一致性。

GPT-4是在GPT-3和ChatGPT等前辈的成功基础上发展起来的。它在规模空前的计算和数据上进行了训练,在各个领域都表现出了非凡的泛化、引用和解决问题的能力。此外,作为一个大规模的多模态模型,GPT-4能够处理图像和文本输入

越来越多的研究人员正在探索LLM所具有的特定的涌现能力和优势。Bang等人(2023)对ChatGPT在多任务、多语言和多时间方面进行了深入分析。研究结果表明,Chat-GPT在各种任务中的零样本(zero-shot)学习方面表现出色,甚至在某些情况下优于微调模型。然而,当将其推广到低资源语言时,它面临着挑战。此外,在多模态方面,与其他先进的视觉语言模型相比,ChatGPT的能力仍然较为有限

ChatGPT在其他各个领域也受到了相当大的关注,包括信息提取、推理、文本摘要、问答和机器翻译。这体现了了它在更广阔的NLP领域的通用性和适用性

近期LLM在KG构建和推理方面的能力

本文选择了代表性的ChatGPT和GPT-4,在八个不同数据集中,对他们在KG构建和推理中的表现进行了评估

评估原则

首先,分析这些模型在零样本(zero-shot)和单样本(one-shot )NLP任务中的能力。我们的主要目的是检查他们在有限数据下的泛化能力,以及他们在没有演示(demonstration)的情况下有效使用预训练的知识的能力

其次,根据评估结果,我们全面分析了导致模型在不同任务中表现不同的因素。我们目的在于探究他们在某些任务中表现优异的原因和潜在的缺点

KG构建与推理

实验设置(数据集)
  • 实体、关系、事件提取(Entity, Relation and Event Extraction)
    • DuIE2.0:业界最大的基于模式的中文关系提取数据集,包括超过21万个中文句子和48个预定义的关系类别
    • SciERC:一个由七个关系注释的科学摘要集
    • Re-TACRED:是用于关系提取的TACRED数据集的一个显著增强版本,包含分布在40个关系中的91000多个句子
    • MAVEN:是一个通用的领域事件提取基准,包含4480个文档和168个事件类型
  • 链接预测(Link Prediction)
    • FB15K-237:被广泛用作评估KG嵌入模型在链接预测方面性能的基准,包括237个关系和14541个实体
    • ATOMIC 2020:一个全面的综合常识库,包含133万个关于实体和事件的推理知识元组
  • 问答(Question Answering)
    • FreebaseQA:一个基于Freebase知识图构建的开放域QA数据集,专门为知识图QA任务设计。包括来自各种来源的问答对,例如TriviaQA数据集等
    • MetaQA:是从WikiMovies数据集扩展而来的,提供了大量的单跳和多跳(hop)问答集,总数超过400000
总体结果
实体和关系提取

本文在SciERC、Re-TACRED和DuIE2.0数据集上进行了实验,每个实验都涉及test/valid集中的20个样本,并使用标准微F1 Score进行评估。本文使用PaddleNLP,PL- Marker,EXOBRAIN作为基准模型来进行评估(也就是State-of-the-art, SOTA)

结果如表1所示,在零样本和单样本任务中,GPT-4在这些数据集上都展现了相对不错的性能,也比ChatGPT有了一些进步,但仍然比不过全监督的小模型

零样本

GPT-4在零样本时的性能,展现出在3个数据集中都有进步,其中最显著的进步体现在DuIE2.0中。其中,GPT-4的Score为31.03,而ChatGPT的Score为10.3.。该结果进一步证明了GPT-4在提取复杂和新知识方面具有强大的泛化能力

如图2中的(1)和(2)所示,与ChatGPT相比,GPT-4在头尾(Head-to-tail)实体提取方面表现出更明显的进步。

在Re-TACRED的例句中,目标三元组是(Helen Keller Inter-national, org: alternate_names,HKI)。ChatGPT未能提取出这样的关系,可能是因为头部和尾部的位置非常接近,并且此时谓词较为模糊。而GPT-4成功提取了头部和尾部实体之间的“org:alternate_names”关系,完成了三重提取。这也在一定程度上证明了GPT-4增强了语言理解(阅读)能力

单样本

同时,文本指令的优化有助于提高GPT-4的性能。结果表明,在单样本的方式中,引入一个训练样本可以进一步提高GPT-4和ChatGPT的三重提取能力

以DuIE2.0数据集为例。考虑以下句子:“George Wilcombe was selected for the Honduras national team in 2008, and he par- ticipated in the 2009 North and Central America and Caribbean Gold Cup with the team(乔治·威尔科姆于2008年入选洪都拉斯国家队,他曾与该队一起参加2009年北美、中美洲和加勒比金杯赛)”

相应的三元组应该是(George Wilcombe, Nationality, Honduras)。尽管文本中没有明确说明,但GPT-4成功地提取了这些信息。这不仅是因为我们提供了有价值的单个训练示例,也源于GPT-4的综合知识库——GPT-4根据乔治·威尔科姆加入了国家队这一事实,从而推断出他的国籍

尽管如此,但GPT-4的表现并不完美,而且在面对复杂的句子时表现不佳。需要注意的是,数据集噪声、类型歧义、复杂的句子上下文,都会导致这种结果。

此外,为了实现数据集上不同模型的公平、横向比较,实验没有在提示中指定提取实体的类型(这也可能会影响实验结果)。这一结果有助于解释为什么GPT-4在SciERC和Re-TACRED上的性能不如在DuIE2.0上的性能

事件提取

我们对MAVEN数据集中的20个随机样本进行了事件检测(Event Detection)实验。此外,王等人(2022a)被用作微调过的SOTA

值得注意的是,GPT-4在没有演示的情况下取得了值得称赞的成果。此处使用F-Score作为评估指标

零样本

表1中的结果显示,GPT-4在零样本实验中表现得比ChatGPT要好。对于例句"Now an established member of the line-up, he agreed to sing it more often",ChatGPT的结果是"Becoming_a_member",而GPT-4确定了三种事件类型:“Becoming_a_member”, “Agree_or_refuse_to_act"和"Performing”

可以发现,ChatGPT的答案经常只有一种事件类型,而GPT-4更善于获取上下文信息,产生更多样的答案,提取更全面的事件类型。因此,GPT-4在MAVEN数据集上取得了优异的结果(该数据集包含具有一个或多个关系的集合)

单样本

此时我们观察到,ChatGPT的性能显著提高,而GPT-4的性能略有下降。单个的演示能够纠正ChatGPT在零样本下做出的错误判断,从而提高其性能

我们便着重分析GPT-4的表现。如图3所示:

数据集中的事件类型为Process_end 和 Com_together。但是GPT-4会生成三个结果:Comparison、Earnings_and_losss和Ranking。在这个过程中,GPT-4确实注意到了句子中隐藏的排序和比较信息,但忽略了与Process_end和相对应的触发词final、以及Come_together相对应的触发器host。同时,在单样本下,当GPT-4无法正确识别类型时,它往往会产生更多的错误。这在一定程度上导致了GPT-4的性能下降

我们认为这可能是由于数据集中提供的类型不明确。此外,单句话中存在多个事件类型,这进一步增加了任务的复杂性,导致了不太好的结果

链接预测

链接预测在两个数据集FB15k-237和ATOMIC2020上进行实验。前者是一个包含25个实例的随机样本集,而后者包含代表所有可能关系的23个实例。SOTA中,对于FB15k-237数据集表现最好的是基于BERT的C-LMKE,对于ATOMIC2020数据集表现最好的是COMET

零样本

在表2中,GPT-4在零样本时优于text-davinci-003和ChatGPT模型。值得注意的是,GPT-4在数据集FB15k-237上的Hits@1 Score表明,它达到了最先进的水平,超过了微调模型的性能。关于ATOMIC2020,尽管GPT-4超过了其他两个模型,但GPT-4的性能和微调过的SOTA在blue1 Score上仍存在相当大的差距

在零样本的响应中,在预测的链接中存在歧义的情况下,ChatGPT拒绝直接回答,并主动要求提供额外的上下文来解决这种歧义。这在GPT-4中并不常见,它倾向于直接提供答案。这一结果表明了它们推理和决策过程中的差异

单样本

结果表明,单样本下的GPT-4在两个数据集上的表现都有所提升,有助于更准确地预测三元组的尾部实体

在图4的例子中,[MASK]对应的答案是"Primetime Emmy Award"。零样本时,GPT-4没能正确理解;但单样本时,他就能成功给出尾部的实体了

问答

我们基于两个问答数据集进行了评估:FreebaseQA和MetaQA。从每个数据集中随机抽取20个实例。对于MetaQA,它由具有不同跳数的问题组成,我们根据它们在数据集中的比例进行采样。我们对两个数据集使用的评估矩阵是AnswerExactMatch

零样本

如表2所示,text-davinci-003、ChatGPT和GPT-4在FreebaseQA数据集上具有相同的性能,并且都比以前的全监督SOTA提高了16%。FreebaseQA数据集上的监督SOTA(Yuet等人,2022)提出了一种新的框架DECAF,它可以共同生成逻辑的形式和直接的答案。然而,GPT-4与text-davinci-003或ChatGPT相比没有任何优势。

至于MetaQA,在LLM和监督SOTA之间仍然存在很大的差距。监督SOTA模型(Madani和Joseph,2023)为T5-small配备了经典的逻辑编程语言,并以Prolog查询的形式表示问题,然后可以使用Prolog查询以编程方式回答查询。SOTA模型能够正确回答MetaQA测试数据集中的所有问题。

造成这种差距的一个可能原因可能是MetaQA中存在多个答案的问题,而FreebaseQA数据集的问题通常只有一个答案。此外,由于输入Token长度的限制,MetaQA数据集提供的知识图无法提供到LLM中,LLM只能依靠其内部知识进行多跳推理,因此LLM往往无法覆盖所有正确答案

不过,GPT-4在LLM中仍是最优的,分别比text-davinci-003和ChatGPT高了29.9分和11.1分。例如MetaQA在图4中的示例问题。回答这个问题需要一个多跳推理过程,包括将电影与其他电影的编剧联系起来,最后与上映年份联系起来。GPT-4能够正确回答这个问题,而ChatGPT和text-davinci-003未能提供正确的答案,体现了GPT-4在多跳问答任务中的卓越性能

单样本

我们还从训练集中随机抽取一个示例,在单样本下进行实验。表2中的结果表明,只有text-davinci-003在提示下得到改良,而ChatGPT和GPT-4的性能都有所下降。这可以归因于臭名昭著的调整税(alignment tax),模型牺牲了一些上下文学习能力,来与人类的反馈保持一致

KG构建vs推理

在KG构造和KG推理的实验中,LLM的推理能力通常优于构造能力。对于KG的构造,LLM在零样本和单样本上都没有超过SOTA的性能。这与之前在信息提取任务上进行的实验(Ma et al.,2023)一致,表明LLM在少样本条件下的信息提取并不理想

相反地,在KG推理任务中,所有LLM在单样本的条件下,以及GPT-4在零样本的条件下,都达到了SOTA的水准

我们对这种现象提出了几个可能的解释:

  • 首先,KG构建包含了对实体、关系、事件等的识别和提取,比推理任务更复杂;相反,以链接预测为代表的KG推理主要依赖于现有的实体和关系进行推理,任务相对简单。
  • 其次,LLM在推理中的优异表现,可能是因为他们在预训练阶段就处理过了相关的知识
通用领域vs专业领域

为了探索大模型在通用、专业领域下的性能差异,我们设计了不同知识领域的任务。我们把目光放在SciERC和Re-TACRED数据集上:

  • SciERC专注于科学领域,包括大量与科学研究相关的文章摘要和实体/关系
  • 相反,Re-TACRED数据集的目标是通用领域,包括各种实体和关系类型

结果表明,与Re-TACRED数据集相比,ChatGPT和GPT-4在SciERC数据集上表现出相对较差的性能。尽管Re-TACRED中的关系类型范围更广,但类型的增加并不会导致性能的下降。这表明,LLM在辨识专业数据时仍然存在局限性,与全监督的SOTA相比,性能差距变得更加明显。

以GPT-4为例,引入单样本可将其在Re-TACRED上的性能从15.5显著提高到22.5。然而,单样本对GPT-4在SciERC上性能的提升较为一般。这说明,引入单样本对于模型在专业数据集上的表现的影响是有限的。随着样本数量的增加,可能会有更大的性能提升

我们认为,大模型在专业数据集上的性能不良,可能的原因是:

  • 它们主要在大规模的通用语料库上进行训练,而这些语料库可能没有包含足够的专业领域知识
  • 此外,在专业数据集中,某些实体、关系或概念可能呈现长尾分布

讨论:为什么LLM在某些任务上的表现不尽人意?

上述结果表明,LLM能够提取各种类型和领域的知识,但尚未超过微调模型的性能,这与之前的研究结果一致(Wei et al.,2023b;Gao et al.,2021)。

影响评估结果的可能因素如下:

  • 数据集质量:以KG构建为例,数据中的噪声会导致某些类型的模糊(例如在关系提取中,数据集可能没有明确地提供头部和尾部的实体类型)。此外,数据集可能包含高度复杂的文本和不准确的标签
  • 指令质量:指令的语义丰富度显著地影响了模型的性能。使用不同指令进行实验,从而确定最有效的指令,可能会提高性能(prompt工程研究的就是如何通过指令来充分利用模型的能力)。此外,在上下文学习(Dong et al.,2023)中整合相关的样本可以进一步提高性能。值得注意的是,Code4Construct(Wang et al.,2022b)证明,使用基于代码的提示可以提高模型在提取结构化信息方面的性能
  • 评估方法:现有的评估方法可能不完全适合评估LLM的能力。例如,数据集的标签可能不包含所有的正确答案,但LLM可能会给出给定答案范围外的响应。此外,在涉及相同指称(如同义词)的情况下,答案也可能无法正确识别

讨论:LLM是记住了知识,还是真正具有泛化能力?

从先前的实验中可以看出,大型模型善于从微小信息中快速提取结构化知识。这让我们想到一个关于LLM性能优势的理论来源的问题:这是由于在预训练阶段使用了大量的文本数据,使模型能够获得相关的知识,还是因为它们强大的推理和泛化能力?

为了研究这个问题,我们设计了一个虚拟知识提取任务,用于评估LLM泛化和提取陌生知识的能力。而当前的数据集无法满足我们的需求,所以我们引入了一种新的虚拟知识提取数据集——VINE

更加具体地说,我们构建了现实世界中不存在的实体和关系,并将它们组织成知识三元组。随后,我们通过指令来让模型提取这些虚拟的知识,提取的效果用于衡量LLM处理陌生知识的能力。我们基于Re-TACRED数据集的测试集构建了VINE。构建过程的主要思想是用看不见的实体和关系替换原始数据集中的实体和关系,从而创建独特的虚拟知识场景

数据收集

考虑到像GPT-4这样LLM的庞大训练集,我们很难找到它们不熟悉的知识。以截至2021年9月的GPT-4数据为基础,我们从《纽约时报》组织的两次竞赛中选择了参与者的部分回答作为数据来源,包括2022年1月和2023年2月举行的两项创造新单词的比赛

然而,由于上述竞赛的回答数量有限,为了增强数据的多样性,我们还通过随机生成字母序列来创建新词。我们生成了长度在7到9个字符之间的随机序列,并随机添加常用的名词后缀

数据分析

我们构建的数据集包括1400个句子、39个全新的关系和786个独一无二的实体,并确保每个关系类型至少有10个样本。此外,我们发现在Re-TACRED测试集中,某些关系类型的样本少于10个,于是我们从训练集中选择了相应类型的句子来进行弥补

初步结果

实验中,我们随机挑选了不同关系类型的10个句子来进行评估。在学习了相同关系类型的两个示例后,我们评估了Chat GPT和GPT-4在这十个测试样本上的性能

结果表明,在学习了一定数量的虚拟知识后,ChatGPT在虚拟知识提取中的表现显著低于GPT-4,而GPT-4能够根据指令准确地提取从未见过的实体和关系的知识。GPT-4成功提取了80%的虚拟三元组,而ChatGPT的准确率仅为27%

在图5所示的例子中,我们提供了由虚拟关系类型和虚拟头尾实体组成的三元组以及相应的示例。结果表明,GPT-4有效地完成了虚拟三元组的提取

因此我们初步得出结论,GPT-4表现出相对较强的泛化能力,可以通过指令快速获取新知识,而不仅仅依赖相关知识的记忆。相关的工作(Wei et al.,2023a)也证实了大型模型对指令具有异常强大的泛化能力

未来机遇:自动的KG构建与推理

近来LLM的成功仍然主要依赖于大量的人类输入来指导会话文本的生成。随着用户不断完善任务描述和要求,并通过ChatGPT建立对话上下文,该模型可以提供越来越精确和高质量的响应。然而,从模型开发的角度来看,这个过程仍然是劳动密集型和耗时的。因此,研究人员已经开始研究预测大型模型自主生成引导文本的潜力

例如,AutoGPT可以独立生成提示并执行事件分析、营销计划创建、编程和数学运算等任务。同时,李等人(2023)深入研究了通信代理之间自主合作的潜力,并提出了一种新的合作代理框架,称为角色扮演(Role-playing)。在此基础上,我们进一步探究:利用通信代理来完成KG构建和推理任务是否可行?

本实验中,我们使用了CAMEL中的角色扮演方法(Li et al.,2023)。AI助手被指定为顾问,AI用户被指定为KG领域专家。在收到提示和指定的角色分配后,”任务指定代理“提供详细的描述来将概念具体化。此后,AI助手和AI用户在多方设置中合作完成指定的任务,直到AI用户确认完成为止

评论

通过将人工智能和人类专业知识相结合,AutoKG可以快速构建特定领域的KG。该系统允许领域专家与LLM进行交互,从而通过专家知识和经验的交流,为构建特定领域的知识图创造一个协作环境

同时,由于这种人机协作,它可以提高大型语言模型在处理特定领域任务时的准确性。AutoKG不仅可以加快特定领域知识图的定制,还可以提高大型模型的透明度和代理间的互动

更准确地说,AutoKG有助于更深入地理解LLM的内部知识结构和操作机制,从而增强模型的透明度。此外,AutoKG可以部署为一个可操作的人机交互平台,实现人与模型之间的有效沟通和互动,从而提高模型在处理复杂任务时的效率和准确性

局限性

尽管我们的方法带来了显著的进步,但它并非没有局限性,然而,它本身就是进一步探索和改进的机会:

  • API的使用受到最大token限制:此限制会影响KGs的构建,因为如果超过此限制,任务可能无法正确执行
  • AutoKG目前在促进高效人机交互方面存在不足:在任务完全由机器自主执行的情况下,人类无法及时记录通信中发生的错误;相反,让人类参与机器通信的每一步都会大大增加时间和劳动力成本。因此,确定人为干预的最佳时刻至关重要
  • LLM的训练数据对时间敏感:未来的工作可能需要结合互联网上的检索,以弥补当前LLM在获取最新或特定领域知识方面的不足

结论与后续工作

本文中,我们试图初步研究LLM在KG构建、推理等任务中的性能,以GPT系列为例。虽然这些模型擅长于此类任务,但我们提出了一个问题:LLM在提取任务方面的优势是来自其庞大的知识库还是潜在的上下文学习能力?为了探索这一点,我们提出了一个虚拟知识提取任务,并创建了相应的数据集进行实验。结果表明,LLM的确拥有强大的上下文学习能力

此外,我们提出了一种创新方法,通过部署多个代理来完成KG的构建和推理。这不仅减少了劳动,还补偿了LLM在各个领域专业知识的不足,从而提高了LLM的性能。尽管这种方法仍然有一些局限性,但它为LLM的未来应用提供了一个新的视角

虽然我们的研究已经取得了一些结果,但它也有一定的局限性

  • 如前所述,无法访问GPT-4 API使我们不得不依赖交互式界面进行实验,这无疑增加了工作量和时间成本
  • 此外,由于GPT-4的多模态功能目前还不可供公众使用,我们暂时无法深入研究其性能以及对多模式处理的贡献

(2022)PL-Marker

(2022)Grapher

Intro

关于先前KG的构建:

  • 一些方法考虑简单的图补全问题,给定一个不完全的三元组(如缺少其中一个实体),目标是通过生成缺失的实体、或对给定的候选集进行排序,来补全三元组。该方法的缺点是,它们仅限于通过局部的修改来扩展现有的KG,不适合构建整个KG
  • 其他方法提出查询PLM,以提取所学的事实和常识。他们促使PLM像做完形填空一样来预测三元组中缺失的部分。同上,该方法只适用于局部KG修补

对于构建整个KG:

  • 有使用GraphGNN来构建KG的。但其序列性和贪婪性可能无法带来最优的图架构
  • CycleGT是一个text-to-graph的无监督方法。首先依据现成的实体提取器来提取实体,然后通过分类器来预测关系。但它对外部模块的依赖破坏了系统的连续性,可能导致不好的结果
  • DualTKBe采用无监督循环损失来实现图文双向翻译。但他们的方法只适用于单句的KG生成,限制了对大型图的适用性
  • BT5提出利用PLM T5模型来线性化地生成KG,其中对象-谓词-主体三元组连接在一起,整个T2G问题被视为序列到序列的建模问题。这种方法的问题是,图线性化不是唯一的,并且由于图组件多次重复而效率低下,导致长序列和增加复杂性
  • MaMa中,实体和关系首先使用LM向前传递的注意力权重矩阵进行匹配。然后将它们映射到现有的KG模式以生成最终的图

本文提出了一个新的KG构建架构。首先生成节点,然后生成节点之间的边:

架构

节点生成

以下是Grapher节点生成框架的选择过程

Text Nodes方法

给定文本输入,该模块的目标是生成一组唯一的节点。我们使用预训练的编码器-解码器语言模型(PLM),例如说T5。通过PLM,我们可以将节点的生成描述为一个从序列到序列的问题,将文本输入转换为由特殊标记分离的节点序列,即,<PAD>NODE1<NODE_SEP>NODE2<NODE_SEP>NODE3<\s>,其中NODE_i表示一个或多个单词

如图3所示,该模块还提供了节点的特征,来为KG生成边做准备。由于每个节点可以有多个相关的单词,因此我们对生成的字符串进行贪婪解码,用分隔令牌< NODE_SEP >来分割节点,并对解码器最后一层的隐藏状态进行平均池化。注意,在实践中,我们提前设定了生成节点的最大数量,并用一个特殊的< NO_NODE >符号填充缺失的节点

Query Nodes方法

在上述方法中,生成的节点序列是有顺序的,而在一个图中的节点不必是有顺序的,可以同等地看待这些节点。因此,我们提出了第二种架构(灵感来自DETR图像对象检测方法)。如图4所示,我们首先学习节点的查询以获得节点特征,然后估计(节点的)排列,以与目标节点顺序保持一致

  • 可学习节点查询:解码器接收一组可学习节点查询作为输入,以嵌入矩阵的形式输入。我们还禁用因果masking,以确保Transformer能够同时处理所有查询。这与传统的编码器-解码器架构形成对比,传统的编码器架构通常在训练期间将目标序列与因果masking作为输入嵌入,或者在推理期间嵌入自生成序列。

解码器的输出现在可以直接读取为N维的节点特征 F n ∈ R d × N F_n\in\mathbb{R}^{d\times N} FnRd×N,并传递给预测器(LSTM或GRU)解码为节点逻辑(logits) L n ∈ R S × V × N L_n\in \mathbb{R}^{S\times V\times N} LnRS×V×N,其中S为生成的节点序列长度,V为词汇表大小。

  • 为了避免系统记住节点的顺序并使序列的顺序不变,我们将逻辑和特征排列为 L n ′ ( s ) = L n ( s ) P ,   F n ′ ( s ) = F n ( s ) P L'_n(s)=L_n(s)P,\ F'_n(s)=F_n(s)P Ln(s)=Ln(s)P, Fn(s)=Fn(s)P,其中 s = 1 , . . . , S s=1,...,S s=1,...,S P P P是用二部匹配算法在目标节点和贪婪解码节点之间得到的置换矩阵。我们使用交叉熵损失作为匹配的损失函数。排列的节点特征 F n ′ F'_n Fn现在与目标是齐次的,可以在边的生成阶段使用

生成边

随后使用上一步的节点特征进行边的生成,如图5。给定一对节点特征,预测头决定它们各自节点之间存在(或不存在)一条边。

  • 一种选择是使用类似于Query Nodes中的预测器(或生成器,LSTM或GRU)来生成边
  • 另一种选择是使用分类器来预测边

这两种选择各有利弊,具体选择取决于应用的领域

  • 生成器的优点:能够构造任何的边序列,包括在训练过程中未见过的边序列,但风险是,结果可能不会与目标边序列完全匹配。
  • 另一方面,如果可能关系的集合是固定且已知的,那么分类器会更有效、准确;但是如果训练中对所有可能的边的覆盖有限(没有考虑到所有可能的边),则系统在推理过程中可能会误分类

不平衡的边分布

我们观察到,由于我们需要检查所有节点对之间是否存在边,我们必须生成或预测多达 N 2 N^2 N2条边,其中N是节点的数量。当生成的节点之一是<NO_NODE>符号时,可以通过忽略他们之间的边来节省时间。当两点之间没有边时,用<NO_EDGE>符号来表示。

此外,由于通常实际边的数量很小而<NO_EDGE>很大,生成和分类任务对<NO_EDGE>符号是不平衡的。为了解决这个问题,我们提出了两种解决方案:

  • 修改交叉熵损失(针对分类器提出):将交叉熵(CE)替换为焦点损失(Focal Loss, 主要用于解决类别不平衡问题)。它的主要思想是降低分类效果好的样本的CE的权重(在我们的实验中即<NO_EDGE>),增加容易误分类的样本的CE的权重,也就是写成如下的形式: C E ( p ,   t ) = − l o g ( p t ) F L ( p ,   t ,   γ ) = − ( 1 − p t ) γ l o g ( p t ) \begin{aligned} CE(p,\ t)&=-log(p_t)\\ FL(p,\ t,\ \gamma)&=-(1-p_t)^\gamma log(p_t) \end{aligned} CE(p, t)FL(p, t, γ)=log(pt)=(1pt)γlog(pt)
    其中, p p p表示一条边对应的概率分布, t t t表示目标类, γ \gamma γ是一个权重参数,当为0时所有的损失都相等。将这种损失应用于分类器非常直观,而对于生成器,我们先根据边序列的长度来累加(每条边的)预测概率,得到与 p t p_t pt地位相等的量,然后将其应用到损失上。在实践中,我们观察到FL提高了分类器的准确性,而对于生成器的性能没有显着变化

  • 改变训练范式(针对生成器提出):通过使邻接矩阵变得稀疏来修改训练设置,以删除大部分的<NO_EDGE>边,手动地重新进行平衡,如图6所示。

    这里,我们保留所有实际的边,只留下一些随机选择的<NO_EDGE>边(注意,这种修改只是为了提高训练效率,在推理过程中,系统仍然需要输出所有的边),因为它们的真实位置是未知的,如图5所示。在实践中,除了将准确率提高了10-20%之外,还观察到使用稀疏边比使用完全邻接矩阵的训练时间快了10%

数据集

  1. WebNLG+ corpus v3.0:是2020年WebNLG挑战赛的数据集,提供了两个任务:从一组RDF三元组(主语-谓语-宾语)生成文本,以及语义解析的反向任务,将文本描述转换为RDF三元组。本文使用文本到RDF任务上的算法,其统计信息如表1所示。

    每个三元组集合都与一个或多个文本相关联,因此当将一个三元组集合分配给所有(相关的)文本时,训练、开发和测试集的总大小如表1的第二行所示。数据由16个DBpedia类别组成:11个只在训练和开发部分出现,5个不可见的类别仅在测试部分出现

    我们对数据预处理,删除下划线和引号以减少数据中的噪声。此外,由于T5的tokenizer和WebNLG数据集的词汇覆盖范围不匹配,WebNLG中的一些字符在T5的词汇表中不存在,在tokenization的过程中被忽略。我们将数据规范化,把缺失的字符映射到最接近的可用字符,例如,将’ ø ‘转换为’ o ‘,或将’ ã ‘转换为’ a ’

    WebNLG是一个相当小的数据集,所以我们使用TEKGEN数据集的数据来对其进行扩展。由于WebNLG不使用DBpedia模式,而TEKGEN基于Wikidata KG,因此我们将Wikidata的谓词近似地映射到DBpedia的谓词。我们只映射训练集中的谓词。例如,TEKGEN三元组(SUBJECT, ’ location of formation ’ OBJECT)被转换为WebNLG三元组(SUBJECT, ’ foundationPlace ', OBJECT)。总的来说,我们向WebNLG数据集添加了17855对,使总训练集的大小扩展到了53,281。

  2. TEKGEN:是将Wikidata KG与Wikipedia文本对齐而构建的大规模并行文本-图数据集,其统计数据如表2第一行所示。使用TEKGEN的主要困难是三元组的数据形式为 (SUBJECT PREDICATE1 OBJECT1, PREDICATE2 OBJECT2,…)用逗号分隔,而谓词有可能由多个词组成,那么多个单词的时候就可能无法判断该词是属于谓词还是subject/ object

    然而,上述困难可以通过使用Wikidata的谓词列表和人工制作的启发式方法来解决,另外过滤掉包含超过7个谓词的三元组,三元组组件长度超过100个字符,

    这样做是为了和WebNLG数据的设置更接近,并降低评分函数的计算复杂性。数据集的最终统计信息显示在表2的第二行中。注意,为了进一步管理有限的计算资源,我们只在Dev和Test集的一半上评估结果

实验

设置

  • PLM:T5 large,参数量770M
  • learnable embedding matrix: M ∈ R H × N M\in \mathbb{R}^{H\times N} MRH×N H = 1024 H=1024 H=1024是T5的隐藏大小, N = 8 N=8 N=8是一个图中可能节点的最大数量
  • node generation head:单层GRU解码器, H G R U = 1024 H_{GRU}=1024 HGRU=1024,紧跟一个投射到大小为32,128的词汇表的线性变换
  • edge generation head:同上
  • 一个图中可能边的最大数量:7
  • edge classification head:用ReLU定义全连接层,将输出投射到大小为407的边的类型空间
  • 全参数微调,使用AdamW优化器,学习率为 1 0 − 4 10^{-4} 104 β \beta β默认值为 [ 0.9 ,   0.999 ] [0.9,\ 0.999] [0.9, 0.999],权重衰减默认值为 1 0 − 2 10^{-2} 102
  • batch_size:10(WebNLG-一个A100); 100(TEKGEN-10个A100)
  1. 完成WebNLG的一个训练epoch大约需要5300步,每1000步进行一次验证,我们得到的模型大约在6-7小时内达到其最佳性能
  2. 对于TEKGEN,每个epoch大约需要56,000步,每1,000步进行一次评估,我们训练和验证模型进行25,000次迭代,大约需要6天的计算时间。

Baseline

我们使用WebNLG 2020挑战赛排行榜上报告的最佳表现团队作为基准:

  • Amazon AI (Shanghai) 是Text-to-RDF任务的冠军。他们使用一种简单的启发式方法,首先进行实体链接以匹配输入文本中出现的实体与DBpedia的实体,然后查询DBpedia数据库以提取它们之间的关系
  • BT5是第二位,使用T5模型以线性形式生成KG,其中 (object-谓词-subject)三元组被连接在一起,整个T2G问题被视为传统的序列到序列建模
  • 第三名CycleGT,使用了一种无监督的方法进行文本到图和图到文本的生成,其中KB构建部分依赖于现成的实体提取模块来识别输入文本中的实体,以及多标签分类器来预测实体对之间的关系。
  • Stanford CoreNLP Open IE:是一种无监督方法,在测试集的输入文本部分上运行,以提取主题、关系和对象,以产生输出三元组,以提供WebNLG 2020挑战赛的基准性能
  • ReGen:利用T5和强化学习(RL)进行双向文本到图和图到文本的生成,与BT5类似,也遵循线性化的图表示方法。

指标

为了对生成的图进行评分,我们使用了WebNLG 2020挑战赛的评估脚本,它计算了输出三元组相对于真实值的精度、召回率和F1 Score。使用基于命名实体评价的指标以不同的方式衡量准确率、召回率和F1值:

  • Exact:结果应该精确匹配参考结果,而类型(主语、谓语、宾语)不重要
  • Partial:结果应该至少部分匹配参考结果,而类型(主语、谓语、宾语)是不相关的
  • Strict:结果应该完全匹配参考结果,元素类型(主语、谓语、宾语)也应该完全匹配

WebNLG实验结果

如上图所示,黑色粗体为top,蓝色为second。可以发现使用T Nodes比Q Nodes要好;C Edges比G Edges要好。(T Nodes更好的可能原因:当前模型和数据集较小)

在使用T Nodes、C Edges时,用不同的随机初始化设置来实验,以检验模型的变化。从表4中的结果可知,结果非常稳定

针对边分布不平衡的问题,由于C Edges使用方法是用FL代替CE,所以本文使用不同的 γ \gamma γ来进行实验。结果表明当 γ = 3 \gamma=3 γ=3时的效果最好

TEKGEN实验结果

如图,T Nodes仍然比Q Nodes要好,但G Edges与C Edges几乎完全一样(在较小的数据集WebNLG中,C Edges表现更好)。

如图,可以发现数据量的增加对于边的生成器帮助很大;同时到了20000步之后,两种方式的F1值都开始趋于收敛,说明数据量增加带来的帮助有限

结论

本文通过Grapher解决了从文本构建KG的问题,将KG的生成分割成了节点生成和边生成两个环节,并对于每个环节提出了不同的方法来实现。此外,本文还解决了边的分布不平衡的问题。结果表明Grapher在两个数据集上的表现都非常不错

(2021)PURE

Intro

之前对于NER和RE的工作采用流水线的方法,用一个模型做NER,另一个做RE。而最近较多人采用了联合两者的方法,它们认为这样能够更好地捕获实体与关系之间的联系。

本文也属于联合的方法,使用两个基于PLM的encoder(分别称为实体模型和关系模型),其中两者独立训练,关系模型仅依赖实体模型来提供输入。实体模型基于span- level的表示,关系模型基于给定spans pair的上下文表示

创新点:

  • 提出一个简单的端到端RE方法,独立训练NER和RE两个模型
  • 对本方法高效的原因进行了分析,并发现,学习实体和关系的不同上下文表示,比共同学习它们更有效
  • 对算法效率进行优化

Related Work

我们把现有的联合提取方法分为两类:结构预测和多任务学习

其余相关工作见原文与参考:https://blog.csdn.net/lairongxuan/article/details/124831157

Method

实体模型预测出不同类型的实体,并插入标记来辨别主/宾和实体类型;随后关系模型对每个实体对的关系进行预测

个人对于span的理解(不一定对):即一个span可以包括任意多个token,但这些token都用来表示同一个意思,换句话说就是一个语义单元

  1. 实体模型

    本实体模型是基于span的。首先用PLM来获得每一个token的上下文表示,然后将其输入到FFN来预测实体的概率分布

  2. 关系模型

    通过输入的一对spans(即主语和宾语)来预测关系类型。之前的方法重复地使用span的(上下文)表示,来对关系进行预测,但这样就只捕获到了span周围的上下文信息,而忽略了这对spans之间的联系

    (例如:在对“MORPA”和“PARSER”之间的关系进行分类时,单词“is a”是很重要的,但是对于“MORPA”和“TEXT-TO-SPEECH”之间关系分类并不重要)

    所以此处作出的改进是:在句子中的subject span和object span的前后插入typed marker(就是一对标记),以此来强化主语、谓语及实体类型特征

    并且,在预测不同span pairs之间的关系时,采用不同的上下文表示能够获得更好的效果

  3. 跨句子的上下文

    本文将句子的长度扩展到一个固定的值,以此来获取更多的上下文信息

(2021)Guo

Intro

现有的KG都是基于现代汉语的,对文言文的研究很少。中国古典文学蕴含着丰富的历史知识,而这些信息并没有得到充分利用。此外,由于文言文语法和语义的困难,高质量的标记数据集很少,这阻碍了文言文KGC (Knowledge Graph Construction)的进程

本文使用由NER和RE组成的PLM和流水线模型从大规模未标记的经典文献中提取知识,并构建了一个基于中国古典文献的高质量KG。主要贡献如下:

  • 提出了一种基于BERT的端到端流水线知识提取模型,可应用于中国古典文本中的知识提取,并在中国二十四史中取得了竞争性的结果
  • 为了保证关系预测的高精度,我们结合NER阶段预测的实体类型信息,提出了一种改进的RE模型。实验表明,改进模型的性能优于基线模型
  • 我们构建了一个高质量的文言文NER和RE标记数据集(CCNR),并对其进行了一系列实验。扩展实验表明,改进的RoBERTa和Guwen-BERT1(使用我们的RE模型)的性能优于原始模型
  • 基于中国历史文献,我们构建了一个高质量的KG,并设计了一个可视化系统来显示CHL-KG并提供查询功能

相关工作

命名实体识别

NER是NLP的基础,是信息提取的子任务,将非结构化文本中的命名实体进行定位,并分类为预定义的类别,例如人名和组织。Yu等集成了经典中文NER的BiLSTM-CRF模型,证明BERT具有较强的迁移学习能力

  • 基于规则的方法:可以自动发现和生成规则,Collins等人提出的DL Cotram是最具代表性的方法。然而,这些方法的可扩展性较差,无法识别未注册的单词
  • 基于统计的机器学习方法:基于概率,HiddenMarkov模型(HMM)和条件随机场(CRF)改进了基于规则的方法,并将NER视为序列标记过程
  • 基于深度学习的方法:传统的深度学习方法主要集中在CNN和RNN上。Collobert等人提出了两种网络结构来完成NER任务:窗口法和句子法。李等人将基于RNN的网络应用于中国生物医学NER任务。此外,Huang等人提出了一系列用于序列注释的神经网络模型,包括LSTM、双向LSTM(Bi-LSTM)、具有CRF层的LSTM和具有CRF层的Bi-LSTM,它们在各种NLP任务中表现良好

近年来,基于transformer的端到端模型得到了广泛应用。

  • Vaswani等人提出了transformer模型,对不同语言之间的中间语言表示进行编码和解码,以解决序列到序列的问题
  • 谷歌提出的BERT已经在11个不同的NLP任务中实现了SOTA性能,成为NLP发展史上的一块基石
  • 与BERT相比,RoBERTa动态调整了掩码机制,改进了预训练任务,并使用了更大的预训练语料库
  • ALBert还修改了BERT的预训练任务,并减少了训练参数以加快训练过程
  • 百度提出的ERNIE充分结合了现有知识库中包含的结构化知识,并利用了语法和语义信息的优势

关系提取

  • 联合RE模型:通过同时提取实体及其关系,联合RE模型避免了pipeline中误差的积累
    • Katiyar等人首先使用深度Bi-LSTM序列注释方法进行联合实体提取,并通过添加约束和关系优化进一步提高了模型的准确性
    • 郑等人提出了一种新的标注策略和关系标注方法。通过学习实体的位置信息,利用神经网络直接提取实体关系的类型信息、实体的角色信息和三元组
  • 基于流水线的RE模型:
    • Hashimoto等人将RNN应用于语法树分析,并用额外的特征取代了单词依赖矩阵
    • 曾等人提出使用CNN在单词和会话级别进行关系和特征提取
    • 针对特定实体,王等人在CNN架构中增加了多层保持机制。
    • 最近PLM被广泛提出和使用,例如BERT、GPT和ELMo。Christopoulou等人将BERT应用于关系表征,并提出了一种新颖的“匹配空白”预训练任务

Methodology

Overview

如图。根据我们在原始文言文的非结构化文本中所定义的实体和关系,我们对《中国二十四史》的部分进行了人工注释。我们把高质量的标记过的数据作为训练集,利用基于BERT的pipeline模型来预测未标记部分的剩余实体和关系

随后对预测的结果进行手工修改,并与前一个版本相结合,得到下一个版本的数据集。经过多次迭代,我们将最终的数据集导入到Neo4j2中,并构建了一个KG和一个可视化平台

个人理解:上图中的“Train”箭头反过来更好理解。就是用CCNR的数据集来训练BERT,BERT预测未打标签的数据,预测的结果通过人工修改后又加入到CCNR中

CCNR数据集 (Classical-Chinese-NER-RE)

文言文与现代汉语在语法,短语和句法上有很多不同,因此,为了提取文言文的KG,需要将人工标注与模型预测进行结合、迭代

NER Dataset

NER数据集包含6个实体类别——人(PER)、地点(LOC)、组织(ORG)、工作(JOB)、书籍(BOO)和战争(WAR)。已命名实体的统计信息如表1所示

我们使用“BIO”标记方法对实体进行注释,将每个元素标记3类:“B-”表示该元素位于片段开头。“I-”表示该元素位于片段中间,“O”表示该元素不属于任何类型。如下图:

RE Dataset

RE数据集包含4886个例子,包括41种关系类型,可分为三类:亲属关系、个人信息和社会表现。我们删除了由少于20个实例组成的关系类型,并补充配对关系,以此来预处理和标准化数据集

我们将每个实体标记为关系的主体,一定距离内的其他实体标记为其对应的客体。如果两者之间存在真实关系,则将关系类型标记为“已知”,否则标注为“未知”,以加强模型的泛化能力

NER模型

BERT通过无监督学习的方法从大规模的未标记语料库中学习,并关注词语层面和句子层面的特征,增强词向量的语义表示。在NER阶段,我们使用了一个基于BERT的模型,该模型是由现代汉语语料库预先训练的

该模型为每个单词生成标记 (token)、分段 (segment)和位置嵌入 (position embeddings),并将它们传送到默认情况下具有768个隐藏层的12个transfomer blocks中。以《北齐书》中的一个句子为例,NER模型的架构如图4

RE模型

使用PLM作为编码器,我们将实体类别信息作为输入特征,使模型能够更有效地学习实体之间的关系

RE模型如图5所示

此外,我们利用编码器,从实体对和句子中,得到了“池化过后的实体层面(pooled-entity-level)”以及“句子层面(sentence-level)”的特征。

对特征的线性变换、编码器的隐藏状态,都有利于捕获重要的隐藏特征。随后,将特征和相应的实体类型信息连接起来(也就是上图中上面那个大红框),通过一个全连接的网络,最后利用Softmax函数给出了相关分类结果

综上所述,我们将实体类型标签作为额外的输入添加到模型中,使RE模型更好地结合NER模型预测出来的实体对所提供的语义信息

实验

设置

数据集与baselines

在NER阶段,我们在Modern Chinese、CCNR-3和CCNR-6三个数据集上,评估了BERT-base、RoBERTa-base、Guwen-BERT和BERT- ITM(一种基于BERT的增量训练方法)四种方法。注意,包含3种实体和6种实体的CCNR分别被命名为CCNR-3和CCNR-6

训练
  • 线性预热法的比例设置为10%

  • 训练批次大小为32

  • 使用默认参数 (β1 = 0.9,β2 = 0.99,ε = 1e−8) 的Adam优化器

  • NER阶段的初始学习率为5e−5

  • RE阶段的初始学习率为1e−5

  • NER阶段,权重衰减为0.01

  • RE阶段使用Adam优化器,没有权重衰减

实现

在先前BERT-base的基础上,我们采用线性预热法,并使用Adam优化器对模型进行优化。我们以精度、召回率和F1为指标,在Tesla-V100 GPU上进行了实验

对于NER和RE阶段,我们将每个实例的最大长度指定为256,并将标点符号标记为截断位置,从而使模型充分考虑上下文信息

NER 模型

“BOO”、“WAR”和“JOB”的实体数量少于其他类,我们选择数据集中频率最高的3种实体“PER”、“ORG”和“LOC”进行实验。除了Guwen-BERT,我们还测试了由现代汉语语料库预训练的BERT-base和RoBERTa-base,因为现代汉语标注数据集中的命名实体与上面选择的3个实体相同

在CCNR-3数据集上,Guwen-BERT优于RoBERTa-base和BERT- ITM。

此外,Guwen-BERT在CCNR-6数据集上的表现优于RoBERTa-base。因为Guwen-BERT通过大规模的文言文语料库进行预训练,结合了现代汉语的RoBERTa权重,因此将部分的现代汉语特征迁移到了文言文

RE 模型

此处使用原始模型,以及经过改进后(也就是在输入中添加实体类型的tag)的RE模型进行实验。如图所示。

  • 可以观察到,将实体tag与pooled entity embeddings连接在一起,可以在所有模型上都提供改进,特别是在基于RoBERTa的模型上 (RoBERTa和Guwen-BERT)
  • 还可以观察到,在语料库有限的情况下,添加标签信息有助于学习实体类别的语义特征
  • 此外,改进后的Guwen-BERT取得了最好的性能,BERT-ITM也令人印象深刻。主要因为Guwen-BERT和BERT-ITM都是经过文言文语料库的预训练,对文言文语法和词汇有较全面的表征

中国历史文献KG

结论

本文构建了高质量的NER和RE文言文标注数据集,并通过选择最佳的NER模型,对标注数据集进行自动扩充来增强pipeline模型

实验表明,结合语义实体信息的RE模型优于原本模型。在中国历史文献的基础上,我们进一步构建了一个KG,并开发了一个可视化平台来展示CHL-KG

(2020)Kumar

Intro

本文提出了一种基于语言模型的提取实体间关系的方案,它从语法角度以及上下文角度来对实体之间的关系进行捕捉。之前的学者提出用RNN、LSTM、CNN等各种架构来进行序列建模或分类任务,这些模型也可以用于实体关系的分类。而在过去的几年里,语言模型在这一研究方向上占据了主导地位。本文展示了两种基于BERT的体系结构,主要贡献:

  • 提出了两种技术:
    • 训练一个完整的 ( K × 2 + 1 ) (K\times 2+1) (K×2+1)分类器,其中 K K K是关系种类的数量。保留了一个人工类(Others)来捕获存在实体但我们不感兴趣的句子
    • 训练两个分类器,一个二分类器用于实体之间的方向预测,另一个 K K K路分类器用于关系类预测,并进一步融合结果
  • 通过消融实验,我们得出了为微调语言模型(BERT)分类器提供实体的信息的最佳格式
  • 我们在SemEval 2010 task 8数据集上获得了关系分类任务的SOTA结果,F1 Score分别为88.4%和89.41%,优于之前的所有结果

相关工作

为了解决关系提取和知识挖掘的问题,从无监督到有监督学习,学者们进行了大量的研究

  • Rink等人使用了人工制作的特征,这些特征捕捉了上下文、语义角色隶属关系以及实体之间可能预先存在的关系
  • 深度学习方法 (Deep Learning) 也被用于学习实体关系中的长期依赖性。张等人和Socher等人分别将RNN和MVRNN模型应用于关系分类,实现了递归神经网络的变体
  • 深度卷积神经网络 (Deep convolutional neural network) 也被用于使用卷积核提取词汇和句子级别的特征。Dos Santos等人提出使用CNN进行关系分类任务,该模型通过排名进行分类(CR-CNN)
  • 一些方法在深度网络模型中使用注意力水平,以捕捉句子的特定片段来抽取关系。王等人提出了基于两个注意力水平的CNN模型,以更好地识别异质环境中的模式。Lee等人采用了基于多头实体意识的Bi-LSTM模型。Yu等人(2014)通过利用单词嵌入中句子级别和子结构的嵌入,使用依赖树和命名实体识别(NER),提出了基于因子的组合嵌入模型(FCM)

最近很少有人探索像BERT这样的用于关系提取的PLM

  • 姚等人训练了一个知识图KG-BERT来训练实体的三元组和关系描述,作为BERT的输入
  • Soares等人提出了一种通过匹配空格来训练关系表示的方法,而无需知识图或人类注释器的任何监督
  • 吴等人提出了实体嵌入以及来自BERT的句子编码,作为多层神经网络的输入进行分类

尽管这些模型取得了良好结果,但简单有效的解决方案不需要人工制作特征、依赖解析或训练多个模型。在第4节中,我们通过实验表明,使用实体感知的原始文本输入对PLM进行微调可以简单地实现这一点,同时还可以显著提高F1 Score

Methodology

System Design

如上方流程图所示。给定一篇文章,调用句子分词器(步骤1),然后实体识别器(步骤2)在句子中划分实体,如位置、个人或组织。在步骤3和4中,运行基于BERT的关系分类器,如果找到了类似 (acquisition, relative-of, located-in and works-at) 的关系,就生成二元实体关系三元组。一旦系统标记了实体关系三元组,它就会填充图数据库中的节点和链接,用于知识图表示(步骤5)

感知实体的BERT 的模型架构

我们对BERT模型进行了微调,来为后面的环节提供输入

输入的表示

根据BERT的原始论文,特殊符号[CLS]是输入序列的第一个标记,结束符号为[SEP]。为了提供位置信息,我们插入了特殊符号#和$(不带间隙)来包围实体,从而使其成为实体感知的BERT分类器。给定一个带有标记实体 ( h ,   t ) (h,\ t) (h, t)的句子 s = w 1 ,   … ,   < e 1 > w h < / e 1 > ,   … < e 2 > w t < / e 2 > ,   … w n s={w_1,\ …,\ <e1>w_h</e1>,\ …<e2>w_t</e2>,\ …w_n} s=w1, , <e1>wh</e1>, <e2>wt</e2>, wn,我们将其转换为$s={[CLS],\ w1,\ …,\ #w_h#,\ …$w_t$,\ …w_n,\ [SEP]}$

模型架构

使用与特殊令牌([CLS])对应的最终隐藏状态作为分类任务的聚合序列表示

这句话有点抽象,意思就是,如图中所示,用[CLS]在BERT中的最终状态来对关系进行分类

在微调中引入的参数为 W ∈ R ( K × 2 + 1 ) × 768 W\in R^{(K\times2+1)\times768} WR(K×2+1)×768,其中 K K K为关系类型的数量。我们用 C C C K K K计算了一个典型的softmax loss,即 l o g ( s o f t m a x ( C W T ) ) log(softmax(CW^T)) log(softmax(CWT))。关系分类的得分函数为: F ( r ) = s o f t m a x ( C W T ) F(r)=softmax(CW^T) F(r)=softmax(CWT)

基于BERT的2模型架构

我们提出了另一种提取有向关系的方法:2-model BERT

我们在相同的数据集上,用上一节中类似的方式,训练了两个基于BERT的分类器。第一个分类器学习关系的种类,第二个分类器(在给定实体位置的条件下)学习关系的方向

如图所示,只有当关系分类器预测某个关系类,而不是人工类“Others”时,才考虑关系的方向。我们独立检查了这两个模型的性能。在SemEval 2010数据集上,关系分类模型获得了86.6%的F1 Score,而定向分类器获得了97%的F1 Score。此外,我们在结合关系和方向分类模型方面取得了比以往大多数工作更好的结果,并且与SOTA模型相当

实验

数据集:SemEval-2010 Task 8。包括8000个示例作为训练数据,2717个句子作为测试集。实体之间有九种类型的关系以及实体的划分。还有一种额外的关系类型“其他”(人工类)。此外,每个关系类型都存在方向性信息,因此关系类的总数为19

实验结果如下:(指标为Macro-F1 Score)

消融实验与误差分析

实体信息的影响

在不对实体进行标记的情况下进行实验。直观地说,实体标记对学习有很大帮助,因为BERT很大程度上基于多头自注意层

实体标记(Entity Markers)的影响

实体标记种类的选择也有影响。实验中得出,符号标记,如$,#比字母标记表现更好。可能原因是围绕着实体的字母标记扭曲了语言模型学习的语言表示。此外,用符号标记而不用空格的标记比使用空格的标记性能更好

训练轮数的影响

在本实验中,微调BERT的最佳轮数为5

误差分析:出现偏差的原因

大约80%的误分类,是错误地将关系预测为人工类“Others”、或是将Others类预测为其余18个类中的一个。可能的原因:

  • 一些被错误预测为“Others”类的例子,包含在训练数据中不存在的单词或短语(粗体)。导致模型可能无法获取上下文,并错误地预测为Others

  • 其次,该模型可以通过注意力机制学习关注实体之间介词短语的关系种类。例如,“is part of”短语主要指示 (Component-Whole / Member-Collection) 的关系。但是,Other类中的一些例子也有这样的短语,混淆了模型

结论与未来工作

本文中,我们提出了两种模型结构来处理实体之间的关系。通过消融研究,我们发现符号标记无间隙地包围实体词是通过微调BERT为关系分类提供文本输入格式的最佳方式

我们在SemEval-2010任务8基准数据集上进行了实验。所提出的模型,在SemEval-2010任务8中分别获得了88.44%和89.41%的SOTA结果F1 Score

作为未来方向,我们打算探索多标签分类任务,用于句子中存在两个以上实体导致关系提取不明确的场景。本文的一个局限性是只提取了句子层面的关系,而关系也可以跨越句子。我们打算修改我们的系统来获取长期关系(跨句子的关系)。我们还期待着采用特定领域的自定义预训练模型,以提高系统的准确性

参考

原文链接/引用:

(2023)PiVe: Prompting with Iterative Verification Improving Graph-based Generative Capability of LLMs https://arxiv.org/abs/2305.12392

(2023 AutoKG)LLMs for Knowledge Graph Construction and Reasoning-Recent Capabilities and Future Opportunities https://arxiv.org/abs/2305.13168

(2022 PL-Marker)- Deming Ye, Yankai Lin, Peng Li, and Maosong Sun. 2022. Packed Levitated Marker for Entity and Relation Extraction. In Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pages 4904–4917, Dublin, Ireland. Association for Computational Linguistics.

(2022)Grapher: Grapher: Multi-Stage Knowledge Graph Construction using Pretrained Language Models https://research.ibm.com/publications/grapher-multi-stage-knowledge-graph-construction-using-pretrained-language-models

(2021 PURE)- Zexuan Zhong and Danqi Chen. 2021. A Frustratingly Easy Approach for Entity and Relation Extraction. In Proceedings of the 2021 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pages 50–61, Online. Association for Computational Linguistics.

(2021 Guo)
Guo, Q. et al. (2021). Constructing Chinese Historical Literature Knowledge Graph Based on BERT. In: Xing, C., Fu, X., Zhang, Y., Zhang, G., Borjigin, C. (eds) Web Information Systems and Applications. WISA 2021. Lecture Notes in Computer Science(), vol 12999. Springer, Cham. https://doi.org/10.1007/978-3-030-87571-8_28

(2020 Kumar)
A. Kumar, A. Pandey, R. Gadia and M. Mishra, “Building Knowledge Graph using Pre-trained Language Model for Learning Entity-aware Relationships,” 2020 IEEE International Conference on Computing, Power and Communication Technologies (GUCON), Greater Noida, India, 2020, pp. 310-315, doi: 10.1109/GUCON48875.2020.9231227.

https://blog.csdn.net/lairongxuan/article/details/124831157

  • 24
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值