基于关系学习网络的小样本知识图谱补全模型
2023-09-18冉丈杰孙林夫邹益胜马玉麟
冉丈杰,孙林夫,邹益胜,马玉麟
(1.西南交通大学 计算机与人工智能学院,成都 611031;2.西南交通大学 制造业产业链协同与信息化支撑技术四川省重点实验室,成都 611031)
0 概述
知识图谱(Knowledge Graph,KG)是一种新兴的有向图数据结构,其中蕴含了丰富的多元关系数据,已经广泛应用于人类生活的各个领域。Freebase[1]、YAGO[2]、WordNet[3]、NELL[4]、Wikidata[5]等现有知识图谱都包含了大量由事实构成的三元组,这些三元组通常以(头实体,关系,尾实体)的形式表示,即(h,r,t)。在现实生活中,知识图谱已在信息提取[6]、语义搜索[7]、智能问答[8]、个性化推荐[9]等任务中发挥了重要作用。然而由于多数知识图谱中实体间的关系是不完整的,因此有必要通过推断新的事实来进行知识图谱补全(Knowledge Graph Completion,KGC),从而提高知识图谱的利用价值。
知识图谱G 可以表示为三元组集合的形式{(h,r,t)}⊆E×R×E,其中,E 和R 分别表示实体集合与关系集合。知识图谱补全任务包括给定头实体h和关系r预测尾实体t、给定头实体h和尾实体t预测关系r、给定关系r和尾实体t预测头实体h等3 类。与一般的知识图谱补全任务不同,小样本知识图谱补全任务在参考样本很少的情况下进行,即在给定关系r∊R 的参考样本很少的情况下,补全(h,r,?)缺失的尾实体t∊E。
近年来,知识图谱嵌入(Knowledge Graph Embedding,KGE)方法被证明对知识图谱补全任务非常有效[10]。但由于知识图谱的自身特性,知识图谱中普遍存在一些出现次数很少的关系,即小样本关系。对于现实世界中知识图谱的小样本关系而言,在有限的训练实例中无法有效地学习它们的表示,这导致知识图谱嵌入方法在小样本知识图谱补全任务中的效果不理想。然而,对这些低频关系的链接预测是非常重要的,因为这些关系不仅在多数知识图谱中非常丰富,而且对于模型训练后可能出现新关系的知识图谱补全任务也非常关键[11]。因此,针对小样本知识图谱补全的研究逐渐成为热点。
在知识图谱中,往往还存在以下两种现象:同一实体在不同关系的三元组中可能具有不同的语义角色;同一名称的关系在不同的三元组中也可能具有不同的细粒度语义。这两种现象在常规的知识图谱补全任务中并不会造成过多的影响,因为其具备足够的训练实例,但在小样本知识图谱补全任务中,却会极大地影响补全效果。
为解决小样本知识图谱补全的问题,本文首先选择小样本关系的三元组作为参考集,对每个三元组的头尾实体进行邻域编码,之后结合Transformer编码器与长短期记忆(Long Short-Term Memory,LSTM)神经网络学习小样本的关系表示,最后将其与待查询的三元组进行匹配,基于优化的得分函数实现匹配打分,从而完成小样本知识图谱补全任务。
1 相关工作
1.1 传统大规模知识图谱补全
近年来,基于知识图谱嵌入技术,研究者们从表示学习的角度,对大规模知识图谱补全任务进行了广泛的研究。知识图谱嵌入通过发现知识图谱中即有事实的潜在特征,学习实体和关系的分布式表征,从而实现知识图谱补全任务。经典的TransE[12]将关系视为实体对之间的转换操作,以测试三元组的兼容性。TransH[13]在TransE 的基础上,将实体嵌入到给定的不同关系的超平面上,赋予实体不同的表示形式。受此启发,TransR[14]将实体嵌入到多种关系并存的空间中,以此获取实体的表征。DistMult[15]利用双线性对角矩阵,对知识图谱内的关系进行嵌入表示的学习。ComplEx[16]将实体和关系嵌入复数向量空间,以处理并推断对称和反对称关系的问题。ConvE[17]、ConvKB[18]以及CapsE[19]都是利用卷积神经网络的思想,捕捉实体的特征和关系。KGBN[20]考虑同类实体之间所涉及关系的依赖性,基于KGBN 推理构造新的三元组以补全知识图谱。四元数胶囊网络[21]将四元数嵌入模型QuaR[22]训练得到的超复数嵌入作为胶囊网络嵌入模型CapsE 的输入,捕获三元组全局特性,取得了更高的预测准确性。
然而,这些方法都需要大量的训练实例,忽略了实际知识图谱中存在的长尾关系以及动态更新特性,因此无法提供足够的训练实例。
1.2 小样本知识图谱补全
为了在样本关系较少的知识图谱中实现知识图谱补全任务,近年来多种小样本知识图谱补全模型陆续被提出。作为一种单样本学习模型,GMatching[23]利用邻域编码器来增强单跳邻域的实体嵌入,并利用LSTM 单元计算匹配分数,以得到不同实体 对之间 的相似 性。FSRL[24]将GMatching 推广到多样本情况,进一步利用注意力机制捕捉小样本在知识图谱中的局部结构。这两种模型都属于度量学习的范畴。元关系学习框架MetaR[25]在任务之间提取共享知识,并将其从一系列现有事实转移到不完整的事实上,利用模型不可知元学习(Model-Agnostic Meta-Learning,MAML)快速适应策略网络参数或关系元。FAAN[26]通过学习自适应实体和参考表示,引入一种自适应注意力网络,主要由一个自适应邻域编码器与一个自适应查询感知聚合器构成。GANA[27]采用一种全局-局部两阶段的框架进行小样本关系学习,在全局阶段利用门控机制过滤噪声邻域,在局部阶段设计一种基于元学习的TransH(MTransH)方法来对一对多(1-N)、多对一(N-1)甚至多对多(N-N)的复杂关系进行建模。
然而,现有的小样本知识图谱补全模型仍存在一些问题。GMatching 由于提出时间较早,只考虑对单样本进行学习,无法针对多样本的关系进行建模。FSRL 更多地关注相似性或路径发现,而不是学习小样本参考最为核心的关系表示的信息。MetaR 基于元学习的方法传递特定关系元所包含的信息,但忽略了邻域中的相关语义。FAAN 在学习关系表示的过程中,只对参考集中每个样本自身的关系进行建模,未考虑参考集上下文语义对关系表示的影响。GANA 学习特定关系的超平面参数来建模复杂关系,但同样忽略了实体对语义对关系建模的影响。总体而言,现有的小样本知识图谱补全模型片面地关注相似性或元学习过程,未能从细粒度的上下文语义层面对小样本关系进行深入研究。
2 小样本知识图谱补全模型
针对上节所述问题,提出一种基于关系学习网络的小样本知识图谱补全模型FRLN,该模型通过融合路径发现与上下文语义,最终达到有效提取小样本关系表示的目的。模型主要由邻域聚合编码器、关系表示编码器、匹配计算单元等3 个部分组成,如图1 所示。由图1 可以看出,模型输入包括由K个小样本关系的三元组构成的参考集以及待查询的三元组,参考集中的每一个三元组以及待查询的三元组依次经过邻域编码与关系表示两步操作,然后利用所有得到的关系表示进行匹配计算,最后输出查询三元组与参考集之间的匹配得分。需要注意的是,输入的参考集与查询三元组具有相同的小样本关系r。
图1 小样本知识图谱补全模型结构Fig.1 Structure of few-shot knowledge graph completion model
2.1 邻域聚合编码器
文献[23]研究表明:显式地编码图谱局部结构(即一跳邻域)有利于关系预测。因此,考虑不同关系的邻域对实体的动态影响,将基于注意力机制的邻域聚合编码器用于识别与当前实体更为相关的邻域,如图2 所示。
图2 邻域聚合编码器结构Fig.2 Structure of neighbor aggregation encoder
在给定关系r的小样本参考/查询集中,取一个三元组(h,r,t),以头实体h为例,设h的一跳邻域为Nh={(ri,ti)|(h,ri,ti)∊G′},其中,G′是背景知识图谱,ri和ti分别表示h的第i个邻域关系及对应的尾实体。为了量化h的特征输出,首先使用一个双线性点积函数Φ来计算参考关系r和邻域关系ri之间的相关性,可表示如下:
其中:r和ri∊Rd×1为嵌入表示向量,可使用随机初始化向量或预训练向量;W∊Rd×d和b∊Rd×1均为模型的可训练参数;LeakyReLU(∙)为非线性转换的激活函数。
然后使用Softmax 机制对相关性得分进行规范化,并基于规范化的权重系数对ti进行加权求和,计算出基于注意力机制的头实体h的邻域感知嵌入向量hc,可表示如下:
其中:αi为权重系数;ti∊Rd×1为邻域尾实体的嵌入向量。
为了增强实体嵌入,同时考虑h及其邻域感知嵌入向量hc的存在,得到最终的邻域编码输出hn,可表示如下:
其中:σ为激活函数,如Tanh、ReLU 等;W1和W2∊Rd×d同样是模型的可训练参数。
至此,得到了h经过邻域聚合编码器处理后的输出嵌入向量,该输出不仅保留了h自身原有的特性,同时融合了h在不同邻域关系中所表现出的属性。
2.2 关系表示编码器
在得到了增强的实体嵌入向量后,需要进一步对实体对进行关系表示编码。文献[26]针对每个实体对分别使用Transformer 编码器生成关系表示的嵌入向量,但忽略了各个实体对在上下文语义中受到的影响。受R-TLM[28]结构的启发,本文基于调整后简化的R-TLM,对Transformer 编码器做出改进。
为了利用LSTM 长程表示的互补性,同时进一步学习路径发现与上下文语义之间的潜在规律,在每个Transformer 编码器的输出后添加一个LSTM 单元,并将每个LSTM 单元输出的隐藏状态进行残差连接,即将LSTM 的输入与输出相加,以此作为每个编码器最终的输出。同时,将每个实体对内以及实体对间的LSTM 单元串联起来,形成一个LSTM 神经网络,以此学习实体对间的上下文语义表征。整个关系表示编码器的结构如图3 所示。
图3 关系表示编码器结构Fig.3 Structure of relation representation encoder
基于上述关系表示编码器,对每个实体对进行关系表示编码。令X=(xh,xr,xt)为三元组(hk,r,tk)在关系表示编码器中的初始输入,其中,xh是头实体的邻域编码,xr是参考关系的嵌入向量,xt是尾实体的邻域编码。为了方便表示,取每一个三元组的xh、xr、xt∊xi,首先,将xi加上自己的位置嵌入向量作为关系表示编码器的实际输入,可表示如下:
其中:xi,pos为位置嵌入向量,可采用常见的正弦位置嵌入。由三元组元素个数可知,每个实体对的位置嵌入长度为3。然后,基于构造出的所有待输入后续结构的向量表示,将其输入关系表示编码器对实体对进行编码,计算过程如下:
其中:Transformer(∙)表示Transformer 编码操作,主要包括多头注意力(Multi-Head Attention,MHA)、前馈网络(Feed-Forward Network,FFN)以及残差连接与标准化等步骤,允许每个元素都注意到序列中不同权重的其他元素,这里Transformer 编码器的详细结构 参考文献[29];LSTM(∙)输入中 的xi,1即为当 前Transformer 编码器输出的隐藏状态,hi-1为前向LSTM 单元输出的隐藏状态,经过当前LSTM 单元处理后得到的隐藏状态xi,2最终与xi,1进行加和连接,即得到关系表示编码器的最终输出xi,3。最后,对于每个输入到关系表示编码器中的实体对,都将会得到由3 个输出向量构成的序列X3=(xh,3,xr,3,xt,3)。
在小样本知识图谱补全任务中,为实现关系表示这一核心的目标,往往更关注于关系r的编码表示,因此将序列X3的中间元素xt,3作为当前实体对关系表示编码的核心输出向量,该向量能对每个实体对的语义角色进行编码,从而表示出小样本参考集中不同实体对自身的细粒度语义。
2.3 匹配计算单元
在小样本知识图谱补全任务中,为最终实现对(h,r,?)的尾实体的预测,还须进行匹配计算操作,如图4 所示。
图4 匹配计算单元Fig.4 Matching calculation unit
首先,根据不同环节的需要构造出待查询的三元组(hQ,r,tQ)后,同样将该三元组经过邻域聚合编码以及关系表示编码等操作,得到该查询实体对的关系表示rq。此外,取rk为每个参考实体对的关系表示,即每个关系表示编码器输出序列的中间元素。考虑参考关系r的不同语义,定义函数Ψ用于计算rq与rk之间的语义相似性,可表示如下:
然后,为了动态学习参考关系r的表示,同样引入Softmax 机制计算注意力权重,以最终获取当前小样本参考集在该查询实体对语义下的动态参考关系表示rm,可表示如下:
其中:βk为规范化的各个参考关系表示的注意力权重;rk为第k个参考实体对的关系表示。由于rq与rk是关系表示编码器的输出,能够区分不同实体对的细粒度语义,因此rm也能够动态地对参考关系进行表征。
最后,利用查询关系表示rq与动态参考关系表示rm,在参考关系r下与计算查询实体对(hQ,tQ)与小样本参考集之间的语义相似性得分s1,可表示如下:
其中:⊗表示相似性运算符,可采用点积、余弦相似度或欧氏距离等。s1值越大,说明在参考关系r下查询实体对(hQ,tQ)与小样本参考集之间相似性越大,查询三元组成立的可能性越大,反之越小。此外,考虑平移模型TransE 对h+r≈t的期望,追加平移得分s2,若(hq,rq,tq)为查询实体对(hQ,tQ)经过关系表示编码器后的输出序列,则s2可表示如下:
其中:‖x‖2表示向量x的L2范数,s2实际上就是hq+rq与tq之间的距离。由于s2越小,查询三元组成立的可能性越大,因此综合考虑s1和s2,针对待查询实体对(hQ,tQ)的最终匹配得分s可表示如下:
其中:δ为调整因子。
对于所有待查询的三元组,计算出最终匹配得分s并进行排序,以此开展后续计算相关评价指标的工作。
2.4 模型训练
模型训练在元训练集Tmtr上进行。Tmtr中每个任务Tr的执行方式为:对于待查询的小样本关系r,从G 中随机抽取k个正例实体对作为参考集Rr={(hk,tk)|(hk,r,tk)∊G},剩余的正例实体对作为正例查询集Qr={(hQ,tQ)|(hQ,r,tQ)∊G ∩(hQ,tQ)∉Rr}。此外,还须构造负例实体对作为负例查询集,通过错误的随机替换tQ生成。至此,总损失函数可表示如下:
其中:[x]+=max(0,x)是标准Hinge 损失;γ是Margin超参数;分别是正例实体对(hQ,tQ)和负例实体对与Rr中对应小样本参考集之间的匹配得分。
采用文献[24]中提出的基于批量抽样的元训练过程,将Tmtr中的每个关系作为一个元训练任务,为了在最小化L 的同时优化模型参数集Θ,使用Adam[30]优化器对模型进行优化,并对Θ施加L2 正则化以避免过拟合,目标函数可表示如下:
2.5 算法描述
FRLN 模型训练过程的算法描述如下:
算法1FRLN 训练过程
3 实验与结果分析
3.1 数据集
在实验过程中使用文献[23]构建的两个数据集NELL-One 和Wiki-One,分别在原始数据集中选择三元组数目大于50 但小于500 的关系作为小样本关系,其余与这些三元组相关的关系构成背景知识图谱,两个数据集的统计数据如表1 所示。NELL-One和Wiki-One 上的训练、验证、测试的任务关系数分别是51、5、11 以及133、16、34。
表1 数据集统计情况 Table 1 Statistics of datasets 单位:个
3.2 参数设置
FRLN 模型使用PyTorch 框架实现,并在具有CUDA 加速功能的实验设备上进行实验以提升实验效率。实验中选择的小样本数K=5,预训练嵌入模型选择经典的TransE 模型,在NELL-One 上进行实验的相关参数为:嵌入维度d=100,批处理大小b=128,学习率l=5×10-5,Margin 超参数γ=5.0,正则项系数λ=0,热身步数设置为1 000,训练次数设置为3 000;在Wiki-One 上进行实验的相关参数为:嵌入维 度d=50,批处理大小b=128,学习率l=6×10-5,Margin 超参数γ=5.0,正则项系数λ=1×10-4,热身步数设置为1 000,训练次数设置为6 000。
3.3 小样本链接预测
3.3.1 实验设计
在知识图谱中,链接预测可表示为预测一个三元组缺失的实体或关系。小样本的链接预测特指仅参考K个小样本关系的三元组来预测另一个三元组缺失实体或关系。此外,小样本链接预测还有一个重要特性,那就是进行训练和测试的任务集是不相交的,即训练集中不包括测试集含有的关系,这增加了小样本链接预测的难度。如上文所述,针对正例查询集Qr以及负例查询集,计算出其中每个待查询三元组的得分之后进行排序,从而进一步开展性能评估工作。
3.3.2 评价指标
实验采用平均倒数排名(MRR)以及排名前n的比例(Hits@n)作为评价指标。MRR 指的是正确答案排名倒数的平均值,MRR 值越大,说明模型性能越好;Hits@n指的是正确答案排在前n位的概率,同样是值越大,模型性能越好,实验中n取1、5 和10。
3.3.3 结果分析
根据上文参数设置,分别在NELL-One 以及Wiki-One 数据集上进行小样本链接预测实验,并计算评价指标。同时,与现有 的FSRL[24]、MetaR[25]、FAAN[26]、GANA[27]小样本知识图谱补全模型进行对比,对比数据均来自原文献,最终的实验结果分别如表2、表3 所示,其中最优指标值用加粗字体标示。
表2 NELL-One 数据集上的实验结果 Table 2 Experimental results on the NELL-One dataset %
表3 Wiki-One 数据集上的实验结果 Table 3 Experimental results on the Wiki-One dataset %
由表2、表3 中的数据可以看出,FRLN 在各个评价指标上均取得了最优的实验结果。
在同一数据集上对比FRLN 的每项评价指标以及4 种基线模型中该项评价指标的最优值,可以看出:在NELL-One 数据集 上,FRLN 的MRR 提升了15.4 个百分点,Hits@10 提升了9.7 个百分点,Hits@5提升了8.2 个百分点,Hits@1 提升了5.5 个百分点;在Wiki-One 数据集 上,FRLN 的MRR 提升了13.7个百分 点,Hits@10 提升了8.4 个百分 点,Hits@5 提升了7.1 个百分点,Hits@1 提升了8.1 个百分点。综上,FRLN 在两个数据集上较基线模型中所有评价指标的最优值平均提升了9.5 个百分点。
在同一数据集上对比FRLN 以及每个基线模型的4 个评价指标的平均值,可以看出:在NELL-One数据集 上,FRLN 较FSRL 提升了11.6 个百分 点,较MetaR 提升了17.9 个百分点,较FAAN 提升了16.5 个百分 点,较GANA 提升了9.7 个百分 点;在Wiki-One 数据集 上,FRLN 较FSRL 提升了19.1个百分点,较MetaR 提升了12.4 个百分点,较FAAN 提升了10.3 个百分点,较GANA 提升了9.8 个百分点。
根据上述结果分析可知:FRLN 较FSRL 性能更优,表明FRLN 的关系表示编码器充分考虑上下文语义,比FSRL 中单独的LSTM 神经网络更能有效提取小样本的关系表示;FRLN 较MetaR 性能更优,表明FRLN 的度量学习方式在网络结构设计合理的前提下,比MetaR 使用的MAML 框架更能胜任小样本关系学习任务;FRLN 较FAAN 性能更优,表明FRLN 的关系表示编码器兼顾路径发现与上下文语义,弥补了FAAN 中独立的Transformer 编码器在长程依赖方面的不足,更能有效提取小样本的关系表示;FRLN 较GANA 性能更优,表明FRLN 针对邻域聚合过程的设计较GANA 更为合理,因为FRLN 更关注邻域关系自身,而不是邻域关系与实体的拼接。
上述实验结果和分析充分表明,FRLN 有效融合了路径发现与上下文语义,学习到小样本参考关系的核心关系表示,在小样本链接预测实验中性能出众。
3.3.4 消融实验
FRLN 由多个模块组合而成,分别是邻域聚合编码器、关系表示编码器以及匹配计算单元。为了验证各个模块的有效性,针对每个模块做出修改以进行消融研究。
1)为了研究邻域聚合编码器的有效性,对其做出修改:A1_a 移除了注意力机制,使用邻域嵌入的平均值代替邻域感知嵌入hc;A1_b 移除了实体自身嵌入,仅使用邻域进行编码输出。
2)为了研究关系表示编码器的有效性,对其做出修改:A2_a 移除了Transformer 编码器;A2_b移除了LSTM 神经网络。
3)为了研究匹配计算单元的有效性,对其做出修改:A3 移除了注意力机制,使用参考集中所有样本的关系表示的平均值代替动态参考关系表示rm。
消融实验在NELL-One 数据集上进行,实验结果如表4 所示,其中最优指标值用加粗字体标示。
表4 NELL-One 数据集上的消融实验结果 Table 4 Ablation experimental results on the NELL-One dataset %
由表4 可以看出,完整的FRLN 模型的性能均优于各个模型的变体。通过对比FRLN 及各个模型变体的4 个评价指标的平均值,可以看出:A1_a 较FRLN低了6.6 个百分 点,A1_b 较FRLN低了2.3 个百分点,这表明注意力机制在邻域聚合过程中十分有 效;A2_a 较FRLN低了15.0 个百分 点,A2_b 较FRLN 低了19.4 个百分点,这表明关系表示编码器中Transformer 编码器与LSTM 神经网络的组合结构优于两者单独使用;A3 较FRLN 低了13.3 个百分点,这表明注意力机制在动态表征参考关系的过程中也相当重要。上述结果同样表明,FRLN 在小样本链接预测实验中表现良好。
3.3.5 损失函数
对模型训练过程中损失函数的变化情况进行对比分析,每个模型每训练50 次采集1 次损失函数的数值。为了方便进行对比,取调整因子δ=0,得到FRLN 与FSRL、FAAN 损失函数变化曲线的对比情况如图5、图6 所示。
图5 NELL-One 数据集上的损失值变化Fig.5 Variations of loss on the NELL-One dataset
图6 Wiki-One 数据集上的损失值变化Fig.6 Variations of loss on the Wiki-One dataset
由图5、图6 可以看出,FRLN 在NELL-One 以及Wiki-One 数据集上均在训练约500 次时就已接近收敛,且收敛速度远快于其他2 种模型,说明FRLN 能够更快地缩小预测输出与期望输出之间的差值,从模型训练速度这一方面反映了FRLN 的优异性能。
4 结束语
针对小样本知识图谱补全任务中小样本关系表示无法有效提取的问题,本文提出一种基于关系学习网络的小样本知识图谱补全模型。该模型利用Transformer 编码器优秀的语义编码能力以及LSTM神经网络在长程依赖方面的优势,融合路径发现与上下文语义,充分学习实体对之间的关系表示,从而有效提取小样本关系的细粒度语义。此外,结合语义相似性以及平移模型的思想,在得分函数中充分利用关系表示编码器的输出元素,对得分函数以及损失函数进行优化。在NELL-One 以及Wiki-One 数据集上的实验结果表明,所提模型相比于基准模型取得了较好的性能提升。
为了进一步提高模型泛化能力,后续将从以下3 个方面进行深入研究:针对知识图谱中广泛存在的长尾关系现象,在进行邻域编码时扩大邻域选择范围,结合多跳邻域进行关系建模;针对1-N、N-1、N-N的复杂关系进行建模与优化,并在训练过程中同时对模型参数以及嵌入表示的向量进行更新,提高模型准确性;对于候选的实体对进行初步的筛选处理,进一步提高链接预测的成功率。