1. 程式人生 > 其它 >半監督-Learning Discrete Structures for Graph Neural Networks

半監督-Learning Discrete Structures for Graph Neural Networks

標籤:圖神經網路

動機

  • 圖神經網路主要優點是能夠在資料點之間結合稀疏和離散的依賴關係, 但是, 圖神經網路也只能在這樣的圖結構進行使用, 而在真實的世界中的圖通常是帶有噪聲和不完整的, 或者根本不可用的

貢獻

  • 提出近似求解一個學習圖的邊上的離散概率分佈的雙層規劃和學習圖卷積網路的圖結構和引數

思想

定義

符號定義

一個無向圖 \(\mathcal{G} = \{\mathcal{V}, \mathcal{E}, A\}\), 頂點集合 \(|\mathcal{V}| = N\), 邊集合 \(\mathcal{E} = M\), \(A \in \mathcal{H}_N\) 是一個鄰接矩陣, 特徵矩陣 \(X \in \mathcal{X}_N \subset \mathbb{R} ^{N \times n}\)

,

相關工作

圖神經網路

一個標籤集合 \(\mathcal{Y}\) 和一個標籤對映函式 \(y: V \rightarrow \mathcal{Y}\), 給一個訓練節點集 \(V_{Train}\) 去學習一個函式:

\[f_w:~~\mathcal{X} \times \mathcal{H}_{N} \rightarrow \mathcal{Y}^N ~~~~~~~~~(1) \]

通過最小化一些正則化的經驗損失:

\[L(w, A) = \sum_{v \in V_{Train}}\ell(f_w(X,A)_v, y_v) + \Omega(w)~~~~~~~~~(2) \]

\(w \in \mathbb{R}^d\)

\(f_w\) 的引數, 對於節點 \(v\) \(f_w(X,A)\)\(f_w\) 的輸出, \(\ell : ~\mathcal{Y} \times \mathcal{Y} = \mathbb{R}^+\) 是一個點損失函式, \(\Omega\) 是一個正則化, 兩層 GCN , 它的計算概率:

\[f_w(X,A) = Softmax(\hat{A}ReLu(\hat{A} ~ X ~ W_1)W_2)~~~~~~~~~(3) \]

\(w = (W_1 ~~~W_2)\)GCN 的引數.

雙層規劃問題

雙層規劃是優化問題,其中目標函式中出現的一組變數被約束為另一個優化問題的最優解, 形式上給定兩個目標函式 \(F\)

\(L\), \(F\) 為外目標函式和 \(L\) 內目標函式,以及兩組變數 \(\theta \in \mathbb{R}^m ~~~~ w \in \mathbb{R}^d\)\(\theta\) 外目標函式變數和 \(w\) 內目標函式變數,給出了一個雙層規劃形式:

\[min_{\theta, w_{\theta}}F(w_{\theta}, \theta) ~~~ s.t. ~~~ w_{\theta} \in \arg \min_{w} L (w, \theta)~~~~~~~~~(4) \]

針對上式, 我們最終目的是求解 \(F(w_{\theta}, \theta)\) 的最小值, 但它其中一個引數 \(w_{\theta}\) 是關於另外一個問題 \(L(w, \theta)\) 解的函式, 解決上式問題具有挑戰性, 因為內部問題的解集通常在封閉形式中不可用. 標準的方法包括用迭代優化動力學 \(\Phi\) 的重複應用代替最小化 \(L\), 例如(隨機)梯度下降. 設 \(w_{\theta, T}\) 為動力 \(\Phi\) 經過 \(T\) 次迭代後的內變數, \(w_{\theta, T} = \Phi(w_{\theta, T- 1}, \theta) = \Phi(\Phi(w_{\theta, T- 1}, \theta), \theta)\), 如果 \(\theta\)\(w\) 為真實值並且帶動量目標函式是平滑的, 可以進行計算函式 \(F(w_{\theta, T}, \theta)\) 關於 (\(w.r.t\)) \(\theta\) 的梯度:

\[\partial_wF(w_{\theta, T}, \theta)\nabla_{\theta}w_{\theta,T} + \partial_{\theta}F(w_{\theta, T}, \theta)~~~~~~~~~(5) \]

可用反向微積分進行有效的計算

框架

首先是輸入資料節點, 利用圖生成器生成圖, 然後進行圖取樣, 優化內目標函式, 即計算梯度和更新 GCN 引數, 優化外目標函式, 計算超引數和更新圖生成器 \(\theta\).

演算法

Jointly Learning the Structure and Parameters

假設關於真實鄰接矩陣 \(A\) 的資訊缺失或不完整, 最終是尋找一個最小化泛化誤差的模型, 假設存在第二個具有已知目標的例項子集 \(V_{val}\), 估計推廣誤差, 提出尋找 \(A\in \mathcal{H}_N\), 最小化以下引數

\[F(w_A, A) = \sum_{v \in V_{val}}\ell(f_{w,A}(X,A)_V,y_v)~~~~~~~~~(6) \]

