論文地址:Dual-Primal Graph Convolutional Networks
這篇論文的主要工作是通過構建對偶圖Dual Graph的方式將原圖的邊轉換成對偶圖中的節點,從而獲得edge feature。
什麼是對偶圖?
原文中給出了這樣的解釋:
Let be a given directed graph, to which we refer as the primal graph. The dual (also known in graph theory as the line (di)graph or adjoint graph) of , denoted by , is constructed as follows : each dual vertex corresponds to a primal edge , two dual vertices are connected by an edge in if they share direction and at least an endpoint in .
簡單地說,就是將原圖中的邊映射爲對偶圖中的節點,論文中使用了一張圖來說明這個過程
左側是原圖,右側是對偶圖中對於(0, 2)
的ego graph。對偶圖中的(0,3)
節點表示它是原圖中的0
號節點與3
號節點之間的邊。因爲(0,3)
與(0,2)
都與0
號節點相連,所以(0,3)
與(0,2)
之間存在一條邊。
模型部分
對偶圖上的卷積
是一個的矩陣,表示原圖上所有節點的feature。是一個的矩陣,表示對偶圖上所有節點的feature。對偶圖中的節點(i, j)
可由原圖中的節點i
和j
的feature直接拼接得到,即。
在對偶圖上直接套用GAT:
輸出是一個維的向量。這一步在對偶圖上聚合節點(i,j)
的一階鄰居信息,其實就是通過聚合原圖上所有與i
和j
相連的邊來更新邊(i,j)
。
原圖上的卷積
在對偶圖上獲得原圖上所有邊的feature後,再次套用GAT:
只不過在計算時可以直接通過邊上的feature得到。