原文:Learning Hierarchy-Aware Knowledge Graph Embeddings for Link Prediction
代码:https://github.com/MIRALab-USTC/KGE-HAKE
0. 前言
1. 作者试图解决什么问题?
作者想在KGE中对语义层级(semantic hierarchies)进行建模。
2. 这篇论文的关键元素是什么?
语义层次(semantic hierarchy), 极坐标系(polar coordinate system)
3. 论文中有什么内容可以“为你所用”?
- 两种可视化的展示方式(分布直方图和极坐标点图),清晰明了的展示了作者方法的有效性;
- 表1中展示的模型评分函数和参数;
- 在related work中分析自己模型和RotatE模型不同的论述;
4.有哪些参考文献你想继续研究?
- RotatE Sun, Z., Deng, Z.-H., Nie, J.-Y., & Tang, J. (2019). Rotate: Knowledge graph embedding by relational rotation in complex space. Paper presented at the 7th International Conference on Learning Representations, ICLR 2019, May 6, 2019 - May 9, 2019, New Orleans, LA, United states.
- Li, Y.; Zheng, R.; Tian, T.; Hu, Z.; Iyer, R.; and Sycara, K. 2016. Joint embedding of hierarchical categories and entities for concept categorization and dataless classification. In COLING.
- Zhang, Z.; Zhuang, F.; Qu, M.; Lin, F.; and He, Q. 2018. Knowledge graph embedding with hierarchical relation structure. In EMNLP.
- TKRL 谢若冰 2016 清华硕士 Xie, R.; Liu, Z.; and Sun, M. 2016. Representation learning of knowledge graphs with hierarchical types. In IJCAI.
5. 还存在什么问题
- 维度太高,都到了1000维。
- 论文中缺少术语字母表;Notation部分以表格形式可能更为清晰;(+1)
0.2 待学习知识
- 混合偏移量
- 采样温度( temperature of sampling)
- self-adversarial training 自我对抗训练
- symmetry/antisymmetry, inversion, composition具体含义
0.3 总结
摘要
知识图谱嵌入的目的是将实体和关系表示为低维向量(矩阵或张量),它是用于预测缺失链接的强大技术。现有的知识图嵌入模型主要集中在对关系模式进行建模,例如对称/反对称,inversion和composition。然而,现有的许多方法都无法对语义层次进行建模,而语义层次在实际应用中很常见。为了解决这一挑战,我们提出了一个新的知识图谱嵌入模型,叫做:**层次感知知识图谱嵌入模型(HAKE),它将实体映射到极坐标系。**HAKE受到这样一个事实的启发:**在极坐标系中的同心圆能够自然的反映层次结构。**具体来说,径向坐标旨在对层次结构不同层次的实体进行建模,半径较小的实体预计应位于较高的层次;角坐标旨在区分层次结构中同一层的实体,并且这些实体的半径应大致相同,但角度不同。实验表明:HAKE可以有效地在知识图中建立语义层次模型,并在链接预测任务的基准数据集上显著优于现有的最先进的方法。
1、研究背景?作者注意到现有方法未能对语义层次进行建模,而语义层次又很常见。为了弥补语义层次方面建模的不足,解决实际应用中的知识建模问题。
2、研究对象?实体和关系
3、研究方法?HAKE将实体映射到极坐标系。因为极坐标系中的同心圆能够自然的反映层次结构。比如径向坐标对不同层次的实体进行建模,角坐标对同一层次结构中的实体进行区分。
4、结论?HAKE建立语义层次模型,效果好。
1 引言
知识图通常是事实三元组(头实体、关系、尾实体)的集合,它们以结构化的方式表示人类知识。在过去的几年里,我们见证了知识图谱在许多领域的巨大成就,例如自然语言处理(Zhang等人2019),问答(Huang等人2019)和推荐系统(Wang等人2018)。尽管常用的知识图包含数十亿个三元组,但它们仍然存在不完整性问题,即大量有效三元组缺失,因为手动查找所有有效三元组是不切实际的。因此,知识图补全(knowledge graph completion),也称为知识图中的链接预测(link prediction),近年来备受关注。链接预测的目的是在已知链接的基础上自动预测实体之间的缺失链接。这是一项具有挑战性的任务,因为我们不仅需要预测两个实体之间是否存在关系,还需要确定它是哪种关系。
受词嵌入(Mikolov et al. 2013)的启发,研究人员转向知识图的分布式表示(又称知识图嵌入)来处理链接预测问题。词嵌入可以很好地捕捉单词的语义。知识图嵌入将实体和关系视为低维向量(或矩阵、张量),可以有效地存储和计算。与词嵌入一样,知识图嵌入可以保留实体和关系的语义和内在结构。因此,除了链接预测任务外,知识图嵌入还可以用于各种下游任务,如三重分类(Lin et al. 2015)、关系推理(Guo, Sun, and Hu 2019)和搜索个性化(Nguyen et al. 2019)。
现有知识图嵌入模型的成功在很大程度上依赖于它们对关系的连通性模式建模的能力,如symmetry/antisymmetry(对称/反对称)、inversion, and composition(反演和合成), (Sun et al. 2019)。例如,TransE (Bordes et al. 2013)将关系表示为翻译,可以对倒置和组合模式进行建模。DistMult (Yang et al. 2015)对头部实体、关系和尾部实体之间的三种交互进行建模,可以对对称模式进行建模。旋转(Sun et al. 2019),它将实体表示为复杂空间中的点,将关系表示为旋转,可以建模包括对称/反对称、反转和组成的关系模式。然而,现有的许多模型无法对知识图中的语义层次进行建模。
语义层次结构是知识图中普遍存在的属性。例如,WordNet(Miller 1995)包含三元组【arbor(乔木)/cassia(决明子)/palm(棕榈), hypernym(上位词), tree(树)】,其中“树”在层次结构中比“乔木/决明子/棕榈”更高。 Freebase(Bollacker等,2008)包含三元组[England,/location/location/contains,Pontefract/Lancaster],其中“ Pontefract / Lancaster”在层次结构中的级别低于“England”。尽管存在一些将层次结构考虑在内的工作(Xie,Liu和Sun,2016; Zhang等,2018),但他们通常需要额外的数据或过程来获取层次结构信息。因此,寻找一种能够自动有效地对语义层次进行建模的方法仍然具有挑战性。
所以这就是作者做的工作,找到一种对语义层次进行建模的方法。为什么要做这个工作呢?因为现有的知识图谱嵌入模型大多数是通过对关系的连通性进行建模,无法对语义层次进行建模,抓住这一gap,作者提出了HAKE,层次感知知识图谱嵌入模型。(因果关系)
本文提出了一种新的知识图嵌入模型——层次感知知识图嵌入(HAKE)。为了对语义层次进行建模,HAKE需要区分两类实体:(a)在不同层次结构中;(b)在同一层次结构中。具有层次属性的实体可以被视为树,受此启发,我们可以使用节点(实体)的深度来对不同的层次结构进行建模。因此,我们使用模量信息对类别(a)中的实体进行建模,因为模量的大小可以反映深度。在上述设置下,(b)类实体的模量大致相同,难以区分。受到同一个圆上的点可以具有不同相位这一事实的启发,我们使用相位信息对类别(b)中的实体进行建模。结合模量和相位信息,HAKE将实体映射到极坐标,其中径向坐标对应于模量信息,而角坐标对应于相位信息。实验表明,我们提出的HAKE模型不仅可以清楚地区分这些实体层次结构,而且在基准数据集上也显著且始终优于几种最先进的方法。
两类实体,一类是在不同层次上的,另一类是在同一层次上的。在不同层次上的,因为每个实体的深度不同,所以可以用模量信息表示深度来区分这一类实体。而对于在相同层次上的实体,因为在同一层,使用模量信息(深度)无法明确地区分该类实体。所以使用相位信息,也就是角坐标来对同一层次的实体进行区分。最后,有深度又有角坐标,自然而然地想到了极坐标系,将实体投影到极坐标系中,径向坐标表示模量信息,深度;角坐标表示相位信息。
Notations 符号
在本文中,分别使用小写字母h,r,t表示头实体、关系、尾实体。三元组(h,r,t)一个知识图谱中的事实。对应的黑体小写字母
h
,
r
,
t
\mathbf{h,r,t}
h,r,t表示头实体、关系、尾实体的embeddings(vectors)。向量
h
\mathbf{h}
h 的第
i
i
i项表示为
[
h
]
i
[\mathbf{h}]_i
[h]i。
k
k
k为embedding的维数。让
∘
:
R
n
×
R
n
→
R
n
\circ: \mathbb{R}^{n} \times \mathbb{R}^{n} \rightarrow \mathbb{R}^{n}
∘:Rn×Rn→Rn 表示两个向量之间的Hadamard乘积,即,
[
a
∘
b
]
i
=
[
a
]
i
⋅
[
b
]
i
[\mathbf{a} \circ \mathbf{b}]_{i}=[\mathbf{a}]_{i} \cdot[\mathbf{b}]_{i}
[a∘b]i=[a]i⋅[b]i
并且
∥
⋅
∥
1
,
∥
⋅
∥
2
\|\cdot\|_{1},\|\cdot\|_{2}
∥⋅∥1,∥⋅∥2 分别表示
ℓ
1
\ell_{1}
ℓ1 和
ℓ
2
\ell_{2}
ℓ2 范数。
符号 | 含义 |
---|---|
h h h | 头实体 |
r r r | 关系 |
t t t | 尾实体 |
( h , r , t ) (h,r,t) (h,r,t) | 知识图谱中的事实 |
h \mathbf{h} h | 头实体的embeddngs(vectors) |
r \mathbf{r} r | 关系的embeddngs(vectors) |
t \mathbf{t} t | 尾实体的embeddngs(vectors) |
[ h ] i [\mathbf{h}]_i [h]i | 向量 h \mathbf{h} h 的第 i i i项 |
k k k | embedding的维数 |
∘ : R n × R n → R n \circ: \mathbb{R}^{n} \times \mathbb{R}^{n} \rightarrow \mathbb{R}^{n} ∘:Rn×Rn→Rn | 两个向量之间的Hadamard乘积 [ a ∘ b ] i = [ a ] i ⋅ [ b ] i [\mathbf{a} \circ \mathbf{b}]_{i}=[\mathbf{a}]_{i} \cdot[\mathbf{b}]_{i} [a∘b]i=[a]i⋅[b]i |
∥ ⋅ ∥ 1 \|\cdot\|_{1} ∥⋅∥1 | ℓ 1 \ell_{1} ℓ1 |
∥ ⋅ ∥ 2 \|\cdot\|_{2} ∥⋅∥2 | ℓ 2 \ell_{2} ℓ2 |
2 Related Work 相关工作
在本节中,我们将在两个方面描述相关工作以及它们与我们的工作之间的关键区别——模型类别和知识图谱中层次结构的建模方法。
Model Category 模型类别
粗略地说,我们可以将知识图嵌入模型分为三类:平移距离模型、双线性模型和基于神经网络的模型。表1展示了几种流行的模型。
平移距离模型 TransE TransH ManifoldE RotatE
双线性模型 RESCAL DistMult ComplEx HolE
基于神经网络的模型 MLP NTN ConvE ConvKB 图卷积网络
我们提出的HAKE模型属于平移距离模型。更具体的说,HAKE与RotatE有相似之处,其中作者声称他们同时使用了模量和相位信息。然而,**在RotatE和HAKE之间存在两个主要的区别。**具体差异如下:
(a)目的不同。RotatE旨在对包含对称性/反对称性,反转和合成的关系模式进行建模。HAKE旨在对语义层次进行建模,同时它也对上述所有的关系模式进行建模。
(b)使用模量的方法不同。RotatE将关系建模为在复数空间中的旋转,并且无论是什么关系,都鼓励两个相链接的实体有相同的模量。RotatE中的不同的模量来自训练的不准确性。相反,HAKE明确地对模量信息进行建模,它在区分不同层次结构的实体方面显著优于RotatE。
The Ways to Model Hierarchy Structures 层次结构的建模方法
另一个相关的问题是如何在知识图谱中建模层次结构。最近的一些研究工作从不同的角度考虑了这个问题。
- Li等人(2016)将实体和类别共同嵌入语义空间,并设计了用于概念分类和无数据层次分类任务的模型。
- Zhang et al.(2018)使用聚类算法对层次关系结构进行建模。
- Xie, Liu, and Sun(2016)提出了TKRL,将类型信息嵌入到知识图谱嵌入中。也就是说,TKRL需要实体的额外的层次类型信息。
不同于以前的工作,我们的工作:
- 考虑链接预测任务,这是知识图嵌入中比较常见的任务;
- 无需使用聚类算法就能够自动学习知识图中的语义层次;
- 不需要知识图中除三元组以外的任何额外信息。
3 The Proposed HAKE
在本节中,我们将介绍我们提出的HAKE模型。首先介绍两类反映知识图语义层次结构的实体。随后,我们介绍了我们提出的HAKE,它可以在这两个类别中对实体进行建模。
3.1 Two Categories of Entities 两种实体类别
为了对知识图谱的语义层次进行建模,知识图嵌入模型必须能够区分以下两类实体。
(a)层次结构不同级别的实体。例如,“哺乳动物”和“狗”,“跑”和“移动”。
(b)同一层次的实体。例如,“玫瑰”和“牡丹”,“卡车”和“汽车”。
3.2 Hierarchy-Aware Knowledge Graph Embedding 层次感知的知识图嵌入
为了对以上两个类别进行建模,我们提出了一种层次感知的知识图嵌入模型——HAKE。HAKE由两部分组成——模量部分和相位部分,分别针对两个不同类别的实体进行建模。图1给出了所提出模型的图示。
为了区分不同部分的嵌入,在模量部分中,我们使用 e m \mathbf{e}_m em( e \mathbf{e} e可以是 h \mathbf{h} h或 t \mathbf{t} t)和 r m \mathbf{r}_m rm表示实体嵌入和关系嵌入,而在相位部分中使用 e p \mathbf{e}_p ep( e \mathbf{e} e可以是 h \mathbf{h} h或 t \mathbf{t} t)和 r p \mathbf{r}_p rp表示实体嵌入和关系嵌入。
模量部分(modulus)旨在对层次结构中不同层次的实体进行建模。受到具有层次属性的实体可以被视为一棵树这一事实的启发,我们可以使用节点(实体)的深度来对不同的层次等级进行建模。因此,我们使用模量信息来建模类别(a)中的实体,因为模量可以反映树的深度。具体来说,我们将 h m \mathbf{h}_m hm和 t m \mathbf{t}_m tm的每一项,即 [ h m ] i [\mathbf{h}_m]_{i} [hm]i和 [ t m ] i [\mathbf{t}_m]_{i} [tm]i,视为模量;将 r m \mathbf{r}_m rm的每一项,即 [ r ] i [\mathbf{r}]_{i} [r]i,视为两个模之间的尺度变换。我们可以将模量部分表述为:
h
m
∘
r
m
=
t
m
,
\mathbf{h}_{m} \circ \mathbf{r}_{m}=\mathbf{t}_{m},
hm∘rm=tm, where
h
m
,
t
m
∈
R
k
,
\mathbf{h}_{m}, \mathbf{t}_{m} \in \mathbb{R}^{k},
hm,tm∈Rk, and
r
m
∈
R
+
k
\mathbf{r}_{m} \in \mathbb{R}_{+}^{k}
rm∈R+k
对应的距离函数为:
d
r
,
m
(
h
m
,
t
m
)
=
∥
h
m
∘
r
m
−
t
m
∥
2
d_{r, m}\left(\mathbf{h}_{m}, \mathbf{t}_{m}\right)=\left\|\mathbf{h}_{m} \circ \mathbf{r}_{m}-\mathbf{t}_{m}\right\|_{2}
dr,m(hm,tm)=∥hm∘rm−tm∥2
请注意,我们允许实体嵌入的条目(entry)为负,但限定关系嵌入的条目为正。这是因为实体嵌入的符号可以帮助我们预测两个实体之间是否存在关系。例如,如果在h和t1之间存在关系r,并且h和t2之间不存在关系,那么
(
h
,
r
,
t
1
)
(h,r,t1)
(h,r,t1)是一个正样本,而
(
h
,
r
,
t
2
)
(h,r,t2)
(h,r,t2)是一个负样本。我们的目标是最小化
d
r
(
h
m
,
t
1
,
m
)
d_r(\mathbf{h}_m,\mathbf{t}_{1,m})
dr(hm,t1,m)和最大化
d
r
(
h
m
,
t
2
,
m
)
d_r(\mathbf{h}_m,\mathbf{t}_{2,m})
dr(hm,t2,m),以便明确区分正样本和负样本。对于正样本,
[
h
]
i
[\mathbf{h}]_i
[h]i和
[
t
1
]
i
[\mathbf{t}_1]_i
[t1]i倾向于共享相同的符号,因为
[
r
m
]
i
>
0
\mathbf{[r_{m}]}_{i}>0
[rm]i>0。对于负样本,如果我们随机初始化它们的符号,那么它们的符号
[
h
m
]
i
\mathbf{[h_{m}]}_{i}
[hm]i和
[
t
2
,
m
]
i
\mathbf{[t_{2,m}]}_{i}
[t2,m]i将会不相同。以这种方式,
d
r
(
h
m
,
t
2
,
m
)
d_r(\mathbf{h}_m,\mathbf{t}_{2,m})
dr(hm,t2,m)更可能大于
d
r
(
h
m
,
t
1
,
m
)
d_r(\mathbf{h}_m,\mathbf{t}_{1,m})
dr(hm,t1,m),这正是我们想要的。
此外,我们可以期望层次结构中更高层次的实体具有更小的模量,因为这些实体更接近树的根。
如果只使用模量部分来嵌入知识图,则类别(b)中的实体将具有相同的模量。此外,假设 r r r 是一个关系,反映了相同的语义层次,那么 [ r ] i [\mathbf{r}]_i [r]i将趋于1,因为 h ∘ r ∘ r = h h∘r∘r=h h∘r∘r=h对于所有 h h h都成立(啥意思?)。
此处的 r r r 是表示相同的语义层次,两个实体之间是 r r r 关系,表明这两个实体是在同一个层次上。也就是对于实体 h h h ,与关系 r r r 进行运算后,仍然是实体 h h h。就是在层次A上的实体与关系 r r r 进行运算后,仍在层次A上。
因此,类别(b)中的实体嵌入往往是相同的,这使得很难区分类别b中的实体。因此,需要一个新的模块来为(b)类中的实体进行建模。
相位部分(phase)的目标是为同一层语义层次的实体进行建模。受到在同一个圆上的点的模量相同而相位不同这一启发,我们使用相位信息来区分类别b中的实体。具体而言,我们将hp和tp的每一项即[hp]i和[tp]i视为相位,并且将rp的每一项,即[rp]i视为相位转换。我们可以将相位部分表述如下:
(
h
p
+
r
p
)
m
o
d
2
π
=
t
p
,
where
h
p
,
r
p
,
t
p
∈
[
0
,
2
π
)
k
\left(\mathbf{h}_{p}+\mathbf{r}_{p}\right) \bmod 2 \pi=\mathbf{t}_{p}, \text { where } \mathbf{h}_{p}, \mathbf{r}_{p}, \mathbf{t}_{p} \in[0,2 \pi)^{k}
(hp+rp)mod2π=tp, where hp,rp,tp∈[0,2π)k
相应的距离函数为:
d
r
,
p
(
h
p
,
t
p
)
=
∥
sin
(
(
h
p
+
r
p
−
t
p
)
/
2
)
∥
1
d_{r, p}\left(\mathbf{h}_{p}, \mathbf{t}_{p}\right)=\left\|\sin \left(\left(\mathbf{h}_{p}+\mathbf{r}_{p}-\mathbf{t}_{p}\right) / 2\right)\right\|_{1}
dr,p(hp,tp)=∥sin((hp+rp−tp)/2)∥1
其中sin(.)是将正弦函数应用于输入的每个元素的运算。注意,由于相位具有周期性特征,因此我们使用正弦函数来测量相位间的距离,而不是使用
∥
h
p
+
r
p
−
t
p
∥
1
\left\|\mathbf{h}_{p}+\mathbf{r}_{p}-\mathbf{t}_{p} \right\|_{1}
∥hp+rp−tp∥1.该距离函数与pRostatE(Sun et al. 2019)具有相同的公式。
HAKE将模量部分和相位部分组合在一起,将实体映射到极坐标系中,其中径向坐标和角坐标分别对应于模量部分和相位部分。也就是说,HAKE将一个实体h映射到[hm;hp],其中hm和hp分别由模量部分和相位部分产生, [ ⋅ ; ⋅ ] [·;·] [⋅;⋅]表示两个向量的串联。
评分函数为:
当两个实体有相同的模量时,那么模量部分就等于0。然而,相位部分是不同的。通过结合模量部分和相位部分,HAKE能够对类别(a)、(b)中的实体进行建模,因此,HAKE能够对知识图谱的语义层次进行建模。
当评估模型时,我们发现向模量的距离函数
d
r
,
m
(
h
,
t
)
d_{r, m}\left(\mathbf{h}, \mathbf{t}\right)
dr,m(h,t)中添加一个mixture bias
能够帮助提高HAKE模型的表现。修改之后的
d
r
,
m
(
h
,
t
)
d_{r, m}\left(\mathbf{h}, \mathbf{t}\right)
dr,m(h,t)如下:
…略
为了表示方便,我们仍使用
d
r
,
m
(
h
,
t
)
=
∥
h
m
∘
r
m
−
t
m
∥
2
d_{r, m}\left(\mathbf{h}, \mathbf{t}\right)=\left\|\mathbf{h}_{m} \circ \mathbf{r}_{m}-\mathbf{t}_{m}\right\|_{2}
dr,m(h,t)=∥hm∘rm−tm∥2
来表示模量部分。我们将在实验部分对bias进行消融实验。
…略
…
…
3.3 损失函数
为了训练模型,我们将负采样损失函数与自我对抗训练结合使用(negative sampling loss func-tions with self-adversarial training)(Sun et al.2019):
是采样负三元组的概率分布,其中α是采样温度( temperature of sampling)。
4 Experiments and Analysis
本节的组织如下。首先,我们详细介绍实验设置。然后,我们在三个基准数据集上展示了我们提出的模型的有效性。最后,我们分析了HAKE产生的嵌入,并显示了消融研究的结果。 HAKE的代码可从GitHub上的https://github.com/MIRALab-USTC/KGE-HAKE获得。
4.1 Experimental Settings
我们在三个常用的知识图数据集上评估我们提出的模型–WN18RR, FB15k-237 , and YAGO3-10。表2汇总了这些数据集的详细信息。
WN18RR、FB15k-237和YAGO3-10分别是WN18, FB15k和 YAGO3的子集。正如Toutanova 和Chen (2015)和Dettmers 等人所指出的那样,WN18, FB15k遭受了测试集泄露问题。**即使使用简单的基于规则的模型,也可以获得最好的结果。**因此,我们使用WN18RR和FB15k-237作为基准数据集。
Evaluation Protocol 根据Bordes等人,对于测试数据集中的每个三元组(h,r,t),我们用每个候选实体替换头部实体h或尾部实体t,以创建一组候选三元组。然后,我们将候选三元组按其得分降序排列。值得注意的是,我们使用Bordes等人(2013)中的“Filtered”设置。该设置在排名时不考虑任何现有的有效三元组。我们选择平均倒数排名(MRR)和N处的命中数 ( H @ N ) (H @ N) (H@N)作为评估指标。 MRR或H@N越高表示性能越好。
Training Protocol 我们使用Adam作为优化器,并使用网格搜索根据在验证数据集的表现找到最佳的超参数。为了使模型更易于训练,我们在距离函数中增加了一个额外的系数,即 d r ( h , t ) = d_{r}(\mathbf{h}, \mathbf{t})= dr(h,t)= λ 1 d r , m ( h m , t m ) + λ 2 d r , p ( h p , t p ) , \lambda_{1} d_{r, m}\left(\mathbf{h}_{m}, \mathbf{t}_{m}\right)+\lambda_{2} d_{r, p}\left(\mathbf{h}_{p}, \mathbf{t}_{p}\right), λ1dr,m(hm,tm)+λ2dr,p(hp,tp), where λ 1 , λ 2 ∈ R \lambda_{1}, \lambda_{2} \in \mathbb{R} λ1,λ2∈R
Baseline Model 可能有人争论说相位部分不是必要的,因为我们可以通过使得
[
r
]
i
[\mathbf{r}]_{i}
[r]i为负来区分类别b中的实体。我们提出了一个模型—ModE—这个模型仅使用模量部分,不使用相位部分,但允许
[
r
]
i
<
0.
[\mathbf{r}]_{i}<0 .
[r]i<0. 具体来说,它的距离函数为
d
r
(
h
,
t
)
=
∥
h
∘
r
−
t
∥
2
,
where
h
,
r
,
t
∈
R
k
d_{r}(\mathbf{h}, \mathbf{t})=\|\mathbf{h} \circ \mathbf{r}-\mathbf{t}\|_{2}, \text { where } \mathbf{h}, \mathbf{r}, \mathbf{t} \in \mathbb{R}^{k}
dr(h,t)=∥h∘r−t∥2, where h,r,t∈Rk
4.2 Main Results
在这一部分中,我们将展示我们提出的模型-HAKE和ModE-相对于现有技术水平的性能,包括TransE (Bordes et al. 2013)、DistMult (Yang et al. 2015)、ComplEx (Trouillon et al. 2016)、ConvE (Dettmers et al. 2018)和RotatE (Sun et al. 2019)。
表3显示了HAKE、ModE和之前几个模型的表现效果。我们的基线模型ModE与TransE具有相似的简单性,但在所有数据集上的性能都显著优于TransE。令人惊讶的是,在所有数据集上,ModE甚至超过了更复杂的模型,如DistMult、ConvE和complex,并且在FB15k-237和YAGO3-10数据集上超过了最先进的模型RotatE,这证明了模量信息的强大功能。表3还显示,我们的HAKE在所有数据集上的性能显著优于现有的最先进方法。
WN18RR数据集由两种类型的关系组成:一类是对称关系,例如**_similar_to**,这类关系连接类别(b)中的实体;另一类非对称关系,例如 _hyperngm和 _member_meronym,这类关系连接类别(a)中的实体。实际上,RotatE可以很好地建模(b)类中的实体(Sun et al. 2019)。然而,HAKE的MRR相对于RotatE高0.021,H@1和H@3分别高2.4%和2.4%。HAKE的性能优于RotatE,这说明我们的模型可以更好地对层次结构中的不同层次进行建模。
与WN18RR和YAGO310相比,FB15k-237数据集的关系类型更复杂,实体更少。尽管FB15k-237中存在反映层次结构的关系,但是也存在很多不导致层次结构的关系,例如“ /location/location/time_zones”和“/film/film/prequel”。这个数据集的特点解释了为什么我们提出的模型没有像WN18RR和YAGO3-10数据集那样优于以前的最先进的模型。然而,结果也表明,只要知识图谱中存在语义层次结构,我们的模型就可以获得更好的性能。由于几乎所有知识图都具有这种层次结构,因此我们的模型具有广泛的适用性。
YAGO3-10数据集包含关系相关度高的实体。例如,链接预测任务(?, hasGender, male)具有超过1000个正确答案,这使得该任务具有挑战性。幸运的是,我们可以将**“male”视为层次结构中较高级别的实体**,并将要预测的头实体视为较低级别中的实体。这样一来,YAGO3-10就是一个明显具有语义层次属性的数据集,我们可以期望我们提出的模型能够在该数据集上很好的工作。表3证实了我们的期望。**ModE和HAKE的表现都明显优于之前最先进水平。**值得注意的是,HAKE的MRR比RotatE高0.050,H@1比RotatE高6.0%,H@3比RotatE高4.6%。
4.3 Analysis on Relation Embeddings
在这一部分中,我们首先通过分析关系嵌入的模量,证明HAKE可以有效地建模层次结构。然后,通过分析关系嵌入的相位,证明了HAKE的相位部分可以帮助我们区分同一层次上的实体。
在图2中,我们绘制了六种关系的模量的分布直方图。这些关系来自于WN18RR、FB15k-237和YAGO3-10。具体来说,图2a、2c、2e、2f中的关系来源于WN18RR。图2d中的关系来源于FB15k-237。图2b中的关系来自YAGO3-10。我们将图2中的关系分为三组。
(A) 图2c和2d中的关系连接同一语义层次的实体;
(B)图2a和图2b的关系表示尾实体的级别高于头实体的级别;
©图2e和2f中的关系表示尾部实体在层次结构中的级别低于头部实体。
如模型描述部分所述,我们期望层次结构中更高级别的实体具有较小的模量。实验证实了我们的预期。对于ModE和HAKE,组(A)中的大多数关系条目的值都在1附近,这导致head实体和tail实体的模量大致相同。在组(B)中,大多数关系条目的值都小于1,这导致head实体的模量比tail实体的模量小。©组的情况与(B)组的情况相反。这些结果表明,我们的模型能够捕获知识图中的语义层次。此外,与ModE相比,HAKE的关系嵌入模量具有较低的方差,这表明HAKE能够更清晰地对层次进行建模。
如上所述,组(A)中的关系反映了相同的语义层次,并且期望其模量为1左右。显然,仅用模量部分很难区分这些关系所连接的实体。在图3中,我们绘制了(A)组关系的相位。结果表明,处于同一层次的实体可以通过它们的相位来区分,因为许多相位的值都为π。
4.4 Analysis on Entity Embeddings 实体嵌入分析
在这一部分中,为了进一步说明HAKE可以捕获实体之间的语义层次,我们可视化了多个实体对的嵌入。
我们绘制了两个模型的实体嵌入:过去最先进的RotatE和我们提出的HAKE。RotatE将每个实体视为一组复数。因为复数可以看作是二维平面上的一个点,我们可以在二维平面上绘制实体嵌入。至于HAKE,我们已经提到它将实体映射到极坐标系统中。因此,我们也可以将HAKE生成的实体嵌入基于它们的极坐标绘制在二维平面上。为了进行公平比较,我们设k = 500。即每个plot包含500个点,实体嵌入的实际尺寸为1000。注意,我们使用对数尺度来更好地显示实体嵌入之间的差异。由于所有模的值都小于1,在应用对数运算后,图中较大的半径实际上代表较小的模。
图4显示了来自WN18RR数据集的三个三元组的可视化结果。与尾部实体相比,图4a、图4b和图4c中的头部实体在语义层次结构中分别处于较低级别、相似级别和较高级别。我们可以看到,HAKE的可视化结果中存在明显的同心圆,这表明HAKE能够有效地建模语义层次。但是,在RotatE中,三个子图形中的实体嵌入是混合的,这使得很难区分层次结构中不同层次的实体。
4.5 Ablation Studies 消融研究
An ablation study typically refers to removing some “feature” of the model or algorithm, and seeing how that affects performance
在这一部分中,我们对HAKE的模量部分和相位部分以及混合偏差项进行消融研究。表4显示了三个基准数据集的结果。
我们可以看到,该偏差项可以在几乎所有指标上提高HAKE的性能。具体来说,偏差项将YAGO3-10数据集的H@1的得分提高4.7%,这说明了偏差项的有效性。
我们也可以观察到HAKE的模量部分在所有数据集上的效果都不理想,因为它无法区分同一层次结构上的实体。当仅使用相位部分时,HAKE就退化成了pRotatE模型(Sun et al. 2019)。它比模量部分表现的要好,因为它可以很好地建模层次结构中相同级别的实体。然而,我们的HAKE模型在所有数据集上的性能均明显优于模数部分和相位部分,这说明了将这两个部分结合起来对知识图中的语义层次建模的重要性。
4.6 Comparison with Other Related Work 与其他相关工作相比较
我们将我们的模型与TKRL模型进行了比较,后者也旨在对层次结构进行建模。有关HAKE和TKRL之间的区别,请参阅“相关工作”部分。表5显示了FB15k数据集上HAKE和TKRL的H@10得分。WHE + STC版本获得的TKRL的最佳性能为.734,而我们的HAKE模型的H@10得分为.884。结果表明,尽管不需要其他信息,但HAKE明显优于TKRL。
5 Conclusion
为了对知识图中的语义层次进行建模,我们提出了一种新颖的层次感知知识图嵌入模型HAKE,该模型将实体映射到极坐标系统中。实验表明,对于链接预测任务,我们提出的HAKE在基准数据集上明显优于几种现有的最新方法。进一步的研究表明,HAKE能够对语义层次结构中不同级别和相同级别的实体进行建模。
参考:
原文:Learning Hierarchy-Aware Knowledge Graph Embeddings for Link Prediction
Learning Hierarchy-Aware Knowledge Graph Embeddings for Link Prediction论文阅读笔记
论文笔记:AAAI 2020 Learning Hierarchy-Aware Knowledge Graph Embeddings for Link Prediction