圖神經網絡簡史、簡介
- 1.圖神經網絡簡史
- 2.圖神經網絡--學習過程
- 3.圖神經網絡--理論基礎
- 4.圖神經網絡的局限
- 5.GNN,RNN,GGNN
- 6.小結
閱讀筆記:從圖(Graph)到圖卷積(Graph Convolution):漫談圖神經網絡模型 (一)(https://www.cnblogs.com/SivilTaram/p/graph_neural_network_1.html)
該文詳細寫明了設涉及的參考材料,是一個很棒的綜述性材料。本文僅作為閱讀該系列文章的筆記,詳情請參考原文。
GNN側重于時序展開,GCN是空間序展開
1.圖神經網絡簡史
- 2005年–圖神經網絡的概念被提出,
- 2009年–Franco博士在論文[1]《The graph neural network model》闡明了圖神經網絡的理論基礎。早期的GNN用于諸如依據分子結構對物質進行分類等問題。
- 2013年–Bruna首次提出基于頻域和基于空域的卷積神經網絡[2]。
- 其后,基于空域卷積的研究偏多,基于頻域的工作相對較少。
- 2014年–引發了圖表示學習的研究熱潮(DeepWalk,知識圖譜的分布式表示)。
2.圖神經網絡–學習過程
(沒有明白如何測試,哪些東西是可學習的?)
基本思想就是:建模一張圖(最核心的部分,希望可以通過后續的例子來說明如何建模一張圖),通過信息的傳播使整張圖達到收斂,在其基礎上再進行預測。
學習目標1–利用狀態更新函數f,獲取每個結點的圖感知的隱藏狀態。
學習目標2–利用輸出函數g,來適應下游任務,例如分類。
狀態更新函數f,用來不斷更新結點的隱藏狀態。其輸入是:該結點的特征、鄰居結點的隱藏狀態、鄰居結點的隱藏狀態、邊的特征。f使用神經網絡建模,用另據結點的額隱藏狀態來更新當前結點的狀態,直至隱藏狀態的變化幅度很小。
輸出函數g,其輸入是某一個結點的特征和隱藏狀態,得到下游任務的輸出,例如分類任務。
loss與f,g學習:(以社交網絡為例,在整張圖中)并不是每個結點都有監督信號。有監督信號的結點參與loss的計算,迭代的依次得loss對關于隱狀態的hv0,hv1,...,hvTh^0_v,h^1_v,...,h^T_vhv0?,hv1?,...,hvT?的梯度,用于更新模型參數(f,g的權重吧)(具體操作還是跑代碼能明白的清楚些) AP 算法。
3.圖神經網絡–理論基礎
Franco博士圖神經網絡的理論基礎是不動點理論,專指巴拿赫不動點定理。只要狀態更新函數f是一個壓縮映射,每個結點的任意初始化的隱狀態都能夠收斂至一個固定點的,即不動點。(如何保證這個不動點就是我們想要的點呢)
壓縮映射:對于原空間中的任意兩個點x,yx,yx,y,經過f映射后分別變成f(x),f(y)f(x),f(y)f(x),f(y)。如果滿足d(f(x),f(y))≤cd(x,y),0≤c≤1d(f(x),f(y))\leq cd(x,y),0\leq c\leq 1d(f(x),f(y))≤cd(x,y),0≤c≤1,那么f即構成一個壓縮映射。
即經f變換后的新空間比原空間要小,原空間被壓縮了。不斷進行壓縮操作,最終就會把原空間中的所有點映射到一個點上。(壓縮軌跡應該不私想象中那么平滑)
保證神經網絡是一個壓縮映射:限制f對h偏導數矩陣的大小,采用雅可比矩陣懲罰項的實現。
4.圖神經網絡的局限
(本階段圖神經網絡的局限性)
- 邊的特性無法學習
- 基于不動點的收斂會導致結點之間的隱藏狀態存在較多的信息共享,從而導致狀態太過于光滑,并且屬于結點自身的信息匱乏。
5.GNN,RNN,GGNN
GNN隱狀態的時序迭代更新方式與RNN非常類似,兩者的區別:
- GNN依據不動點理論,沿時間展開長度是動態的,RNN沿時間展開的長度就是序列本身的長度。
- GNN用AP算法反向傳播,RNN用BPTT優化
GGNN:可學習的邊權,不依賴于不動點定理,使用GRU更新法則,狀態更新若干步,利用BPTT算法反向傳播得到邊權和GRU的參數。
6.小結
之后會介紹圖卷積神經網絡,拜托了基于循環的方法,開始走向多層神經網絡。
[1]. The graph neural network model, https://persagen.com/files/misc/scarselli2009graph.pdf
[2]. Spectral networks and locally connected networks on graphs, https://arxiv.org/abs/1312.6203