GAT

GAT

一、图注意力机制

注意力机制的核心:对给定信息进行权重分配。权重高的信息系统对其进行重点加工

注意力机制三要素:

Query:当前中心节点的特征向量

Source:所有邻居的特征向量

Attention Value:中心节点经过聚合操作后的新的特征向量

本质:在GNN的基础上引入权重矩阵,对邻接矩阵重构(加权)

GAT两种计算方式:

全局图注意力:节点与图上所有节点做attention计算(丢失了图的结构特征,运算成本巨大)

掩码图注意力:节点只与邻居节点做attention计算(利用了图的结构特征,减少了运算量)

$$ h_{i}^{`} = \sigma(\sum_{j\in N(i) } \alpha_{ij}W*h_j) $$

以下图为例展示:

邻接矩阵计算图Attention,邻接点增加权重参数并归一化,以A点为例进行邻接矩阵处理:

特征矩阵变换过程:

以A点为例,其与B、C相连,过程如下:

同样以A点为例,整体计算流程如下:

$$ h_{1}^{ * } * \alpha_{11} + h_{2}^{ * } * \alpha_{12} + h_{3}^{ * } * \alpha_{13} = h_{1}^{`} $$

代码实现对比:

image-20240904132539100