论文阅读 Learning graph attention-aware knowledge graph embedding

Learning graph attention-aware knowledge graph embedding 学习图注意感知知识图嵌入

发表于:Neurocomputing 461(2021)
摘要:知识图是一种利用图结构来表示多关系数据的知识图,在推理和预测任务中得到了广泛的应用,近年来引起了广泛的研究。然而,现有的研究大多集中在直接直观地学习知识图嵌入,而没有潜移默化地考虑知识的语境。具体地说,最近的模型独立地处理每一个单一的三元组,或者不加区别地考虑上下文,这是片面的,因为每个知识单元(即三元组)可以从其部分的周围三元组派生出来。在本文中,我们提出了一种基于图注意的实体编码模型,该模型将一个知识图描述为一个不规则的图,并通过多个独立的通道整合图结构的信息来探索一些具体的、可解释的知识组合。为了从不同的角度(即实体对、关系和结构)衡量实体之间的相关性,我们分别开发了三个注意指标。通过利用增强的实体嵌入,我们进一步引入了几个改进的因子分解函数来更新关系嵌入和评估候选三元组。我们对下游任务进行了大量的实验,包括实体分类、实体类型和链接预测,以验证我们的方法。实验结果验证了该方法的重要性,并证明该方法可以提高大规模知识图分解模型的性能。
在这项工作中,我们引入图注意机制,为知识图的嵌入捕获更丰富和更细粒度的信息。该模型的核心是通过有选择地合并相邻实体的信息,并利用因子分解函数确定候选三元组的概率,从而获得不同通道中实体的隐藏表示。这种基于图的多头注意机制具有以下优点:(1)通过多通道处理输入信息,大大提高了现有知识图嵌入的可解释性;(2)通过迭代或叠加图注意层,可以轻松实现多跳信息采集;(3)由于该算法的并行性和移动性,可以保证在任意大规模知识图数据集上的泛化。此外,我们还提出了基于不同来源(即实体对、关系和结构)和实现的三个度量来计算注意系数,以获得高质量的实体嵌入。利用特定的实体嵌入注入策略,改进因子分解函数来训练关系嵌入并对候选三元组进行评分。我们进行了实验来评估不同注意在各种任务中的表现,包括实体分类、实体类型和链接预测。并以视觉的形式解释了图形注意力的工作状态。综合实验结果表明,该方法与基线方法相当或优于基线方法,适用于具有复杂和未知结构的大规模知识图。本文的贡献有三个方面:
在充分考虑实体结构和实体信息的基础上,提出了一种新的图注意机制来更新实体嵌入。
在考虑不同来源和计算策略的基础上,提出了三种基于注意力的方法,并对其捕获多通道信息的能力进行了比较研究。
我们在实体分类和实体类型方面取得了最新的性能,并提高了因子分解模型在链接预测中的有效性。
在基于图的机器学习任务方法的发展过程中,大量相关工作通过将图结构与顶点信息相结合来学习获取每个顶点的表示以及整个图。
在这个方向上的第一个成功尝试是图卷积网络(GCN),它实现了基于循环框架的表示学习。之后,GCN利用谱方法或基于空间的方法,将卷积概念引入到不规则图中。但是,基于谱的方法受可扩展性和通用性的限制,不能灵活地应用于增量图或有向图。另一方面,基于空间的模型通过定义不同的邻域信息捕获策略,能够更合理地聚合图信号。
图自编码器也被用于学习图嵌入,其目的是利用神经网络结构来表示节点为低维向量。一种流行的实现方法是使用多层感知器作为节点嵌入的编码器,同时设计解码器来重构节点的统计邻域信息,如正点向互信息(PPMI)或一阶和二阶近似。其中,DNGR和SDNE从拓扑结构中学习节点嵌入,而ARGA、NetRA和DRNE则提出在拓扑信息和节点特征都可用的情况下学习节点嵌入。图自编码器的一个挑战是邻接矩阵的稀疏性,这使得解码器的正条目的数量远远小于负条目的数量。为了缓解这个问题,DNGR重构了一个更密集的矩阵,即PPMI矩阵,SDNE对邻接矩阵中的零项进行惩罚,GAE对邻接矩阵中的项进行重权,NetRA将图线性化为一个序列。
图生成网络的目标是在给定一组观测图的情况下生成新的图。这些方法中有许多被应用于特定的领域,最近还提出了一些生成方法。例如,MolGAN结合了GCN和强化学习目标来生成具有所需属性的图。它的生成器试图构造一个伪图及其特征矩阵,而判别器的目标是区分伪样本和经验数据。同时,MolGAN还引入了一个与鉴别器并行的奖励网络,以鼓励生成的图具有与外部评估器一致的某些属性。DGMG结合了基于空间的GCN来获取现有图的隐藏表示。特别地,节点和边的生成决策过程是基于整个图的表示。除了MolGAN和DGMG,还有一些通过引入不同结构来实现图生成的方法,如GraphRNN和NetGAN。
图注意网络(Graph ATtention network, GAT)作为MoNet的一个特殊实例,提出了一个掩蔽的自注意层,它有选择地调整邻居顶点信息的权值,在转导和归纳学习中取得了最先进的结果。具体来说,通过设置多个注意头,GAT学习了满足不同需求的多通道特性。这一研究方向主要受到神经翻译的启发:其有效的注意设计使翻译模型不依赖于任何递归或卷积操作而达到更好的效果。目前,ADSF利用对结构信息的注意机制,通过计算邻域重叠度来获得图的权值。此外,ELCO基于重叠聚类对图拓扑进行了改进,以学习更多可解释的图嵌入。如图所示。1、知识图中的关系按实体类型进行聚类。因此,实体特征的提取需要在多通道上进行,这使得多头注意机制成为建模知识图的自然选择。
在此之前,已有一些学者尝试将图注意引入知识图嵌入学习。然而,他们的方法是有限的,因为每个三元组被视为一个共现关系,而结构信息是不存在的。此外,他们的研究缺乏对注意模块效应的详细分析。就我们所知,我们首先分析了知识图嵌入学习中各种来源的图注意力。
我们首先介绍各种注意机制来细化知识图中实体嵌入的学习,然后通过学习关系嵌入进行概率分析。我们详细介绍了用于捕获任意图结构中的信息的模块,并深入分析了其理论和实践的好处和局限性。
通常,注意函数可以描述为对一组key-value对的查询,其中查询、键、值和输出都是向量。注意函数的输出计算为所有匹配值的加权和,其中权重是根据查询的匹配程度和对应的键来确定的。图中注意力模型,基于假设通常用于表示学习,即顶点具有类似特征有相似的邻居,注意函数类比推理定义和应用学习实体嵌入在G .具体来说,输入图的注意层是一组实体特征,图注意层产生一组新的实体嵌入作为它的输出,输出的嵌入不一定等于原来的,这取决于任务要求。
由于相邻实体或实体对之间的关系都可以作为信息获取的度量,我们将图注意的实现分为实体注意和关系注意两类。特别地,为了消除三元组对实体之间关系的约束,我们还引入了结构注意来评估顶点间邻居分布的相关性。
实体Attention
设一个实体ei,其特征为hi,hi可以通过从它的邻居实体和它自己接收部分信息来学习。每个信息源的学习规模由实体对(ei,ej)的注意系数cij决定。为了获得足够的表达能力,将输入的实体特征转换为高级嵌入,我们使用加性注意作为cij的计算

