一种基于双原型网络的少样本知识推理方法与流程

文档序号:34689830发布日期:2023-07-06 00:16阅读:38来源:国知局
一种基于双原型网络的少样本知识推理方法与流程

本发明涉及知识图谱,具体涉及一种基于双原型网络的少样本知识推理方法。


背景技术:

1、知识是人类对信息进行处理之后的认识和理解,是对数据和信息的凝练、总结后的成果。图表示一些事物与另一些事物之间相互连接的结构。一张图通常由一些节点和连接这些节点的边组成。图中的节点代表语义实体或概念,边代表节点间的各种语义关系。知识图谱就是用图的形式将知识表示出来,知识图谱对于许多下游应用——例如搜索、知识问答和语义网——至关重要。

2、然而,由于大量知识信息来源于文档和网页信息,在从文档提取知识的过程中往往会有偏差,现有知识图谱面临不完整的问题。而知识图谱补全,旨在根据现有事实,推断缺失的事实,如实体之间缺失的关系,让知识图谱变得更加完整。因此,在知识图谱的构建中,知识图谱补全日益重要,是目前人工智能领域的研究热点之一。

3、现有的知识图谱补全工作,大多需要大量的实体对来进行关系推断;但是,实际数据集中关系的频率分布通常具有长尾问题,很大一部分关系在知识图谱中只有很少的实体对,因此,处理这些数量有限的实体对的关系是非常重要且具有挑战性的。近年来,基于该问题研究人员做了大量的工作,并由此发展出了少样本知识图谱补全技术,所述少样本知识图谱,也被称为小样本知识图谱,其英文全称为few-shot knowledge graph。

4、目前常见的少样本知识图谱补全方法,可以概括为两类:基于度量的方法和基于优化的方法:

5、一、基于度量的方法

6、该方法基于相似性度量的预测,学习得到一个良好的特征空间。进一步的讲,其通过支撑实例为每个关系生成通用表示,并将这种通用表示与查询例匹配。而为了生成更丰富的关系表示,相应地利用局部图邻居来增强实体嵌入。比如:论文《one-shot relationallearning for knowledge graphs》(emnlp 2018),提出了一种基于度量小样本的学习方法gmatching,该方法先利用r-gcn为单跳邻居进行编码,捕捉局部图结构信息,然后在长短时记忆网络的指导下将结构实体嵌入模型进行多步匹配,计算相似度得分。比如:论文《bert-based knowledge graph completion algorithm for few-shot》(proceedings of the2nd international conference on big data economy and informationmanagement.2021),提出了b-gmatching方法,引入bert预训练语言模型来增强gmatching中实体和关系的语义表示。

7、二、基于优化的方法

8、该方法是将支撑集映射到通用表示,利用元学习在未过度拟合的情况下概括小样本问题。元学习是对多种学习任务进行系统性观察的研究,并从中学习新任务,目标是概括任务的分布,对成批的任务进行优化。比如:论文《meta relational learning for few-shot link prediction in knowledge graphs》(emnlp 2019),提出了一种基于优化的元关系学习框架metar,该框架通过在任务之间提取共享知识并将其从一些现有事实转移到不完整的事实中。比如:论文《adapting meta knowledge graph information for multi-hop reasoning over few-shot relations》(emnlp 2019),提出了一种基于优化的元学习方法meta-kgr,该方法采用元学习进行快速自适应与强化学习,并应用于实体搜索和路径推理领域。

9、虽然在少样本知识图谱补全任务上,现有的方法取得了不错的效果,但是仍存在一些问题:首先,这些方法通常将样本视为是彼此孤立的,忽略了样本之间的复杂关联关系;其次,这些方法往往使用单原型网络,通过考虑查询样本与正支持实例之间的匹配度来完成推理任务,没有充分考虑不同类实例之间的鉴别性知识。因此,这些方法对信息利用不充分,在少样本知识图谱补全性能上还有待提升。


技术实现思路

1、本发明所要解决的技术问题是:提出一种基于双原型网络的少样本知识推理方法,解决现有技术的少样本知识图谱补全方案存在的对信息利用不充分的问题,提高少样本知识图谱补全性能。

