圖神經網絡近來已火很久,重點是針對關係型數據(關係型數據最早的表示即原始的圖網絡:節點,邊,權重)展開深度學習,進行標籤分類等數據工作。
以上是GCN的核心工作原理類似於圖像壓縮工程:
1.圖像像素矩陣化
2.傅里葉變換(拉普拉朗斯矩陣)
3.使用特徵值作爲權重 選取排名前K個特徵值代表的維度(類似於PCA降維後保留的核心維度)作爲座標軸,轉換分解原圖數據
4.以上三步得到類似於CNN 卷積層Convolution層和對應的權重Q1,Q2,Q3,Q4…QK
5.後面就是針對已經完成圖像壓縮的圖數據,進行CNN後面的分類softmax Layers進行操作。
聚焦PART1:
其中第2小點和第3小點的原理需要重點研究,是GCN如何卷積的核心所在。以下重點分析傅里葉變換和拉普拉朗斯矩陣:
首先來介紹一下拉普拉斯矩陣:
對於圖 G=(V,E),其Laplacian 矩陣的定義爲 L=D-A,其中 L 是Laplacian 矩陣, D 是頂點的度矩陣(對角矩陣),對角線上元素依次爲各個頂點的度, A 是圖的鄰接矩陣。看圖5的示例,就能很快知道Laplacian 矩陣的計算方法。
拉普拉斯矩陣主要是對圖像像素數據完成分解,且分解後有特殊的形式。
傅里葉變換:
傳統的傅里葉變換定義爲:
F(\omega)=\mathcal{F}[f(t)]=\int_{}{}f(t)e{-i\omega t} dt
對於拉普拉朗斯詳細公式以及傅里葉變換在GCN中如何組合,發揮作用,可以參考下文:
從CNN到GCN的聯繫與區別——GCN從入門到精(fang)通(qi)_網絡_weixin_40013463的博客-CSDN博客
聚焦PART2:Keras實現GCN源碼跟讀分析
GCN代碼解讀分析
github完整版
如果你對AI算法感興趣,歡迎關注我的博客《深度學習算法攻城獅》,持續更新AI深度學習算法項目實戰代碼,十分鐘學會寫出撩妹神器AI聊天機器人@~@