論文解讀(GCA)《Graph Contrastive Learning with Adaptive Augmentation》

發表於2022-04-12

論文資訊

論文標題:Graph Contrastive Learning with Adaptive Augmentation
論文作者:Yanqiao Zhu、Yichen Xu3、Feng Yu4、Qiang Liu、Shu Wu、Liang Wang
論文來源:2021, WWW
論文地址:download
論文程式碼:download

1 介紹

  出發角度:傾向於保持重要的結構和屬性不變,同時干擾可能不重要的邊連線和特徵。

  自適應資料增強方面:

    • 拓撲結構:基於節點中心性度量,突出重要連線;
    • 語義資訊:對不重要的節點屬性新增噪聲;

2 方法

2.1 框架及演算法

  框架如下:

    

  演算法流程:

   

  編碼器:

    $\begin{aligned}\mathrm{GC}_{i}(\boldsymbol{X}, \boldsymbol{A}) &=\sigma\left(\hat{D}^{-\frac{1}{2}} \hat{\boldsymbol{A}} \hat{D}^{-\frac{1}{2}} \boldsymbol{X} \boldsymbol{W}_{i}\right)\quad\quad\quad(12) \\f(\boldsymbol{X}, \boldsymbol{A}) &=\mathrm{GC}_{2}\left(\mathrm{GC}_{1}(\boldsymbol{X}, \boldsymbol{A}), \boldsymbol{A}\right)\quad\quad\quad(13)\end{aligned}$

  損失函式

    $\mathcal{J}=\frac{1}{2 N} \sum\limits _{i=1}^{N}\left[\ell\left(\boldsymbol{u}_{i}, v_{i}\right)+\ell\left(v_{i}, \boldsymbol{u}_{i}\right)\right]\quad\quad\quad(2)$

  其中:

    $log {\large \frac{e^{\theta\left(u_{i}, v_{i}\right) / \tau}}{\underbrace{e^{\theta\left(\boldsymbol{u}_{i}, \boldsymbol{v}_{i}\right) / \tau}}_{\text {positive pair }}+\underbrace{\sum_{k \neq i} e^{\theta\left(\boldsymbol{u}_{i}, \boldsymbol{v}_{k}\right) / \tau}}_{\text {inter-view negative pairs }}+\underbrace{\sum_{k \neq i} e^{\theta\left(\boldsymbol{u}_{i}, \boldsymbol{u}_{k}\right) / \tau}}_{\text {intra-view negative pairs }}}}\quad\quad\quad(1) $

2.2 Adaptive Graph Augmentation

2.2.1 Topology-level augmentation

  利用 $\text{Eq.3}$ 中的概率從原始邊集合中取樣一個邊子集合

    $P\{(u, v) \in \widetilde{\mathcal{E}}\}=1-p_{u v}^{e}\quad\quad\quad(3)$

  其中:

    • $(u, v) \in \mathcal{E}$;
    • $p_{u v}^{e}$ 是刪除邊 $ (u, v)$ 的概率;
    • $\widetilde{\mathcal{E}}$ 將作為生成檢視的邊集合;

  分析知: $p_{u v}^{e}$ 應該反映邊 $ (u, v)$ 的重要性,目的是為了加大破壞不重要的邊的可能,同時在增強檢視中保持重要的邊。

  節點中心性量化了節點的重要性,本文為邊 $(u, v)$ 定義邊中心性 $w_{u v}^{e}$,用於衡量邊$(u, v)$ 對兩個相連節點的影響。給定節點中心性度量 $\varphi_{c}(\cdot): \mathcal{V} \rightarrow \mathbb{R}^{+}$,將邊中心性定義為兩個相鄰節點中心性得分的均值,即 $w_{u v}^{e}=\left(\varphi_{c}(u)+\varphi_{c}(v)\right) / 2$。在有向圖上,只使用尾部節點的中心性,即 $w_{u v}^{e}=\varphi_{c}(v) $,因為邊的重要性通常是它們指向的節點。

  接下來,根據每條邊的中心性值來計算它的概率。由於採用度作為節點中心性這種度量方法在不同數量級上變化差別過大,所以本文首先設定 $s_{u v}^{e}=\log w_{u v}^{e}$ 以緩解具有高度密集連線的節點的影響。然後通過將邊中心性的值轉換為概率:

    $p_{u v}^{e}=\underset{}{\text{min}}   \left(\frac{s_{\max }^{e}-s_{u v}^{e}}{s_{\max }^{e}-\mu_{s}^{e}} \cdot p_{e}, \quad p_{\tau}\right)\quad\quad\quad(4)$

  其中,$p_{e}$ 是一個控制去除邊的總體概率的超引數,$s_{\max }^{e}$ 和 $\mu_{s}^{e}$ 是 $s_{u v}^{e}$ 的最大值和平均值。而 $p_{\tau}<1$ 是一個臨界概率(cut-off probability),對於邊中心性高的邊,採用 $p_{\tau}$ 刪除,用於降低重要邊被刪除的可能性,對於邊中心性低的邊,採用 ${\large \frac{s_{\max }^{e}-s_{u v}^{e}}{s_{\max }^{e}-\mu_{s}^{e}} \cdot p_{e}} $  刪除,用於提高不重要的邊被刪除的可能性。

  這裡提供三種 節點中心性度量 方法:

  1、點度中心性(Degree centrality):節點度本身可以是一箇中心性度量。在有向網路上,使用內度,因為有向圖中的一個節點的影響主要是由指向它的節點賦予的。  

  2、特徵向量中心性(Eigenvector centrality):基本思想是一個節點的中心性是相鄰節點中心性的函式。也就是說,與你連線的人越重要,你也就越重要。

  3、PageRank中心性(PageRank centrality):基於有向圖

  對於 PageRank 中心性分數計算公式如下:

    $\sigma=\alpha A D^{-1} \sigma+1\quad\quad\quad(5)$

  其中,$\sigma \in \mathbb{R}^{N}$ 是每個節點的 PageRank中心性得分的向量,$\alpha$ 是一個阻尼因子,它可以防止圖中的 sinks 從連線到它們的節點中吸收所有 ranks。這裡設定$\alpha=0.85$。對於無向圖,我們對轉換後的有向圖執行PageRank,其中每條無向邊都被轉換為兩條有向邊。

  例子:

  

  從圖中可以看出,三種方案存在細微差別,但都強調了連線兩個教練(橙色節點)的邊,而較少關注邊緣節點。

