资讯详情

图神经网络:GAT学习、理解、入坑

介绍

论文地址-GRAPH ATTENTION NETWORKS-Published as a conference paper at ICLR 2018 tensorflow源码地址代码版本 pyGAT-pytorch源码地址 keras-gat 边预测任务-GraphSAGE

初步理解原理

??GAT(Graph Attention Networks)采用Attention通过对邻居节点的加权求和,学习邻居节点的权重,获得节点本身的表达。 给定图 G = ( V , E ) G = (V,E) G=(V,E), V V V 表示点, E E E 表示边,节点数 ∣ V ∣ = N |V| = N ∣V∣=N。 输入: N N N节点的特点, h = { h ? 1 , h ? 2 , … , h ? N } , h ? i ∈ R F \mathbf{h}=\left\{\vec{h}_{1}, \vec{h}_{2}, \ldots, \vec{h}_{N}\right\}, \vec{h}_{i} \in \mathbb{R}^{F} h={ h 1​,h 2​,…,h N​},h i​∈RF 输出:采用 Attention机制生成新的节点特征 h ′ = { h ⃗ 1 ′ , h ⃗ 2 ′ , … , h ⃗ N ′ } , h ⃗ i ′ ∈ R F ′ \mathbf{h^{\prime}}=\left\{\vec{h}_{1}^{\prime}, \vec{h}_{2}^{\prime}, \ldots, \vec{h}_{N}^{\prime}\right\}, \vec{h}_{i}^{\prime} \in \mathbb{R}^{F^{\prime}} h′={ h 1′​,h 2′​,…,h N′​},h i′​∈RF′ 作为输出.

从GNN,GCN到GAT

GAT模型

W就是可以训练的参数,分别用来针对向量A/B/…等进行操作(转置) “||”:拼接操作,“*”:内积 参数a也可以通过网络训练得到。 节点i的特征乘以W拼接上节点j的特征乘以W,再乘以 a → \overrightarrow{a} a ,公式:( ( W h i → ∣ ∣ W h j → ) ∗ a → (W\overrightarrow{h_i}||W\overrightarrow{h_j})*\overrightarrow{a} (Whi​ ​∣∣Whj​ ​)∗a )。   首先 ,为了更加充分地表示节点的特征,对节点 h i h_i hi​ 进行特征变换, W h i W h_i Whi​ , W ∈ R F ′ × F \mathbf{W} \in \mathbb{R}^{F^{\prime} \times F} W∈RF′×F ,即将节点的特征维度 F F F映射到维度 F ′ F^{\prime} F′上。关键的步骤来了,对图中的每个节点进行self-attention操作,计算任意两个节点之间的注意力权重。节点 j j j 对节点 i i i 的重要性计算公式如下: e i j = a ( W h ⃗ i , W h ⃗ j ) e_{i j}=a\left(\mathbf{W} \vec{h}_{i}, \mathbf{W} \vec{h}_{j}\right) eij​=a(Wh i​,Wh j​)   一般而言,该模型允许图中的每个节点扩展到其他节点,从而丢弃所有结构信息。 原论文中,通过masked attention将图结构注入这个机制中,即对于节点 [公式] 来说,只计算其一阶邻居节点集合 N i N_i Ni​ 中节点 对 i i i 的作用, j ∈ N i j \in \mathcal{N}_{i} j∈Ni​。   为了使系数在不同节点之间易于比较,论文中使用softmax函数在集合 N i \mathcal{N}_{i} Ni​中对它们进行归一化,如下所示。在实验中,注意力机制是一个单层的前馈神经网络,激活函数采用LeakyReLU。 α i j = softmax ⁡ j ( e i j ) = exp ⁡ ( e i j ) ∑ k ∈ N i exp ⁡ ( e i k ) \alpha_{i j}=\operatorname{softmax}_{j}\left(e_{i j}\right)=\frac{\exp \left(e_{i j}\right)}{\sum_{k \in \mathcal{N}_{i}} \exp \left(e_{i k}\right)} αij​=softmaxj​(eij​)=∑k∈Ni​​exp(eik​)exp(eij​)​   Attention系数按如下方式生成: α i j = exp ⁡ ( LeakyReLU ⁡ ( a → T [ W h ⃗ i ∥ W h ⃗ j ] ) ) ∑ k ∈ N i exp ⁡ ( LeakyReLU ⁡ ( a → T [ W h ⃗ i ∥ W h ⃗ k ] ) ) \alpha_{i j}=\frac{\exp \left(\operatorname{LeakyReLU}\left(\overrightarrow{\mathbf{a}}^{T}\left[\mathbf{W} \vec{h}_{i} \| \mathbf{W} \vec{h}_{j}\right]\right)\right)}{\sum_{k \in \mathcal{N}_{i}} \exp \left(\operatorname{LeakyReLU}\left(\overrightarrow{\mathbf{a}}^{T}\left[\mathbf{W} \vec{h}_{i} \| \mathbf{W} \vec{h}_{k}\right]\right)\right)} αij​=∑k∈Ni​​exp(LeakyReLU(a T[Wh i​∥Wh k​]))exp(LeakyReLU(a T

标签: whj1精密电位器精密电位器whj1

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台