论文阅读 Triple Context-Based Knowledge Graph Embedding
作者:互联网
Triple Context-Based Knowledge Graph Embedding 基于三重上下文的知识图嵌入
发表时间:Received September 10, 2018, accepted October 4, 2018, date of publication October 12, 2018, date of current version October 31, 2018.
Digital Object Identifier 10.1 109/ACCESS.2018.2875066
摘要:知识图嵌入的目的是在连续向量空间中表示知识图的实体和关系。它具有在低维向量中对语义进行编码的能力以及在问答系统和信息检索任务等应用中表现出的优异性能,越来越受到人们的关注。现有的方法通常独立地处理每个三元组,而不考虑三元组在知识图中的上下文信息,这样的信息对新知识的推理很有用。此外,实体对之间的关系和路径也为推理提供了信息。在本文中,我们定义了一种基于上下文的知识图表示模型,即基于三重上下文的知识嵌入模型,该模型基于三重上下文的概念,用于嵌入实体和关系。对于每个三元组,三元组上下文由两种图结构信息组成:一种是一组相邻实体及其输出关系,另一种是一组包含一对目标实体的关系路径。我们的嵌入方法旨在利用每个三元组的三元上下文学习实体和关系的嵌入。文中对该方法进行了多任务评价。实验结果表明,我们的方法比最先进的方法取得了显著的改进。
在现实中,很多信息隐含在三元结构的周围,它包含邻居和关系路径,可以被视为一个定向子图的KG。大多数以前的模型总是忽略了这种结构化的信息,这些信息可以进一步用于KG上的推理。此外,在一个KG中,一个实体周围有许多邻居,这些邻居可能会与不同的关系相互作用。邻居实体通常被用来提供实体与其邻居之间隐含的相互关系。头实体和尾实体之间由一组多步关系路径连接,该路径指示语义关系,反映复杂的推理模式。例如,为了决定史蒂芬·库里是否为金州勇士队效力,图1显示了一条关系路径,如a:StevenCurry(队员) →b:效力于→c:GoldenStates(球队),这表明在a与c之间可能存在关系play_for。
为了充分利用结构化信息,作者提出了一种基于三上下文的知识图嵌入模型(Triple-Context-based Knowledge Embedding (TCE))。TCE的目标是改进两个实体之间复杂关系的建模,并利用一个新的上下文,该上下文考虑了三元组周围的结构化信息。本文提出了一种新的基于图的上下文——三重上下文,它由邻居上下文和路径上下文组成。一个邻居上下文由一个实体的直接外向关系和它的邻居实体组成,这些邻居实体由外向关系连接。由于多步关系路径反映了实体对之间的语义关系,有助于处理复杂关系。在TCE中,同样的概念被选择来构建路径上下文。将这两种情境整合在一起,构建三元组上下文,从而提高TCE对三元组上下文中缺失的实体和关系的预测效率。考虑到这一目标,我们引入了一个新的分数函数来评估三元组的可能性并学习嵌入。本
作者的主要贡献总结如下:
1)不是利用一组独立的三元组,而是利用KG中三元组周围的局部结构来研究知识的表示;
2)基于三元组上下文,提出了一种新的知识图嵌入模型TCE,该模型能够很好地利用三元组上下文;
在以往的知识图谱嵌入模型中,KGs中的三元组是独立的,忽略了各三元组之间的相互关系,一个KG可以看作是一个具有图结构信息的图,具有知识推理的能力。PTransE是TransE的一个扩展模型,用于建模基于路径的表示学习模型。PTransE利用实体对之间的连接关系事实,而不是只考虑两个实体之间的关系。然而,由于PTransE仅仅将关系路径作为KG中的新关系,而忽略了图结构中包含的其他信息,因此很难为不同实体和关系的复杂上下文建模。与本文最相关的模型是GAKE。在GAKE中,它定义了三种包含不同kgs结构化信息的图形上下文,用于表示学习。GAKE的评分函数只考虑目标实体或关系与上下文的联系。因此,三元组的内部关系被忽略,结构化信息仍然丢失。这些研究表明结构化信息能够增强知识图的嵌入。
图嵌入模型和知识图嵌入模型在利用网络结构学习顶点的连续表示这一点上是相似的。然而,两种嵌入模型之间存在着巨大的差异。图嵌入模型不能直接了解实体和关系在KG中的嵌入。这是因为图嵌入模型的目标是学习的嵌入的顶点,但知识图嵌入模型需要学习两个顶点和边作为在知识图谱中实体和关系的嵌入。在图嵌入模型中,假设图中连通顶点都是相似的。然而,这个假设在知识图谱中并不成立。顶点的相似度取决于语义和局部结构。例如,在三元组(Barack_Obama,Birth_Place,Hawaii)中,头层Barack_Obama和尾层Hawaii之间就没有共同的属性。
本文旨在提出一个KG嵌入模型,并提出一个基于图的模型TCE,该模型可以通过将三元组上下文构建为图上下文来学习实体和关系的潜在表示。TCE利用三元上下文的结构化信息来获得更好的嵌入。
首先介绍了一些必要的符号。知识图K由一组三元组组成。在K中,每个三元组记为(h,r,t)。K中的所有头实体和尾实体都属于一组实体E。K中的所有关系都属于一组关系R。我们的模型旨在学习并嵌入E中的所有实体和R表示的关系在d维空间Rd中。下面简要介绍了知识图,然后定义了三重上下文。
传统的观点是,一个KG由一组三元组组成,三元组描述一组独立的事实。为了利用KG的结构化信息,我们将把KG看作一个有向图。所有实体和关系在KG分别被视为顶点和有向边。
为了利用结构化的信息,我们从一组三元组(或事实)构建了一个有向图。构造有向图的步骤如下:给定K的一组三元组,对于K中的每一个三元组(h,r,t),其中h和t分别表示头实体和尾实体。首先创建两个顶点vi和vj,这两个顶点分别对应于三元组中的h和t。然后,利用连接h和t的关系r生成有向边e。值得注意的是,将vj与vi的反向关系作为机器翻译中反向翻译的常用方法。反向关系最大的优点是可以充分利用KG的结构化信息来提高性能。在有向图G中包含了所有的实体和关系之后,上述建立图的过程就结束了。图1显示了由9个实体、10个关系和10个事实组成的知识示例。
这里解释一下反向翻译,具体请看(https://zhuanlan.zhihu.com/p/330866548)。
假如要训练一个中译英的模型:
首先使用数据集语料训练一个英译中的模型(与目标方向相反。)
使用目标语言(英语)单语语料通过英译中模型的翻译生成中文。
将生成的语料与数据集语料混合训练中英模型。
在KGs中,一个实体的邻居上下文是它的周围环境,它是主要与实体相互作用的局部结构。具体来说,给定一个实体,e的邻居上下文是一个集合Cn(e)= {(r,t)|∀r,t,(e,r,t)∈K},其中r是e的出边(关系),t是它通过r到达的实体。换句话说,e的邻居上下文是所有以e为头的三元组中出现的关系尾对。例如,如图1所示,实体Steven Curry的邻居上下文是Cn(Steven Curry)={(国籍,美国),(born_in_city,Akron)}。在我们的模型中,实体的外观是基于它的邻居上下文来预测的,作为实体和它的邻居上下文的兼容性的度量。
路径上下文是KGs关系建模和关系之间复杂推理模式捕获的重要信息,对于每个三元组,其路径上下文由从头实体到尾实体的多步关系路径组成。设有一对实体(h, t),则他们的路径上下文是Cp (h t) ={pi|∀1,···,Rmi、E1,···,Emi−1,pi=(1···,Rmi), (1 h, e1)∈K···,(emi−1、Rmi、t)∈K},在pi是关系的列表(标记为边缘)通过它可以从h到t,mi是指路径的长度。例如在图1中,Steven Curry和Golden States Warriors的路径上下文是Cp(h,t)= {(teamate,play_for),(play_in_city,city_in_state,tea m_in_state−1)}。
动机:
尽管基于翻译的模型和基于结构的模型在KG嵌入方面取得了成功,但它们仍然不擅长处理复杂的关系。分析了两种模型之间的复杂关系,说明了其产生的原因。
对于KG中的每个实体,对于如此复杂的关系,基于平移的模型很难找到正确的尾部实体。图2a说明了复杂关系的TransE问题。存在两个三元组,并且r是1 对 N的关系。由于所有的实体和关系都嵌入在同一个空间中,由h+r≈t的原理推导出来h−t1=r≠h−t2。
GAKE是一种基于结构的嵌入模型,也是与我们工作最相关的模型。它利用三种类型的图上下文来处理链接预测。GAKE考虑主体与语境之间的联系,获得主体的嵌入,导致预测失败的复杂关系。同样地,在图3(a)中存在两个三元组,它们是1到n的关系。头部实体的上下文如图3(b)所示。在图3(b)中,对于两个三元组(h,r,t1)和(h,r,t2),其上下文相同,因此模型很难通过给定的头实体和头实体的关系来预测尾实体。主要原因是两个三元组的嵌入是相同的。由GAKE中p(t|h,r)的得分函数,得到t1≈t2。图3©和图3(d)显示了n -1关系的类似现象。已知t和r, GAKE有h1≈h2。
为了解决上述问题,TCE为三元组构建上下文,帮助TCE区分复杂的关系。同时,为了提高TCE的性能,在TCE中还考虑了三元组的内部连接。图4(a)和图4©与图3(a)和图3©的情况相同。在图4(b)中,两个三元组的三元组上下文是不同的,可以看作是帮助TCE处理复杂关系的附加信息。对于(h,r,t1),三元组上下文C(h,r,t1)由路径上下文Cp(h,t1)= {(r1,r2)}和三重上下文(h,r,t1)本身组成。对于三元组(h,r,t2),它的三元组上下文C(h,r,t2)只包含三元组 (h,r,t2)本身。因此,P((h,r,t1)|C(h,r,t1))和P((h,r,t2)|C(h,r,t1))的概率是不同的,因为给出了三元组上下文可以帮助TCE预测正确的缺失尾部实体。与图4(d)相似,两个三元组(h1,r,t)和(h2,r,t)具有不同的三元组上下文,因此概率P((h1,r,t)|C(h1,r,t))和P((h2,r,t)|C(h1,r,t))是不同的。
到第三节的最后,已经完成了邻居上下文和路径上下文的介绍。对于KG中的每一个三元组,它的三元组上下文由头实体h的邻居上下文、实体对(h,t)之间的路径上下文(路径上下文包含三元组本身)组成,可以形式化为:
对于每个三元组,它的三元组上下文可以被认为是KG中的一个子图,该子图提供了周围结构,使TCE意识到图结构中包含的信息。接下来,对该方法进行了详细的说明。在一般的KG嵌入模型中,由于模型独立处理每个三元组,三元组的得分函数只与三元组中实体和关系的嵌入有关。在我们的方法中,在score函数中引入了一个三元组上下文。给定一个候选三元组(h,r,t),我们引入一个条件概率,该三元组在各自的三元上下文和所有嵌入的情况下出现,作为得分函数:
其中c (h,r,t)是(h,r,t)的三元组上下文,Θ是这个概率的参数。一个更高的分数表明这个三元组是正确的。一般来说,TCE的学习目标是预测上下文所给出的缺失的实体或关系。更正式地说,我们通过最大化知识图k中所有三元组的联合概率来定义一个目标函数,可以表示为:
对于式(2)中的分数函数,利用条件概率公式将概率P((h,r,t)|C(h,r,t);Θ)分解为:
其中,对整个三元组的求值被分解为三个部分,Eq.(4)中的第一部分p (h|C(h,r,t);Θ)表示在三元组上下文和所有嵌入条件下h是头实体的条件概率。由于h的表示是由KG中h的邻近结构决定的,p (h|C(h,r,t);Θ)可以近似为P(h|Cn(h);Θ),其中Cn(h)是h的邻居上下文。近似的概率p (h|Cn(h);Θ)可以被认为是相邻上下文之间的兼容性,它被形式化为类似softmax的表示,在[1]中也被使用,并被验证如下:
式中,gn(·,·)是描述任意实体h’与特定实体h的邻居上下文相关关系的函数。gn(h’,Cn(h))被定义为:
其中|Cn(h)|为相邻上下文Cn(h)的大小,|| · ||在本文中表示L1-范数或L2-范数。如DistMult所示,在建模实体关系时,采用乘法作为组合操作优于加法。因此,从Cn(h)(头实体的邻居上下文)中给定一个实体h’和一对(r,t),应用Hadamard乘积(点乘)来组合它们,作为它们相关性的度量。然后,我们对所有相邻上下文的规范取平均,从而反映h’和Cn(h)之间的相关性。
Eq.(4)中的第二部分p (t|C(h,r,t),h;Θ)是在头实体h,三元组上下文和所有嵌入的情况下尾实体的条件概率。h和t之间的路径上下文度量了它们之间的相关性,近似P(t|C(h,r,t),h;Θ)为P(t|Cp(h,t),h;Θ),其中Cp(h,t)是h和t之间的路径上下文。近似概率P(t|Cp(h,t),h;Θ)形式化如下:
其中gp(·,·)是任意实体t’与路径上下文中特定实体对(h,t)相关关系的函数,形式化为:
其中,p将p中的所有关系组成一个单一的向量,对其所有嵌入进行平均。例如,对于路径pi=(rm1,··,rmi),它的嵌入pi=1 /mi(rm1+··+rmi)。Eq.(8)与Eq.(6)意义相似,它反映了t’与Cp (h,t)之间的相关性。
Eq.(4)中的最后一部分P (r|C(h,r,t),h,t;Θ)是描述给定三元组上下文,头实体,尾实体和所有嵌入之间关系的条件概率。由于h和t已经确定,并且前两部分已经包含了三元组上下文,所以P(r|C(h,r,t),h,t;Θ)中可以省略C(h,r,t) ,公式如下:
其中gr( ,,)是表示关系实体对(h,t)之间的连接关系的函数。这里,我们定义函数gr(h,r,t)为:
其中◦是公式(6)中介绍的点乘。TCE可以很容易地取代点乘与其他函数。本文用TransE的能量函数代替了点乘。将Eq.(6)、Eq.(8)、Eq.(10)形式化如下:
值得注意的是,对于式(12)中的每一条路径p,其嵌入为pi=rm1+···+rmi。然后我们取所有条件的负平均,从而相关性之间的一个三元组,和它的上下文反映。
因此,式(4)中的得分函数可近似为:
以这种方式,一个三元组的邻居上下文和路径上下文被合并。值得注意的是,我们没有在我们的模型中使用实体t的邻居上下文,因为考虑到实体t也可以是其他三元组的头实体,它的邻居上下文可能被合并到其他地方。
为了便于计算嵌入,将分数函数转化为式(14),即softmax形式的近似。在Eq.(14),Eq. (5), Eq.(7)和Eq.(9)中分别表示每个部分在三元组上下文和三元组本身中的概率。为了避免较高的计算开销,在TCE中采用负采样来有效逼近全softmax函数。这样,整个知识图的可能性通过负抽样近似如下:
其中h’,r’, t’为负采样。这里,h’是通过用任意实体替换头部实体而生成的。σ(·)为logistic函数。为方便参数优化,将式(15)转化为负对数形式。
在一个真实的KG中,每个三元组的邻居路径和关系路径可能很大。为了找到所有的邻居实体,TCE需要为每个头实体搜索所有三元组。相似性,如果TCE需要找到每对实体的所有路径,搜索的时间复杂度随路径长度呈指数增长。大量的邻居和关系路径会消耗大量的计算量。为了提高计算效率,在三元组上下文上下文下,邻居和路径的数量小于两个阈值,其中nN为邻居上下文,nP为路径上下文。当邻居或路径超过其阈值时,我们从所有邻居或路径中抽样一个大小等于阈值的子集。值得注意的是,在路径上下文采样时,TCE仅采用长度小于3的关系路径。
TCE训练过程:
总结:该方法是在原有的传统三元组嵌入方法(评议投影、双线性)上增加了一种类似于采样的方法,对于一个三元组,对其头邻居上下文、路径上下文进行采样后,利用传统的三元组得分函数计算相应的得分,再进行一系列的加权求和为一个组合的新得分来训练模型。
实验结果:
TCE(H)使用Hadamard乘积来计算得分函数。
TCE(T)使用TransE来计算得分函数。
TCE(TP)使用TransE初始化向量后再训练得到的结果。
标签:关系,嵌入,Based,Graph,实体,路径,三元组,Triple,上下文 来源: https://blog.csdn.net/qq_41669355/article/details/121339795