掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本发明涉及数据处理技术领域,特别是涉及一种小样本关系抽取方法、系统、电子设备及存储介质。

背景技术

关系抽取任务的目的是从非结构化的原始文本数据中提取实体之间的关系,进而将这些原始的非结构化数据转化为易于存储和分析的结构化数据。关系抽取技术广泛应用于知识图谱、自动问答、搜索引擎等人工智能领域。关系抽取按照训练样本数量,分为一般关系抽取、开放域关系抽取、小样本关系抽取等。深度学习技术使用神经网络模型来自动提取文本特征,如何让神经网络模型更好地挖掘文本语义信息以进行分类是一个难点。通常,关系抽取任务需要大量的训练数据来支撑,这些数据通常需要大量的人力进行标注。小样本关系抽取即是在给定极少样本实例的情况下,抽取出给定的测试句子之间存在的关系。

当前传统模型的性能在很大程度上依赖于耗时的劳动密集型的标注数据,尽管有些模型在公共关系方面取得了良好的效果,但当关系的训练实例数量减少时,关系的性能会急剧下降,分类器可能会倾向于样本多的类,因此,当样本不充分时,现有模型对于样本关系抽取的准确率不高。

发明内容

本发明的目的是提供一种小样本关系抽取方法、系统、电子设备及存储介质,能够在样本不充分时,提高对样本关系抽取的准确率。

为实现上述目的,本发明提供了如下方案:

一种小样本关系抽取方法,包括:

获取目标文本;

根据小样本关系抽取模型和所述目标文本确定实体关系表示;所述实体关系表示包括实体文本及对应的概念和关系;其中,所述小样本关系抽取模型是通过对比学习损失和交叉熵损失进行训练的;

所述小样本关系抽取模型包括概念编码模块、句子编码模块和文本概念融合模块;所述概念编码模块和所述句子编码模块均与所述文本概念融合模块连接;所述概念编码模块是基于skip-gram模型构建的;所述句子编码模块是基于Bert嵌入模型构建的;所述文本概念融合模块是基于自我注意机制网络和相似度门构建的;

其中,所述概念编码模块用于确定所述目标文本中实体文本的多个概念嵌入向量;所述句子编码模块用于确定所述目标文本的句子嵌入向量;所述文本概念融合模块用于根据各所述概念嵌入向量和所述句子嵌入向量确定实体关系表示。

可选地,所述根据小样本关系抽取模型和所述目标文本确定实体关系表示,具体包括:

根据设定概念数据库对所述目标文本的实体文本进行概念提取,得到所述实体文本的多个候选概念;

将各所述候选概念输入所述概念编码模块,得到多个概念嵌入向量;

将所述目标文本输入所述句子编码模块,得到句子嵌入向量;

将各所述概念嵌入向量和所述句子嵌入向量输入所述文本概念融合模块,得到实体关系表示。

可选地,将各所述概念嵌入向量和所述句子嵌入向量输入所述文本概念融合模块,得到实体关系表示,具体包括:

计算各所述概念嵌入向量与所述句子嵌入向量之间的相似度,得到多个相似度矩阵;

利用Softmax函数对各所述相似度矩阵进行归一化,得到各相似度分值;

根据预设相似度阈值和各所述相似度分值确定所述句子嵌入向量对应的最优概念嵌入向量;

将所述最优概念嵌入向量和所述句子嵌入向量进行拼接,得到实体关系表示。

可选地,所述小样本关系抽取模型的训练过程,具体包括:

获取训练数据;所述训练数据包括训练文本和对应的关系标签;所述关系标签包括训练文本中的实体文本及对应的概念和关系;

基于Bert嵌入模型、skip-gram模型、自我注意机制网络和相似度门构建训练模型;

将所述训练数据输入所述训练模型,并利用对比学习损失和交叉熵损失对所述训练模型进行训练,将训练好的所述训练模型确定为所述小样本关系抽取模型。

可选地,所述设定概念数据库包括YAGO3数据库、ConceptNet数据库和ConceptGraph数据库。

本发明还提供了一种小样本关系抽取系统,包括:

文本获取模块,用于获取目标文本;

关系抽取模块,用于根据小样本关系抽取模型和所述目标文本确定实体关系表示;所述实体关系表示包括实体文本及对应的概念和关系;其中,所述小样本关系抽取模型是通过对比学习损失和交叉熵损失进行训练的;

所述小样本关系抽取模型包括概念编码模块、句子编码模块和文本概念融合模块;所述概念编码模块和所述句子编码模块均与所述文本概念融合模块连接;所述概念编码模块是基于skip-gram模型构建的;所述句子编码模块是基于Bert嵌入模型构建的;所述文本概念融合模块是基于自我注意机制网络和相似度门构建的;