2、本发明解决上述技术问题采用的技术方案是:

3、一种基于双原型网络的少样本知识推理方法,包括以下步骤:

4、a、训练少样本知识推理模型:

5、a1、输入待补全的知识图谱,所述待补全的知识图谱的数据为三元组数据(h,r,t),其中,h表示头实体,t表示尾实体,r表示头实体和尾实体的关系;根据关系出现的次数阈值,将所述待补全的知识图谱的数据划分为少样本数据和背景数据;

6、a2、将少样本数据划分为实例集和查询集;从实例集中,随机选择一组实例作为正实例;然后,基于正实例,采用替换其尾实体的方式,构建一组不同于正实例的实例作为负实例,并由正实例和负实例构成支撑集;以查询集及支撑集所包含实例的实体构建实体集,从背景数据中提取分别以实体集的各实体作为头实体的实例,构成实体集的各实体的邻居集;

7、a3、将查询集、支撑集和邻居集所包含实例的数据,采用预训练的知识图谱嵌入模型,转换为实例的初始嵌入;

8、a4、针对查询集中的每一个查询例,分别按如下步骤进行匹配:

9、a41、基于当前输入的查询例所包含实体以及支撑集所包含实例的实体,构建该查询例的实体子集,并将当前输入的查询例中的关系作为任务关系;

10、针对实体子集中的每一个实体,分别计算其邻居集中各实例的关系同所述任务关系的相关性,并以相关性构建其邻居集中各实例的权重,然后,将其邻居集中各实例的尾实体的初始嵌入,采用带权重聚合的方式进行聚合,并基于聚合结果对该实体的初始嵌入进行更新,获得该实体的实体嵌入表征;

11、a42、基于步骤a41获得的实体嵌入表征,针对查询例及支撑集所包含实例,分别融合其头实体和尾实体的实体嵌入表征,构建各实例的实体对嵌入表征;

12、a43、基于各实例的实体对嵌入表征,分别计算支撑集中各正实例同输入查询例的相似性,并基于相似性构建各正实例的权重,然后,将各正实例的实体对嵌入表征,采用带权重聚合的方式进行聚合,获得输入查询例的正原型表征;分别计算支撑集中各负实例同输入查询例的相似性,并基于相似性构建各负实例的权重,然后,将各负实例的实体对嵌入表征,采用带权重聚合的方式进行聚合,获得输入查询例的负原型表征;

13、a44、针对输入的查询例,计算其实体对嵌入表征与其正原型表征的正原型匹配得分,计算其实体对嵌入表征与其负原型表征的负原型匹配得分,完成对该查询集的分类推理;

14、a5、基于步骤a4获得查询集中各查询例的推理结果,计算损失函数并进行反向传播训练;

15、a6、重复步骤a2-a5,直至达到设定的训练结束条件,获得训练好的少样本知识推理模型;

16、b、执行知识推理任务:

17、基于待补全知识所对应的实例构建查询集,基于训练阶段输入的知识图谱构建支撑集,将查询集和支撑集输入至训练获得的少样本知识推理模型,获得查询集的查询例的分类信息,并基于查询例的分类信息对知识进行补全。

18、进一步的,在步骤a42和步骤a43之间,还包括步骤s1:

19、以查询例及支撑集所包含实例作为节点,构建全连接图;并以步骤a42获得的实体对嵌入表征作为全连接图的初始节点嵌入;基于全连接图的初始节点嵌入,采用图卷积神经网络,提取全连接图的各节点间的关联性作为全连接图的各节点间边的初始边嵌入;

20、然后,基于全连接图的初始边嵌入,对全连接图的初始节点嵌入进行更新;

21、最后,将全连接图经更新的初始节点嵌入,作为全连接图各节点对应实例的经更新的实体对嵌入表征,并作为步骤a43的输入。

22、进一步的,步骤s1中,基于全连接图的初始节点嵌入,采用图卷积神经网络,提取全连接图的各节点间的关联性作为全连接图的各节点间边的初始边嵌入,具体为:

23、

