參考
論文筆記:SEMI-SUPERVISED CLASSIFICATION WITH GRAPH CONVOLUTIONAL NETWORKS
如何理解 Graph Convolutional Network(GCN)?
圖卷積網絡(Graph Convolutional Network, GCN)
圖卷積網絡(Graph Convolutional Network)
GCN入門理論
在看GCN前首先要理解GCN的理論基石
卷積定理
卷積定理指出,函數卷積的傅立葉變換是函數傅立葉變換的乘積。既然在圖上不好做卷積,那就轉換到傅立葉域里做乘積,則先對圖$ f $和卷積核$ h$ 做傅立葉變換后相乘,再傅立葉逆變換回來,就得到了圖域卷積。即,
傅里葉變換
傳統傅里葉變換定義為:
其頻率為$w$,基函數為$e^{-iwt}$,其中基函數滿足:
其中上三角符合為拉普拉斯算子
又廣義特征方程的定義是:
所以基函數$e^{-iwt}$是變換拉普拉斯算子的特征函數,則我們可以做以下類比
將圖拉普拉斯矩陣的特征向量作為傅里葉變換的基,我們可以得到在圖上的傅里葉變換定義為:
推廣到矩陣形式
即($U=[u_{1},u_{2},...,u_{N}]u_{i}$是列向量)
(矩陣變換細節)
我們還需得到在圖上的傅里葉逆變換,傳統的傅里葉逆變換是對頻率$w$求積分:
那么類比到圖上就是對特征值求和
同理,推廣到矩陣(類比於上面的推導)
即
至此,已經推導出Graph上的傅里葉變換和傅里葉逆變換,接下來利用卷積定理即可得到在圖上的卷積。
圖上卷積
卷積核$g$在圖上的傅里葉變換是:
寫成對角矩陣的形式:
則利用卷積定理,可以得到信號$f$(圖上的N維向量)和卷積核$g$在圖上的卷積為:
或者寫成
以上內容可用下圖概括
以上內容便是GCN的理論基礎,有了上面的基礎,就能看懂論文了,基本是圍繞卷積核來做文章,下面是三篇論文的卷積核設計。(下文中$x$是圖信號,即每個節點的特征)
第一代GCN簡單粗暴,有N個參數
第二代GCN巧妙地將卷積核設計為polynomial filter(多項式卷積核),這樣就只有K個參數了,K<<N,但是仍然要做矩陣乘法($U$),文中使用切比雪夫多項式來擬合卷積核,如圖中紅色方框內所示:切比雪夫多項式的輸入是$[-1,1]$,因此先將對角矩陣(拉普拉斯矩陣的特征值組成的對角矩陣)scale,然后進行推導,發現不需要再進行矩陣運算,只需要算矩陣和向量的乘積即可
這篇文章是基於前人的工作在上圖中最后推導得出的式子上進行演變的,如下圖中的紅色箭頭所示