GCN與GAT之間的重要聯繫和區別

談幾點深入的理解

 

1. 與GCN的聯繫與區別

無獨有偶,我們可以發現本質上而言:GCN與GAT都是將鄰居頂點的特徵聚合到中心頂點上(一種aggregate運算),利用graph上的local stationary學習新的頂點特徵表達。不同的是GCN利用了拉普拉斯矩陣,GAT利用attention係數。一定程度上而言,GAT會更強,因爲 頂點特徵之間的相關性被更好地融入到模型中。

2.  爲什麼GAT適用於有向圖?

我認爲最根本的原因是GAT的運算方式是逐頂點的運算(node-wise),這一點可從公式(1)—公式(3)中很明顯地看出。每一次運算都需要循環遍歷圖上的所有頂點來完成。逐頂點運算意味着,擺脫了拉普利矩陣的束縛,使得有向圖問題迎刃而解。

3. 爲什麼GAT適用於inductive任務?

GAT中重要的學習參數是  a(·) ,因爲上述的逐頂點運算方式,這兩個參數僅與頂點特徵相關,與圖的結構毫無關係。所以測試任務中改變圖的結構,對於GAT影響並不大,只需要改變 Ni,重新計算即可。

與此相反的是,GCN是一種全圖的計算方式,一次計算就更新全圖的節點特徵。學習的參數很大程度與圖結構相關,這使得GCN在inductive任務上遇到困境。

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章