Convolutional Neural Networks on Graphs with Fast Localized Spectral Filtering


Defferrard, Michaël, Xavier Bresson, and Pierre Vandergheynst. "Convolutional neural networks on graphs with fast localized spectral filtering." Advances in Neural Information Processing Systems. 2016.

摘要:

作者提出了一種把傳統CNN擴展到非歐空間上的一種卷積網絡

 

1.介紹

作者的主要貢獻有:

(1)譜方法的形式化。一種基於譜方法的CNN的形式化表述,基於GSP(Shuman, David I., et al. "The emerging field of signal processing on graphs: Extending high-dimensional data analysis to networks and other irregular domains." IEEE Signal Processing Magazine 30.3 (2013): 83-98.)

(2)嚴格的局部化的filters。作者擴展了(Bruna, Joan, et al. "Spectral networks and locally connected networks on graphs." arXiv preprint arXiv:1312.6203 (2013).d)的工作。局部化就是定義了一個參數K,K代表以一個節點為中心的K次跳躍(也就是距離為K)。

(3)小的計算復雜度。復雜度是和K以及邊數成正比。因為大部分現實生活中的圖是高度稀疏的,那么就是邊數遠遠低於點數的平方,即 邊 = k*點數。k可以看做是一個點的k最近鄰。這也就是說復雜度是和輸入數據的大小。另外,這個方法避免計算傅里葉因子(需要計算和儲存傅里葉因子)。這個方法只用儲存一個拉普拉斯矩陣,這是一個稀疏矩陣,只有邊數個非零值。

(4)高效的pooling。通過構建一個二叉樹進行pooling。

(5)實驗結果。作者在MNIST上做了實驗,取得了和傳統CNN相當的實驗結果。tensorflow code:https://github.com/mdeff/cnn_graph

 

2.技術細節

實現圖上的CNN需要滿足一下一點要求:(1)設計卷積核(2)相似點聚集(3)pooling操作

2.1 學習局部化譜filters

圖的傅里葉變換:首先定義拉普拉斯矩陣:

其中D是度矩陣,W是鄰接矩陣,

如果對拉歐拉斯矩陣做歸一化,則表示為:

然后對L做特征值分解,得到:

U是特征向量組成的矩陣,A是特征值組成的對角矩陣。

那么圖上的傅里葉變換為:

其中x是整個圖組成的特征,n為圖上的節點數。

圖上的卷積操作定義為:

那么對x做卷積操作即為:

其中

 

多項式近似實現局部化:

 

快速過濾的遞歸推導:主要是利用了切比雪夫多項式的遞推關系

學習過濾器:通過梯度下降即可完成:

 

2.2 圖粗化

主要是用了(Dhillon, Inderjit S., Yuqiang Guan, and Brian Kulis. "Weighted graph cuts without eigenvectors a multilevel approach." IEEE transactions on pattern analysis and machine intelligence 29.11 (2007).)的方法 

 

2.3 快速pooling

作者通過上述方法得到更粗糙的圖,然后對節點重排序,然后構建一個二叉樹。

 相關論文:

Semi-Supervised Classification with Graph Convolutional Networks

Geometric deep learning on graphs and manifolds using mixture model CNNs

GRAPH ATTENTION NETWORKS


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM