有效
一种基于知识图谱嵌入模型的链路预测方法
张鹏飞、彭娟、曾平、杜振国、肖卫东、赵翔、谭真
中国人民解放军国防科技大学
摘要
本发明公开了一种基于知识图谱嵌入模型的链路预测方法,包括:获取知识图谱;对于instanceof三元组单独建模,对于概念三元组中的subclassof三元组,利用subclassof关系的传递性进行建模,对于概念三元组中除subclassof三元组的三元组和实例三元组统一归类为关系三元组并建模;使用基于边际参数的损失函数作为优化目标进行训练;采用随机梯度下降算法来最小化所述损失函数,训练结束后得到模型的超参数;将缺失头实体或尾实体的关系三元组输入模型,输出预测结果。本发明缓解实例和概念在同一空间建模带来的实例和概念的嵌入表示聚集从而影响模型效果的问题,很好的建模概念层次性和isA关系的传递性。
1.一种基于知识图谱嵌入模型的链路预测方法,应用于智能搜索领域,其特征在于,包括以下步骤:获取知识图谱KG={C、I、R、S},其中C、I、R、S分别表示概念集、实例集、关系集和三元组集;所述三元组集S包含头实体和尾实体都由概念组成的概念三元组、头实体和尾实体都由实例组成的实例三元组以及头实体和尾实体分别由实例和概念组成的instanceof三元组;对于instanceof三元组,由于头实体和尾实体不能在同一个嵌入空间表示,单独建模,对于概念三元组中的subclassof三元组,利用subclassof关系的传递性进行建模,对于概念三元组中除subclassof三元组的三元组和实例三元组统一归类为关系三元组并建模;使用基于边际参数的损失函数作为优化目标进行训练,所述损失函数限制正三元组的分数至少比其负三元组的分数少边际参数γ,以提高正负样本之间可区分性;采用随机梯度下降算法来最小化所述损失函数,模型训练时,强制约束所有的关系三元组中的实体和关系、instanceof三元组以及subclassof中的实例和概念的L2范数小于等于1,训练结束后得到模型的超参数;将缺失头实体或尾实体的关系三元组( h, r, t )输入模型,给定( h, r )输出预测结果t或者给定( r, t )输出预测结果h;实例和概念分别在实例嵌入表示空间R 和概念嵌入表示空间R 表示,实例嵌入表示空间维度d e 比概念嵌入表示空间维度d c 高,即d e > d c ;为instanceof三元组集S e 定义基于边际参数的损失函数L e : ;其中,[ x ] + = max ( 0, x ),γ e 用来表示instanceof三元组的边际超参数,对于instanceof三元组,ξ e 和ξ e '表示正三元组和负三元组,S e 和S e '用于描述正三元组集和负三元组集;为subclassof三元组集S c 定义基于边际参数的损失函数L c : ;为实例关系三元组集 定义基于边际参数的损失函数 : ;为概念关系三元组集 定义基于边际参数的损失函数 : ;最后,将总体损失函数定义为这四个损失函数的线性组合: ;其中, β 1 , β 2 , β 3 > 0,是L e 、L c 、 以及 之间保持平衡的超参数。
2.根据权利要求1所述的一种基于知识图谱嵌入模型的链路预测方法,其特征在于,将关系集R形式化为 ,其中, r i 表示instanceof关系, r s 表示subclassof关系, 是实例关系集, 是除 r s 关系外的概念关系集,将三元组集S分为三个不相交的子集:instanceof三元组集 ,其中i∈I,其嵌入表示e∈R ,c∈C,其嵌入表示o∈ R ,n e 是S e 的大小;subclassof三元组集 ,其中c i 、 c j ∈C,其嵌入表示o i , o j ∈ R ,c i 是c j 的子概念,n c 是S c 的大小;关系三元组集 ,其中h、r、t ∈ C或h、r、t ∈ I,其嵌入表示分别用h, r, t描述,h, r, t∈R 或h, r, t∈R ,n r 是S r 的大小, 为实例关系三元组集, ,其中h e ,t e ∈I,r e ∈ , 是 的大小, 为概念关系三元组集, ,其中h c ,t c ∈C,r c ∈ , 是 的大小。
3.根据权利要求1所述的一种基于知识图谱嵌入模型的链路预测方法,其特征在于,对于instanceof三元组( i, r i , c )建模如下:实例i与概念c嵌入表示分别为e和o,在不同的嵌入表示空间;由于实例i具有概念c的属性信息,实例i的嵌入表示e通过映射后与概念c的嵌入表示向量o接近,即:对于instanceof三元组( i, r i , c ),存在f ins ( e ) → o instanceof三元组为多对多关系,即一个概念可包含多个实例,一个实例可属于多个概念;对于一个概念对应多个实例的情况,定义f ins ( e )为非线性仿射函数,即: f ins ( e ) = σ ( W· e + b ) ;其中,W∈ R 为权重矩阵,b∈R 为偏置向量,σ( · ) 为非线性激活函数;对于同一个实例可能对应多个不同的概念的情况,为每个概念的嵌入表示增加一个可学习参数δ c ,表示o的δ c 邻域作用范围,实例i的嵌入表示e经过映射后,位于概念c的嵌入向量表示o的δ c 邻域作用范围内,即:|| f ins ( e ) - o || 2 ≤ δ c ;其中|| · || 2 为欧式距离公式,δ c 的意义为:经过训练后,c所属的实例i的嵌入表示e经过映射后应位于球心点为o、半径为δ c 的超球邻域内,即训练后e经过映射会在o的嵌入表示周围,而不是与点o重合,以解决同一个实例对应的不同概念在训练后聚集的问题;instanceof三元组( i,r e ,c)的目标函数定义为:F e ( e, o ) = || f ins ( e ) - o || 2 - δ c 。
4.根据权利要求1所述的一种基于知识图谱嵌入模型的链路预测方法,其特征在于,对于subclassof三元组( c i , r s , c j )建模如下:概念c i 是概念c j 的子概念,概念c i 与概念c j 同处于一个属性空间,则o i 应在o j 的δ j 邻域作用范围内;结合三元组( i,r i ,c i )和( c i ,r s ,c j ),根据isA关系的传递性推理出( i,r i ,c j ),由此,c i 所属的所有实例经过映射后的嵌入表示在o j 的δ j 邻域作用范围内:若使c i 所属的所有实例经过映射后的嵌入表示都在o j 的δ j 邻域作用范围内,则o i 的δ i 邻域作用范围在o j 的δ j 邻域作用范围内,由此,将subclassof三元组( c i ,r c ,c j )的目标函数定义为:F sub ( o i , o j ) = || o i − o j || 2 − ( δ j − δ i ) 。
5.根据权利要求1所述的一种基于知识图谱嵌入模型的链路预测方法,其特征在于,对于关系三元组( h, r, t )建模如下:对于实例关系三元组和概念三元组,在对应的实例嵌入表示空间或概念嵌入表示空间分别为h、r、t学习嵌入表示h, r, t,采用经典的TransE模型建模,目标函数定义为:F r = || h + r - t || 2 ;该模型可处理subclassof关系的传递性;如果存在2个正三元组样本( c i ,r s ,c j )和(c j ,r s ,c k ),根据模型,概念c i 的嵌入表示o i 的δ i 超球邻域作用范围在c j 的嵌入表示o j 的δ j 超球邻域作用范围内,o j 的δ j 超球邻域作用范围在o k 的δ k 超球邻域作用范围内,可得出o i 的δ i 超球邻域作用范围也在o k 的δ k 超球邻域作用范围内,即是( c i ,r s ,c k )为正样本;同时,通过不同的概念参数δ c 来描述概念的层次结构信息,δ c 值越大,概念层次相对越高,反之,概念的层次相对越低。
6.根据权利要求1所述的一种基于知识图谱嵌入模型的链路预测方法,其特征在于,采用自对抗负抽样的方法,根据当前的嵌入模型对负三元组进行抽样,具体来说,从以下分布中抽样负三组: ;其中, α 是采样超参数, F( h j ', r, t j ' ) 为 ( h ,r ,t ) 的一个候选负采样三元组 ( h j ', r, t j ' ) 对应模型的目标函数取值。



