論文解讀(GRCCA)《 Graph Representation Learning via Contrasting Cluster Assignments》
論文資訊
論文標題:Graph Representation Learning via Contrasting Cluster Assignments
論文作者:Chun-Yang Zhang, Hong-Yu Yao, C. L. Philip Chen, Fellow, IEEE and Yue-Na Lin
論文來源:2022, TKDE
論文地址:download
論文程式碼:download
1 介紹
我們提出了一種新的無監督圖表示學習模型,通過對比聚類分配,稱為GRCCA。為了避免極度關注區域性或全域性檢視,GRCCA將聚類演算法和對比學習與相反的增廣策略相結合,以獲得兩個檢視的平衡。它利用聚類來獲取更細粒度的全域性資訊(cluster-level ),並在節點級對嵌入進行對齊,以保持區域性資訊的質量,從而優雅地融合區域性資訊和全域性資訊。相反的增強策略進一步增強了全域性和區域性檢視的對比度,使模型從圖中挖掘出更不變的特徵。同時,聚類使模型能夠深入瞭解節點之間的潛在關聯,而不僅僅是拓撲鄰近性。為了證明其有效性,我們在三種不同的下游任務中與最先進的模型進行了比較,包括節點分類、連結預測和社群檢測。實驗結果表明,GRCCA在大多數任務中都具有較強的競爭力。
2 方法
在本節中,我們將分兩部分詳細闡述所提出的 GRCCA。第一部分介紹了GRCCA的總體框架,包括圖的增強策略和模型配置。第二種方法詳細描述了該學習演算法。
2.1 定義
對於圖 $G$,它可以用一個元組 $(V,E)$ 表示,記為 $G=(V,E)$,其中 $V$ 是節點的集合,$E \subseteq V \times V$ 表示邊的集合。一般,圖的拓撲資訊由鄰接矩陣 $A \in\{0,1\}^{N \times N}$,其中 $N$ 是節點的數量和 $A_{i j}=1$ 表示 $ \left(v_{i}, v_{j}\right) \in \mathcal{E}$ 。對於現實網路,他們通常有屬性資訊,可以由屬性矩陣 $X \in \mathbb{R}^{N \times F}$,其中 $F$ 是屬性的維度和 $x_{i} \in \mathbb{R}^{F}$ 表示節點 $v_i$ 的屬性向量。
在本文中,我們關注無監督圖表示學習,目的是學習一個圖編碼 $f_{\theta}: \mathbb{R}^{N \times F} \times \mathbb{R}^{N \times N} \rightarrow \mathbb{R}^{N \times F^{\prime}}$ 不使用標籤訊號。其關鍵是將圖 $A, X$ 的拓撲和屬性資訊對映到有效節點嵌入 $H=f_{\theta}(X, A) \in \mathbb{R}^{N \times F^{\prime}}$,其中 $F^{\prime} \ll F$。學習到的嵌入可以用於下游任務,如節點分類、連結預測等。
2.2 Overall Framework
本文的資料增強策略:【資料增強策略的要求:既可以生成多個檢視,又不會產生噪聲】
-
- Graph Diffusion (GD)
- Removing Edges (RE)
本文分別使用 Graph Diffusion (GD) 和 Removing Edges (RE) 來關注全域性檢視和區域性檢視。這兩種方法都是基於圖的拓撲結構,並沒有引入新的噪聲。
框架如下:
2.2.1 Graph Diffusion (GD)
Graph diffusion 研究了超過 $\text{1-hop}$ 的資訊傳遞,從而可以獲得節點的長期依賴。他不僅提供了一個帶 global 資訊的資料增強檢視,還緩解了途中先天的噪聲問題。
圖擴散過程定義為:
$S=\sum\limits _{k=0}^{\infty} \theta_{k} T^{k}\quad\quad\quad(1)$
其中:
-
- $T$ 代表廣泛的轉移矩陣,$\mathbf{T}=\mathbf{D}^{-1 / 2} \mathbf{A} \mathbf{D}^{-1 / 2}$ ;
- ${\theta }_{k}$ 代表了權重引數,${\theta }_{k}=\alpha(1-\alpha)^{k}$;
取 $\text{k=1}$ 時有:
$S=\alpha\left(I-(1-\alpha) D^{-1 / 2} A D^{-1 / 2}\right) \quad\quad\quad\quad(2)$
其中:
-
- $\alpha \in(0,1)$ 是隨機遊走的傳送概率
2.2.2 Removing Edges (RE)
具體地說,給定一個相鄰矩陣 $A$ 和邊刪除概率 $P_{r e}$,我們隨機去除現有的邊,可以定義為
$\widetilde{A}_{i j}=\left\{\begin{array}{ll} 1, & b_{i j}<P_{r e} \text { and } A_{i, j}=1 \\ 0, & \text { otherwise } \end{array}\right.\quad\quad\quad(3)$
其中,$ \widetilde{A} $ 是區域性水平的增強,$b$ 表示從均勻分佈$ U(0,1)$中抽樣的隨機數。
2.2.3 Masking Nodes Features (MNF)
目的是通過隨機掩蔽來獲得圖屬性的不同視角。特別地,給定一個包含屬性 $X$ 和掩蔽率 $P_{m n f}$ 的矩陣,我們隨機選擇屬性的維數來掩蔽,而不是單獨掩蔽每個節點,可以表示為:
$\tilde{X}_{i}=X_{i} \odot M\quad\quad\quad\quad(4)$
其中$ \tilde{X}$ 是屬性增強矩陣,$ M \in\{0,1\}^{F}$是一個 $P_{m n f}$ 百分比為零的隨機向量。
與[8]中的策略相比,該策略不會導致過度的差異,因此不會破壞多個視角之間的關係,也不會將新的噪聲帶來對比學習。圖的拓撲結構和屬性策略不僅提供了多種多檢視知識,而且進一步增強了全域性檢視和區域性檢視之間的對比。
資料增強後,將生成的兩個增廣圖輸入共享圖編碼器 $f_{\theta}$ 和非線性投影儀 $g_{\theta}$,如 Fig. 1 所示。圖表示學習的關鍵是同時保留拓撲結構和屬性的資訊。理論上,任何考慮到這兩個方面的模型都可以用作編碼器$f_{\theta}$。現有的圖編碼器大多是基於鄰域聚合的。通過多層鄰域資訊聚合,它們可以捕獲長期圖資訊,由
$\mathbf{h}_{v}^{k}=\sigma\left(\mathcal{E} \cdot \mathbf{h}_{v}^{k-1}+\mathbf{W} \cdot \sum\limits _{u \in N(v)} h_{u}^{k-1} /|N(v)|\right)\quad\quad\quad(5)$
其中 $\mathcal{E}$ 和 $\mathbf{W}$ 為可學習引數,$\sigma$ 為啟用函式,$N(v)$ 表示目標節點 $v$ 的鄰域節點。本文以GCN為例項,獲得節點嵌入$H=f_{\theta}(X, A) $,它可以被定義為
$H=\sigma\left(\hat{D}^{-1 / 2} \hat{A} \hat{D}^{-1 / 2} X \Theta\right)\quad\quad\quad(6)$
為了增強對比學習的表達能力,我們進一步利用一個非線性投影儀,即MLP,將節點嵌入轉移到一個度量空間中,即 $Z=g_{\theta}(H) \in \mathbb{R}^{N \times F^{\prime}}$。
2.3 Learning Algorithm
與以往的圖對比學習模型和基於聚類的圖表示學習模型不同,GRCCA將對比學習和聚類演算法結合在一起,從兩個增強的角度最大化相同節點之間的 cluster-level 的一致性。對比聚類分配不僅促進了對比學習和聚類演算法之間的合作,而且還提供了一種理想的方法來協調區域性和全域性檢視。
一旦獲得兩個檢視的表示 $Z_{v}$ 和 $Z_{u}$,然後將其應用於 k-means ,分別得到 $C_{v} \in \mathbb{R}^{K \times F^{\prime}}$ 和 $C_{u} \in \mathbb{R}^{K \times F^{\prime}} $($k$ 代表這 cluster 數目,$F^{\prime}$ 代表屬性的維度)。根據節點屬於哪個cluster,我們可以得到兩個聚類分配矩陣 $Q_{v}$ 和 $Q_{u}$,$q_{v_{i}}=\mathbb{I}_{z_{v_{i}} \in C_{v}^{K}} $ 或 $q_{u_{i}}=\mathbb{I}_{z_{u_{i}} \in C_{u}^{K}}$ 表示節點的 one-hot 聚類類別。為了在兩個角度之間實現 cluster-level 對比學習,提出的 GRCCA 通過最小化交叉熵損失,從不同角度強制相同的節點來識別彼此的聚類分配。例如,給定任意一對相同的節點 $v_i$ 和 $u_i$,節點 $v_i$ 和節點 $u_i$ 的叢集分配 $Q_{u_{i}}$ 之間的一致性可以定義為:
$p_{v_{i}}=\operatorname{softmax}\left(z_{v_{i}} C_{u}^{\mathrm{T}} / \tau\right)\quad\quad\quad(7)$
與以往的圖對比學習模型和基於聚類的圖表示學習模型不同,GRCCA將對比學習和聚類演算法結合在一起,從兩個增強的角度最大化相同節點之間的 cluster-level 的一致性。對比聚類分配不僅促進了對比學習和聚類演算法之間的合作,而且還提供了一種理想的方法來協調區域性和全域性檢視。
一旦獲得兩個檢視的表示 $Z_{v}$ 和 $Z_{u}$,然後將其應用於 k-means ,分別得到 $C_{v} \in \mathbb{R}^{K \times F^{\prime}}$ 和 $C_{u} \in \mathbb{R}^{K \times F^{\prime}} $($k$ 代表這 cluster 數目,$F^{\prime}$ 代表屬性的維度)。根據節點屬於哪個cluster,我們可以得到兩個聚類分配矩陣 $Q_{v}$ 和 $Q_{u}$,$q_{v_{i}}=\mathbb{I}_{z_{v_{i}} \in C_{v}^{K}} $ 或 $q_{u_{i}}=\mathbb{I}_{z_{u_{i}} \in C_{u}^{K}}$ 表示節點的 one-hot 聚類類別。為了在兩個角度之間實現 cluster-level 對比學習,提出的 GRCCA 通過最小化交叉熵損失,從不同角度強制相同的節點來識別彼此的聚類分配。例如,給定任意一對相同的節點 $v_i$ 和 $u_i$,節點 $v_i$ 和節點 $u_i$ 的叢集分配 $Q_{u_{i}}$ 之間的一致性可以定義為:
$p_{v_{i}}=\operatorname{softmax}\left(z_{v_{i}} C_{u}^{\mathrm{T}} / \tau\right)\quad\quad\quad(7)$
通過最小化交叉熵損失,保證了節點之間的一致性:
$\ell\left(q_{u_{i}}, p_{v_{i}}\right)=-q_{u_{i}} \log p_{v_{i}}\quad\quad\quad(8)$
因此,對比聚類損失可以定義為:
$\mathcal{L}_{c}=\frac{1}{N} \sum\limits _{i=0}^{N}\left[\ell\left(q_{v_{i}}, p_{u_{i}}\right)+\ell\left(q_{u_{i}}, p_{v_{i}}\right)\right]\quad\quad\quad(9)$
其中,$N$ 為節點數。值得注意的是,對比聚類分配可以被視為一種特殊的對比學習方式,它可以比較多個圖視角之間的聚類分配,而不是節點嵌入。它隱式地驅動節點嵌入來接近它們相應的原型,並與其他原型區分開來。直觀地說,它等價於最大化節點嵌入和相應的原型之間的互資訊。
受 multi-head attention mechanism 的啟發,GRCCA採用了 multi-clustering strategy 來增加聚類級資訊的多樣性。具體來說,我們對每個視角同步執行多個聚類,生成多個成對對比材料 $\left\{\left(C_{v}^{1}, C_{u}^{1}, Q_{v}^{1}, Q_{u}^{1}\right), \ldots,\left(C_{v}^{h}, C_{u}^{h}, Q_{v}^{h}, Q_{u}^{h}\right)\right\}$,並利用對比聚類分配來確保其聚類水平的一致性。因此,總損失可以由
$\mathcal{L}_{m c}=\frac{1}{h} \sum_{i=0}^{h} \mathcal{L}_{c}^{i}\quad\quad\quad(10)$
其中,$h$ 為對比性材料集的個數。
該學習演算法總結在 Algorithm 1中。首先,我們應用兩個圖增廣函式 $t_{1} \sim T$ 和 $t_{2} \sim T$ 生成兩個增廣圖 $\widetilde{G}_{1}$ 和 $\widetilde{G}_{2}$,其中 $t_{1}$ 由 GD 和 MNF 組成,$t_{2}$ 包括 RE 和 MNF。其次,我們使用圖編碼器 $f_{\theta}$ 和非線性投影儀 $g_{\theta}$ 分別生成兩個檢視的節點表示。第三,利用具有多聚類策略 $K_{m}$ 的 k-means 生成聚類分配 $Q_{v}$、$Q_{u}$ 和原型 $C_{v}$、$C_{u}$。第四,我們最小化了 Eq. (10) 中的對比損失,可以從不同的角度來加強相同節點之間的 cluster-level 一致性。否則,我們將嘗試兩種不同的叢集分配方案:非同步版本和同步版本。非同步版本使用來自前一個 epoch 的表示矩陣來生成叢集分配,而同步版本則使用當前的表示矩陣。值得注意的是,非同步版本需要初始化一個memory bank $B$,並使用每一輪表示來更新它。最後,將從圖編碼器 $f_{\theta}$ 中學習到的節點嵌入用於下游任務。
Algorithm 1 如下:
3 Experiments
3.1 Datasets
-
- Cora,Citeseer 和 Pubmed 都是 citation networks
- Amazon-Photo 和 Amazon-Computers 是兩個co-purchase graphs
- Coauthor-CS 是一個 co-authorship graph
3.2 Node Classification
我們選擇了6個最先進的無監督模型,包括DGI,GMI,MVGRL,GIC,GCA和MERIT,以及3個經典的GNN模型:ChebyshevGCN,GCN,和 GAT 作為基線。
對於三個引文網路,我們對每個類隨機抽取20個節點來形成訓練集,1000個節點作為測試集。而對於其他三個資料集,我們對每個類分別隨機選擇30個節點進行訓練和驗證,其餘的節點用於測試。
超引數設定:
結果:
3.3 Link Prediction
3.4 Community Detection
3.5 Ablation Study
3.6 Complexity Analysis
可學習引數的數量