GAT: Graph Attention Network | 論文分享

極驗發表於2019-03-29
本文作者提出GATs方法,利用一個隱藏的self-attention層,來處理一些圖卷積中的問題。不需要複雜的矩陣運算或者對圖結構的事先了解,通過疊加self-attention層,在卷積過程中將不同的重要性分配給鄰域內的不同節點,同時處理不同大小的鄰域。作者分別設計了inductive setting和transductive setting的任務實驗,GATs模型在基線資料集Cora、Citeseer、Pubmed citation和PPI資料集上取得了state-of-the-art的結果。

GAT

將卷積泛化到圖表資料領域的方法可以分類為譜方法和非譜方法。其中,譜方法是基於圖的譜表達,這類方法已經成功的運用在上下文節點分類上。非譜方法直接在graph上定義卷積,核心是定義一個函式,它作用在中心節點的鄰居集合上,並且保留權重共享的屬性,這個裡每個中心節點鄰居集合的大小不確定。Attention機制多用於基於序列的任務中。Attention機制的特點是,它的輸入向量長度可變,通過將注意力集中在最相關的部分,以此做出決定。attention機制結合RNN或者CNN的方法,在許多工上取得了不錯的表現。

基於這兩個方面的工作,作者提出了基於attention的圖卷積架構,在圖結構資料上實現節點的分類。主要方法是,通過遵循self-attention策略,鄰域節點參與計算每個中心節點的隱含表達。

先構建一個基礎的block,整個graph attention網路都是基於這個block疊加構建的。這個基礎block叫做graph attention layer。

GAT: Graph Attention Network | 論文分享

layer的輸入是N個長度為F的特徵向量,GAT: Graph Attention Network | 論文分享。輸出是N個長度為F'的特徵向量,GAT: Graph Attention Network | 論文分享。要得到充分的,將輸入特徵轉化為高階特徵的表達能力,至少需要一個線性變換。共享線性變換權重矩陣,運用在所有節點上。再為每個節點加上self-attention。這是一個共享的attention機制GAT: Graph Attention Network | 論文分享,a將兩個長度為F'的向量轉化為一個標量,作為attention係數。

GAT: Graph Attention Network | 論文分享

上式表示的意義是,節點j的特徵,對節點i的重要性。在普遍情況下,對於注意力機制,允許其他所有節點參與目標節點特徵的計算,也就是說不考慮圖結構資訊。這裡,通過masked attention注入圖結構資訊,這樣一來,對於節點j,只計算節點j的鄰居節點i 的注意力係數GAT: Graph Attention Network | 論文分享。這裡鄰居節點只考慮一度鄰居,為了使注意力係數更容易比較,使用softmax將其歸一化。 

GAT: Graph Attention Network | 論文分享

作者的實驗中,注意力機制a是一個權重向量a引數化的單層前饋神經網路。網路使用非線性函式LeakyReLU作為啟用函式。注意力係數的完整計算公式如下。 

GAT: Graph Attention Network | 論文分享

其中GAT: Graph Attention Network | 論文分享表示轉置,||代表連線操作。

一旦得到歸一化的關注係數,就利用關注係數與對應的節點特徵做線性變換,再進行一次非線性變換後,作為節點特徵的輸出。

GAT: Graph Attention Network | 論文分享

對於節點i,它的一階鄰居節點集合為GAT: Graph Attention Network | 論文分享,根據節點i對每個鄰居節點j的關注係數,計算節點i的輸出GAT: Graph Attention Network | 論文分享

為了保證注意力機制的穩定性,執行mult-head attention,同時執行三個相互獨立的attention機制,並將三次的輸出結果concat或者計算平均。 

GAT: Graph Attention Network | 論文分享

在最後一層網路,如果執行多頭attention機制,concat將不再合適,此時,在最終的非線性判斷函式之前,計算平均 :

GAT: Graph Attention Network | 論文分享

實驗

作者設計了四個graph based資料任務,執行了GAT模型與一系列強大的baseline方法的比較評估。在Transductive和Inductive的配置下,GATs方法均達到state-of-art的效果。

GAT: Graph Attention Network | 論文分享

在transductive的任務中,比較平均分類準確度。為了公平的評估注意力機制的優勢,作者進一步評估了一個計算64個隱含特徵的GCN模型,並同時嘗試了ReLU和ELU啟用。由表1,GAT方法在資料集Cora、Citeseer的分類準確度比GCNs高1.5%和1.6%。這說明,將不同的權重分配給鄰域內不同的鄰居能夠有效提高模型表達能力。

GAT: Graph Attention Network | 論文分享

對於Inductive任務,取兩個模型從未見過的graph測試,比較節點的F1-score。在PPI資料集上,GAT模型的表現比GraphSAGE的最好成績還要高20.5%,GAT模型具有良好的inductive setting運用潛力。 

GAT: Graph Attention Network | 論文分享

參考論文:
https://arxiv.org/pdf/1710.10903.pdf

相關文章