24、其中,vp,vq分别表示全连接图中节点p和节点q的初始节点嵌入,表示经图卷积神经网络提取的两节点间的关联性,sr表示支撑集中正实例的集合,表示支撑集中负实例的集合,fpq为反映节点p和节点q所对应实例是否来自相同集合的标识函数。

25、进一步的,步骤s1中,基于全连接图的初始边嵌入,对全连接图的初始节点嵌入进行更新,包括如下步骤:

26、首先,按如下公式,计算获得经过特征传播更新后的节点嵌入表征

27、

28、其中,σ(·)为sigmoid激活函数,φ(·)是线性变换函数,v是全连接图的初始节点嵌入,e表示全连接图的初始边嵌入;

29、然后,使用残差机制,按公式:对初始节点嵌入进行更新。

30、进一步的,所述图卷积神经网络为引入残差机制并包含四个卷积层的图卷积神经网络。

31、进一步的,步骤a41中,针对实体子集中的每一个实体,分别计算其邻居集中各实例的关系同任务关系的相关性,并以相关性构建其邻居集中各实例的权重,然后,将其邻居集中各实例的尾实体的初始嵌入,采用带权重聚合的方式进行聚合,并基于聚合结果对该实体的初始嵌入进行更新,获得该实体的实体嵌入表征,包括如下步骤:

32、a411、计算该实体邻居集中各实例的关系同任务关系的相关性ψ(rt,rn);

33、a412、按如下公式,以相关性构建该实体邻居集中各实例的权重αn:

34、

35、其中,αn表示该实体邻居集中第n个实例的权重,exp(·)表示以e为底的指数函数,nnbr表示该实体的邻居集,rn,rm分别表示该实体邻居集中的第n个实例和第m个实例的关系的初始嵌入;

36、a413、按如下公式,将该实体邻居集中各实例的尾实体的初始嵌入,采用带权重聚合的方式进行聚合:

37、

38、其中,c表示该实体的邻居嵌入聚合表示,en是该实体邻居集中第n个实例的尾实体的初始嵌入;

39、a414、按如下公式,对该实体的初始嵌入进行更新:

40、h′=σ(w1h+w2c)

41、其中,h′表示更新后获得的该实体的实体嵌入表征,h表示该实体的初始嵌入,σ(·)表示relu激活函数,w1和w2均为可学习参数。

42、进一步的,步骤a3中,将查询集、支撑集和邻居集所包含实例的数据,采用预训练的transe模型,分别将各实例的实体转换为实体的初始嵌入,并按如下公式计算获得各实例的关系的初始嵌入:

43、r=t-h

44、其中,r表示当前所计算关系的初始嵌入,t表示当前所计算关系所对应实例的尾实体的初始嵌入,h表示当前所计算关系所对应实例的头实体的初始嵌入;

45、步骤a41中,针对实体子集中的每一个实体,分别按如下公式,计算其邻居集中各实例的关系同任务关系的相关性ψ(rt,rn):

46、ψ(rt,rn)=rttwrn+b

47、其中,rn表示该实体邻居集中第n个实例的关系的初始嵌入,rt表示任务关系的初始嵌入,w和b均为可学习参数,t表示矩阵转置。

48、进一步的,步骤a42中,基于步骤a41获得的实体嵌入表征,针对查询例及支撑集所包含实例,分别融合其头实体和尾实体的实体嵌入表征,构建各实例的实体对嵌入表征,包括如下步骤:

49、a421、针对每一个实例,构建序列其中,为该实例头实体的实体嵌入表征,为该实例关系的初始嵌入,为该实例尾实体的实体嵌入表征;

50、a422、为序列的各元素添加位置编码,构建输入表征

51、

52、其中,表示输入表征z0中的第i个元素,是序列x中的第i个元素,是序列x中的第i个元素的位置嵌入;

53、a423、将输入表征输入transformer编码器,并将transformer编码器最后一层的隐藏状态作为该实例的实体对嵌入表征,其中l表示transformer编码器的层数。

54、进一步的,步骤a43中,按如下步骤,计算原型表征:

