文章插图
图1 KGNN示意图
文章插图
KGNN模型
如图1(b)所示,KGNN模型主要有两部分构成,基于GNN的编码器和知识感知的解码器 。
基于GNN的编码器 。我们采用图神经网络将结构知识和属性编码到实体表示中 。具体来说,GNN通过聚合来自其邻居的信息,递归地更新节点的表示 。随后,k次更新后的节点的最终表示会捕获k跳邻居内部的结构信息以及节点属性 。形式化上来讲,我们可以通过聚合函数f(A)和更新函数f(U)来利用节点v的邻居集合Nv计算出节点v的第k + 1次表示:
文章插图
对于细粒度建模,我们引入了一个基于关注的GNN来衡量每个关系的各种潜在偏好 。根据上述公式中实体表示的更新原则,我们首先将聚合函数f(A)表示为:
文章插图
受跳跃知识(JumpingKnowledge)网络思想的启发,我们采用自适应深度函数灵活地多跳邻居,以更好地实现结构感知表示 。这里应用LSTM实现f(U)进行表示更新 。因此,我们可以得到实体h的k + 1表示为:
文章插图
其中ehk表示节点h的聚合信息,通过f(A)计算而来 。
知识感知的解码器 。知识图谱中链路预测的关键是利用观测到的三元组来推断对称、反对称、合成等关系模式 。为了自适应地保留知识图谱不同的关系模式,KGNN采用知识感知的评分函数作为解码器 。以TransH为例, 我们将三元组〈h, r, t〉通过K跳更新后的评分函数表示为s(eKh, er,eKt),呃,投影 。然后通过基于间隔的负采样目标函数端到端训练KGNN:
文章插图
文章插图
分布式实现
现在我们探索KGNN的分布式实现,它为大规模知识图表示提供了一个完整的解决方案 。如图1(c)所示,分布式KGNN由三部分组成:
图的存储系统 。在分布式架构下,将整个知识图以及相应的属性信息存储在节点上 。在有效的数据压缩技术的帮助下,它能够服务于大型工业图 。
采样器 。主要包含了知识表示的负采样器和子图采样器 。负采样器在一个有效三元组中随机替换头实体或尾实体,以生存相应的负三元组 。然后,子图采样器将批量随机收集每个实体的k跳邻居集 。值得注意的是,我们将子图提供给KGNN,而不是完整的图,这有助于减少时间和内存开销 。
训练器 。它由多个worker和参数服务器组成,由协调器控制 。为了有效地更新参数,每个worker都从参数服务器提取参数,并在训练期间独立地更新它们 。在一个特定的worker中,KGNN自然遵循这样的工作流程:(1)预处理子图并解析模型配置 。(2)利用之前介绍的编码器和解码器,基于子图生成实体和关系的表示 。(3)优化一个特定的损失来指导模型的学习 。
文章插图
【蚂蚁金服推出分布式的图神经知识表示框架,性能和可扩展性俱佳】实验
我们在WN18,FB15K和Alipay三个数据集上进行了实验,具体在链路预测和三元组分类两个任务上验证了有效性 。实验数据集如下所示 。
文章插图
链路预测和三元组分类的结果如下所示:
文章插图
另外,我们做了不同跳邻居对模型性能的影响,如下所示,实验结果验证了高阶信息的有效性,但过高的邻居信息会导致over-smooth的问题,导致性能有所下降 。
文章插图
最后我们做了KGNN的性能试验,如下所示 。
文章插图
如图所示,在WN18K和FB15K这两个数据集上 。我们将worker数从2增加到16,可以明显地加速KGNN的训练 。与此同时,随着worker数量的增加,预测性能几乎没有损失 。
文章插图
结语
在本文中, 我们介绍了分布式的知识图表示框架KGNN 。它包含基于GNN的编码器和知识感知的解码器,可以同时利用图谱的高阶结构信息和属性信息,并能保存图谱中的关系模式 。我们在分布式计算平台上实现了KGNN,并用大量的试验验证了它的有效性和可扩展性 。在未来的工作中,我们将致力于解决图神经网络在利用高阶邻居时遇到的over-smooth问题,以及如何对动态知识图谱进行有效的表达 。
推荐阅读
- 科创板为何这么火?IPO数量最多、高价股扎堆、科研人员成富豪,蚂蚁金服、京东数科等科技巨头也将登陆
- 茅奖作家王旭烽推出新著茶语者
- 瓷茶具推出
- 福鼎白茶推出二维码防伪标签 茶叶真假扫描便知
- 蚂蚁合花是正规平台吗 蚂蚁合花会自动扣钱吗
- 再次推出名山名茶今年普洱市将建设四座古茶山
- 茶城银发聚彩云南系列推出
- 为品牌打造条护城河Xi茶将推出14个圣诞侧袋
- 深圳蚂蚁搬家怎么样 深圳蚂蚁搬家好不好
- 梦见好多蚂蚁爬上身,驱赶蚂蚁 梦见蚂蚁在身上爬,然后我把它赶走