一文详解图对比学习(GNN+CL)的一般流程和最新研究趋势
?作者 |?侯宇蓬
單位 |?中國人民大學
文章來源 |?RUC AI Box
隨著對比學習(Contrastive Learning)在 CV、NLP 等領域大放異彩,其研究熱度近年來也逐步走高。在圖學習領域,由于圖(Graph)數據也存在缺少標簽或難以標注的問題,自 2020 年來,研究者們也著力于將對比學習技術應用于圖表示學習任務上,取得了十分不錯的效果,這一系列算法研究稱為圖對比學習(Graph Contrastive Learning)。由于圖是一種離散的數據結構,且一些常見的圖學習任務中,數據之間往往存在緊密的關聯(如鏈接預測)。如何針對這些特性設計圖對比學習算法、對比學習又是如何更好地幫助學習圖表示、節點表示的,這些問題仍在積極地探索中。
本文將主要基于 2020-2021 年已發表的頂會論文(ICML、ICLR、NeurIPS、KDD、WWW、IJCAI),介紹圖對比學習算法的一般流程,并總結當今圖對比學習的若干研究趨勢。希望本文能幫助研究者們快速了解對圖對比學習相關研究進展,并歡迎大家在評論區討論及指出文章的疏漏錯誤等。章節 1-4 主要概述圖對比學習 2020 年的工作,而對于熟悉 GraphCL 等基礎的圖對比學習算法的讀者,可以直接跳到章節 5 閱讀 2021 年的新研究進展總結。
圖對比學習概述
一般意義上,圖對比學習是一種針對圖數據的自監督學習算法。對給定的大量無標注圖數據,圖對比學習算法旨在訓練出一個圖編碼器,目前一般指圖神經網絡(Graph Neural Network, GNN)。由這個 GNN 編碼得到的圖表示向量,可以很好地保留圖數據的特性,并進一步在無監督、半監督、遷移學習以及魯棒性測試等實驗設置下進行測試,并應用于社交網絡、蛋白質交互網絡、分子結構、學術引用網絡等多個場景中。
Graph Contrastive Learning with Augmentations. NeurIPS 2020.
常見的圖對比學習算法由下述步驟組成:
1. 隨機采樣一批(batch)圖;
2. 對每一個圖進行兩次隨機的數據增強(如刪除若干條邊(edge)),增強后兩個新圖稱為視圖(View);
3. 使用待訓練的 GNN 對 View 進行編碼,得到節點表示向量(node representation)和圖表示向量(graph representations);
4. 根據上述表示向量計算 InfoNCE 損失,其中由同一個 graph 增強出來的 view 的表示相互靠近,由不同的 graph 增強得到的 view 的表示相互遠離。
在這個流程下,對 graph 應用對比學習,與對其它類型數據(如圖像、文本)應用的區別在于:
1. 數據增強。CV 領域一般通過隨機對圖片進行裁剪、旋轉等操作產生增強后的數據,那如何對 graph 進行數據增強?
2. 對比層次。GNN 編碼后我們可以同時得到節點級別 / 圖級別的兩個層次的表示,那么對比的目標應該設計在哪個層次?
啟發式數據增強
在圖對比學習研究的初期,研究者們通常設計啟發式算法來決定如何做 graph 的數據增強(data augmentation)。這部分主要涉及論文有:
GCC: Graph Contrastive Coding for Graph Neural Network Pre-Training. KDD 2020.
Contrastive Multi-View Representation Learning on Graphs. ICML 2020.
Graph Contrastive Learning with Augmentations. NeurIPS 2020.
Graph Contrastive Learning with Adaptive Augmentation. WWW 2021.
接下來從圖結構、圖特征兩方面介紹已經提出的、用于圖對比學習的啟發式圖數據增強方法。
3.1 圖結構上
基于結構的圖數據增強方式,主要為啟發式約定 distribution,對 edge 和 node 進行修改,如隨機刪邊 / 加邊(edge perturbation / edge drop)、隨機刪除節點及與其相連的邊(node drop)、隨機游走采樣子圖(subgraph)等。特別地:
1. GCC KDD20. 這篇文章中主要研究不同場景下圖的遷移學習,因此在隨機采樣子圖后,進一步進行了匿名化的操作,詳見原論文 Sec. 3.2 Q2。
2. Contrastive Multi-View Representation Learning on Graphs. ICML20. 這篇文章還提出修改鄰接矩陣的操作,如可以將點與點之間的最短路徑設置為鄰接矩陣的權重,或者通過 diffusion 的操作對鄰接矩陣做實值化。
3. GraphCL NeurIPS20. 這篇文章提出,數據增強的選擇與數據集的領域緊密相關,并探索了不同數據增強方式選擇做效果的影響。
4. GCA WWW21. 這篇文章提出根據節點的 centrality 設定刪邊的概率,不重要的邊被刪的概率更高。這里的 centrality 由 Degree、Eigenvector、PageRank 等方式定義。
Graph Contrastive Learning with Augmentations. NeurIPS 2020.
3.2 圖特征上
基于圖上點特征或者邊特征的圖數據增強方式,主要包含隨機遮掩特征(attribute / feature mask)、在特征向量上加高斯噪聲等。特別地:GCA WWW21. 提出一套計算 feature 每一維度重要性的策略,并根據重要性進行 mask。
對比層次
由于圖數據經過 GNN 后會產生 節點表示 和 圖表示 兩個層次的表示向量,因此早期工作也設計了不同的對比層次。比如 GraphCL. NeurIPS 2020. 就與 SimCLR 一脈相承,只對比各個 view 的圖表示;GCA. WWW 2021. 進行各個節點表示之間的對比;Contrastive Multi-View Representation Learning on Graphs. ICML 2020. 則設計實驗對不同層次的對比進行分析,并發現在其實驗設置下,將節點表示與圖表示進行對比會取得更好的效果。
(注意本章提到的工作參考文獻與第三章相同)
可學習數據增強
之前已經討論到,現有啟發式圖數據增強方法存在若干問題,如:
1. 過多的人工干預。往往要經過大量實驗,才能對給定的數據挑選出合適的數據增強方式;
2. 啟發式方法。這些預設的人工定義算法不一定總能保留 graph 本身的特性;
面對上述問題,今年一些工作探索了通過 learning 的方式,自動從數據中學習如何選擇數據增強方式、或者如何實行數據增強。本章節主要涉及工作有:
Graph Contrastive Learning Automated. ICML 2021.
Adversarial Graph Augmentation to Improve Graph Contrastive Learning. NeurIPS 2021.
Bringing Your Own View: Graph Contrastive Learning without Prefabricated Data Augmentations. WSDM 2022.
5.1 如何選擇
在 GraphCL 的實驗中,作者表明不同領域的數據集所需要的數據增強方式是不同的。比如對于化學分子,隨機刪邊可能會顯著影響分子的性質,并不是一個好的數據增強方式。那么對于一批新數據,我們應該如何選擇合適的圖數據增強方式呢?
Graph Contrastive Learning Automated. ICML 2021.
在 ICML 2021 的論文 Graph Contrastive Learning Automated 中,作者以 GraphCL 為基礎,設計了自動選擇數據增強方式的 JOAO 框架。大體思想為通過對抗訓練(adversarial training)的方式,迭代訓練選擇每種數據增強方式的概率矩陣,并對應更換 GraphCL 中的映射頭(projection head)。實驗結果表明,對抗訓練學習得到的概率矩陣和此前 GraphCL 關于數據增強選擇的實驗結果趨勢相近,并在不需要過多人工干預的情況下達到了有競爭力的結果。
Graph Contrastive Learning Automated. ICML 2021.
5.2 如何實行
還有一些工作旨在探索,如何自動學習數據增強時對圖做擾動的分布。在 NeurIPS 2021 的論文 Adversarial Graph Augmentation to Improve Graph Contrastive Learning 中,作者從數據增強如何保留圖的信息出發,假設增強出的兩個 View 之間并不是互信息越大越好,因為這些互信息中可能包含大量噪音。
作者引入信息瓶頸 (Information Bottleneck)原則,認為更好的 View 應該是在共同保留圖本身的特性這一前提下,彼此之間的互信息最小。即在訓練中,學習如何通過增強保留 graph 中的必要信息,并同時減少噪音。基于這一原則,作者設計了 min-max game 的訓練模式,并訓練神經網絡以決定是否在數據增強中刪除某條邊。
Adversarial Graph Augmentation to Improve Graph Contrastive Learning. NeurIPS 2021.
除了上述工作,WSDM 2022 的論文 Bringing Your Own View: Graph Contrastive Learning without Prefabricated Data Augmentations 討論了生成式的數據增強方法(generative augmentations),但是該論文暫未發布預印本。
訓練過程
針對圖對比學習的特性,一些工作修改了對比學習的訓練過程,本部分涉及的論文為:
Self-supervised Graph-level Representation Learning with Local and Global Structure. ICML 2021.
Graph Debiased Contrastive Learning with Joint Representation Clustering. IJCAI 2021.
CuCo: Graph Representation with Curriculum Contrastive Learning. IJCAI 2021.
6.1 挖掘層次關系
發表于 ICML 2021 的論文 Self-supervised Graph-level Representation Learning with Local and Global Structure 假設圖的數據集中存在全局的、層次性的類別關聯,并引入層次化的 Prototype 的概念,除了進行圖表示之間的對比學習,還進行圖表示與 prototype 表示之間的對比學習。該算法的 prototype 通過 EM 算法進行優化。
Self-supervised Graph-level Representation Learning with Local and Global Structure. ICML 2021.
6.2 負例選擇
發表于 IJCAI 2021 的論文 Graph Debiased Contrastive Learning with Joint Representation Clustering 認為圖對比學習過程中,隨機采樣的負例存在大量的 false-negative 樣例。本文提出的方法在訓練過程中同時進行聚類,根據聚類的結果生成偽標簽,并根據偽標簽決定選擇哪些負例。
Graph Debiased Contrastive Learning with Joint Representation Clustering. IJCAI 2021.
發表于 IJCAI 2021 的另一篇論文 CuCo: Graph Representation with Curriculum Contrastive Learning 也著眼于對比學習訓練過程中的負例選擇。作者引入課程學習(Curriculum Learning) 的概念,為負樣本設計了打分函數,將負樣本從易到難地排序,并依次學習。
特殊圖
除了針對通用的圖結構的圖對比學習算法,一些工作還在細分領域的特殊圖上進行設計。如:
協同過濾算法,用戶-商品交互二部圖:
Self-supervised Graph Learning for Recommendation. SIGIR 2021.
序列化 / session-based 推薦系統中的 item / session 轉移圖:
Self-Supervised Hypergraph Convolutional Networks for Session-based Recommendation. AAAI 2021.
Self-Supervised Graph Co-Training for Session-based Recommendation. CIKM 2021.
異構圖
Self-supervised Heterogeneous Graph Neural Network with Co-contrastive Learning. KDD 2021.
Contrastive Pre-Training of GNNs on Heterogeneous Graphs. CIKM 2021.
分子圖
MoCL: Data-driven Molecular Fingerprint via Knowledge-aware Contrastive Learning from Molecular Graph. KDD 2021.
CSGNN: Contrastive Self-Supervised Graph Neural Network for Molecular Interaction Prediction. IJCAI 2021.
Signed Graph
SGCL: Contrastive Representation Learning for Signed Graphs. CIKM 2021.(截至完稿時論文暫未放出。)
結語及相關資源
圖對比學習當前還是一個十分火熱的,可研究方向眾多的圖表示學習領域,NeurIPS 2021、ICLR 2022 都可以看到若干相關投稿。除圖對比學習外,感興趣的研究者也可以關注圖互信息最大化、GNN + 預訓練、GNN + 自監督學習等領域的研究。
關于 GNN 預訓練的總結可以參考這篇文章:
Make GNN Great Again:圖神經網絡上的預訓練和自監督學習
關于 GNN + 自監督學習的論文列表可以參考:
https://github.com/ChandlerBang/awesome-self-supervised-gnn
關于圖對比學習的代碼實現,可以參考:
https://github.com/GraphCL/PyGCL
特別鳴謝
感謝 TCCI 天橋腦科學研究院對于 PaperWeekly 的支持。TCCI 關注大腦探知、大腦功能和大腦健康。
更多閱讀
#投 稿?通 道#
?讓你的文字被更多人看到?
如何才能讓更多的優質內容以更短路徑到達讀者群體,縮短讀者尋找優質內容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學術熱點剖析、科研心得或競賽經驗講解等。我們的目的只有一個,讓知識真正流動起來。
📝?稿件基本要求:
? 文章確系個人原創作品,未曾在公開渠道發表,如為其他平臺已發表或待發表的文章,請明確標注?
? 稿件建議以?markdown?格式撰寫,文中配圖以附件形式發送,要求圖片清晰,無版權問題
? PaperWeekly 尊重原作者署名權,并將為每篇被采納的原創首發稿件,提供業內具有競爭力稿酬,具體依據文章閱讀量和文章質量階梯制結算
📬?投稿通道:
? 投稿郵箱:hr@paperweekly.site?
? 來稿請備注即時聯系方式(微信),以便我們在稿件選用的第一時間聯系作者
? 您也可以直接添加小編微信(pwbot02)快速投稿,備注:姓名-投稿
△長按添加PaperWeekly小編
🔍
現在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
·
總結
以上是生活随笔為你收集整理的一文详解图对比学习(GNN+CL)的一般流程和最新研究趋势的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑关机充电怎么设置吗 如何设置电脑关机
- 下一篇: 系统映像怎么压缩到u盘 如何将系统映像压