Kipf圖神經網絡閱讀筆記-1

引言

        如果一篇論文你覺得有價值那就一定要把它讀懂,讀一遍不行就讀兩遍,讀兩遍不行就讀十遍,直到讀懂爲止。當然,讀大神的文章需要有點功底,如果確實讀不懂,隔幾天第一次,肯定每次讀都會有新的認識。人生中沒有任何一步路是白走的,也沒有一滴汗是白流的。

1、對論文的理解

    這篇論文是圖神經網絡大神kipf的博士畢業論文,這篇論文是由一系列已發表論文構成的,這些論文每一篇都是經典之作,都有劃時代的意義,所以大神的腦袋真的是一個富礦,隨便挖出來一點東西就夠我們用一輩子了。從一開始的GCN到RGCN,從GAE到NRI再到COMPILE以及C-SWM,跨越度非常大。這個PhD不是蓋的,是真正的哲學家。

2、閱讀計劃

    這篇論文較長有138頁,共分9個章節,基本上一天是可以閱讀2-3個章節,但是有些章節的公式需要重推導,有些寫的不是很清楚(當然大神是很清楚的)我還要補充標記。至少要兩個星期應該可以讀完。
    這篇論文有一小部分內容可以與《深入淺出神經網絡》結合學習。配合書中的代碼理解。計劃對感興趣的部分章節代碼進行閱讀和復現。

正文

摘要

    這篇論文介紹了使用深度學習進行圖的結構表示的方法,對顯式數據和隱式的模塊結構的表示方法都可以使用。
    Ch3介紹了GCN它可以被用作節點分類;
    Ch4介紹了GAE它在無監督學習和鏈接預測方面有很好的應用場景;
    Ch5介紹了RGCN它在基於知識倉庫Knowledge Base的半監督實體分類中可以使用;
    Ch6介紹的NRI是用來做關係推理的一個模型;
    Ch7介紹的ComILE提供了交互系統建模的工具;
    Ch8介紹的C-SWM爲建構現實世界中的交互系統提供了手段。

第一章 前言

    結構無處不在,原子結構、分子式、社交網絡、街區地圖,這些都可以用結構表示,人類作爲一個智能體不斷與各種各樣的結構交互,從中學習知識。
    圖是一種結構化信息的表示形式,使用點表示實體,邊表示實體間的關係或連接。現實世界中的OSN、chemical molecules都可以表示爲圖結構數據。由於圖數據結構存在的Ubiquity性。對處理圖結構數據提出了需求。
    人們渴望對認知過程加以認識,這促進了認知科學congnition science,神經科學的發展。這篇論文是ML的一個field,也是DL的一個branch。ML是通過構建程序和系統從數據和經驗中學習的過程。常用的方法是使用模型進行對數據擬合,並使其能夠推廣到新的未見過(unforseen)的數據中。
    傳統的ML過程建立在特徵集合之上。而特徵提取的過程,是通過約定以的步驟實現,稱之爲特徵工程(feature-engniering)。DL出現並取得了巨大的成功,但在關係推理、概念抽象方面仍存在不足。ML面臨的一個重要問題是歸納偏好(inductive bias),也就是解決當前問題所做的各種假設。歸納偏好以模型結構、目標函數、優化函數的形式出現。CNN的歸納偏好表現爲局部數據參數共享,帶來的好處就是旋轉不變性特徵;而RNN的歸納偏好是不同時間步驟之間參數共享,因此在穩定的時序數據和序列數據中能取得較好的效果。kipf的這篇論文提出的GNN從歸納偏好上更適用於處理圖結構數據。
    論文分爲兩部分,第一部分介紹針對明確圖結構的深度神經網絡模型,第二部分介紹非明確結構的深度NN模型,對非明確結構的深度NN模型使用組合歸納偏好的方法處理解決問題。
    這篇論文要解決的問題有5個:
1、是否可以創建一個基於DNN的高效模型解決圖結構數據庫的節點分類問題?
    從譜圖卷積(Spectal Graph Convolution)演化而來的GCN是一種高效的半監督學習模型。將GCN(CH3)在關係推理上進行推廣就可以得到R-GCN(Ch5)R-GCN可以用在知識倉庫中的關係推理。
