《Diffusion-ConvolutionalNeuralNetworks》論文閱讀

DCNN

主要思想:

  1. 這是一篇基於空間域的圖神經網絡,聚合方式經過採樣(hop)1~k 階的鄰居並同 self 使用 mean 的方式獲得新的 feature-vector
  2. 做者將不一樣的採樣距離並聚合的特徵堆疊成一個矩陣,這個矩陣纔是最終一個 node(or graph/edge) 的 feature-representation

過程圖示1

下圖展現過程應該更清晰:html

上圖就是須要輸入的圖結構以及節點的特徵node

\(v_{3}\)節點 進行一階鄰居【\((d(3,.)=1)\)】信息聚合,並同本身進行求 mean ,其中 \(w_3^{0}\) 就是對應的一階的訓練的 parameters。相似的,還須要處理其餘的剩餘節點。
經過對5個節點分別進行處理,即通過一層 hidden-layer,輸出結果爲網絡

相似的,hop 二階。是在原圖的基礎上,而不是在已經通過一層的基礎上處理spa

同理將距離變成二階,就能同樣聚合到二階鄰居信息。獲得二階,三階... k階3d

其中的矩陣就是對同一個node的一階二階...信息(文中稱爲diffusion)
若是須要作一個節點分類,則將該矩陣拿出來,再同 \(w\) 進行 element-wise(or 全鏈接?) 便可,獲得預測的分類
htm

過程圖示2



論文內容

以上過程應該蠻好理解的,但是論文其實能夠寫的更明白,但是參數和圖示寫的不怎麼明白blog

  • 有圖 \(\mathcal{G}=\{G_t | t \in 1...T\}\),其中 t 表示graph個數,由於論文也適用於graph-classification
  • \(\mathcal{G_t}=(V_t, E_t)\) ,也用 \(\mathcal{X_t}\) 表示
  • graph中 \(N_t\) 個節點,每一個節點特徵維數 \(F\)
  • \(P_t\) 爲歸一化的度矩陣,維數\(N_t*N_t\),能夠理解成機率,或者 mean

其中graph能夠是 帶/不帶 權重,有/無向圖
PS 做者提出該DCNN 可適用於 node/graph/edge-classification,可是實驗卻只在node上表現還能夠,graph上不行,edge甚至沒作ip

我只以node-classification爲例
經過一次計算的公式:element

  • t 表示某一個graph
  • i 表示節點序號
  • j 表示第幾階(hop)
  • k 表示計算節點的某個維數

經過矩陣表示則:get

最後的分類,可適用argmax或者softmax(我的以爲能夠全鏈接 或者 element-wise)

實驗結果和缺點

在node-classification上尚可,edge的實驗卻沒作。實驗在graph-classification上表現極差——由於我看做者經過將全部節點求和並平均了一下來表示graph-feature,着就讓我想到了GNN上限的一篇論文,即sum的操做是優於mean的【固然對graph-classification瞭解很少,我的臆想】,mean反而更不容易區分開不一樣的graph了

這點沒看懂,可能須要看更多論文來理解(ε=ε=ε=┏(゜ロ゜;)┛

雜談

GNN論文看的也不是不少,可是有個奇怪的想法,就是利用edge進行aggregate就算是利用了graph的structural-info 了嗎?

參考文獻

【1】https://zhuanlan.zhihu.com/p/76669259

【2】https://media.nips.cc/nipsbooks/nipspapers/paper_files/nips29/reviews/1073.html

【3】https://www.youtube.com/watch?v=5eTJ6yxtU5s

【4】https://www.youtube.com/watch?v=eybCCtNKwzA

相關文章
相關標籤/搜索