論文解讀(MVGRL)Contrastive Multi-View Representation Learning on Graphs

發表於2022-03-27

Paper Information

論文標題:Contrastive Multi-View Representation Learning on Graphs
論文作者:Kaveh Hassani 、Amir Hosein Khasahmadi
論文來源:2020, ICML
論文地址:download 
論文程式碼:download

Abstract

  介紹了一種自監督的方法,通過對比圖的結構檢視來學習節點和圖級別的表示。與視覺表示學習不同,對於圖上的對比學習,將檢視的數量增加到兩個以上或對比多尺度編碼並不能提高效能。但是通過對比來自一階鄰居和圖擴散的編碼能夠達到最好的效能。論文在 8 個節點分類和圖分類資料集的自監督學習中達到了 SOTA 效能。

1 Introduction

  GNNs 面臨的問提:GNNs 依賴於標籤來學習豐富的表示,像視訊、影像、文字和音訊等形式,使用標註資料代價昂貴。為解決這一問題,非監督方法應運而生,如基於重構的方法和對比方法與 GNNs 結合,允許它們在不依賴監督資料的情況下學習表示。最近的研究通過最大化節點和圖表示之間的互資訊(MI)來進行對比學習,在節點分類和圖分類任務上取得了最先進的成果。

  最近在多檢視視覺表示學習(multi-view visual representation learning)上,將資料增強的組合用於生成同一影像的多個檢視用於對比學習,已經在影像分類基準上取得了超過監督基線的最先進的結果。然而,目前還不清楚如何將這些技術應用到以圖表示資料上。

  為了解決這個問題,作者引入了一種自監督的方法來訓練圖編碼器,通過最大化從不同圖的結構檢視編碼的表示之間的 $\text{MI}$。

  為了進一步改進在節點和圖分類任務上的對比表示學習,我們系統地研究了我們的框架的主要組成部分,並令人驚訝地表明,與視覺對比學習不同:

    • 增加了檢視的數量(即 Augmentation ),超過兩個檢視並不能提高效能,而通過對比來自一階鄰居的編碼和一般的圖擴散,可以獲得最好的效能;
    • 通過對比檢視間節點和圖編碼在節點分類和連結預測取得的結果比對比圖之間編碼效果更好;
    • 與可微池(DiffPool)等分層圖池方法相比,一個簡單的圖 Readout 在這兩個任務上都取得了更好的效能;
    • 應用正則化(除了早期停止)或歸一化層對效能有負面影響;

  利用這些發現,我們線上性評估協議下的8個節點中的8個和圖分類基準上實現了新的最新的自監督學習。

2 Related Work

  相關工作講廢話的一篇,可以略過。

2.1 Unsupervised Representation Learning on Graphs

Random walks

  通過跨節點進行隨機遊走並使用語言模型學習節點表示,將圖展平為序列表示。它們以犧牲結構資訊為代價,過度強調鄰近資訊。此外,它們僅限於 transductive,不使用節點特徵。

Graph kernels

  將圖分解為子結構,並使用核函式來度量它們之間的圖的相似性。然而,需要設計如何衡量子結構之間相似度量。

Graph autoencoders (GAE)

  訓練通過預測一階鄰居來加強圖中節點的拓撲連線性,GAEs 過分強調近鄰資訊。

Contrastive methods

  

2.2 Graph Diffusion Networks

  圖擴散網路(GDN)協調了空間資訊傳遞和廣義圖擴散,其中擴散作為去噪濾波器允許訊息通過高階鄰域。根據擴散階段的不同,GDNs 可以分為早期和晚期融合模型。早期融合模型使用圖擴散來決定鄰居,例如,圖擴散卷積(GDC)用稀疏的擴散矩陣代替圖卷積中的鄰接矩陣。晚期融合模型將節點特徵投射到一個潛在空間,然後傳播基於擴散的學習表示。

2.3. Learning by Mutual Information Maximization

  InfoMax 原理鼓勵編碼器學習能夠最大化輸入和已學習表示之間互資訊的表示。

3 Method

  作者提出最大化一個檢視的節點表示與另一個檢視的圖表示之間的互資訊。框架如下:

  

  框架由以下元件組成:

    • 增廣機制:將樣本圖轉換為同一圖的相關檢視。只對圖結構進行增廣,而不對初始節點特徵進行增廣。接下來是一個取樣器,從兩個檢視對相同的節點進行子取樣,也就是類似於在視覺域裁剪;  
    • 兩個專用的 GNN :即圖編碼器,每個檢視一個,後面接一個共享的 MLP 用來以學習兩個檢視的節點表示;  
    • 圖池化層:即讀出函式,後面接了共享的MLP,即投影頭,以學習兩種檢視的圖表示;  
    • 判別器:將一個檢視的節點表示與另一個檢視的圖表示進行對比,並對它們之間的一致性進行評分;  

