圖神經網絡三劍客:GCN、GAT與GraphSAGE

圖神經網絡三劍客:GCN、GAT與GraphSAGE

2020-2-27 17:28| 發佈者: 煉數成金_小數| 查看: 47856| 評論: 0|原作者: 桑運鑫|來自: PaperWeekly

摘要: 2019 年號稱圖神經網絡元年,在各個領域關於圖神經網絡的研究爆發式增長。本文主要介紹一下三種常見圖神經網絡:GCN、GAT 以及 GraphSAGE。前兩者是目前應用比較廣泛的圖神經網絡,後者則爲圖神經網絡的工程應用提供 ...

2019 年號稱圖神經網絡元年,在各個領域關於圖神經網絡的研究爆發式增長。本文主要介紹一下三種常見圖神經網絡:GCN、GAT 以及 GraphSAGE。前兩者是目前應用比較廣泛的圖神經網絡,後者則爲圖神經網絡的工程應用提供了基礎。

 

GCN

圖神經網絡基於巴拿赫不動點定理提出,但圖神經網絡領域的大發展是在 2013 年 Bruna 提出圖上的基於頻域和基於空域的卷積神經網絡後。

 

關於圖卷積神經網絡的理解與介紹,知乎上的回答已經講的非常透徹了。

 

如何理解 Graph Convolutional Network (GCN)?

https://www.zhihu.com/question/54504471/answer/332657604

 

這裏主要介紹一下 PyG 和 DGL 兩個主要的圖神經網絡庫實現所基於的文章 Semi-supervised Classification with Graph Convolutional Networks。它基於對圖上頻域卷積的一階近似提出了一種高效的逐層傳播規則。 

 

論文標題:Semi-supervised Classification with Graph Convolutional Networks

論文鏈接:https://arxiv.org/abs/1609.02907

 

在將定義在歐式空間上的拉普拉斯算子和傅里葉變換對應到圖上之後,圖上的頻域卷積操作可以基於卷積定理自然導出:

 

GAT

PyG 與 DGL 的 GAT 模塊都是基於 Graph Attention Networks 實現的,它的思想非常簡單,就是將 transform 中大放異彩的注意力機制遷移到了圖神經網絡上。

 

論文標題:Graph Attention Networks

論文鏈接:https://arxiv.org/abs/1710.10903

整篇文章的內容可以用下面一張圖來概況。

 

首先回顧下注意力機制的定義,注意力機制實質上可以理解成一個加權求和的過程:對於一個給定的 query,有一系列的 value 和與之一一對應的 key,怎樣計算 query 的結果呢?

 

很簡單,對 query 和所有的 key 求相似度,然後根據相似度對所有的 value 加權求和就行了。這個相似度就是 attention coefficients,在文章中計算如下:

既然得到了上式,那麼多頭注意力的更新就不言而明瞭,用 k 個權重係數分別得到新的結點特徵之後再拼接就可以了:

 

最後就是大家喜聞樂見的暴打 benchmarks 的環節,GAT 在三個數據集上達到了當時的 SOTA。

 

GraphSAGE

GraphSAGE 由 Inductive Representation Learning on Large Graphs 提出,該方法提供了一種通用的歸納式框架,使用結點信息特徵爲未出現過的(unseen)結點生成結點向量,這一方法爲後來的 PinSage(GCN 在商業推薦系統首次成功應用)提供了基礎。

 

論文標題:Inductive Representation Learning on Large Graphs

論文鏈接:https://arxiv.org/abs/1706.02216

但 GraphSAGE 的思想卻非常簡單,也可以用一張圖表示。 

 

算法的詳細過程如下:

 

總結

本文對圖神經網絡中常用的三種方法進行了介紹。隨着圖神經網絡研究的熱度不斷上升,我們也看到圖神經網絡的不同變種不斷涌現,此外,因爲對於非歐空間數據良好的表達能力,圖神經網絡在交通、金融、社會科學等有大量相應數據積澱的交叉領域也面臨着廣闊的應用前景。

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