概述
Relations are Important
尽管传统的GAT在获取网络结构上取得成功,但直接用于KG里是不合适的,因为它忽略KG里很重要的一部分信息——边,即在KG里实体之间的关系(relation)信息。
作者认为在KG里,实体起到不同的作用很大程度是依靠与其他实体连接的不同关系!
所以论文提出的模型就需要考虑学习到实体
e
i
e_i
ei的不同关系的信息,即需要加入关系向量。即相对于GAT,每一层的输入向量除了entity embeddings
矩阵之外,还加入了关系向量表示 relations embeddings
-G
矩阵,同时输出也是它们两个。
为了从关系里学习到实体(entity)新的向量表示, 对于每个关系三元组
t
i
j
k
=
(
e
i
,
r
k
,
e
j
)
t^{k}_{ij}=(e_i,r_k,e_j)
tijk=(ei,rk,ej)构造如下公式,
h
i
,
h
j
h_i ,h_j
hi,hj 即是实体向量
e
j
,
e
j
e_j,e_j
ej,ej表示,
g
k
g_k
gk是关系的向量
r
k
r_k
rk表示,它们通过连接方式拼接而成,再乘一个
W
1
W_1
W1作为这层线性变换的参数矩阵。
然后再加一个
W
2
W_2
W2作为非线性变换的激活函数里的参数。
然后和GAT操作一样,用
b
i
j
k
b_{ijk}
bijk 图上相邻的实体节点(三元组)与它计算一个相关性权重系数
a
i
j
k
a_{ijk}
aijk:
如下图展示计算一组关系三元组的相关性系数
a
i
j
k
a_{ijk}
aijk的网络结构:
类似GAT, 对于下一层新的新的实体表示
h
i
′
h^{'}_{i}
hi′如下公式转换:
同时也和GAT里一样,模型采用multi-head attention
机制,每层独立学习不同实体的向量表示,最后拼接在一起。
对于下一层新的关系的向量表示矩阵
G
G
G有如下公式,直接乘一个
W
∈
R
T
X
T
′
Win R^{TXT'}
W∈RTXT′参数矩阵进行线性转换,T’是输出层每个关系向量的维度大小(论文里这个符号貌似错了,上面是字母P)。
和GAT类似,最后一层网络的输出如果还使用mutil-head
机制的话,维度太大,就直接取它们平均值。
为了保存最初向量的原有的信息,作者使用一个类似resual网络的思想,在最后一层layers,将最初的向量乘一个转换矩阵
W
E
W^E
WE使得转换后矩阵维度和GAT最后输出实体向量
H
f
H^f
Hf一样,再将它们两相加,如下公式:
整个网络的结构如下图所示:
最后作者象征性解释,讨论一下,GAT加入边的关系后,通过GAT网络,可以让实体通过多次迭代,获取学习到其与其n-阶邻居节点的信息和关系,从而更高效全局的让知识图谱上所有不同距离的实体可以通过边互相分享其带有的信息,可以辅助完成一些预测,推理工作,如下图:
最后
以上就是等待楼房为你收集整理的Learning Attention-based Embeddings for Relation Prediction in Knowledge Graphs的全部内容,希望文章能够帮你解决Learning Attention-based Embeddings for Relation Prediction in Knowledge Graphs所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复