圖學習(一)Graph Attention Networks
背景
研究機構:Department of Computer Science and Technology;Centre de Visi´o per Computador, UAB;Montreal Institute for Learning Algorithms
來源:ICLR2018
摘要
針對圖結構的資料,本文提出了一種圖注意力網路GAT,該網路使用masked self-attention用於解決之前圖卷積模型中存在的問題。在GAT中,圖中的每個節點可以根據鄰節點的特徵,為其分配不同的權值。GAT的另一個優點在於,無需使用預先構建好的圖。
動機
GCN的侷限性:
(1)無法完成inductive任務,即處理動態圖問題。
inductive任務是指:訓練階段與測試階段需要處理的graph不同。通常是訓練階段只是在子圖(subgraph)上進行,測試階段需要處理未知的頂點。(unseen node)
(2)處理有向圖的瓶頸,不容易實現分配不同的學習權重給不同的neighbor。
方法
作者提到,GAT的實現方式可以有兩種思路。其一,Global graph attention
即每一個頂點
i
i
i都對圖上任意頂點進行attention操作。優點:完全不依賴於圖的結構,可以很好的完成inductive任務。缺點:計算量巨大,並且資料本身的圖結構特點丟失,可能導致很差的結果。
其二,Mask graph attention,注意力機制的運算只在鄰居頂點上進行。作者採用的是這種方式。
具體細節:
與一般的attention方法類似,GAT的計算步驟也是兩步走策略:
(1)計算注意力分佈(即用於加權的係數)
對於頂點
i
i
i,逐個計算各個鄰居
j
(
j
∈
N
i
)
j(j\in N_i)
j(j∈Ni)與自己的相似度係數:
e
i
j
=
a
(
[
W
h
i
∣
∣
W
h
j
]
)
e_{ij}=a([Wh_i||Wh_j])
eij=a([Whi∣∣Whj])
W是共享的可學習引數矩陣用於對頂點特徵進行增維,
[
.
∣
∣
.
]
[.||.]
[.∣∣.]表示對頂點
i
,
j
i,j
i,j變換後的特徵進行concate,最後利用
a
(
.
)
a(.)
a(.)將拼接後的高維特徵對映到一個實數。顯然學習頂點
i
,
j
i,j
i,j之間的相關性,就是通過可學習的引數
W
W
W和對映
a
(
.
)
a(.)
a(.)完成的。
有了相關性係數,接下來就是一個簡單的softmax操作,賦予不同的鄰居以不同的權重。
作者在此處使用了一個LeakyReLU,即
獲得加權係數的示意圖如下:
(2)進行加權求和
這一步比較簡單,公式表示為
h
i
′
h_{i}^{'}
hi′就是GAT輸出的對於每個頂點
i
i
i的新特徵(融合了鄰域資訊),
σ
(
.
)
\sigma(.)
σ(.)是啟用函式。
受multi-head attention的影響,利用K個head來對特徵進一步增強,也可以理解為是一種ensemble
加權求和示意圖如下
為什麼GAT適用於有向圖?
GAT的運算方式是逐頂點的運算(node-wise),這一點可從上述公式中很明顯地看出。每一次運算都需要迴圈遍歷圖上的所有頂點來完成。逐頂點運算意味著,擺脫了拉普利矩陣的束縛,使得有向圖問題迎刃而解。
為什麼GAT適用於inductive任務?
GAT中重要的學習引數是 W W W與 a ( . ) a(.) a(.),因為上述的逐頂點運算方式,這兩個引數僅與第一個公式中闡述的頂點特徵相關,與圖的結構毫無關係。所以測試任務中改變圖的結構,對於GAT影響並不大,只需要改變 N i N_i Ni,重新計算即可。
參考文獻
相關文章
- ICLR2021-1:MULTI-HOP ATTENTION GRAPH NEURAL NETWORKSICLR
- Higher-order Graph Neural Networks
- GAT: Graph Attention Network | 論文分享
- 深度學習與圖神經網路學習分享:Graph Embedding 圖嵌入深度學習神經網路
- 閱讀論文:《Compositional Attention Networks for Machine Reasoning》Mac
- 基於 Nebula Graph 構建圖學習能力
- 論文解讀(SAGPool)《Self-Attention Graph Pooling》
- 論文解讀(DAGNN)《Towards Deeper Graph Neural Networks》GNN
- 論文解讀(GIN)《How Powerful are Graph Neural Networks》
- attention注意力機制學習
- 論文解讀(AGCN)《 Attention-driven Graph Clustering Network》GC
- 論文閱讀 TEMPORAL GRAPH NETWORKS FOR DEEP LEARNING ON DYNAMIC GRAPHS
- 大模型學習筆記:attention 機制大模型筆記
- 2019 IJCNN之GAN(image transfer(face)):Attention-Guided Generative Adversarial Networks for UnsupervisCNNGUIIDE
- 圖神經網路論文閱讀(十六) GraLSP: Graph Neural Networks with Local Structural Patterns,AAAI 2020神經網路StructAI
- 論文閱讀:《Multimodal Graph Networks for Compositional Generalization in Visual Question Answering》
- 論文解讀(LA-GNN)《Local Augmentation for Graph Neural Networks》GNN
- 論文解讀(GraphSMOTE)《GraphSMOTE: Imbalanced Node Classification on Graphs with Graph Neural Networks》
- 論文閱讀 A Data-Driven Graph Generative Model for Temporal Interaction Networks
- 論文學習13“Feature Pyramid Networks for Object Detection”Object
- 計網學習筆記五 wireless && mobile networks筆記
- 機器學習實戰(十三):Convolutional Neural Networks機器學習
- graph attention network(ICLR2018)官方程式碼詳解(tensorflow)ICLR
- 論文解讀《Deep Attention-guided Graph Clustering with Dual Self-supervision》GUIIDE
- 實體對齊4.EMNLP2018:(GCN-Align)Cross-lingual Knowledge Graph Alignment via Graph Convolutional NetworksGCROS
- 全網最詳細解讀《GIN-HOW POWERFUL ARE GRAPH NEURAL NETWORKS》!!!
- 論文解讀(Geom-GCN)《Geom-GCN: Geometric Graph Convolutional Networks》GC
- Graph Embedding圖嵌入
- 圖論(Graph Theory)圖論Graph Theory
- 遷移學習(DANN)《Domain-Adversarial Training of Neural Networks》遷移學習AI
- 深度學習中的注意力機制(Attention Model)深度學習
- 深度學習中不得不學的Graph Embedding方法深度學習
- 論文解讀(SelfGNN)《Self-supervised Graph Neural Networks without explicit negative sampling》GNN
- Wasserstein Generative adversarial Networks (WGANs) 學習WGAN資料彙總
- 深度殘差學習筆記:Deep Residual Networks with Dynamically Weighted Wavelet筆記
- 深度學習論文翻譯解析(十):Visualizing and Understanding Convolutional Networks深度學習
- 深度學習論文翻譯解析(十五):Densely Connected Convolutional Networks深度學習
- 深度學習論文翻譯解析(十六):Squeeze-and-Excitation Networks深度學習