2、GCN可以用在邊預測及無監督表示學習任務上嗎?
    GAE和VGAE是GCN的兩個擴展模型,這兩個模型都可以用在缺失標籤的圖結構數據上,進行訓練。對無標籤的圖結構數據進行節點表示學習又被稱爲無監督節點表示學習。
3、DNN可以應用在隱藏狀態推理、實體交互建模(如物體間的作用力)嗎?
    神經網絡推理(neural relational inference NRI)是一個作用在多交互系統上的隱變量模型。通過在節點對之間放置隱變量以解釋他們之間的交互作用和關係。這在動態系統建模(dynamics system model)中非常有用。
4、如何通過NN based model進行事件結構和過程建模?
    Compositional imitation learning and execution (CompILE)是一個使用一系列變量序列推斷事件關係的模型,爲分隔事件的各個階段提供了依據。
5、可以使用DNN建模受環境影響的而產生交互關係的物體表示嗎(實際上就是真實世界建模)?
    Contractive-trained Structured world model (C-SWM)對比訓練建構世界模型給出了一種建構相關關係中各個實體的通用方法。對比學習(contractive learning)與GAE的方法類似,但引入了從外部世界學習經驗的手段,在引入GNN這個inductive bias之後,其泛化能力大大增強。

第二章 基礎知識

2.1 各種Notations, 略
2.2 深度神經網絡

    可以將深度神經網絡視爲線性函數的組合,每個線性函數後跟隨一個非線性函數:
NN(θ)=flδfl1δfl2δ......NN(\theta) = f^{l} \circ {\delta} \circ f^{l-1} \circ {\delta} \circ f^{l-2} \circ {\delta} {\circ} ......
   本文常用的線性函數是:
fl(h)=wlh+bl f^{l}(h) = w_{l}h + b_{l}
有fl(h)構成的神經網絡結構稱之爲多層感知機。bl爲偏置向量;wl爲權重矩陣;h爲特徵向量。
    深度神經網絡常用的激活函數有ReLU函數,sigmoid函數,等在訓練過程中使用隨機梯度下降算法使用Adam、SGD、momentum等優化器最小化損失函數。
   這一部分介紹深度神經網絡僅僅是概述,感興趣的同學可以看Goodfellow的《深度學習》俗稱花書。

2.3 圖神經網絡

    圖神經網絡是一類適合處理圖數據結構的神經網絡模型。圖的表示方法爲G=(V,E)。V爲頂點的集合;E爲邊的集合。在本文的標記系統中,節點使用索引i ∈ V表示,i∈(1,|v|)(這個說法好像有點混亂);邊使用<i,j>∈V X V表示。在無向圖中<i,j> 與<j,i>均∈G。
<此處的圖片無法插入></此處的圖片無法插入>
    一個GNN是一個圖G的實例,與節點的特徵向量xi及邊特徵的向量x(i,j)相聯繫。頂點和邊的隱藏狀態表示可以表示爲hi及h(i,j)。圖G的結構決定了消息流的傳遞和更新過程。在這一過程中,節點的狀態h,及邊的表示h(i,j)得到更新。
hij=fedge(hi,hj,x(i,j)) h_{ij} = f_{edge}(h_{i}, h_{j}, x_{(i,j)})
h=fedge(hi,jNi,h(j,i),xi)h^` = f_{edge}(h_{i},{\sum}_{j{\in} N_i},h_{(j,i)},x_{i})
fedge和fnode一般使用兩到三層的MLP神經網絡,以函數參數串聯的方式作爲輸入,在每個節點上使用上面所述的方式進行跟新。在更新後,設定hi <— hi,通過鏈式傳遞方式更新。
    可以將GNN作爲一個函數逼近器,在圖形任務上進行反向傳播。2005年GNN的概念就已經被提出,雖然當時已經包含了GNN的核心概念但是其提出形式爲RNN形式,而且也沒有提出學習到的具體結構。Sarselli等人提出了消息傳遞的思想。使GNN不斷擴充。
    上述概括性的介紹,提出了本文所討論的模型不過也有很多例外的情況。最近Buttalia使用全局狀態更新(global state update)的graph networks;也有人將transformer和attention機制引入GCN。建議大家閱讀Boostein的geometic deep learning和Haimlton的graph representation(我並沒有找到該論文,索引中的論文名稱與實際不符)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章