3.1 Augmentations

  圖上資料增強考慮兩個方面:

    • 特徵空間方面:對初始節點特徵進行操作,例如,遮蔽(masking)或新增高斯噪聲(Gaussian noise);  
    • 結構空間方面:破壞圖結構,通過新增或刪除邊、子取樣,或使用最短距離或擴散矩陣生成全域性檢視。作者選擇生成一個全域性檢視,然後再進行子取樣。

  實驗表明,在大多數情況下,最好的結果是通過將鄰接矩陣轉化為擴散矩陣,並將這兩個矩陣視為同一圖的結構的兩個一致檢視。因為鄰接矩陣和擴散矩陣分別提供了圖結構的區域性和全域性檢視,從這兩種檢視中學習到的表示之間最大限度的一致性鼓勵模型同時編碼豐富的區域性和全域性資訊。

擴散過程

  擴散過程採用 快速逼近和稀疏化方法:

    $\mathbf{S}=\sum\limits _{k=0}^{\infty} \Theta_{k} \mathbf{T}^{k} \in \mathbb{R}^{n \times n}\quad \quad\quad(1)$

  其中:

    • $\mathbf{T} \in \mathbb{R}^{n \times n} $ 是生成的轉移矩陣;  
    • $ \Theta$  是權重係數,決定了全域性和區域性資訊的比重;  
    • $\sum\limits _{k=0}^{\infty} \theta_{k}=1, \theta_{k} \in[0,1] $  
    • $\lambda_{i} \in[0,1] $ 是矩陣  $\mathbf{T} $ 的特徵值,保證收斂性。  

  給定一個鄰接矩陣 $\mathbf{A} \in \mathbb{R}^{n \times n}$ 和一個度矩陣 $\mathbf{D} \in \mathbb{R}^{n \times n}$,廣義圖擴散的兩個例項:Personalized PageRank (PPR) 和 heat kernel,定義為:

    $\mathbf{T}=\mathbf{A} \mathbf{D}^{-1}$

    $\theta_{k}=\alpha(1-\alpha)^{k}$

    $\theta_{k}=e^{-t} t^{k} / k !$

  其中:$\alpha$ 表示隨機遊走的傳送概率, $t$ 是擴散時間。

  heat 和 PPR 擴散的封閉解分別如下所示:

    $\mathbf{S}^{\text {heat }}=\exp \left(t \mathbf{A} \mathbf{D}^{-1}-t\right) \quad\quad\quad\quad(2)$

    $\mathbf{S}^{\mathrm{PPR}}=\alpha\left(\mathbf{I}_{n}-(1-\alpha) \mathbf{D}^{-1 / 2} \mathbf{A} \mathbf{D}^{-1 / 2}\right)^{-1}\quad\quad\quad\quad(3)$

子取樣

  從一個檢視中隨機抽樣節點及其邊,並從另一個檢視中選擇一樣的的節點和邊。

3.2 Encoders

   作者為每個檢視使用一個專用的圖編碼器(本文采用GCN編碼器),分別是 $g_{\theta}(.), g_{\omega}(.): \mathbb{R}^{n \times d_{x}} \times \mathbb{R}^{n \times n} \longmapsto\mathbb{R}^{n \times d_{h}}$。

  作者將鄰接矩陣和擴散矩陣作為兩個結構一致的檢視,用於學習每個檢視的節點表示,將 GCN 層分別定義為:

    $\sigma(\tilde{\mathbf{A}} \mathbf{X} \Theta)$

    $\sigma(\mathbf{S} \mathbf{X} \Theta)$

  其中

    • $\tilde{\mathbf{A}}=\hat{\mathbf{D}}^{-1 / 2} \hat{\mathbf{A}} \hat{\mathbf{D}}^{-1 / 2} \in \mathbb{R}^{n \times n}$;
    • $\mathbf{S} \in \mathbb{R}^{n \times n}$ 是擴散矩陣;
    • $\mathbf{X} \in \mathbb{R}^{n \times d_{x}}$ 是特徵矩陣;
    • $\Theta \in \mathbb{R}^{d_{x} \times d_{h}}$ 是網路引數矩陣;
    • $\sigma$ 是非線性對映 ReLU (PReLU) ;

  學習到的表示被喂入到共享的 MLP 對映頭(2層+使用 PReLU 啟用函式):$f_{\psi}(.): \mathbb{R}^{n \times d_{h}} \longmapsto \mathbb{R}^{n \times d_{h}}$,最後生成各自對應的節點表示 $\mathbf{H}^{\alpha}, \mathbf{H}^{\beta} \in \mathbb{R}^{n \times d_{h}}$ 。

  

  為得到圖級別的表示,Readout ($\mathcal{P}(.): \mathbb{R}^{n \times d_{h}} \longmapsto \mathbb{R}^{d_{h}}$)函式拼接每個 GCN 層的節點表示的總和,然後將其送入全職共享的 $2$ 層前饋網路,使獲得的圖表示與節點表示的維數大小一致:

    $\vec{h}_{g}=\sigma\left(\|_{l=1}^{L}\left[\sum\limits _{i=1}^{n} \vec{h}_{i}^{(l)}\right] \mathbf{W}\right) \in \mathbb{R}^{d_{h}}\quad\quad\quad\quad(4)$

  其中:

    • $\vec{h}_{i}^{(l)}$  節點  $\text{i}$  第  $\text{l}$ 層的潛在表示;  
    • $\|$  是拼接操作;
    • $\text{L}$ 代表 $\mathrm{GCN}$  的層數;
    • $\mathbf{W} \in \mathbb{R}^{\left(L \times d_{h}\right) \times d_{h}}$  是網路權值矩陣;
    • $\sigma$ 是 PReLU 非線性對映;

  

  最後得到圖表示  $\vec{h}_{g}^{\alpha}, \vec{h}_{g}^{\beta} \in \mathbb{R}^{d_{h}}$  。推斷時,通過加和聚合每個檢視的表示(節點級和圖級) :  $\vec{h}=\vec{h}_{g}^{\alpha}+\vec{h}_{g}^{\beta} \in \mathbb{R}^{n} $、$\mathbf{H}=\mathbf{H}^{\alpha}+\mathbf{H}^{\beta} \in \mathbb{R}^{n \times d_{h}} $ ,作為節點和圖的表示應用在下游任務上。

