Paper Information
Title:Geom-GCN: Geometric Graph Convolutional Networks
Authors:Hongbin Pei, Bingzhen Wei, K. Chang, Yu Lei, Bo Yang
Sources:2020, ICLR
Paper:Download
Code:Download
Abstract
MPNN 存在的問題:即 丟失了節點與其鄰居間的結構資訊 和 無法捕獲節點之間的長距離依賴關係。
本文模型:Geom-GCN: Geometric Graph Convolutional Networks
其中 Aggregation scheme 有三個 modules :node embedding、structural neighborhood、bi-level aggregation 。
1 Intriduction
在每一層 MPNN 中,每個節點向其鄰域內的節點傳送其特徵表示,即一條“訊息”;然後通過聚合從鄰域收到的所有“訊息”來更新其特徵表示。
MPNNs 的 Aggregator 存在的問題一:Aggregator 丟失了節點與其鄰居間的結構資訊。如 GCN 單純考慮了 一階鄰居的資訊,並沒有考慮鄰居節點的不同,稍微好一點的工作有 GAT ,好在分配權重的觀點。對於該問題採用下圖做例子:
同構圖:同構圖是指圖中節點型別和關係型別(邊的型別)都僅有一種。
異構圖:與同構圖相反,異構圖指圖中節點型別或關係型別多於一種。
問題二:Agrgregator 缺乏捕獲遠距離依賴的能力。
可能的解決方法:使用深層的網路。當然這只是想想,原因有一:distant node 無差別融合其近端 node 的資訊(相關和不相關的資訊)。二:圖中的過平滑問題:即圖中節點的表示最終將趨於一樣。[ 理論上是同 label 的節點表示趨於一致,當然這也是因為其無法識別同構圖和異構圖,將不同類別的節點視為一類 ]
本文解決的思路:考慮構造一個好的 latent space ,將節點對映為連續空間的一個向量(graph embedding),在隱空間查詢鄰居並進行聚合。
2 Geometric aggregation scheme
Geometric aggregation scheme 如 Fig. 1 所示:
Aggregation scheme 包括三個模組:Node embedding (panel A1-A3)、Structural neighborhood (panel B) 和 Bi-level aggregation (panel C)。
2.1. Node embedding
即上圖中 $ A1\longrightarrow A3$ 。
$ A1\longrightarrow A2$ 這裡將原始圖資料對映到一個二維空間上去,具體的方法即後文涉及到的 Graph embedding 方法:Isomap、Poincare embedding、struc2vec 。該過程可以看做對映函式 $f: v \rightarrow z_{v}$。
$ A2\longrightarrow A3$ 指圖中區域性領域結構(或稱之為區域性子圖),即後文所指的 $N_g(v)$。
2.2 Structural neighborhood
即上圖中 $ A3\longrightarrow B$ 。
$ B1\longrightarrow B2$ 指圖中結構化鄰居(Structural neighborhood),即
$\mathcal{N}(v)=\left(\left\{N_{g}(v), N_{s}(v)\right\}, \tau\right)$。
[ 可以理解為 $N_g(v)$ 和 $N_s(v)$ 的並集 ]
這裡結構化鄰域包括節點集合 $\left\{N_{g}(v), N_{s}(v)\right\}$ 以及 Node 上的關係操作 $\tau$ 。
剖析:$N_{g}(v)=\{u \mid u \in V,(u, v) \in E\}$ 代表與 $v$ 相連的鄰居集合 [ 即鄰接矩陣中的鄰居 ];潛在空間鄰域 $N_{s}(v)=\left\{u \mid u \in V, d\left(\boldsymbol{z}_{u}, \boldsymbol{z}_{v}\right)<\rho\right\}$ 代表著與 $v$ 距離小於 $\rho$ 的鄰居集合,可以發現 $N_{s}(v)$ 在一定程度上包括了遠距離依賴的相似鄰居。
關係操作運算元(relational operator)是一個在潛在空間中定義的函式。其輸入是 $v$ 和 $u$ 的有序位置對(ordered position pair) $\left(z_{v}, z_{u}\right) $ ,該運算元用於表示 $v$ 和 $u$ 的幾何關係(理解為是否是鄰域關係)。具體如下所示:
$\tau:\left(\boldsymbol{z}_{v}, \boldsymbol{z}_{u}\right) \rightarrow r \in R$
其中,$r$ 是離散值,$R$ 是幾何關係的集合。對 $\tau$ 的一個要求是保證每個有序位置對有且只有一個確定的幾何關係,即生成的每個 $r$ 有且只有一個 [ 方便下文中 $(i,r)$ 進行索引 ]。
如上面的 Fig 1. B 所示,紅色的表示中心節點 $v$,藍色節點包括與 $v$ 直接相連的節點或者與 $v$ 距離小於 $\rho $ 的節點,圖中是一個 $3*3$ 的格子,每一個格子所在的節點表示與 $v$ 的一種關係。(即上文說的並集關係)
2.3 Bi-level aggregation
即上圖中 $ C$ 。
關鍵點: 構造虛擬節點,即 Fig 1. C 中的 空心節點。綠色的虛擬節點表示不和中心節點直接相連,但是在鄰域範圍內;藍色的虛擬節點表示和中心節點直接相連的鄰域點
Low-level aggregation——通過聚合函式 $p$ 將相同鄰域中具有相同幾何關係的節點的隱藏特徵聚合到虛擬節點:
$\boldsymbol{e}_{(i, r)}^{v, l+1}=p\left(\left\{\boldsymbol{h}_{u}^{l} \mid u \in N_{i}(v), \tau\left(\boldsymbol{z}_{v}, \boldsymbol{z}_{u}\right)=r\right\}\right), \forall i \in\{g, s\}, \forall r \in R \quad \text { (Low-level aggregation) }$
其中,$p$ 是具有平移不變性的函式,比如 $L_p$(通常 $p=1,2,\infty $)。
High-level aggregation —— 虛擬節點的特徵通過函式 $q$ 進一步聚合:
$\boldsymbol{m}_{v}^{l+1}=\underset{i \in\{g, s\}, r \in R}{q}\left(\left(e_{(i, r)}^{v, l+1},(i, r)\right)\right)(\text{High-level aggregation})$
$q$ 可以考慮使用 concatenation 來提取鄰居資訊。
最後,使用非線性變換 $ReLU$ 得到新的表示 $\boldsymbol{h}_{v}^{(l+1)}$ :
$\boldsymbol{h}_{v}^{l+1}=\sigma\left(W_{l} \cdot \boldsymbol{m}_{v}^{l+1}\right) (\text{Non-linear transform})$
2.4 Comparisons to related work
上文 GCN 存在的問題,以及 MPNNs 的改進工作 GAT 。
3 Geom-GCN:An implementation of the scheme
Geometric aggregation scheme 在 GCN 中的具體實現,主要包括上述的三個模組: node embedding、structural neighborhood、aggregation function。
3.1 Node embedding
目的:儲存拓撲結構的資訊。
這裡採用三種 embedding method :Isomap(廣泛使用的低維 Embedding method ,基於 distance )、Poincate、struc2vec(preserve hierarchies and local structures),對應於本文提出的方案 Geom-GCN-I、Geom-GCN-P、Geom-GCN-S。
對於 $N_{s}(v)$ 中的 $\rho $ 我們將其區間範圍設定為從 $0$ 直到 Average($N_{s}(v)$ ) = Average($N_{g}(v)$ ) ,這裡的距離採用的是歐氏距離(Euclidean distance)。
本文,這裡的幾何運算元 $\tau$ 定義為實現二維歐幾里得空間和雙曲空間中兩個節點之間的相對位置的四種關係。Relationship set R= {left upper, right upper, left lower, right lower},$\tau\left(\boldsymbol{z}_{v}, \boldsymbol{z}_{u}\right)$ 定義如 Table 1 所示:
這裡將給出 Low-level aggregation $p$ 和 High-level aggregation $q$ 以及關係對映函式 $\rho$ :
Low-level aggregation $p$ 其實就是 GCN 中的平均操作。
${\large \boldsymbol{e}_{(i, r)}^{v, l+1}=\sum\limits _{u \in N_{i}(v)} \delta\left(\tau\left(\boldsymbol{z}_{v}, \boldsymbol{z}_{u}\right), r\right)(\operatorname{deg}(v) \operatorname{deg}(u))^{\frac{1}{2}} \boldsymbol{h}_{u}^{l}, \forall i \in\{g, s\}, \forall r \in R} $
其中:
$\delta(\cdot, \cdot)$ 是一個只允許包含有關係的節點 $r$ 到 $v$ 的克羅內克增量函式
High-level aggregation $q$ 本質上就是 concatenation 函式,具體如下:
${\large \boldsymbol{h}_{v}^{l+1}=\sigma\left(W_{l} \cdot \underset{i \in\{g, p\}}{||} \underset{r \in R}{||} \boldsymbol{e}_{(i, r)}^{v, l+1}\right)} $
其中:
$\sigma $ 是非線性啟用函式 ReLU 。
4 Experiments
本文定義 $\alpha$ 作為 Gromov hyperbolicity 用來測量圖的雙曲率。$\alpha$ 越小,空間越雙曲,這表明圖所具有的層次模式越強。
同樣使用 $\beta$ 定義節點的同質性:
$\beta=\frac{1}{N} \sum\limits _{v \in V} \frac{\text { Number of } v \text { 's neighbors who have the same label as } v}{\text { Number of } v \text { 's neighbors }} .$
$\beta$ 值越大,說明就節點標籤而言,節點對於給定圖的同質性更強。
本文采用的資料庫如 Table 2 所示:
實驗結果如 Table 3 所示:
作者又進一步測試了兩個變種:
- 只用原始圖上鄰居,加上字尾-g. 如Geom-GCN-I-g
- 只用隱空間鄰居,加上字尾-s. 如Geom-GCN-I-s
結果見下圖:
可以看出:隱空間鄰居對 $\beta $ 較小的圖貢獻更大。
然後,作者測試了不同 embedding 方法在選取鄰居上對實驗結果的影響。
可以看出:這裡並沒有一個通用的較好embedding方法。需要根據資料集來設定,如何自動的找到最合適的embedding方法是一個future work。
最後是時間複雜度分析。本文考慮了多種不同的關係,因此,Geom-GCN的時間複雜度是GCN的 $|2R|$ 倍。另外,和GAT的實際執行時間相差無幾,因為attention的計算通常很耗時。
視覺化結果:
5 Conclusion and future work
我們解決了現有的資訊傳遞神經網路在圖上的兩個主要缺點——鑑別結構的損失和長期依賴關係。作為我們的關鍵見解,我們通過圖的嵌入將一個離散的圖連線到一個連續的幾何空間。也就是說,我們利用了卷積的原則:在一個有意義的空間上進行空間聚合——因此我們的方法從圖中提取或“恢復”嵌入空間中丟失的資訊(區分結構和長期依賴關係)。我們提出了一個通用的幾何聚合方案,並用幾個特定的Geom-GCN實現例項化了它,我們的實驗驗證了它的明顯優勢。作為未來的工作,我們將探索選擇正確的嵌入方法的技術——不僅依賴於輸入圖,還依賴於目標應用程式。