论文笔记之Graph Attention Networks
一、本文贡献
- 提出了图注意力网络,利用屏蔽的自注意层来解决基于图卷积的一些缺点。
- 注意力机制允许处理不同大小的输入,通过关注输入中最相关的部分来进行决策。
- 该机制可以隐式地给邻域中不同节点指定不同的权重,而不需要高代价的矩阵运算或预先知道图的结构。
二、模型分析
GAT层输入:
具体过程
- 为了将输入特征转换为更高层次的特征,因此对每个节点应用一个共享的线性变换,由权重矩阵进行参数化
- 对每个节点进行自我注意,也使用一个共享的注意机制来计算注意系数eij
该系数代表了节点j的特征对节点i的重要性。
- 执行掩蔽注意将图的结构注入到机制中——只计算节点j∈Ni,其中Ni是节点i在图中的某个邻域,本文中这些都将是i(包括i)的一阶邻居。为了使系数在不同节点之间易于比较,使用softmax函数对所有选择的j进行归一化:
- 注意机制a是一个单层的前馈神经网络,由权重向量进行参数化,并采用LeakyReLU非线性激活函数(输入斜率为负,值为0.2)。由注意力机制计算出的注意系数表示如下:
||运算符代表,将一个向量拼接到另一个向量之后,对应维度增加。
- 得到归一化注意系数后,再计算与之对应的特征的线性组合,将其作为每个节点的最终输出特征,最终输出特征的计算公式如下:
- 使用K个的独立注意机制对上式进行变换,然后将其特征串联,得到如下输出特征表示:
注意,在此设置中,最终返回的输出h’将由每个节点的KF’特征(而不是F‘)组成。
三、多头图注意层的聚合
多个注意力的个数是由实验结果调参调出来的,是人为规定的参数,是超参数。
四、模型优缺点
优势
- 在计算上,它是高效的:自注意层的操作可以并行化到所有的边缘,输出特征的计算也可以并行化到所有节点。
- GAT模型允许(隐式地)为同一邻居的节点分配不同的权重,分析学习到的注意力权重可能会带来可解释性方面的好处。
- 注意机制以一种共享的方式应用于图中的所有边,因此它不依赖于预先访问全局图的结构或其所有节点的特征。
- 它可以处理整个邻域,以可变的计算空间为代价,并且假定邻域内不存在任何排序。
- 我们的模型使用节点特征进行相似性计算,因此不需要预先知道图形结构。
缺点
- 本文所使用的张量操作框架只支持秩为2的张量的稀疏矩阵乘法,这限制了该层的批处理能力。
- 在所有图边上并行化,特别是以分布式方式并行化,可能会涉及大量冗余计算。
未来研究方向:
- 需要进一步了解所研究数据集的相关领域知识来更好地解释归一化注意系数。
- 利用注意力机制对模型的可解释性进行深入分析。
- 扩展模型使其包含边缘特征,可能处理更多问题。