APP下载

一种融合实体图上下文的三维旋转知识图谱表示学习

2023-01-31陆佳炜王小定朱昊天程振波

小型微型计算机系统 2023年1期
关键词:三元组图谱实体

陆佳炜,王小定,朱昊天,程振波,肖 刚

(浙江工业大学 计算机科学与技术学院,杭州 310023)

1 引 言

知识图谱作为人工智能应用的关键技术,以知识为驱动,以事实为导向,在信息检索,智能问答,个性化推荐等领域展现了巨大的应用价值.知识图谱以有向图的方式表示知识和描述世间万物之间的联系,图中的节点代表实体,节点之间的连边代表实体间的关系.在知识图谱中,事实通常以三元组的形式(h,r,t)表示.近些年来,互联网上涌现了诸如Freebase,DBpedia,YAGO,Wordnet这类由数10亿个三元组构成的大规模知识图谱,并已经成功应用于各种领域.然而,在实际应用中,这种大规模的知识图谱还存在以下两个主要的缺陷:1)基于网络符号的知识表示方式往往存在计算低效性和数据稀疏问题,已经难以满足当下人们对知识图谱表示的需求[1,2].2)与客观世界相比,这些构建的知识图谱往往是不够完整的,缺失了大量的事实,致使以知识为核心的应用不能发挥其潜在的性能[3].为此,研究人员提出了知识图谱表示学习模型,将知识图谱投影到低维、连续的向量空间中,学习实体和关系语义信息的向量表示,以提高知识图谱的计算效率,缓解数据的稀疏问题.因此,从简单高效的TransE[4]模型开始,研究人员提出了大量的知识图谱表示学习模型,例如TransH[5],TransR[6],DisMult[7],ComplEx[8],RotatE[9]等.

最近的研究表明[9-11],知识图谱中的节点(实体)和边(关系)往往会形成各种关系模式,这些关系模式主要有3种:关系的对称/反对称模式,关系间的逆和组合关系模式.例如,某些关系是对称关系(IsSimilarTo),一些关系是反对称关系(FatherOf),另外一些关系是其它关系的逆关系(PeopleBornHere&PlaceOfBirth),还有一些关系可以由其它的关系组合而成(grandma is father′s mother).现有的表示学习模型能够在连接预测任务上取得成功,这很大程度上取决于它们对知识图谱中各种关系模式的学习和推理能力.例如,TransE将关系解释为向量空间中的平移操作,支持逆关系模式和组合关系模式;DisMult通过模拟关系,头实体和尾实体之间的三方交互,能够建模对称关系模式.但大多数现有的模型仅能对其中一部分关系模式进行学习和推理.为了解决这个问题,Sun等人[9]提出了RotatE,该模型将实体表示到复数空间,将关系表示成从头实体到尾实体的二维旋转变换,以学习和推理3种关系模式,帮助模型在多个公开数据集上取得了非常好的效果.但RotatE在编码组合关系时并不区分关系的顺序,而关系顺序的改变会对关系组合之后的语义产生很大影响.

另一方面,许多表示学习模型在学习实体和关系的嵌入表示过程中,仅仅关注对单个三元组结构信息的编码.它们简单地将知识图谱看作是毫不相关的三元组构成的有限集合.由于图上下文信息的缺失,使得如RotatE等模型在处理1-N,N-1或N-N这些复杂关系时效果不佳.以RotatE处理1-N关系为例,经过旋转变换之后的头实体需要和多个尾实体相接近,这不可避免的导致多个尾实体之间难以有效区分.事实上,知识图谱是一个有向图,实体通过不同关系与相邻的实体进行交互,这些相邻的节点和边信息在一定程度上反映了目标实体的特征.

基于上述两个问题,本文提出了一种融合实体图上下文的三维旋转知识图谱表示学习模型GCRot3DE,主要贡献如下:1)结合三维旋转特性,利用四元数建模关系和实体,将关系解释为实体间的三维旋转变换,将实体表示成三维空间中的向量,以较好的建模各种关系模式.进一步,在编码组合关系时,GCRot3DE还能保持关系的顺序;2)利用注意力机制分别从相邻的传入和传出节点(边)中学习实体的头实体-关系和关系-尾实体对上下文表示.这两种实体上下文表示将作为距离打分函数的一部分,用于在模型训练和知识推理过程中衡量三元组合理性;3)我们在GitHub1上提供了GCRot3DE模型的实现代码,并在两个公开基准数据集FB15k-237与WN18RR上评估了本文所提方法.链接预测的实验结果表明,GCRot3DE在各项指标上均优于RotatE模型.

2 相关工作

现有的表示学习模型多数是显示或隐式地对知识图谱中的关系模式进行建模[9].不同的模型因为内在原理的不同,所能支持的关系模式也各不相同.TransE[4]能满足逆关系模式和组合关系模式的表达,但不支持对称关系模式.DisMult[7]是一种双线性模型,本身具有对称性,但是不支持反对称关系模式.ComplEx[8]在DisMult的基础上,将模型扩展到了复数空间,使得ComplEx可以建模反对称关系模式,但是该模型仍然无法对组合关系模式进行建模.Sun等人[9]提出RotatE,给定三元组(h,r,t),RotatE希望h°r≈t,其距离打分函数定义为fr(h,t)=‖h°r-t‖.RotatE除了能够更好的建模关系的对称/反对称关系模式外,还同时能建模关系间的逆和组合关系模式.然而,RotatE在编码组合关系时并不能保持关系的顺序,例如组合关系r1∧r2和r2∧r1会在向量空间中有着相同的表示.事实上,关系顺序的改变会很大程度上影响关系组合之后的语义.例如,组合关系Husband∧Mother等同于关系MotherInLaw.如果组合关系中的关系顺序发生改变,其语义也会随之发生改变.例如,组合关系Mother∧Husband等同于关系Father.因此,在编码组合关系时保持关系顺序,对于提高表示学习模型的知识推理能力也具有重要意义.

四元数(Quaternion)是对复数的拓展,被广泛应用于电影特效,航空航天、机器人运动等领域.近来,四元数受到了机器学习领域研究人员广泛关注.Parcollet等人[12]提出了四元数递归神经网络(QRNN和QLSTM)并运用于语音识别任务,获得了比传统的递归神经网络(RNN和LSTM)更好的性能.Zhang等人[11]提出了QuatE,将知识图谱中的实体和关系映射到四元数空间,通过四元数乘法来增加实体和关系间的交互,能够更好地捕获实体间潜在链接关系.

此外,许多的表示学习模型侧重于对单个三元组进行编码,忽视了知识图谱的有向图结构和实体在图中的邻域信息.为了解决此问题,PTransE[13]引入了从知识图谱中挖掘的多跳关系路径,并将这些关系路径信息引入了TransE模型.CombiNe[14]则在ComplEx的基础上结合了从实体的邻居列表中选取的关键邻居信息.Jun等人[15]提出了一种集成知识图谱上下文信息的通用表示学习模型GAKE,定义了邻居,边和路径上下文,它们分别从不同角度描述图的结构信息.但是GAKE的打分函数却忽视了三元组所描述的结构信息.GC-OTE[10]则通过正交分解将RotatE从复数域拓展到了高维向量空间,并提出了一种建模有向图上下文方法,提高了RotatE处理复杂关系的能力.近年来,一些研究人员将图神经网络引入知识图谱表示学习中,在此基础上提出了R-GCN[16],CompGCN[17]等模型.这类方法[16-18]首先利用图神经网络编码图结构数据,然后将带有上下文信息的实体和关系的嵌入表示传递给后续的表示学习模型进行链接预测.

与上述方法不同,本文将实体和关系表示为四元数向量形式,将实体映射为三维向量空间中的一组向量,将关系解释成是实体间的三维旋转变换.虽然除四元数以外,常见的三维旋转表达方式还包括欧拉角和旋转矩阵.但与欧拉角相比,四元数的构成更简单,能够避免了万向节死锁现象.同时,四元数的旋转表达比旋转矩阵更高效,且在数值上也更稳定.在此基础上,本文进一步利用注意力机制自适应感知实体在图中重要的邻域信息,捕获实体的图上下文表示.并根据与实体直接相关联的头实体-关系对和关系-尾实体对,学习相关上下文表示.所学习实体的图上下文表示将被引入到三元组的打分函数中,以融合实体的图上下文信息.

1https://github.com/viivan/GCRot3DE

3 GCRot3DE模型

3.1 预备知识

3.1.1 关系模式介绍

对称/反对称、逆和组合关系模式是知识图谱中3类主要的关系模式[9],下面给出了相关形式化定义:

定义1.关系r是对称关系(反对称关系),当且仅当:

∀e1,e2∈ε,(e1,r,e2)∈T⟹(e2,r,e1)∈T

(1)

(∀e1,e2∈ε,(e1,r,e2)∈T⟹(e2,r,e1)∈F)

(2)

满足上述形式就是一个对称(反对称)关系模式.

定义2.关系r1与关系r2是一组互逆关系,当且仅当:

∀e1,e2∈ε,(e1,r1,e2)∈T⟹(e2,r2,e1)∈T

(3)

满足上述形式就是一个逆关系模式.

定义3. 关系r1是关系r2与关系r3的组合,当且仅当:

(∀e1,e2,e3∈ε,(e1,r2,e2)∈T∧(e2,r3,e3)∈T
⟹(e1,r1,e3)∈T)

(4)

满足上述形式就是一个组合关系模式.

其中e1,e2,e3分别表示知识图谱实体集ε中的不同实体,r,r1,r2分别表示关系集R中不同的关系,∧是合取联结词,T是正确三元组(正例)的集合,F是错误三元组(负例)的集合.

3.1.2 基于四元数乘法的三维旋转表示

四元数由一个实部和3个虚部组成,其表现形式为:q=xi+yj+zk+w∈,其中w,x,y,z∈是实数,表示四元数代数,i,j,k表示虚数单位且满足哈密尔顿规则:i2=j2=k2=ijk=-1,i0=j0=k0=1.根据这些规则可以派生出更多有用的关系,例如ij=k,ji=-k,jk=i,kj=-i,ki=j,ik=-j.常用的四元数代数运算如下:

共轭:q*=-xi-yj-zk+w

给定任意两个四元数q1=x1i+y1j+z1k+w1和q2=x2i+y2j+z2k+w2.

四元数的加法:q1+q2=(x1+x2)i+(y1+y2)j+(z1+z2)k+(w1+w2).

四元数的乘积(哈密尔顿乘):q1q2=(w1x2+x1w2+y1z2-z1y2)i+(w1y2-x1z2+y1w2+z1x2)j+(w1z2+x1y2-y1x2+z1w2)k+(w1w2-x1x2-y1y2-z1z2).

值得注意的是四元数乘法不满足交换律,但是满足结合律:q1q2q3=(q1q2)q3=q1(q2q3).

(5)

其中,v和vrot分别是向量v和向量vrot的四元数表示.R是单位四元数,由单位四元数的性质可得R-1=R*,[ux,uy,uz]分别表示旋转轴u在x,y,z3个方向上的向量.

三维旋转有如下3个特点[19]:1)一个非平凡的旋转可以表示成向量绕着旋转轴u旋转角度α的过程;2)每个旋转唯一对应一个反向旋转;3)两个旋转可以组合成另一个旋转.这些特点都表明,在建模各种关系模式上,基于四元数的三维旋转更具有优势.

梅耘硕(1998.12-)男,汉族,江苏省徐州人,工程管理专业,本科生,Email:1003894498@qq.com

3.2 基于四元数乘法的关系三维旋转建模

GCRot3DE模型的基本思想是将实体表示成三维空间中一组向量,将关系解释为是头、尾实体间的三维旋转变换.传统的实体和关系嵌入通常表示成张量、实数向量或矩阵的形式,在本文所提的方法中,头尾实体和关系嵌入均将表示为四元数向量形式:

h=xhi+yhj+zhk

(6)

t=xti+ytj+ztk

(7)

(8)

其中,h,t,u∈k表示纯四元函数向量,°表示向量之间的哈达玛积,xh,yh,zh,xt,yt,zt,ux,uy,uz,α∈k,r∈k表示四元数向量.

对于每个三元组(h,r,t),GCRot3DE期望通过模型训练之后下述等式能在向量空间中成立:

ti≈ri·hi·ri-1,i∈{0,1,…,k-1}

(9)

其中,

hi=xh,ii+yh,ij+zh,ik+0

(10)

ti=xt,ii+yt,ij+zt,ik+0

(11)

(12)

模型效果如图1所示,hi,ti分别表示头、尾实体嵌入的第i个元素,ri表示关系嵌入的第i个元素.头实体嵌入中的元素hi,将会绕着关系元素ri确定的旋转轴ui和旋转角度αi进行三维旋转,以获得尾实体嵌入对应的元素ti.

图1 GCRot3DE模型Fig.1 GCRot3DE model

为了后续表达的方便,将公式(9)记为是头实体和关系到尾实体的映射,并重写成为以下形式:

t=Rot+(h,r)

(13)

然后,为上述过程定义了如下的距离打分函数:

(14)

考虑到旋转过程的本身具有可逆性,头实体也可通过尾实体的反向旋转获得,即:

(15)

同样,将公式(15)记为是关系和尾实体到头实体的映射,并重写成为以下形式:

h=Rot-(r,t)

(16)

然后,为上述过程定义了如下的距离打分函数:

(17)

3.3 建模能力讨论分析

GCRot3DE因为继承了三维旋转特征,其学习和推理各种关系模式的能力得到了增强,可以证明GCRot3DE能够推理知识图谱中的对称/反对称,逆和组合关系模式.接下来,本文分别讨论与分析了GCRot3DE对这些关系模式的编码能力.

1)对称/反对称关系模式:为了以数学理论的方式证明模型的能力,假设(e1,r,e2)∈T和(e2,r,e1)∈T同时成立,即关系r是对称关系,则对称关系r将会强制在向量空间中添加以下约束:

(18)

上述方程成立,等价于:

ri=±1,i∈{0,1,…,k-1}

(19)

即ri=±1时,关系r是对称关系,这说明模型理论上至少能够将2k个对称关系编码到向量空间中.

若(e1,r,e2)∈T和(e2,r,e1)∈F同时成立,则同样推理可得:

ri≠±1,i∈{0,1,…,k-1}

(20)

换言之,如果ri≠±1,则说明关系r是反对称关系,模型具备编码对称/反对称关系的能力.

2)逆关系模式:当α∈[0,2π)时,每个三维旋转对应有唯一反向旋转.则可以认定模型具备编码逆关系模式的能力.若(e1,r1,e2)∈T和(e2,r2,e1)∈T同时成立,即关系r1和r2是一组互逆关系,则模型强制要求:

(21)

上述公式成立,等价于:

(22)

3)组合关系模式:三维旋转的特点是两个旋转的组合等价于一个新的旋转,所以认为GCRot3DE具有编码组合关系的能力.若(e1,r2,e2)∈T,(e2,r3,e3)∈T和(e1,r2,e3)∈T同时成立,即关系r1是关系r2和r3的组合,则模型强制要求:

(23)

上述方程成立,等同于:

r1,i=r3,i·r2,i,i∈{0,1,…,k-1}

(24)

这意味着如果r1,i=r3,i·r2,i,关系r2和r3组合为关系r1.此外,与基于复数乘法的RotatE相比,因为GCRot3DE将关系表示成四元数向量的形式,即r1,i,r2,i,r3,i∈.同时由于四元数乘法运算不满足交换律,在多数情况下r3,i·r2,i≠r2,i·r3,i.这意味着r2和r3交换顺序后再进行组合,会在向量空间中有着不同的表示,因此GCRot3DE在编码组合关系时能够较好的保留关系的顺序.

3.4 融合实体图上下文信息

我们将实体的邻居关系和通过这些关系所连接的实体构成的邻域结构称为实体图上下文.这部分实体和关系与目标实体的交互最为密切,联系最为紧密,能够反映目标实体存在的某些特征属性.因为知识图谱本质上是一个有向图,对于知识图谱中的每个实体,其实体的图上下文可以分为两类:进入当前节点的邻居节点和边,从当前节点离开的邻居节点和边[10].反映到知识图谱的三元组结构上,本文分别称为当前实体的头实体-关系对上下文(Head-Rel-Pair-Context,HRPC)和关系-尾实体对上下文(Rel-Tail-Pair-Context,RTPC).给定一个知识图谱G=(ε,R,T),则实体e的两种类型的实体图上下文环境定义为:

1)头实体-关系对上下文:

HRPC(e)={(h′,r′)|∀h′,r′,(h′,r′,e)∈T}

(25)

其中,实体e是实体h′通过关系r′所直接关联到的实体.反映到知识图谱三元组结构上,训练三元组中尾实体为e的所有头实体-关系对(h′,r′)将被视为实体e的头实体-关系对上下文.

2)关系-尾实体对上下文:

RTPC(e)={(r′,t′)|∀r′,t′,(e,r′,t′)∈T}

(26)

其中,实体t′是实体e通过关系r′所直接关联到的实体.反映到知识图谱三元组结构上,训练三元组中头实体为e的所有关系-尾实体对(r′,t′)将被视为实体e的关系-尾实体对上下文.

在实际模型的训练和链接预测过程中,如果三元组中的头实体为e,则将(r′,t′)当成e的图上下文.如果三元组中的尾实体是e,则将(h′,r′)当成e的图上下文.由于图上下文环境中的每个实体-关系对中蕴含的信息都能一定程度上反应目标实体的某些特征属性,同时这些信息对目标实体的重要程度也不相同.因此,我们利用注意力机制自适应地感知实体在图中重要的邻域信息,捕获实体的图上下文表示.

图2说明了测试三元组(h,r,t)的实体图上下文表示计算流程.图2(a)中测试三元组的头实体h、尾实体t表现为黑色填充的两个节点,虚线箭头表示测试关系r.标记有☆的实体是以h为头实体的三元组中的尾实体,这些实体与连接h的关系组合后构成了RTPC(h);标记有△的实体是以t为尾实体的三元组中的头实体,这些实体与连接t的关系组合后构成了HRPC(t).

图2 捕获实体图上下文表示Fig 2 Capture entity graph context representation

为计算实体的头实体-关系对上下文表示(HRCR)和关系-尾实体对上下文表示(RTCR),实体与关系的嵌入向量将输入到两个并列图注意力网络层.在进行实体图上下文表示计算之前,先需要通过公式(13)中预先定义的映射函数Rot+计算(h′,r′)的向量表示HRRh′r′,以及通过公式(16)中预先定义的映射函数Rot-计算(r′,t′)的向量表示RTRr′t′.

HRRh′r′=Rot+(h′,r′)

(27)

RTRr′t′=Rot-(r′,t′)

(28)

进一步,利用文献[20]提出来的缩放点积注意力来学习中心实体对邻居实体-关系对的注意力系数,对实体的邻域信息进行聚合,进而得到实体图上下文表示,其运作方式如图2(b)所示.我们以计算测试三元组中头实体h的关系-尾实体对上下文表示RTCRh为例,对计算实体的图上下文表示过程进行说明.在此过程中,将头实体的嵌入向量h作为查询向量,将RTRr′t′同时作为键向量和值向量,并使用线性变换矩阵WQ,WK,WV分别对这些向量进行参数化:

Qh=WQh

(29)

Kr′t′=WKRTRr′t′

(30)

Vr′t′=WVRTRr′t′

(31)

其中,Qh是查询向量的参数化表示,Kr′t′是键向量的参数化表示,Vr′t′是值向量的参数化表示.WQ,WK∈dn×dm,WV∈dm×dm,dn是矩阵WQ,WK列向量的维度,dm是实体嵌入向量和实体-关系对向量表示的维度.

头实体h对其上下文环境中的每个关系-尾实体对(r′,t′)的注意力系数为bh(r′t′),将通过公式(32)的缩放点积运算得到.

(32)

其中,[·]T表示向量的转置.注意力系数bh(r′t′)可以反映关系-尾实体对(r′,t′)对于中心头实体h的重要性.为了使不同关系-尾实体对之间的注意力系数易于比较,我们遍历所有的(r′,t′)∈RTPC(h),并用softmax函数将注意力系数归一化,如公式(33)所示.

(33)

最后,归一化之后的注意力系数将用于计算目标头实体h的关系-尾实体对上下文表示.

(34)

计算测试三元组中尾实体t的头实体-关系对上下文表示HRCRt的过程与计算RTCRh的过程类似.最后,融合实体图上下文表示的三元组打分函数表现形式如下:

1)定义RTCRh到三元组(h,r,t)之间的距离打分函数:

(35)

2)定义HRCRt到三元组(h,r,t)之间的距离打分函数:

(36)

3.5 模型训练

使用加法将上述的距离打分函数公式(14)、(17)、(35)和(36)进行组合,获得了最终用于知识推理和模型训练的距离打分函数,如公式(37)所示.

(37)

为了优化GCRot3DE模型,我们采用文献[9]的自对抗负采样损失函数作为模型训练的优化目标:

(38)

其中,σ是sigmoid函数,γ是固定的边距,nc是负例的数目,(h′i,r,t′i)∈F表示第i个负例三元组.优化损失函数的目的是尽可能将正例三元组与负例三元组进行分离.通过优化损失函数之后,正例三元组(h,r,t)会获得尽可能低的分数,而负例三元组(h′i,r,t′i)会获得一个尽可能高的分数.负例三元组(h′i,r,t′i)的采样权重定义为:

(39)

其中,a≥0表示采样的温度.当a=0时,上述采样退化为均匀采样.当时a>0,得分越低的负例三元组其对应的采样权重就越大.

4 实验与结果分析

4.1 实验数据集

为了对模型进行训练和评估,本文的实验基于两个广泛使用知识图谱基准数据集(WN18RR[21]和FB15k-237[22]).前者是WN18的子集,WN18抽取自大型英文词汇知识图谱WordNet.后者是FB15k的子集,FB15k抽取自协作知识图谱FreeBase,内容涉及各个领域的通用常识.由于Dettmers[17]和Toutanova[22]等人指出FB15k和WN18中存在测试集泄露的问题,这主要是因为它们中广泛分布着互逆关系.例如,测试集含三元组(A,has_part,B),而训练集则包含该三元组的反转(B,part_of,A),has_part和part_of形成互逆关系.为了解决上述问题,上述两位研究者分别构建了WN18RR和FB15k-237数据集.在目前的知识图谱表示学习领域,WN18RR和FB15k-237逐渐成为最流行的基准数据集.WN18RR和FB15k-237的统计数据如表1所示.

表1 实验数据集统计信息Table 1 Statistics of experimental datasets

4.2 评价方法说明与实验设置

与先前的工作[5-10]类似,通过链接预测任务对模型的性能进行评估.链接预测是指在给定(h,r,?)或(?,r,t)的情况下,预测缺失的尾实体t或头实体h.在评估阶段,对于测试数据集中的每个(h,r,t)中的h或者t,将会被替换成知识图谱实体集中的所有候选实体,从而构建一批新的三元组,即候选三元组.之后,将候选三元组带入公式(37)定义的打分函数,并计算出所有候选三元组的打分函数值,然后根据打分函数值对候选三元组进行降序排序,最后获取预测实体的排名,排名最先的就是能使(h,r,?)或(?,r,t)成立的实体.

本文采用了MR,MRR,Hits@n作为模型效果的评价指标.MR是测试数据集中所有测试样本的正确实体所在排名的平均值.MRR是测试数据集中所有测试样本的正确实体所在排名倒数的平均值.Hits@n是测试数据集中所有测试样本的正确实体排名≤n的比例.与大多数文献一致,本文选择n=1,3,10.总之,较低的MR值与较高的Hits@n和MRR意味着模型在链接预测任务上能有更好的性能.

但在实际测试中,替换头尾实体后生成的新三元组可能在数据集中已经存在.这些三元组本身是能够成立的三元组,但并不是我们所需的目标三元组.目标实体的最终排名会因为这些三元组的存在而产生变化,从而对实验造成不良影响.为了消除这个问题,在实验开始前,会先过滤掉这类出现在测试集,验证集和训练集中的三元组,但这种过滤行为不会包含需要测试的目标三元组本身.

模型的训练阶段主要有两个步骤:1)预训练不包含实体上下文信息的Rot3DE模型(基于本文3.2节的方法).2)在预训练模型上,微调融合实体上下文的GCRot3DE模型.本文采用Adam[20]来优化模型,并根据MRR指标,使用网格搜索选择最合适超参数.超参数设置如下:自对抗负采样温度a∈{0.5,1,1.5},实体和关系的嵌入维数k∈{128,256,512},固定间隔γ∈{6,12,15,18,21},批量大小batch_size∈{128,256,512},训练阶段的负例数目nc固定为256,dn设置为3k.

在WN18RR上的最优参数设置为:k=256,γ=21,a=0.5,预训练阶段和微调阶段的初始化学习率lr分别为e-3和e-4.在FB15k-237上的最优参数设置为:k=256,γ=15,a=0.5,预训练阶段和微调阶段的初始化学习率lr分别为e-4和3e-5.两个数据集预训练阶段和微调阶段的batch_size分别是512和128.GCRot3DE模型代码均由Python实现,实验运行在一台CPU配置为Intel Xeon Gold 6138,GPU配置为Nvidia Quadro P6000(24GB),内存为128GB,操作系统为Ubuntu18.04LTS的服务器上.

表2 不同模型在WN18RR和FB15k-237测试数据集上的链接预测结果

4.3 实验结果与分析

为了验证所提GCRot3DE模型的有效性,本文与现有的几个有代表性且广泛使用的知识图谱表示学习模型进行了对比,具体包括TransE[4],DisMult[7],ComplEx[8],RotatE[9],ConvE[21].另外,还与引入图上下文信息的R-GCN[16],CompGCN[17]和NKGE[23],进行了对比.为了评估融合实体图上下文信息的作用,基于3.2节的方法设计了关系三维旋转模型Rot3DE.考虑到评估模型通常会使用相同的评价方法和数据集,因此我们采用了部分已发表文献中的实验结果作为对比依据.表2中报告了所提模型和对比的模型在两个数据集上的链接预测结果,表中黑体和带有下划线的数字分别表示最优和次优的实验结果,“-”表示该模型论文中没有给出相关指标数据.

通过对表2的观察,可以得出以下结论:

1)GCRot3DE在各项指标上均显著优于TransE,DisMult,ComplEx等基础模型,且与通过其它方式引入图上下文信息的NKGE,R-GCN,CompGCN等模型相比,也有一定程度提高,由此证明了本文所提方法的有效性.在FB15k-237上,GCRot3DE除了在Hits@1指标上取得了次优结果外,其余的各项指标上均取得最优结果.在WN18RR上,GCRot3DE在MR,MRR,Hits@3指标上取得了最优结果,虽然没有在Hits@1和Hits@10指标上没有取得最优的结果,但是也取得次优结果.

2)对称、反对称和组合这3种关系模式在这两个数据中占据了很大的比重[9,11],对比RotatE模型,Rot3DE和GCRot3DE在各项指标都有一定程度的提升,这主要因为Rot3DE和GCRot3DE能够在组合关系模式中保持关系顺序.TransE能够建模组合关系模式,因此也在FB15k-237数据集的实验结果指标Hit@10上取得了不错的成绩.而DisMult和ComplEx因为无法学习和推理组合关系模式,从实验中可以看出在该指标上的成绩并不理想,该实验也侧面说明能够建模组合关系模式对知识图谱表示学习模型非常重要.

3)对表2最后两行的实验结果进行分析,与3.2节的中间模型Rot3DE比较,融合了实体图上下文的GCRot3DE在FB15k-237的MRR,Hits@1,Hits@3和Hits@10上的提升幅度分别是0.7%,0.3%,0.9%,0.9%,而WN18RR上对应指标的提升幅度为0.3%,0.2%,0.3%和-0.5%.可见GCRot3DE在FB15k-237上的各指标提升要远比WN18RR上大,而在WN18RR上的 Hits@10指标甚至出现略有下降的现象.这主要是因为FB15k-237中每个实体具有更加丰富的图上下文信息.正如表1中所示,FB15k-237中每个节点平均有19条入边,而WN18RR中每个节点平均只有2条入边.这也说明GCRot3DE方法更适用于具有丰富实体图上下文信息的数据.

为了分析和验证模型对各种关系类型的建模能力,本文在关系数量较少的WN18RR上,统计了测试集中的每个关系在RotatE,Rot3DE,GCRot3DE这3个模型下MRR指标,实验结果如表3所示.Rot3DE与GCRot3DE在绝大多数关系的MRR指标上表现更好,这也证明本文所提模型对各种关系模式具备良好的学习和推理能力.

为了验证GCRot3DE在融合实体图上下文信息后能更好处理各种复杂关系,本文在不同关系类别下进行实验.基于文献[4]的设置,进行关系归类.对于每个关系r,计算包含该关系的三元组中每个h连接的平均尾实体数ηh和每个t连接的平均头实体数ηt.如果r是一对一关系(1-1),则需满足条件ηh<1.5且ηt<1.5;如果r被归类为一对多关系(1-N),则需满足条件ηh<1.5且ηt≥1.5;如果r被归类为多对一关系(N-1),则需满足条件ηh≥1.5且ηt<1.5;如果r被归类为多对多关系(N-N),则需满足条件ηh≥1.5且ηt≥1.5.图3给出了FB15k-237数据集中不同的关系类别情况下,使用RotatE和GCRot3DE模型进行头尾实体预测的实验结果.

图3 FB15k-237数据集上关系类别的测试Fig.3 Relation category test on FB15k-237 data set

从图3可知,GCRot3DE模型在各种情况下MRR与Hits@10指标均取得了比RotatE更好的结果.对于1-1关系,GCRot3DE预测头、尾实体的效果更好,这表明引入实体的图上下文信息可以提高实体嵌入表示的精度.对于复杂关系,尤其是对N-1类别的关系预测头实体,为1-N类别的关系预测尾实体,以及为N-N类别的关系预测头尾实体时,GCRot3DE模型效果明显.这进一步说明了融合实体的图上下文信息能够帮助模型区分不同实体,降低了关系“N”侧实体表示的模糊程度.

5 总结与未来工作

多数现有的知识图谱表示模型存在以下两个问题:1)难以有效学习和推理知识图谱的3种主要的关系模式;2)常常忽视三元组中实体在图中的邻域上下文信息.针对以上问题,本文提出一种融合实体图上下文的三维旋转知识图谱表示学习模型GCRot3DE,模型将实体和关系嵌入表示成四元数向量的形式,将关系解释为实体间的三维旋转变换,将实体表示成三维空间中的向量,以更好建模各种关系模式.然后,利用注意力机制从相邻的传入节点(边)与传出节点(边)学习两种实体图上下文表示,增强实体的嵌入表示.最后,将这些上下文表示引入到三元组打分函数.与现有的表示学习模型进行了比较后,实验结果表明GCRot3DE取得了一定程度的性能提升.

本文提出的模型仅仅利用了三元组的结构上下文信息,未能考虑还有大量与实体相关的文本描述信息,这类文本描述信息也从另一层面描述了实体的特征.因此,在后续的研究中,我们将考虑融合实体的文本描述信息以进一步优化GCRot3DE模型.

猜你喜欢

三元组图谱实体
特征标三元组的本原诱导子
绘一张成长图谱
前海自贸区:金融服务实体
关于余挠三元组的periodic-模
一个时态RDF存储系统的设计与实现
实体的可感部分与实体——兼论亚里士多德分析实体的两种模式
补肾强身片UPLC指纹图谱
两会进行时:紧扣实体经济“钉钉子”
振兴实体经济地方如何“钉钉子”
主动对接你思维的知识图谱