论文阅读 Learning graph attention-aware knowledge graph embedding
其中W是一个可学习的权矩阵,a表示ei对ej的重要程度,
论文阅读 Learning graph attention-aware knowledge graph embedding
论文阅读 Learning graph attention-aware knowledge graph embedding

我们只选择一阶邻居和自身作为信息源(将这些图注意层叠加即可获得多跳特征)。如图2所示,我们使用softmax函数将cij归一化,以便于比较不同实体对之间的实体注意系数ae。

论文阅读 Learning graph attention-aware knowledge graph embedding
其中ni指ei的一级邻居数,exp是基于自然常数的指数函数。
关系attention
关系类型作为另一个重要的内聚成分,更清楚、更直接地反映了知识图中实体之间的现实世界联系。即使通过关系链接的实体嵌入被更新,或者相同的关系出现在不同的三元组中,这种关系在语义上并不改变,总是稳定地(无歧义)描述实体之间的语义。因此,可以通过纯粹依赖关系(不考虑实体)来确定从邻居实体捕获的信息的权重。同时,由于知识图中的关系有各自的类型,对于由相似关系类型连接的实体应统一考虑。例如,图2中橙色和蓝色的关系类型相似(即图1中的美国总统和奥巴马家族),可以看作是两个不同的信息渠道,需要分别处理。
论文阅读 Learning graph attention-aware knowledge graph embedding

具体来说,为了收集与同种类型关系相连接的相邻实体提供的实体特征,我们抛开实体对的信息,仅利用关系计算注意系数(如图2所示)。实体特征初始化对模型性能和收敛速度的影响显著降低。充分利用知识图提供的关系信息。我们还采用了一个多头部注意框架,实现了类似于实体注意的多通道特征学习,注意对象head可以通过知识图中关系的相关性、任务需求的相关性或随机初始化来确定。注意系数可以直接通过点积注意得到:

论文阅读 Learning graph attention-aware knowledge graph embedding
其中rij为实体ei和ej之间的关系,head为各注意头的可训练注意参数。
我们采用了多头注意力机制,将会有K个不同的初始化注意头学习并行更新实体表示。对关系注意系数aij进行归一化,得到不同邻居实体的权值,如下所示:
论文阅读 Learning graph attention-aware knowledge graph embedding
在与ei相连的关系中,我们添加了一个自循环关系,它保留了自身的实体特征,并且默认设置了权重。与实体注意的最终输出嵌入相似,关系注意的输出hi也采取图2右半部分所示的形式,头部使用实体分类进行训练。
结构attention
三元组是知识图中最小的知识单元,上述的同一性注意和关系性注意都是三元组中相关性的度量。事实上,实体的邻居也可以被视为其自身信息的隐式表示。因此,两个实体之间的相关度量应该考虑它们相邻实体的影响。因此,我们提出基于结构指纹(structural fingerprints)来计算两个实体邻居之间的相关性。首先,生成每个目标实体的结构指纹,即根据邻域内实体与目标实体的结构关系确定重要性,并根据目标实体自适应划分其邻域。然后,在评估两个实体之间的相关性时,我们通过分析两个实体的结构指纹之间的关系来计算结果。
直观地说,邻居实体的重要性会随着与目标实体的距离增加而衰减,但这种衰减会由于社区内部结构的连通性/密度而略有变化。常见的高斯衰减和非参数衰减仅仅依靠实体之间的距离来实现权重分布,本质上忽略了结构差异。为了根据局部图结构(连通形状或密度)调整邻域实体的权值,我们使用带重启的随机行走(Random Walk with Restart, RWR)策略计算权值,并完成相应的自适应邻域划分。RWR通过模拟相邻节点间粒子的迭代运动来探索网络的全局拓扑。它量化了网络中节点之间的接近程度,在信息检索等领域得到了广泛的应用。
为了获得实体ei的结构指纹,我们考虑它的邻居实体集Ei和对应的邻接矩阵Ai。粒子从目标实体ei开始,以与关系权值成比例的概率在eii中随机走向它的邻居实体。在每一步中,它也有一定的概率返回到目标实体。迭代过程可以写成
论文阅读 Learning graph attention-aware knowledge graph embedding
其中Ai~是通过对Ai的列进行归一化得到的转移概率矩阵;c∈[0,1]是随机漫步和重新开始之间的权衡参数,vi是一个除了与目标实体ei相对应的条目之外都是零的向量。收敛解可以写成为
论文阅读 Learning graph attention-aware knowledge graph embedding
其中,wi量化目标实体与其邻居中所有实体的接近程度。同时,整个结构指纹直观地反映了知识图的局部结构细节,有效地区分了实体的重要性。c控制了邻域权值的衰减率。当c=0时,除目标实体外,wi为0;当c=1时,wi为图上标准随机游动的稳定分布。在实践中,c将由下游任务进行优化,并根据任务需求挖掘子图的结构性质。
在分析两个实体之间的结构相关性时,我们可以利用Jaccard相似度计算两个实体结构指纹之间的相关性,
论文阅读 Learning graph attention-aware knowledge graph embedding
其中wip和wjp是不同实体邻居集Ei和Ej的权重。邻居实体的结构权值aij可以通过对以下函数的归一化得到:
论文阅读 Learning graph attention-aware knowledge graph embedding
一旦计算出注意系数,实体ei的最终输出特征hi~通过相邻实体的非线性组合得到,如下所示:
论文阅读 Learning graph attention-aware knowledge graph embedding
论文阅读 Learning graph attention-aware knowledge graph embedding
其中σ为sigmoid函数。特别地,为了平衡三种不同的注意力来源,我们将它们合并成最后的注意力。
论文阅读 Learning graph attention-aware knowledge graph embedding
其中λ、μ、η为手动配置的权值。事实上,实验表明,超参数的调整并没有带来显著的性能提升,所以我们使用平均池来获得最终权重:
论文阅读 Learning graph attention-aware knowledge graph embedding
Normalize是全局归一化函数。
论文阅读 Learning graph attention-aware knowledge graph embedding
为了实现多通道特征学习,我们使用多头注意框架扩展了图注意机制。具体来说,如图3右侧所示,对应于K个特征学习通道,执行K个独立的注意机制来完成ei的特征学习,并连接在一起形成如下输出嵌入
论文阅读 Learning graph attention-aware knowledge graph embedding
为了获得充分考虑结构和节点信息的实体嵌入,我们利用实体分类任务提供的交叉熵损失来训练注意参数。
由于我们根据这些关系的聚类现象在关联注意中设置了注意头,因此我们将嵌入在特定单个注意头中的实体馈送到图3中。根据候选三元组中关系的聚类,将基于多头图注意头的实体嵌入更新到DistMult, ComplEx, ConvE中。
设置loss函数为:
论文阅读 Learning graph attention-aware knowledge graph embedding
实验结果:
论文阅读 Learning graph attention-aware knowledge graph embedding

个人总结:本文实现了先通过图注意力对三元组节点进行训练,再将训练好的节点输入至DistMult, ComplEx, ConvE中,最后在接上一个softmax分类层对三元组分类的准确度进行评分。在图注意力的基础上关系注意力和节后注意力作为权重加了进去,得到了一个最终的权重。但在GAT模块没有对关系进行处理,可以仅仅理解为对实体进行了信息聚合,关系没有任何变化,这也是在之后还需要另一个嵌入模型做”二次嵌入”的原因吧。不过我发现目前的嵌入模型都已经转入了信息聚合的领域,同时也专注于关系的作用。三元组关系的含义包含了实体的类别信息,应当利用这种类别信息对关系或实体的嵌入进行改进。

Original: https://blog.csdn.net/qq_41669355/article/details/121425636
Author: 勤劳的复读机
Title: 论文阅读 Learning graph attention-aware knowledge graph embedding

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/595492/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球