知识图谱中基于学习注意力机制嵌入的关系预测论文解读

https://arxiv.53yu.com/pdf/1906.01195.pdf?ref=https://githubhelp.comhttps://arxiv.53yu.com/pdf/1906.01195.pdf?ref=https://githubhelp.com

目录

一.模型提出的原因

二.文章大体思路

三.模型贡献

四.详细工作流程

1.图注意力机制(GATs)相关知识

2.本文工作流程公式解读

①输入输出的定义

②实体的Embedding 

③关系的Embedding


一.模型提出的原因

 现有方法要么只关注实体特征,要么以不相交的方式考虑实体和关系的特征来学习KG嵌入。相反,我们提出的图注意模型全面地捕捉了KG中任何给定实体的n-hop邻域中的多跳和语义相似关系。

二.文章大体思路

①捕捉给定节点周围的多跳关系relation。

②通过捕捉的多种relation来概括这个实体在这些relation中扮演的角色(类别)。

③整和在具有相似语义的关系簇的知识呈现。

三.模型贡献

①第一个基于图注意力机制的嵌入,针对知识图谱的关闭预测。

②推广扩展了图注意力机制来捕获一个给定实体的多跳邻域中的实体和关系的特征。

③实验证明该模型在关系预测上Hits@1占比高。

四.详细工作流程

1.图注意力机制(GATs)相关知识

GATS弥补了GCN的缺点,在GATS中节点的每个邻域节点的重要性不同。

输入:节点的特征集合

输出:变换后节点的特征向量作为节点的输出embedding。

求边的注意力值的公式如下:

                                    

其中α可以是选择的任何注意力函数。\large W是将特征\large \underset{x_{i}}{\rightarrow}映射为embedding的参数化的线性变换矩阵。

GATS将边的注意力值\large e_{ij}对应这条边的特征对于头实体的重要性。但是头实体\large e_{i}有许多的邻域节点。因此求得实体\large \underset{x_{i}}{\rightarrow}对应的embedding \large \underset{x{_{i}}^{'}}{\rightarrow}的公式如下:

                                  

其中\large \alpha _{ij}是对所有邻域节点的注意力值的一个softmax函数,\large \sigma是一个任意的非线性函数。

 对于多头attention ,embedding的计算公式如下:

                                 

其中\large \left | \right |表示串联,其中\large \alpha _{ij}^{k}表示边\large e_{ij}^{}通过第k层注意机制计算出的归一化的参数。\large W^{k}表示第k层注意机制(权重矩阵)对应的线性变换矩阵。但是嵌入到最后一层的embedding是取平均而不是继续串联。因此最终的\large \underset{x{_{i}}^{'}}{\rightarrow}对应的公式为:

                               

2.本文工作流程公式解读

①输入输出的定义

首先提出了一个新的嵌入方法,将关系和相邻节点的特征结合到注意力机制中,每层都以两个嵌入矩阵作为输入。

输入:

实体的嵌入由一个矩阵表示,其中第i行表示实体i的嵌入,N_{e}表示所有实体的个数,T是每一个实体嵌入的特征维数。

关系的嵌入也由一个矩阵表示,其中第i行表示关系i的嵌入,N_{r}表示关系的个数,P是每一个关系的嵌入的特征维数。

输出:

该层对于实体矩阵和关系矩阵的输出为两个对应的矩阵

②实体的Embedding 

那么如何结合关系嵌入更新实体的嵌入呢?本文通过学习与实体e_{i}的所有有关三元组,将实体和关系的特征向量串联后通过线性变换矩阵\large W_{1}来学习新的嵌入。对于一个三元组(e_{i}r_{k}e_{j}),

                                                     

其中表示三元组的向量,其他的表示实体和关系的嵌入。

本文将三元组 (e_{i}r_{k}e_{j})的重要性记为\large b_{ijk},通过对三元组的向量 表示使用一个权重矩阵\large W_{2}线性变换后使用LeakyReLU非线性来获得三元组的绝对注意力值。公式如下:

                                                     

对于获得相对注意力值则对\large b_{ijk}使用softmax函数,那么单个三元组的相对注意力值由如下公式的出:

                                                   

 其中\large N_{i}表示实体\large e_{i}的所有邻域节点,\large R_{in}表示实体\large e_{i}和他的邻域节点\large e_{n}之间的关系的集合。那么这个实体\large e_{i}的初步embedding的求法则如下:

                                                  

那么初始embedding通过采取平均法获得

                                                   

但是在学习新的embedding时,实体会丢失他初始的嵌入信息。因此通过一个加权矩阵对输入的实体嵌入\large H^{i}进行线性变换的到转换后的实体嵌入\large H^{t},本文将初始的embedding加入到最终注意层获得的嵌入中来实现最后实体embedding的更新。

文章中给的公式如下:

(个人认为与文章给出的描述不同,应该为\large H{}''=W^{E}H^{t}+H^{f}

③关系的Embedding

本文对输入的关系嵌入矩阵\large G进行线性变换,该矩阵被一个权重矩阵\large W^{R}(\large R^{T\times T{}'})参数化,\large T{}'表示输出的关系embedding的维数。

                                                           

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值