3.3 Training

  最後一步,訓練。我們將一個檢視的節點表示與另一個檢視的圖表示進行對比,另一組也是這樣。利用 deep infomax 的方法,最大化兩個檢視之間的互資訊。互資訊MI可以看作一個鑑別器模型,對節點表示和圖表示之間的一致性進行評分。以上就是正樣本的學習過程。在對比學習中,負樣本的選取也是極為重要的。我們通過隨機特徵值換的方法,打亂節點的特徵矩陣來生成負樣本,完成對比學習。

    $\underset{\theta, \omega, \phi, \psi}{\text{max}}\frac{1}{|\mathcal{G}|} \sum\limits _{g \in \mathcal{G}}\left[\frac{1}{|g|} \sum\limits _{i=1}^{|g|}\left[\mathbf{M I}\left(\vec{h}_{i}^{\alpha}, \vec{h}_{g}^{\beta}\right)+\operatorname{MI}\left(\vec{h}_{i}^{\beta}, \vec{h}_{g}^{\alpha}\right)\right]\right]\quad\quad\quad\quad(5)$

  其中:

    • $\theta$,$\omega$,$\phi$,$\psi$  是圖編碼器和對映頭的引數;  
    • $|\mathcal{G}|$  是圖的數目;  
    • $|g| $ 是節點的數目;  
    • $\vec{h}_{i}^{\alpha}, \vec{h}_{g}^{\beta}$  是節點 $ i$  和圖  $g$  在  $\alpha$, $\beta $ 視角下的表示。  

  

互資訊作為為判別器 

  $\mathcal{D}(., .): \mathbb{R}^{d_{h}} \times \mathbb{R}^{d_{h}} \longmapsto \mathbb{R}$  ,簡單地將判別器實現為兩個表示之間的點積:  $\mathcal{D}\left(\vec{h}_{n}, \vec{h}_{g}\right)=\vec{h}_{n} \cdot \vec{h}_{g}^{T} $

  當判別器和投影頭被整合到雙線性層時,節點分類資料集略有改善。為了確定 MI 估計器,研究了四個互資訊估計器,併為每個資料集選擇了最好的一個。從聯合分佈 $x_{p} \sim p\left(\left[\mathbf{X}, \tau_{\alpha}(\mathbf{A})\right],\left[\mathbf{X}, \tau_{\beta}(\mathbf{A})\right]\right)$ 中提供正樣本,從邊際乘積中 $x_{n} \sim p\left(\left[\mathbf{X}, \tau_{\alpha}(\mathbf{A})\right],\left[\mathbf{X}, \tau_{\beta}(\mathbf{A})\right]\right)$ 提供負樣本。利用小批量隨機梯度下降法對模型引數進行優化。假設一組訓練圖化。假設一組訓練圖  $\mathcal{G}$,取樣圖  $g=(\mathbf{A}, \mathbf{X}) \in \mathcal{G}$,檢視表示學習演算法總結如下:

  

4 Experimental Results

4.1 Benchmarks

  

4.2 Comparison with State-of-the-Art

線上性評估協議下評估節點分類

  

評價聚類演算法下的節點分類

  

線上性評價協議下評估圖分類

  

不同對比模式的效果

  論文考慮了五種對比模式:

    • local-global:對比一個視角的節點編碼與另一個視角的圖編碼;  
    • global-global:對比不同視角的圖編碼;  
    • multi-scale:對比來自一個檢視的圖編碼與來自另一個檢視的中間編碼;使用 DiffPool 層計算中間編碼;  
    • hybrid:使用 local-global 和 global-global 模式;  
    • ensemble modes:對所有檢視,從相同檢視對比節點和圖編碼。  

  

 

 


參考論文

 

相關文章