【論文筆記】Learning Convolutional Neural Networks for Graphs


Learning Convolutional Neural Networks for Graphs

2018-01-17  21:41:57

【Introduction】

這篇 paper 是發表在 ICML 2016 的:http://jmlr.org/proceedings/papers/v48/niepert16.pdf

上圖展示了傳統 CNN 在 image 上進行卷積操作的工作流程。(a)就是通過滑動窗口的形式,利用3*3 的卷積核在 image 上進行滑動,來感知以某一個像素點為中心的局部圖像區域(local image patch);(b)感受野所創建的 node sequence,以及由超參數所決定的感受野的形狀。

 

本文將 CNN 拓展到大規模的基於 graph 的學習問題當中,主要考慮如下兩類問題:

1. 給定一組 graphs,學習一個函數,使之可以在 unseen graphs 用於 classification 或者 regression problem。

The nodes of any two graphs are not necessarily in correspondence. For instance, each graph of the collection could model a chemical compound and the output could be a function mapping unseen compounds to their level of activity against cancer cells.

2. 給定一個大型的 graph,學習 graph 的表示,使其可以用於推理不可見的 graph 屬性,例如:node types 或者 missing edges。

 

本文提出一種學習表示的框架來進行 有向圖 和 無向圖的分類。這個圖可能擁有多個離散和連續屬性的 nodes 和 edges,可能包含多種類型的 edges。與傳統CNN 相比,我們從 input graphs 中獲得 locally connected neighborhoods。這些近鄰 可以有效的產生,並且作為卷積結構的感受野,允許該框架學習有效的 graph representation。

 

For numerous graph collections a problem-specific ordering (spatial, temporal, or otherwise) is missing and the nodes of the graphs are not in correspondence. In these instances, one has to solve two problems:

  (i) Determining the node sequences for which neighborhood graphs are created;

  (ii) computing a normalization of neighborhood graphs, that is, a unique mapping from a graph representation into a vector space representation. 

 

而本文所提出的 graph representation 的方法,很好的解決了上述兩個問題。具體的來說,可以分為如下幾個步驟:

  1. 對於每一個輸入的 graph,首先確定節點及其次序;(For each input graph, it first determines nodes (and their order) for which neighborhood graphs are created.

  2. 對於每一個節點,包含 k 個節點的近鄰 被提取並且進行歸一化,即,將其唯一的映射到固定長度的線性序列;歸一化的近鄰 可以看做是一個節點的感受野;(For each of these nodes, a neighborhood consisting of exactly k nodes is extracted and normalized, that is, it is uniquely mapped to a space with a fixed linear order. The normalized neighborhood serves as the receptive field for a node under consideration.)

  3. 最后,特征學習成分,例如 卷積、全連接層 被組合起來作用於歸一化的 graphs。(Finally, feature learning components such as convolutional and dense layers are combined with the normalized neighborhood graphs as the CNN’s receptive fields.

 


【流程】下面具體介紹一下構建卷積分片的步驟以及最后的卷積結構:

  1. 節點序列選擇:為了對圖中所有的節點進行標號排序,本文引入了圖標號函數,將圖中的節點集合根據向心性(節點的度、中心度等)映射為有序的節點序列。從該序列中根據一定的間隔s隔段選取w個節點構成最終的節點序列。

  2. 鄰居節點收集:對於上一步獲得的節點序列中的每一個節點,利用廣度優化搜索擴展鄰居節點,和源節點一起構成一個k大小的鄰域集合。

  3. 子圖規范化:對於一個鄰域集合的規划化過程如下圖所示。對鄰域集合中的個節點按照標號函數k進行排序,得到接受域。那么,對於節點的屬性,k個節點屬性值構成了一個輸入通道,對於邊的屬性,k^2個屬性值也構成了一個輸入通道。我們可以分別用一維的卷積層來處理這兩種輸入通道(對於節點屬性卷積層長度為k,對於邊屬性卷積層長度為k^2)

 

 

 

 

 


 

Reference:

1. 知乎博客:https://zhuanlan.zhihu.com/p/27587371   

2. 對應的 PDF:http://www.matlog.net/icml2016_slides.pdf  

 


免責聲明!

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



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