Graph Attention Network (GAT) 图注意力网络 论文详解 ICLR2018
Graph Attention Network (GAT) 图注意力网络 论文详解 ICLR2018
文章目录
论文题目:Graph Attention Network (GAT)
时间:2018
期刊:ICLR
论文链接:https://arxiv.org/abs/1710.10903
Github链接:https://github.com/Diego999/pyGAT
1 相关介绍
graph上的deep learning方法无外乎就是希望学习节点特征以及节点在图中的结构特征。
GCN的局限性
- 无法完成inductive任务,即处理动态图问题。inductive任务是指:训练阶段与测试阶段需要处理的graph不同。通常是训练阶段只是在子图(subgraph)上进行,测试阶段需要处理未知的顶点。(unseen node)
- 处理有向图的瓶颈,不容易实现分配不同的学习权重给不同的neighbor
- 对于一个图结构训练好的模型,不能运用于另一个图结构(所以此文称自己为半监督的方法)
本文贡献(创新点)
- 引入masked self-attentional layers 来改进前面图卷积的缺点
- 对不同的相邻节点分配相应的权重,既不需要矩阵运算,也不需要事先知道图结构
- 四个数据集上达到state-of-the-art的准确率Cora、Citeseer、Pubmed、protein interaction
attention 引入目的
- 为每个节点分配不同权重
- 关注那些作用比较大的节点,而忽视一些作用较小的节点
- 在处理局部信息的时候同时能够关注整体的信息,不是用来给参与计算的各个节点进行加权的,而是表示一个全局的信息并参与计算
相关工作
对待图结构的数据有两种方法,谱方法和非谱方法
谱方法 spectral approaches
例如:GCN
Semi-Supervised Classification with Graph Convolutional Networks,ICLR 2017这篇文章中的方法
解析 :Semi-Supervised Classification with Graph Convolutional Networks用图卷积进行半监督分类
非谱方法 non-spectral approaches (基于空间的方法)
例如:GraphSAGE
William L Hamilton, Rex Ying, and Jure Leskovec. Inductive representation learning on largegraphs. Neural Information Processing Systems (NIPS), 2017.
解析:GraphSAGE:Inductive Representation Learning on Large Graphs
这种方法是将相邻节点设置为固定的长度,然后进行specific aggregator,这种方法在几个大的benchmarks上取得了非常好的效果。
注意力机制 self-attention
优点:可以处理任意大小输入的问题,并且关注最具有影响能力的输入。
注意力机制再RNN与CNN之中,都取得了不错的效果,并且可以达到state-of-the-art的性能。
Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, Lukasz Kaiser, and Illia Polosukhin. Attention is all you need. arXiv preprint arXiv:1706.03762, 2017
2 GAT
Graph Attentional Layer
和所有的attention mechanism一样,GAT的计算也分为两步:计算注意力系数(attention coefficient)和加权求和(aggregate)
input
单个 graph attentional layer的输入是一个节点特征向量集合
Unexpected text node: '  'Unexpected text node: '  'h={h1
其中
- NNN表示节点的数目
- FFF表示每个节点的特征的数目
output
并生成一个新的节点特征集合
Unexpected text node: '  'Unexpected text node: '  'h′={h1′