1. 程式人生 > 其它 >自監督- Multi-Stage Self-Supervised Learning for Graph Convolutional Networks on Graphs with Few Labeled Nodes

自監督- Multi-Stage Self-Supervised Learning for Graph Convolutional Networks on Graphs with Few Labeled Nodes

標籤: 自監督、 圖神經

動機

  • 首先, 由於很難改變 GCNs 固有的淺層結構, 如何設計一種基於 GCNs 的一致高效的訓練演算法來提高其在標籤節點較少的圖上的泛化效能?

  • 其次, 如何利用基於大量未標記資料的自監督學習方法的優勢, 來提高所提出的訓練演算法的效能?

貢獻

  • 我們首先探討了在標籤節點較少的圖上 GCNs 的層效應的存在性, 揭示了 GCNs 需要更多的層來維持標籤率較低的效能
  • 結合多階段訓練框架和深度聚類方法, 我們提出了一種有效的訓練演算法, 稱為 M3S 演算法. 它在低標籤率的圖形上表現出最先進的效能.
  • 事實上,我們的 M3S 訓練演算法可以提供一個更通用的框架, 該框架利用自監督學習方法來改進多階段訓練框架, 從而在只有少量標記資料的學習任務上設計高效的演算法.

思想

框架

對於一個原圖, 首先利用 GCN 進行訓練, 得到每一個節點的表示. 利用 DeepCluster 將沒有標籤的資料進行分成 \(K\) 類, 然後利用對齊策略將他們聚類的資料進行標籤, 然後將每個類中的置信最高的進行 self-checking, 通過的節點則加入原始資料, 然後重複知道所有的資料都有標籤.

演算法

Multi-Stage Training Framework

原始的自訓練是將置信度最高的預測的節點標籤加入到虛擬節點中且只加入一次, 而多階段訓練演算法執行 \(K\) 次, 在標籤的有限的圖上, 該演算法重複新增置信度高的標籤資料, 並促進標籤資訊的傳播, 與原始方法相比效能更好. 而多階段訓練框架的可信在於基於置信度的虛擬標籤選擇節點的準確性, 因此很自然的引入了能夠保證所選標籤資料的準確性的自檢機制.

DeepCluster

DeepCluster 是 2018 年提出的自監督的方法, 其主要是由 ConvNet F 產生的一組 embedding 作為輸入, 並基於幾何標準將其分組為 \(k\) 個不同的聚類, DeepCluster 共同學習一個 \(d \times k\)

質心矩陣 \(C\) 和每個資料點 \(n\) 的聚類分配 \(y_n\), 通過解決下列問題:

\[\min_{C \in \mathcal{R}^{d \times k}} \frac{1}{N} \sum_{n = 1}^{N} min_{y_n \in \{0, 1\}^k} ||F(x_n) - C_{y_n}||^2_2 \]

解決這個問題提供了一組最優賦值 \((y_n^*)_{n≤N}\)

和質心矩陣 \(C^*\). 這些賦值被用作偽標籤. 具體來說, DeepCluster 在將從 ConvNet 產生的嵌入向量聚類成偽標籤和通過預測這些偽標籤來更新 ConvNet 的引數之間交替. 對於圖中的節點分類任務, 表示過程也可以看作是圖嵌入 因此, 我們利用圖嵌入的內在特性, 在嵌入向量上執行 k-means, 根據嵌入距離將所有節點聚類成不同的類別. 接下來, 引入對齊機制, 將每個簇中的節點分類到嵌入空間上分類中最近的類. 最後, 利用獲得的偽標籤構建多階段自監督演算法的對齊機制.

Aligning Mechanism

對齊機制目標是根據嵌入距離將聚類中的類別轉化為分類中的類別, 經過 k-means 後將未標記的資料進行聚類後得到聚類 \(l\) , 其計算如下:

\[c^{(l)} = \arg \min_m ||v_l - \mu_m||^2 \]

其中 \(\mu_m\) 表示類 (有標記的資料) \(m\) 中的質心, \(v_l\) 表示類 \(l\) (未標記的資料)中的質心, \(c^{(l)}\) 表示在原始標記資料中與類的所有質心距離最近的對齊類. 通過對齊機制, 我們能夠將每個簇的節點分類到一個特定的類別, 然後根據它們的嵌入距離為所有未標記的節點構造偽標籤.

偽碼

實驗

節點分類任務, 在 Cora 上的分類準確率.

總結

在標籤少的圖上, 提出了多階段訓練演算法框架, 將帶有虛擬標籤的自信資料加入到標籤集中, 擴大訓練集. 此外, 將深度聚類應用於遺傳神經網路的圖嵌入過程, 並設計了一種新的對齊機制來構造自檢機制, 以改進多階段訓練框架.