![3f3d915eb116dfd1a4301b640c41c7ee.png](https://img-blog.csdnimg.cn/img_convert/3f3d915eb116dfd1a4301b640c41c7ee.png)
https:// arxiv.org/pdf/1710.1090 3
Abstract
本文提出了一种新的应用于图数据上的网络结果Graph Attention Networks(GATs),不同于先前一些基于谱域的图神经网络,通过使用masked的self attention,从而克服了先前图卷积网络方面的短板。GATs既能够解决inductive problems,也能解决transductive problems。最终的实验结果也表明GATs在实际应用中有很好的效果。
这里插播一下inductive problems和transductive problems:
主要区别是在,训练阶段是否利用了Test data。Inductive learning对未来的Testing data并不知,Transductive learning则是已知Testing data的,当然Testing data是unlabeled。
![7841f2cebbbc9ec64148d8771aa5f29d.png](https://img-blog.csdnimg.cn/img_convert/7841f2cebbbc9ec64148d8771aa5f29d.png)
个人理解是,对于GCNs这样的方法,在训练时会用到整个graph的信息,相当于是Transductive learning。
Introduction
这部分分析了从CNN到GNN的发展历程,然后分别剖析了现有基于谱域的GNN方法和非谱域GNN方法的不足之处。
首先,基于谱域的GNN不断进化,通过在傅利叶定义域内对图上拉普拉斯算子进行特征分解来实现卷积操作,再到引入平滑参数的filter,再到通过图的切比雪夫展开的filter,最后是限制只对一阶邻居进行操作的方法。所有这些方法都要依靠拉普拉斯矩阵的特征值,这就必须对整个图结构进行操作,这就使得一个训练好的模型很难适用于其他问题。
对于非谱域的方法,即空域上的GNN方法,通过对空间中邻居节点进行卷积操作是一个方法,但是这需要解决如何处理不同节点不一样的邻居数目。一些方法是使用图的度矩阵作为输入,或者固定邻居节点的数量。
接着,论文介绍了一下Attention mechanism。
基于以上的工作,论文提出了GATs,该模型具有以下优点:
- 并行处理节点-邻居节点对;
- 可以处理有不同度节点;
- 该模型是inductive的,即不需要知道整个图的全部信息;
GAT Architecture
Graph Attention Layer
模型GAT通过堆叠graph attention layer实现,这里说明graph attention layer。该层的输入是节点特征集合
这个系数可以表示节点 j 相对于节点 i 的重要性。论文只计算节点 i 的邻居节点,这个称作masked attention。接着就是归一化权重系数:
进一步细化公式如下, a 向量为F'×F',使用 LeakyReLU(α = 0.2):
这样即可得到节点 i 的表示:
为了是self-attention能稳定地表示节点 i ,这里还使用了multi-head attention机制,进一步调整公式为:
当然,如果使用上式multi-head attention层直接作为输出层明显不合适,所以也可以使用 K个head的均值,如下式:
模型的直观表示见下图。
![b4e383809a3026c9bde2ab14e88c0ea1.png](https://img-blog.csdnimg.cn/img_convert/b4e383809a3026c9bde2ab14e88c0ea1.png)
Evaluation
实验部分使用了Cora,Citeseer,Pubmed和PPI数据集做了实验。数据集的统计描述情况如下表:
![15ce2e7ceb44eca6b74391bb59ca9374.png](https://img-blog.csdnimg.cn/img_convert/15ce2e7ceb44eca6b74391bb59ca9374.png)
对比分别从Transductive learning和Inductive learning角度对比,针对Transductive learning对比了MLP、DeepWalk、GCN、MoNet等方法,针对Inductive learning则对比了GraphSAGE及其变种方法。
Transductive Learning
![c53cdd25d498fdaeb9ec8c0d0ed84794.png](https://img-blog.csdnimg.cn/img_convert/c53cdd25d498fdaeb9ec8c0d0ed84794.png)
Inductive Learning
![4f674ea3d4fe5c97422115ff432edd7c.png](https://img-blog.csdnimg.cn/img_convert/4f674ea3d4fe5c97422115ff432edd7c.png)
从对比实验可以看出,GATs在Transductive learning、Inductive learning中都有最好的结果。这也说明了模型的有效性。同时,论文还使用GATs生成的节点表示进行了t-SNE聚类来直观的展示模型的效果。
![e4139c16534e660c6f44a9c25ffde1bb.png](https://img-blog.csdnimg.cn/img_convert/e4139c16534e660c6f44a9c25ffde1bb.png)
Conclusion
最后,对模型做了总结。
Github上也有找到GATs的实现:
PetarV-/GATgithub.com![dfe91767c93eefc83357d74b48e2003e.png](https://img-blog.csdnimg.cn/img_convert/dfe91767c93eefc83357d74b48e2003e.png)
![7b4af81ffd3eed9a3960d93365b2fd50.png](https://img-blog.csdnimg.cn/img_convert/7b4af81ffd3eed9a3960d93365b2fd50.png)
往期文章:
- Gotcha - Sly Malware 基于metagraph2vec的恶意软件检测系统 https://zhuanlan.zhihu.com/p/73011375
- DeepWalk Online Learning of Social Representations https://zhuanlan.zhihu.com/p/68328470
- 基于注意力的GNN的半监督学习AGNN https://zhuanlan.zhihu.com/p/65732106
- 用于推荐的异构信息网络嵌入方法 HIN Embedding for Recommendation https://zhuanlan.zhihu.com/p/63329653
- 异构图注意力网络 Heterogeneous Graph Attention Network https://zhuanlan.zhihu.com/p/62884521