假設 \(w_A\)\(L\) 唯一最小值, 我們將等式 \((2)、(6)\) 構成一個混合整數雙層規劃問題的內部目標函式和外部目標函式, 其中外部目標旨在找到最優離散圖結構, 內部目標是給定圖的 GCN 的最優引數. 由此產生雙層規劃問題即使對小圖也很難精確解決, 此外, 它既包含連續變數也包含離散值變數, 這使得無法應用公式 \((5)\), 所以本文維護了圖結構的生成模型, 並根據離散圖上的分佈的 (連續) 引數重構雙層規劃問題; 也就是用伯努利 \(Bernoulli\) 隨機變數對每條邊建模, 設 \(\bar{H} =Conv(\mathcal{H}_N)\)\(N\) 個節點所有鄰接矩陣集的凸包, 通過將所有可能的邊建模為一組具有引數矩陣 \(\theta \in \mathcal{H}_N\) 的相互獨立的伯努利隨機變數,我們可以將圖取樣為 \(\mathcal{H} \ni A \sim Ber(\theta)\). \((2)\)\((6)\) 然後可以被替換,通過使用圖結構上的期望。由此產生的雙層問題可以寫成:

\[min_{\theta \in \bar{H}_N} \mathbb{E}_{A \sim Ber(\theta)}[F(w_{\theta}, A)] ~~~~(7)~~~s.t.~~~ w_{\theta} = \arg \min \mathbb{E}_{A \sim Ber{(\theta)}}[L(w, A)] ~~~~~~(8) \]

通過採用期望, 內部和外部目標都成為伯努利引數的連續 (並且可能平滑)函式. 方程給出的雙層規劃問題. \((7)-(8)\) 仍然很難有效解決. 這是因為內部問題的解在封閉形式下對於 GCNs 是不可用的(目標是非凸的); 而且期望值很難精確計算. 因此, 有效的演算法只能找到近似的隨機解,即 \(\theta_{i,j} \in (0,1)\) 在描述一種解決方程給出的優化問題的方法之前. \((7)-(8)\) 大約在超梯度下降的情況下,我們首先轉向獲得最終 GCN 模型的問題, 該模型可用於預測. 對於具有 \(N\) 個節點和引數 \(\theta\) 的圖上的給定分佈 \(P_{\theta}\), GCN 的期望輸出是:

\[f_{w}^{exp}(X) = \mathbb{E}_A[f_w(X,A)] = \sum_{A \in \mathcal{H}_N}P_{\theta}(A)f_w(X,A) ~~~~~(9) \]

不幸的是,即使對於小圖,計算這個期望也是難以處理的;然而,我們可以計算出輸出的經驗估計:

\[\hat{f}_{w}(X) = \frac{1}{S}\sum_{i = 1}^{S} f_w(X,A) ~~~~~~~~~~~~(10) \]

其中 $S > 0 $ 是我們希望抽取的樣本數量. 注意, \(f\)\(f ^{exp}_w\) 的無偏估計量. 因此, 為了使用具有雙層公式的 GCN \(f_w\)進行預測, 我們從分佈 \(P_θ\) 中取樣 \(S\) 圖, 並將預測計算為 \(f_w\) 值的經驗平均值

Structure Learning via Hypergradient Descent

雙層規劃形式自然適合於為特定的下游任務學習圖形生成模型和GNN引數的問題. 這裡, 外部變數θ是圖生成模型的引數, 內部變數w是GCN的引數. 我們現在討論一個實用的演算法來處理方程定義的雙層問題. (7)和(8). 關於內點問題, 我們注意到期望

\[ \mathbb{E}_{A \sim Ber(\theta)}[L(w,A)] = \sum_{A \in \mathcal{H}_N}P_{\theta}(A)f_w(X,A) ~~~~~~~~~(11) \]

\(2^{N^2}\) 項之和組成, 即使對於相對較小的圖也是難以處理的. 然而, 我們可以選擇易處理的近似學習動態 \(\Phi\), 例如隨機梯度下降( SGD ):

\[w_{\theta, t + 1} = \Phi(w_{\theta, t}, A_t) = w_{\theta,t} - \gamma_t \nabla L(w_{\theta, t}, A_t) \]

其中 \(\gamma\) 是學習速率, 在每次迭代時畫出At∞Ber(θ). 在適當的假設下, 對於 \(t → ∞\), SGD 收斂到一個依賴於邊的概率分佈的權向量 \(w_θ\)。設 \(w_{θ, T}\)\(\mathbb{E}[L]\) 的近似極小值(其中 \(T\) 可能取決於 \(θ\) ). 我們現在需要計算超輻射\(∇_{\theta} \mathbb{E}_{A∼Ber(θ)}[F]\) . 的估計量我們有:

\[\nabla_{\theta} \mathbb{E}[F(w_{\theta, T}, A)] = \mathbb{E}[\nabla(w_{\theta,T}, A)] = \mathbb{E}[\partial_wF(w_{\theta, T}, A) \nabla_{\theta} w_{\theta, T} + \partial_A F(w_{\theta,T}, A)\nabla_{\theta}A] \]

偽碼

實驗

半監督節點分類任務

總結

提出了 LDS ,一個同時學習圖結構和 GNN 引數的框架。雖然我們在實驗中使用了特定的 GCN 變體(Kipf & Welling,2017),但該方法更普遍地適用於其他神經網路。LDS 的優勢在於它以合理的計算成本在典型的半監督分類資料集上獲得了高精度。此外,由於圖生成模型 LDS 學習,邊緣引數具有概率解釋。這種方法有其侷限性。雖然效率相對較高,但它目前無法擴充套件到大型資料集:這將需要一個能夠處理小批量節點的實現。當所有資料點(節點)在訓練期間都可用時,我們僅在轉導設定中評估 LDS 。在訓練之後新增額外的節點(歸納設定)目前需要從頭開始重新訓練整個模型。當對圖進行取樣時,我們當前不強制圖是連通的