GCN论文阅读与代码梳理(4)——GAT

GCN论文阅读与代码梳理(4)——GAT_第1张图片

本论文基于注意力的体系结构来执行图结构数据的节点分类。其思想是计算图中每个节点的隐藏表示,通过关注它的邻居,遵循自我注意策略。

  • 图神经层

该层输入为一组节点特征h=\{\vec{h_1},\vec{h2},...,\vec{h_N}\},N为节点个数

输出为h'=\{\vec{h_1'},\vec{h2'},...,\vec{h_N'}\}

在每个节点上执行自注意力机制:e_{ij}=a(W\vec{h_i},W\vec{h_j}),该公式去掉了所有图结构信息,为加入图信息,本文使用masked attention,即仅关注节点i在图中的一阶邻居节点。

1、用softmax对节点进行归一化:a_{ij}=spftmax_j{(e_{ij})}=\frac{exp(e_{ij})}{\sum{exp(e_{ik})}}

2、进阶的,attention机制用神经网络实现:a_{ij}=\frac{exp(LeakyReLU(\vec{a^T}[W\vec{h_i},W\vec{h_j}]))}{\sum exp(LeakyReLU(\vec{a^T}[W\vec{h_i},W\vec{h_k}]))}GCN论文阅读与代码梳理(4)——GAT_第2张图片

使用multi-head attention,共K个独立注意力机制:\vec{h_i'}=\sigma(\frac{1}{K}\sum_{k=1}^K\sum_ja_{ij}^kW^k\vec{h_j})

图注意力层解决了下列问题:

  • 计算高效:所有边和所有节点的计算可以并行计算。

  • 与GCN相反,允许对相同领域的节点分配不同的权重,以实现模型容量的飞跃。

  • 注意力共享,不依赖于全局图特征访问。因此:

    • 图不需要是无向的。

    • 直接适用于归纳学习技术。

  • 在整个邻居范围内工作,且不规定顺序,这不会导致一个跨邻域的一致性节点顺序问题。

  • 利用节点特征进行相似度计算,这不用预先知道图结构信息。

你可能感兴趣的:(GCN,神经网络,深度学习,机器学习)