实体对齐1.ISWC 2017:(JAPE)Cross-lingual Entity Alignment via Joint Attribute-Preserving Embedding
-
关键词:Joint Embedding
-
摘要
实体对齐是查找两个知识库(KB)中表示现实世界相同物体的实体的任务。当面对不同自然语言的知识库时,传统的跨语言实体对齐方法依靠机器翻译来消除语言障碍。这些方法经常受到语言之间翻译质量不平衡的影响。虽然最近的基于嵌入的技术在KB中对实体和关系进行编码,并且不需要机器翻译来实现跨语言实体对齐,但是还有大量的属性尚未被研究。本文提出了一种用于跨语言实体对齐的联合属性保留嵌入模型。它将两个KBs的结构共同嵌入到一个统一的向量空间中,并通过利用KB中的属性相关性进一步细化KB。我们在真实数据集上的实验结果表明,该方法在跨语言实体对齐方面的性能显著优于目前最先进的嵌入方法,并可与基于机器翻译的方法互补。
-
介绍
本文的主要贡献:
- 提出了一个基于嵌入的跨语言实体对齐方法,它不依赖于跨语言KB间的机器翻译。
- 我们通过结构嵌入联合嵌入两个KB的关系三元组,通过属性嵌入利用KB的属性三元组进一步细化嵌入。就我们所知,还没有工作在保存跨语言KB的属性信息的同时,预先学习它们的嵌入。
- 我们在来自DBpedia的真实的跨语言数据集上评估了我们的方法。实验结果显示我们的方法表现显著优于跨语言实体对齐的两个基于嵌入的SOTA方法。此外,它还可以与基于机器翻译的传统方法相补充。
-
通过KB嵌入实现跨语言实体对齐
1 概述
JAPE模型框架如图1.给定两个KB,记做和
,他们是不同自然语言下的KB,有一些预对齐的实体或属性对(称作种子对齐,用上标
标记),我们的模型学习
和
的向量表示并且期望潜在的对齐实体被紧密嵌入。
根据TransE,我们将关系解释为从头实体到尾实体的翻译,以表征KB的结构信息。我们让种子集中的每一对享有相同的表示,作为和
之间的桥梁,以构建一个覆盖关系图,并通过结构嵌入(SE)在统一向量空间下共同学习所有实体的表示。直观上,两个可对齐的KB可能有多个对齐的三元组,例如英语的
和其法语的对应
。在此基础上,SE旨在学习两个KB之间潜在对齐的三元组的近似表示。
然而,SE仅限制了学习的表示必须在每个关系三元组内兼容,这导致一些实体由于它们关系三元组的稀疏性而出现无序分布。为了缓解这种不连贯的分布,我们利用属性三元组来辅助嵌入实体,这是基于潜在对齐实体通常在属性值上具有高度相似性这一观察。技术上讲,由于属性值的复杂性、异构性和跨语言性,我们忽视了它们。相反我们将属性值抽象为他们的范围类型,例如从到
,其中Interger是值“12”的抽象范围类型。然后,我们在抽象属性三元组上执行属性嵌入(AE)来捕获跨语言和单语言属性的相关性,并基于它们计算实体的相似性。最后,将属性相似度约束与SE相结合,通过聚类具有较高属性相关性的实体来细化表示。这样,我们的联合模型既保留了两个KB的关系信息,又保留了它们的属性信息。
将实体表示成一个统一嵌入空间中的向量,对源实体的潜在跨语言目标实体的对齐可以通过搜索该空间中最近的跨语言邻居来实施。
2 结构嵌入
该方法的目的是建立两个KB的几何结构模型,并学习潜在对齐三元组的近似表示。形式上,给定一个关系三元组tr = (h, r, t),我们期望为了测量tr的似然性,我们定义得分函数
。我们希望
有一个较低的值,并希望将每个关系三元组的
最小化。
图2给了一个例子,展示了SE是如何用种子集对两个KB的几何结构进行建模的。在阶段1,我们随机初始化所有向量并让种子集中的每一对重叠以建立覆盖关系图。为了在图中直观地展现出三元组,我们将实体看作向量空间中的一个点,并移动关系向量来从他们的头实体开始。注意,当前,实体和关系是随机的分布的。在阶段2,我们最小化三元组得分并让向量表示兼容每一个关系三元组。例如,关系倾向于靠近
因为它们有相同的头实体和尾实体。同时,实体
和它的对应
将会向彼此靠近移动,因为它们有相同的头实体和近似的关系。因此,SE是一个动态传播过程,训练后的理想状态是阶段3.我们可以看到潜在的可对齐实体
和
放在一起。
此外,我们检测了在基于翻译的嵌入模型中广泛使用的负三元组(又称损坏三元组),对于SE也是有价值的。考虑一下另一个英文实体和它潜在对齐的法语实体
恰好与
很靠近,由于他们之间的短间距,SE可能会错误地将
当做
的一个候选。负三元组会帮助减少这种偶然的发生。如果我们生成一个负三元组
并且为
学习一个很高的分数,
将会与
保持距离。当我们强制任何嵌入向量的长度为1时,得分函数
会有一个常数最大值。因此,我们将会最小化
来为
学习一个较高的分数。
综上所述,我们倾向于对现有的三元组(正例)学习较低的分数,对负例学习较高的分数,这将导致对以下目标函数的最小化:
其中,表示所有正三元组的集合,
表示通过随机替换
的头实体或尾实体(不同时替换)生成的相关负例。
是加权正三元组和负三元组的比值超参数,范围是[0, 1]。为了桥接两个KB,需要记住,在训练过程中,种子对齐中的每对种子都具有相同的嵌入。
3 属性嵌入和实体相似度计算
属性嵌入 如果一组属性通常被一起使用来描述一个实体,我们就称它们是相关的。例如,属性longitude,latitude和place_name是相关的因为它们被广泛一起用于描述一个地方。此外,我们希望为longitude和latitude分配更高的相关性,因为它们具有相同的范围类型。我们用种子实体对在跨语言属性之间建立连接。给定一个对齐实体对,我们认为
的属性与
的每个属性是相关的,反之亦然。我们期望有高相关性的属性能被嵌入得紧密一些。
为了捕捉属性的相关性,AE借鉴了Skip gram的思想,这是一种非常流行的模型,通过预测给定单词本身的上下文来学习单词嵌入。同样,给定一个属性,AE想预测其相关属性。为了利用范围类型信息,AE将以下目标函数最小化:
其中H表示正对的集合,即c实际上是a的一个相关属性,p(c|a)表示概率。为防止所有的向量都有相同的值,我们应用负采样方法来有效地参数化公式(2),并将logp(c|a)替换成下面这项:
其中。
是属性a根据对数均匀基分布生成的负对集,假设它们都是不正确的。
若a和c有不同的范围类型,则设置,否则设置
,以增加其趋于相似的概率。在本文中,我们区分了四种抽象范围类型,即Integer,Double,Datatime和String(默认)。注意,很容易扩展到更多的类型。
实体相似度计算 给定属性嵌入,我们取实体的表示为其属性向量的标准化平均值,即,其中
是e的属性集合,
表示标准化向量。对于两个KB中的实体我们有两个向量表示矩阵,
的
与
的
,其中每一行为一个实体向量,并且
,
分别是
,
中的实体编号。
我们使用余弦距离测量实体之间的相似之处。对于两个实体,我们有
,因为任意嵌入向量的长度都被强制设定为1。
与
之间的跨KB相似性矩阵
,以及内部相似矩阵
的
与
的
,被定义如下:
一个相似性矩阵S维护实体之间的余弦相似度是一个KB中的第i个实体与该KB或其它KB中的第j个实体之间的相似度。我们丢弃较低的S值,因为两个实体的低相似性表明它们可能是不同的。所以,我们设置条目:若
则
,其中
是阈值并且可以根据种子实体对的平均相似度对其进行设置。在本文中,我们固定内部相似矩阵的
,跨KB相似矩阵为0.9,以达到高精度。
4 联合属性保留嵌入
我们希望跨KB的相似实体被聚集以优化它们的向量表示。受[25]启发,我们使用实体之间两两相似矩阵作为监督信息,并最小化以下目标函数:
其中是一个超参数,用来平衡KB之间的相似性和它们内部的相似性。
表示SE中的一个KB的实体向量的矩阵,每一行为一个实体向量。
根据实体的相似性,通过累积
实体的向量来计算
中实体的潜在向量。通过最小化
,我们期待跨KB的相似实体会被紧密嵌入。两个内部相似矩阵以相同的方式工作。
为了同时保留两个KB的结构和属性信息,我们共同最小化以下目标函数:
其中是一个用来加权
的超参数。
5 讨论
我们从以下几个方面讨论和分析一下我们的JAPE模型:
结构嵌入的目标函数 SE是基于翻译的嵌入模型但它的目标函数并不是下面这个被许多之前的KB嵌入模型使用过的基于边缘的排序损失函数:
公式(7)旨在区分正负三元组,并且期望他们的得分可以被一个大的边缘区分开。然而,对于跨语言实体对齐任务,除了在他们的分数之间有很大的差距之外,我们还希望为正的三元组分配较低的分数,为负的三元组分配较高的分数。因此,我们选择公式(1)代替公式(7)。
相反,JE[11]使用了来自TransE的基于边缘的排序损失函数,而MTransE没有使用这个因为它没使用负例。然而,正如3.2节中所说,我们认为负三元组在区分实体之间的关系时是有效的。我们在4.4节的实验结果也证明了负例的有效性。