2.2.2 Node-attribute-level augmentation

  節點特徵隱藏:

    $\widetilde{\boldsymbol{X}}=\left[x_{1} \circ \tilde{\boldsymbol{m}} ; \boldsymbol{x}_{2} \circ \tilde{\boldsymbol{m}} ; \cdots ; \boldsymbol{x}_{N} \circ \widetilde{\boldsymbol{m}}\right]^{\top}$

  其中:$\widetilde{m}_{i} \sim \operatorname{Bern}\left(1-p_{i}^{f}\right)$,即用 $1-p_{i}^{f}$ 的概率取 $1$,用 $p_{i}^{f}$ 的概率取 $0$ ;

  這裡 $p_{i}^{f}$ 應該反映出節點特徵的第 $i$ 個維數的重要性。我們假設經常出現在有影響的節點中的特徵維度應該是重要的,並定義特徵維度的權重如下。

  對於稀疏的 one-hot 節點特徵,即$x_{u i} \in\{0,1\}$,對於任何節點 $u$ 和特徵維 $i$,我們計算維度 $i$ 的權重為

    $w_{i}^{f}=\sum\limits _{u \in \mathcal{V}} x_{u i} \cdot \varphi_{c}(u)\quad\quad\quad(7)$

  其中,$\varphi_{c}(\cdot)$ 是一個用於量化節點重要性的節點中心性度量。第一項 $x_{u i} \in\{0,1\}$ 表示節點 $u$ 中維度 $i $ 的出現,第二項 $\varphi_{i}(u)$ 表示每次出現的節點重要性。

  對於稠密、連續的節點特徵 $\boldsymbol{x}_{u}$,其中  $x_{u i}$  表示節點 $u$ 在維度  $i$  處的節點特徵的值,這裡不能按上述稀疏情況下的計算方式。本文用絕對值  $\left|x_{u i}\right|$  來測量節點  $u$  的  $i$  維的特徵值的大小:

    $w_{i}^{f}=\sum\limits _{u \in \mathcal{V}}\left|x_{u i}\right| \cdot \varphi_{c}(u)\quad\quad\quad(8)$

  與 Topology-level augmentation 類似,我們對權值進行歸一化,以獲得表示特徵重要性的概率。形式上:

    ${\large p_{i}^{f}=\min \left(\frac{s_{\max }^{f}-s_{i}^{f}}{s_{\max }-\mu_{s}^{f}} \cdot p_{f}, p_{\tau}\right)} \quad\quad\quad(9)$

  其中,$s_{i}^{f}=\log w_{i}^{f}$,$s_{\max }^{f}$  和 $\mu_{s}^{f}$ 分別為 $ s_{i}^{f}$ 的最大值和平均值, $p_{f}$ 是控制特徵增強的總體幅度的超引數。 

3 實驗

3.1 資料集

  

  【 Wiki-CSAmazon-ComputersAmazon-PhotoCoauthor-CSCoauthor-Physics  】

3.2 實驗結果

  基線實驗:

     

  消融實驗:

   

  靈敏度分析:

    

4 總結

  開發了一種自適應資料增強對比學習框架。 

相關文章