其中,所述概念编码模块用于确定所述目标文本中实体文本的多个概念嵌入向量;所述句子编码模块用于确定所述目标文本的句子嵌入向量;所述文本概念融合模块用于根据各所述概念嵌入向量和所述句子嵌入向量确定实体关系表示。

本发明还提供了一种电子设备,包括存储器及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行根据上述的小样本关系抽取方法。

本发明还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的小样本关系抽取方法。

根据本发明提供的具体实施例,本发明公开了以下技术效果:

本发明公开了一种小样本关系抽取方法、系统、电子设备及存储介质,所述方法包括利用小样本关系抽取模型对目标文本中的实体文本及其对应的概念和关系进行提取,生成并输出该对应的实体关系表示。其中,小样本关系抽取模型是通过对比学习损失和交叉熵损失进行训练的,且在文本概念融合模块中利用自我注意机制网络和相似度门,对实体文本及对应概念的相似度进行把控,避免模型结果倾向于样本多的类,提高在样本不充分时,对样本关系抽取的准确率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明小样本关系抽取方法的流程示意图;

图2为本实施例中小样本关系抽取模型的运算逻辑示意图;

图3为本实施例中概念选择门算法的运算逻辑示意图;

图4为本实施例中基于自注意力的文本融合运算逻辑示意图;

图5为本实施例中基于对比学习的关系分类模块架构图;

图6为本发明小样本关系抽取系统的结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的目的是提供一种小样本关系抽取方法、系统、电子设备及存储介质,能够在样本不充分时,提高对样本关系抽取的准确率。

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

如图1所示,本发明提供了一种小样本关系抽取方法,包括:

步骤100:获取目标文本。

步骤200:根据小样本关系抽取模型和所述目标文本确定实体关系表示;所述实体关系表示包括实体文本及对应的概念和关系;其中,所述小样本关系抽取模型是通过对比学习损失和交叉熵损失进行训练的。

具体地,所述小样本关系抽取模型包括概念编码模块、句子编码模块和文本概念融合模块;所述概念编码模块和所述句子编码模块均与所述文本概念融合模块连接;所述概念编码模块是基于skip-gram模型构建的;所述句子编码模块是基于Bert嵌入模型构建的;所述文本概念融合模块是基于自我注意机制网络和相似度门构建的。

其中,所述概念编码模块用于确定所述目标文本中实体文本的多个概念嵌入向量;所述句子编码模块用于确定所述目标文本的句子嵌入向量;所述文本概念融合模块用于根据各所述概念嵌入向量和所述句子嵌入向量确定实体关系表示。

上述小样本关系抽取模型的训练过程,具体包括:

获取训练数据;所述训练数据包括训练文本和对应的关系标签;所述关系标签包括训练文本中的实体文本及对应的概念和关系;基于Bert嵌入模型、skip-gram模型、自我注意机制网络和相似度门构建训练模型;将所述训练数据输入所述训练模型,并利用对比学习损失和交叉熵损失对所述训练模型进行训练,将训练好的所述训练模型确定为所述小样本关系抽取模型。

在本实施例中,设定概念数据库包括YAGO3数据库、ConceptNet数据库和ConceptGraph数据库。

作为步骤200的一种具体实施方式,包括:

首先,根据设定概念数据库对所述目标文本的实体文本进行概念提取,得到所述实体文本的多个候选概念。

然后,将各所述候选概念输入所述概念编码模块,得到多个概念嵌入向量。以及,将所述目标文本输入所述句子编码模块,得到句子嵌入向量。

最后,将各所述概念嵌入向量和所述句子嵌入向量输入所述文本概念融合模块,得到实体关系表示。具体包括:

计算各所述概念嵌入向量与所述句子嵌入向量之间的相似度,得到多个相似度矩阵;利用Softmax函数对各所述相似度矩阵进行归一化,得到各相似度分值;根据预设相似度阈值和各所述相似度分值确定所述句子嵌入向量对应的最优概念嵌入向量;将所述最优概念嵌入向量和所述句子嵌入向量进行拼接,得到实体关系表示。

在上述方案的基础上,提供如图2-图5所示的实施例:

如图2所示,小样本关系抽取模型的主要运算逻辑为:对于输入的句子文本,从数据库中得到其中实体对应的候选概念(如图2中比尔盖茨对应的候选概念为:人,百万富翁,企业家)。对句子使用Bert嵌入,对选择的候选关系,使用skip-gram训练模型(跳字模型)进行嵌入,得到句子和概念的向量表示。根据概念向量和句子向量,计算所有概念和句子之间的相似度,进行softmax归一化之后,判断相似度的阈值,选择合理向量。使用自注意力机制,将句子和概念进行融合,最后,引入有监督的对比学习loss和交叉熵loss进行训练。