55、a431、计算实例同输入查询例的相似性δ(v′srn,v′qr),其中,v′srn∈nsr,nsr表示支撑集中正实例的集合或负实例的集合,v′qr表示该查询例的实体对嵌入表征;

56、a432、按如下公式,基于相似性构建集合nsr中各实例的权重:

57、

58、其中,βn表示集合nsr中第n个实例的权重,v′srn,v′srm分别表示集合nsr中第n个实例和第m个实例的实体对嵌入表征,exp(·)表示以e为底的指数函数;

59、a433、按如下公式,将集合nsr中各实例的实体对嵌入表征,采用带权重聚合的方式进行聚合,获得输入查询例对应集合nsr的原型表征:

60、

61、其中,gr表示输入查询例对应集合nsr的原型表征。

62、进一步的,步骤a43中,按如下公式,采用点乘的方式,计算实例同输入查询例的相似性δ(v′srn,v′qr);

63、δ(v′srn,v′qr)=v′srn·v′qr

64、其中,v′srn∈nsr,nsr表示支撑集中正实例的集合或负实例的集合,v′srn表示集合nsr中第n个实例的实体对嵌入表征,v′qr表示该查询例的实体对嵌入表征。

65、进一步的,步骤a44中,针对输入的查询例,计算其实体对嵌入表征与其正原型表征的正原型匹配得分,计算其实体对嵌入表征与其负原型表征的负原型匹配得分,完成对该查询集的分类推理,包括如下步骤:

66、a441、计算输入查询例的正原型匹配度和负原型匹配度

67、a442、按如下公式,基于输入查询例的正原型匹配度和负原型匹配度进行归一化,获得输入查询例的正原型匹配得分和负原型匹配得分:

68、

69、

70、其中,sqrn1表示输入查询例的正原型匹配得分,sqrn2表示输入查询例的负原型匹配得分。

71、进一步的,步骤a441中,按如下公式计算输入查询例的正原型匹配度和负原型匹配度:

72、

73、

74、其中,v′qr表示输入查询例的实体对嵌入表征,表输入查询例的正原型表征,表示输入查询例的负原型表征,表示输入查询例的正原型匹配度,表示输入查询例的负原型匹配度。

75、进一步的,步骤a5中的损失函数为:

76、

77、

78、其中,l为查询集中所有关系的损失总和,lr为查询集中关系为r的查询例的损失;

79、表示关系为r的正查询集,表示关系为r的负查询集,所述正查询集为查询集中关系为r的正原型匹配得分大于负原型匹配得分的查询例所构成的集合,所述负查询集为查询集中关系为r的正原型匹配得分小于负原型匹配得分的查询例所构成的集合;γ表示正查询例和负查询例的距离;表示关系为r的正查询集中的第n个正查询例,表示关系为r的负查询集中的第m个负查询例;表示关系为r的第n个正查询例的正原型匹配得分,表示关系为r的第m个负查询例的正原型匹配得分;是表示关系为r的第n个正查询例的负原型匹配得分,表示关系为r的第m个负查询例的负原型匹配得分。

80、本发明的有益效果是:

81、本发明在支撑集中引入了负实例,基于查询例的表征信息同正负实例的表征信息的相似性,分别构建正负实例的权重,再通过权重聚合方式分别对正负实例的表征信息进行聚合,获得正原型表征和负原型表征,最后,通过计算查询例同正原型表征和负原型表征的匹配性得分,完成对查询例的分类推理,从而对图谱进行知识补全。由于本发明,在支撑集中引入了负实例,丰富了支撑集中的样本,并基于此构建了双原型网络完成分类推理,因此,对信息利用更充分,从而提高模型的分类能力,并提高少样本知识图谱补全性能。与双原型网络相适应的,本发明进一步的设置双间隔损失函数,通过最小化损失函数优化模型。

82、此外,本发明设计了一个实例图神经网络建模实例之间的交互,通过图神经网络的特征传播,挖掘实例的深层特征,捕捉表征更细粒度的动态变化,能让来自同一类的实例具有更多的相似性,而来自不同类的实例有更多的区别性,进一步提高正原型表征和负原型表征的表达能力,并提高模型的鉴别能力。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1