图神经网络三剑客:GCN、GAT与GraphSAGE
?PaperWeekly 原創 ·?作者|桑運鑫
學校|上海交通大學
研究方向|圖神經網絡在金融領域的應用
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
在將定義在歐式空間上的拉普拉斯算子和傅里葉變換對應到圖上之后,圖上的頻域卷積操作可以基于卷積定理自然導出:
其中圖上的拉普拉斯矩陣(歸一化后)L 是一個半正定對稱矩陣,它具有一些良好的性質,可以進行譜分解:,其中 U 是 L 的特征向向量組成的矩陣,Λ 是 L 的特征值組成的對角矩陣,?則是定義在圖上的對信號??的傅里葉變換。
而對角矩陣??則是卷積核,也是不同的卷積操作關注的焦點,對??不同的設計會影響卷積操作的效率,其編碼的信息也會影響最終任務的精度。
一開始的圖卷積神經網絡將 ?視作 L 的特征值的一個函數?。但這種定義存在兩個問題:?
1. 對特征向量矩陣 U 的乘法操作時間復雜度是 ;??
2. 對大規模圖的拉普拉斯矩陣 L 的特征分解是困難的。
之后的研究發現可以使用切比雪夫多項式來對 進行近似:
其中?。?是 L 的最大特征值,?是切比雪夫多項式的系數向量。切比雪夫多項式通過如下的遞推公式定義:,起始值:。將其代入之前定義的卷積操作:
其中?,此時的時間復雜度為?。文章在此基礎上對卷積操作進行了進一步的簡化,首先固定 K=1,并且讓 ?近似等于 2(注意之前對 L 的定義),則上式可以簡化為一個包含兩個自由參數??和??的公式:
我們進一步假定?,則可進一步對公式進行變形:
但是此時的??的特征值取值在 [0, 2],對這一操作的堆疊會導致數值不穩定以及梯度爆炸(或消失)等問題。為了解決這一問題,引入一種稱為重歸一化(renormalization)的技術:
最后將計算進行向量化,得到最終的卷積計算公式為:
這一計算的時間復雜度為??;谏鲜綄崿F的 GCN 在三個數據集上取得了當時最好的結果。
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 的思想卻非常簡單,也可以用一張圖表示。?
算法的詳細過程如下:
1. 對圖上的每個結點 v,設置它的初始 embedding??為它的輸入特征?;
2. 之后進行 K次迭代,在每次迭代中,對每個結點 v,聚合它的鄰居結點(采樣后)的在上一輪迭代中生成的結點表示??生成當前結點的鄰居結點表示?,之后連接??輸入一個前饋神經網絡得到結點的當前表示??;? ? ? ? ? ?
3. 最后得到每個結點的表示?。
這個算法有兩個關鍵點:一是鄰居結點采樣,二是聚合鄰居結點信息的聚合函數。?
鄰居結點采樣方面,論文中在 K 輪迭代中,每輪采樣不同的樣本,采樣數量為?。在聚合函數方面,論文提出了三種聚合函數:
Mean aggregator:
LSTM aggregator:使用 LSTM 對鄰居結點信息進行聚合。值得注意地是,因為 LSTM 的序列性,這個聚合函數不具備對稱性。文章中使用對鄰居結點隨機排列的方法來將其應用于無序集合。?
Pooling aggregator:
論文在三個數據集上取得了對于 baseline 的 SOTA。
既然為工程應用提出的方法,對于實驗部分就不能一筆帶過了,這里給出論文中兩個有意思的結論:
對于鄰居結點的采樣,設置 K=2 和??得到比較好的表現;
對于聚合函數的比較上,LSTM aggregator 和 Pooling aggregator 表現最好,但是前者比后者慢大約兩倍。
總結
本文對圖神經網絡中常用的三種方法進行了介紹。隨著圖神經網絡研究的熱度不斷上升,我們也看到圖神經網絡的不同變種不斷涌現,此外,因為對于非歐空間數據良好的表達能力,圖神經網絡在交通、金融、社會科學等有大量相應數據積淀的交叉領域也面臨著廣闊的應用前景。
點擊以下標題查看更多往期內容:?
針對圖嵌入模型的受限黑盒對抗攻擊框架
深度學習模型不確定性方法對比
ICLR 2020?| 隱空間的圖神經網絡:Geom-GCN
深度學習預訓練模型可解釋性概覽
如何快速理解馬爾科夫鏈蒙特卡洛法?
神經網絡中的常用激活函數總結
#投 稿 通 道#
?讓你的論文被更多人看到?
如何才能讓更多的優質內容以更短路徑到達讀者群體,縮短讀者尋找優質內容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學習心得或技術干貨。我們的目的只有一個,讓知識真正流動起來。
?????來稿標準:
? 稿件確系個人原創作品,來稿需注明作者個人信息(姓名+學校/工作單位+學歷/職位+研究方向)?
? 如果文章并非首發,請在投稿時提醒并附上所有已發布鏈接?
? PaperWeekly 默認每篇文章都是首發,均會添加“原創”標志
???? 投稿郵箱:
? 投稿郵箱:hr@paperweekly.site?
? 所有文章配圖,請單獨在附件中發送?
? 請留下即時聯系方式(微信或手機),以便我們在編輯發布時和作者溝通
????
現在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
關于PaperWeekly
PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學術平臺。如果你研究或從事 AI 領域,歡迎在公眾號后臺點擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。
總結
以上是生活随笔為你收集整理的图神经网络三剑客:GCN、GAT与GraphSAGE的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 特斯拉首席信息官 Nagesh Sald
- 下一篇: 10万元奖金语音识别赛进行中!CTC 模