在上述过程中的一个关键部分是引入外部知识以增强嵌入表示(即设定概念数据库),显然,纯文本的信息在小样本关系抽取场景下是有限的。因此,当引入外部一些附属信息、以补偿支持集中的有限信息,可以提升模型的性能。但是如何从外部信息中提取最有用的信息,而避免干扰信息的引入,是一个值得讨论的问题。因此在本实施例中,引入实体概念作为外部信息,以增强原型的表示。

(1)首先,概念是对实体直观而简明的描述,并且可以容易的从设定概念数据库(YAGO3、ConceptNet、ConceptGraph)中获得。本实施例选择从ConceptGraph数据库中获得。ConceptGraph数据库是由Microsoft开发的大规模常识概念知识图,包含存储在三元组(entity、IsA、concept)中的实体概念,可以为关系提取方案(ConceptFERE)中的实体提供概念知识。其中,概念嵌入采用预先训练的概念嵌入。

(2)此外,概念比每个实体特定的文本描述更加抽象,不仅可以补充支持集中的有限信息,而且更加适合作为一类关系的原型。

如表1所示,直观地知道头实体是一家公司,尾部实体是一名企业家,句子中实体对对应的关系可以限制在一个范围内。另一方面,一些关系应该被消除,例如,就读于。概念的语义信息可以帮助确定模型预测的关系:创始人。

表1 概念引入示例

但是一个实体可能存在不同方面或角度的不同概念,如比尔盖茨有人,百万富翁,企业家,而最终可能仅有某几个概念与其所属关系相关。因此,在引入外部信息时,引入一个相似度判断门,来判断外部概念与关系文本的相似性。其次,由于句子嵌入和预先训练的概念嵌入不是在同一语义空间中学习的,因此本实施例采用自我注意机制对句子和所选概念进行词级语义融合,得到最终的句子表示。

句子嵌入:

本实施例对支持集的句子采用了Bert预训练模型作为文本嵌入。Bert的输入为每一个嵌入词(token)对应的表征,通过将token转化为特征向量输入到Bert预训练模型中去。为了完成具体的分类任务,除了单词的token之外,在输入的每一个句子序列开头都插入特定的分类token,该分类token对应的最后一个注意力层(Transformer)输出被用来起到聚集整个序列表征信息的作用。

由于Bert是一个预训练模型,其必须要适应各种各样的自然语言任务,因此模型所输入的序列必须有能力包含一句话(文本情感分类,序列标注任务)或者两句话以上(文本摘要,自然语言推断,问答任务)。为了使模型有能力去分辨哪部分是属于句子A,哪部分是属于句子B,Bert采用了两种方法来解决:在序列tokens中把分割token([SEP])插入到每个句子后,以分隔不同的句子tokens;为每一个token表征都添加一个可学习的分割嵌入(embedding)来指示其属于句子A还是句子B。

在预训练方面,Bert构建了两个预训练任务,分别是遮蔽语言模型(MaskedLanguage Model,MLM)和下一个句子预测(Next Sentence Prediction,NSP)。MLM任务倾向于抽取token层次的表征,因此不能直接获取句子层次的表征。为了使模型能够有能力理解句子间的关系,Bert使用了NSP任务来预训练,简单来说就是预测两个句子是否组成上下文。这样一来,一些如问答、自然语言推断等需要理解两个句子之间关系的任务就可以很好的利用Bert来训练。

基于以上两点,Bert预训练模型可以很好地作为NLP关系抽取的嵌入层。

概念嵌入:

对于引入的概念,使用传统预训练概念嵌入,即使用skip-gram模型在学习wiki百科和概念图上学习概念的嵌入层表示。

如图3所示的概念选择门算法:

一个实体可能存在不同方面或角度的不同概念,而最终可能仅有某几个个概念与其所属关系相关,而另一些概念则可能会给关系分类带来负面影响,需要让模型能够自主的选择语义更相似的概念。

首先,由于经过概念嵌入层(Skip-gram)的概念嵌入

其次,句子和n个候选概念分别由Bert和skip-gram预训练模型嵌入为长度为768的向量

最后,相似性值由Softmax函数归一化。得到n个候选概念对应的相似度分值,当分值大于阈值

如图4所示的基于自注意力的文本概念融合模块:

由于概念嵌入和句子中单词的嵌入不是在同一语义空间中学习的,因此本实施例设计了一个基于自注意的融合模块,以对概念和句子中的每个单词进行单词级语义融合。首先,将句子中所有单词的嵌入和所选概念的嵌入连接起来,然后送到自注意力模块。如图4所示,自我注意模块计算概念和句子中每个单词之间的相似度值。它将概念嵌入和相似度值相乘,然后与对应的单词嵌入组合如下:

其中,

至此,就得到了引入了外部合理线索的支持集句子嵌入。

使用对比学习增加原型判别能力:本实施例采用对比学习的方法来解决不同类别的原型在嵌入空间可能比较接近的问题,具体过程如下。

在上文中,已经得到了引入外部合理线索的句子嵌入。本实施例提出,将原型网络作为骨干网络,在构造关系原型时,引入对比学习损失,以此来缓解上述的接近问题。基于对比学习的关系分类模块整体架构如图5所示,算法主要分为以下几步:

1.文本嵌入

对于属于Support Instance的句子和属于Query Instance的句子,本实施例首先送入外部概念的融合模块中,得到语义更丰富的句子嵌入

2.生成关系原型

对于一个batch(层)下的任一关系,算法都会生成其对应的关系原型(prototype)。针对此前的原型网络中,使用同一类下所有实例嵌入的均值作为该关系原型这样粗糙的法,本实施例手工的选取更加重要的向量来生成原型。具体的,对于第

其中,

那么,通过Query Instance的嵌入表示和N个关系的原型,模型就可以计算查询实例的可能存在的关系概率:

其中,

3.基于对比学习对关系原型进行调整

如前文中所述,当同一训练批次中的关系类别比较相似时,会导致关系原型在嵌入空间的分布接近,进而可能使得模型的判别能力下降。因此,在通过文本嵌入和生成关系原型后,将支持集所包含的所有关系原型投入到对比学习模块中,让各个关系原型在嵌入空间的分布更加离散化,以增加原型的判别能力。这里值得一提的是,与传统的自监督对比学习方法不同的是,这里使用了支持集实例关系的标签来进行有监督的对比学习。

具体来说,有监督对比学习模块以关系表示为锚点,把同一类的关系原型作为正样本,同一batch下的不同关系类的原型作为负样本,旨在用锚点来拉近正样本关系,并推开负样本。

对于支持集下的第

其中,

则有监督的对比学习损失如下:

其中,

最后,将查询实例与经过对比学习模块进行调整的支持集句子原型嵌入进行点积,距离最近的作为分类的结果,进行交叉熵损失,对整体参数进行优化。

其中,L

在本实施例中,需要的运行环境为:Pytorch:1.7.1,CUDA:11.0,GPU:NVIDIAGeForce RTX 3090,24G。在该环境下进行训练。

本实施例方案提出了一种基于相似度的外部信息引入模块,能够让模型能自主的选择外部的信息,以过滤掉外部的噪声,以提高模型性能。此外,本实施例对于相似关系,引入对比学习的方法来提高模型的判别能力。

如图6所示,本发明还提供了一种小样本关系抽取系统,包括:

文本获取模块,用于获取目标文本;

关系抽取模块,用于根据小样本关系抽取模型和所述目标文本确定实体关系表示;所述实体关系表示包括实体文本及对应的概念和关系;其中,所述小样本关系抽取模型是通过对比学习损失和交叉熵损失进行训练的;所述小样本关系抽取模型包括概念编码模块、句子编码模块和文本概念融合模块;所述概念编码模块和所述句子编码模块均与所述文本概念融合模块连接;所述概念编码模块是基于skip-gram模型构建的;所述句子编码模块是基于Bert嵌入模型构建的;所述文本概念融合模块是基于自我注意机制网络和相似度门构建的;其中,所述概念编码模块用于确定所述目标文本中实体文本的多个概念嵌入向量;所述句子编码模块用于确定所述目标文本的句子嵌入向量;所述文本概念融合模块用于根据各所述概念嵌入向量和所述句子嵌入向量确定实体关系表示。

本发明还提供了一种电子设备,包括存储器及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行根据上述的小样本关系抽取方法。

本发明还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的小样本关系抽取方法。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

相关技术
  • 文本中的实体关系抽取方法及系统、存储介质、电子设备
  • 直播主题样本提取方法、存储介质、电子设备及系统
  • 一种样本信息展示方法、样本分析系统及计算机存储介质
  • 数据抽取方法、装置、存储介质及电子设备
  • 一种分布式系统部署方法、系统、电子设备及存储介质
  • 一种小样本关系抽取方法、系统、电子设备及存储介质
  • 一种小样本关系抽取方法、装置及存储介质
技术分类

06120116336040