Graph Neural Network
回顧半監督GCN,交替疊加兩次傳播層和感知層, 模型第l層的隱含狀態。
其中,。非線性啟用函式ReLU。引數和通過在所有標記樣本集合L上,最小化損失函式,訓練得到:
為了更好的理解GCN,作者將GCN中的非線性變換剔除,只保留傳播層,稱為GLN。這樣GLN模型就是一個簡單的線性模型。
與GCN中一樣,,權重矩陣和是最小化損失函式訓練得出。兩個傳播層只是簡單的對鄰居節點特徵加權求平均,權重為節點的度,輸出層也是一個線性分類器。如此,分離出線性傳播層和非線性感知層。GLN與其他方法的表現對比,如表2。比較GCN和GLN,GLN的準確度甚至更高,這表明對提升模型表現至關重要的是傳播層,而不是感知層。其他不使用圖卷積的方法對比,GLN模型在準確度上有明顯差距。基於這個結果,考慮使用attention機制,替換GLN中的線性傳播。
AGNN
原始的GCN和其他圖神經網路使用的是靜態,無法自適應的傳播法則。無法捕捉中心節點的哪個鄰居節點對於中心節點的分類貢獻更大。真實資料並非所有的邊都是代表著相同的關聯強度,其中必然有一些才是至關重要的。基於GLN的實驗結果,提出了作用與鄰居節點集合的attention機制,它可以學習到分類模型中,那些鄰居與中心節點更相關,並相應的權衡他們的貢獻。
AGNN第一層網路與原始GCN一樣,引數矩陣將節點特徵X轉化為長度為的特徵向量,啟用函式使用ReLU。
在每個傳播層加入引數化的注意力引導機制,引數為。
這樣,對於節點i的輸出向量為:
其中傳播矩陣也是關於第l層狀態和引數的函式。attention中的softmax函式是確保傳播矩陣每行的和為1,代表鄰居節點對中心節點的影響力總和為1。這樣從節點j到i的注意力為 :
計算節點i和節點j在第l層隱含狀態的餘弦距離,它捕捉了節點j到節點i的關聯程度。注意力機制更傾向於選擇那些與中心節點相同類別的鄰居節點,給予更強的關聯強度。
Experiments
在benchmark資料集上,作者設計了三個對比試驗,驗證AGNN模型的半監督分類精度。與其他baseline方法的結果對比,見下表。無論是隻包含傳播層的GLN模型還是基於attention的AGNN模型,都取得了優於其他方法的精度。
定性分析
之所以將attention引入模型,有一部分是因為,它提供了一定的解釋性。學習得到的傳播矩陣P,反映特徵聚合過程中,中心節點i,對鄰居節點j的關注度,它代表在對節點i分類過程中,節點j起到的作用。
上圖,作者提供了基於Cora和CiteSeer資料集,提供了鄰接矩陣成對節點之間attention的統計。展示了來自的節點c1 到來自的節點c2平均attention。將其定義為c2到c1 的相關性。
每個邊的相關性得分即為:
上式中,表示節點i的度,,表示包含self-loop在內的所有邊的集合。如果不使用任何attention,那麼,傳播中對中心節點的每個鄰居的關注度是均勻的,。加入attention之後,上式中的attention 需要為0,所以要減去這個基礎誤差。並且使用做歸一化,這樣,attention度量的是中心節點與其鄰居節點之間的相對強度,而不是絕對差異。
Figure1展示了CiteSeer和Cora資料集的相關性得分。對於兩個資料集,對角線上的元素占主導地位,這表明注意力機制正在學習為同一類別的節點增加權重。如果c1 →c2的相關性很高,那說明平均來看,類別c1 的節點更加關注鄰居集合中那些類別c2的節點。
剔除self-loops,分析相關性得分較高和較低的邊。對相關性得分進行排序,分別取top100和bottom100,計算這些邊中,兩端節點是相同型別節點的邊的佔比。如表5,這表明作者提出的模型結構傾向於更關注來自相同型別的兩個節點。
最後,分析測試集中,GCN沒有分類正確,但AGNN正確分類的節點。展示注意力機制如何加權區域性鄰居節點的貢獻。Fig2中作者展示了三個例項,節點外有黑色鑲邊的為目標節點,展示出目標節點的二階鄰居,鄰居節點的大小代表目標節點對鄰居節點的注意力強度。同樣可以發現,AGNN對目標節點分類時,鄰居節點中的某一類節點會受到更多的關注,這幫助模型將給目標節點打出正確的標籤。
參考連結
https://openreview.net/pdf?id=rJg4YGWRb