最近组会介绍了一篇论文,来源于ICLR2021的一篇会议论文,作者来自韩国的科学技术学院。 本次主讲内容主要是两个部分,分别对论文做个简单的介绍和对核心代码进行讲解。
一、论文介绍
1. 动机
(1)图神经网络(GNNs)无法学到最优表示,主要是因为真实世界的图通常会存在噪音,不相关的节点间可能存在连接,所以早期使用图卷积神经网络(GCN)做关系抽取任务就会对句法分析树做剪枝。
(2)图注意力网络(GATs),让模型自动学习节点之间的连接关系,但GATs在跨数据集上表现不一致,而且可解释性不强。
(3)本文提出了自监督图注意力网络(SuperGAT),结合最近非常火的自监督学习方法,使用已知的边信息指导图注意力网络的学习,取得了非常不错的效果。
2. 贡献
(1)构建了一个利用边信息的自监督图注意力模型。
(2)分析了GO(single-layer neural network)和DP(dot-product)两种注意力机制。label agreement(两个节点是否有相同标签)任务上GO更好,link prediction(两个节点间是否有边连接)任务上DP更好。
(3)在真实数据集上验证了模型的有效性。
3. 方法
图神经网络学习的过程就是需要聚合邻接节点信息的过程,首先我们看一下GAT的一般形式,如下图:
这里,Hl是第l层的表示,N是节点个数,Fl是l层的特征维度,Ni是i节点的邻接节点集合,i是中心节点,j是邻接节点,αij(l+1)是邻接节点的归一化权重矩阵,eij(l+1)可以看成是ij节点的相似度或者是j节点对i节点的重要程度,GAT重要的就是如何求eij(l+1),由此对邻接节点进行聚合,下面介绍论文中提到的四种求eij(l+1)的图注意力机制。
(1)第一种是GO,把i节点和j节点的表示拼接起来,乘以一个权重矩阵,计算公式和论文中的实现如下所示,使用的是PyTorch里的爱因斯坦乘法。
(2)第二种是DP&