图注意力网络(Graph Attention Networks)详解
1. 技术要求
所有代码示例可在 GitHub 上找到,链接为:https://github.com/PacktPublishing/Hands-On-Graph-Neural-Networks-Using-Python/tree/main/Chapter07 。在本地机器上运行代码所需的安装步骤可按需查找对应指引。
2. 图注意力层介绍
图注意力网络(GATs)的核心思想是,部分节点比其他节点更为重要。在图卷积层中,就已经存在这种情况,由于归一化系数的存在,邻居较少的节点相对更重要。然而,这种方法存在局限性,因为它仅考虑了节点的度。而图注意力层的目标是生成考虑节点特征重要性的加权因子。
我们将这些加权因子称为注意力分数,用 $\alpha_{ij}$ 表示节点 $i$ 和节点 $j$ 之间的注意力分数。图注意力算子可定义如下:
[h_i = \sum_{j \in \mathcal{N} i} \alpha {ij} \mathbf{W} x_j]
GATs 的一个重要特性是,注意力分数是通过相互比较输入来隐式计算的(因此称为自注意力)。计算这些注意力分数可分为以下四个步骤,同时还可以对图注意力层进行改进:
1. 线性变换
2. 激活函数
3. Softmax 归一化
4. 多头注意力
5. 改进的图注意力层
超级会员免费看
订阅专栏 解锁全文
1万+

被折叠的 条评论
为什么被折叠?



