清華大學圖神經(jīng)網(wǎng)絡綜述:模型與應用
近年來,圖神經(jīng)網(wǎng)絡的研究成為深度學習領域的熱點,機器之心曾介紹過清華大學朱文武等人綜述的圖網(wǎng)絡。近日,清華大學孫茂松組在arXiv上發(fā)布預印版綜述文章Graph Neural Networks : AReview of Methods and Applications。
該文總結(jié)了近年來圖神經(jīng)網(wǎng)絡領域的經(jīng)典模型與典型應用,并提出了四個開放性問題。對于希望快速了解這一領域的讀者,不妨先從這篇文章看起。
除了這篇綜述外,文章作者在Github中更新了該領域的參考文章列表(https://github.com/thunlp/GNNPapers),供各位讀者參考查看。
圖是一種數(shù)據(jù)結(jié)構(gòu),它對一組對象(節(jié)點)及其關系(邊)進行建模。近年來,由于圖結(jié)構(gòu)的強大表現(xiàn)力,用機器學習方法分析圖的研究越來越受到重視。圖神經(jīng)網(wǎng)絡(GNN)是一類基于深度學習的處理圖域信息的方法。由于其較好的性能和可解釋性,GNN最近已成為一種廣泛應用的圖分析方法。
GNN的第一個動機源于卷積神經(jīng)網(wǎng)絡(CNN)。CNN的廣泛應用帶來了機器學習領域的突破并開啟了深度學習的新時代。然而CNN只能在規(guī)則的Euclidean數(shù)據(jù)上運行,如圖像(2維網(wǎng)格)和文本(1維序列)。如何將CNN應用于圖結(jié)構(gòu)這一非歐幾里德空間,成為GNN模型重點解決的問題。
▲圖1.左:圖像(歐幾里得空間)右:圖(非歐幾里德空間)
GNN的另一個動機來自圖嵌入(Graph Embedding),它學習圖中節(jié)點、邊或子圖的低維向量空間表示。DeepWalk、LINE、SDNE等方法在網(wǎng)絡表示學習領域取得了很大的成功。然而,這些方法在計算上較為復雜并且在大規(guī)模上的圖上并不是最優(yōu)的,GNN旨在解決這些問題。
這篇文章對圖神經(jīng)網(wǎng)絡進行了廣泛的總結(jié),并做出了以下貢獻:
文章詳細介紹了圖神經(jīng)網(wǎng)絡的經(jīng)典模型。主要包括其原始模型,不同的變體和幾個通用框架。
文章將圖神經(jīng)網(wǎng)絡的應用系統(tǒng)地歸類為結(jié)構(gòu)化場景、非結(jié)構(gòu)化場景和其他場景中,并介紹了不同場景中的主要應用。
本文為未來的研究提出四個未解決的問題。文章對每個問題進行了詳細分析,并提出未來的研究方向。
在模型這一部分中,文章首先介紹了最經(jīng)典的圖神經(jīng)網(wǎng)絡模型GNN,具體闡述了GNN的模型與計算方式,然而GNN模型仍然存在一定的限制,比如較高的計算復雜度以及表示能力不足等等。
后續(xù)的很多工作致力于解決GNN存在的種種問題,在2.2一節(jié)中文章詳細介紹了GNN的不同變體。具體來說,文章分別介紹了適應于不同圖類型、采用不同的信息傳遞方式以及采用了不同的訓練方法的變體。
▲圖2.不同的GNN變體
在2.2.1節(jié)中,文章介紹了處理不同圖類型的GNN變體,包括有向圖、異質(zhì)圖和具有邊信息的圖。在2.2.2節(jié)中,文章對于采用不同信息傳遞方式的變體進行了總結(jié)與概括。主要分為以下四個類別:
卷積。Graph ConvoluTIonal Network(GCN)希望將卷積操作應用在圖結(jié)構(gòu)數(shù)據(jù)上,主要分為Spectral Method 和SpaTIal Method(Non-spectral Method)兩類。SpectralMethod希望使用譜分解的方法,應用圖的拉普拉斯矩陣分解進行節(jié)點的信息收集。SpaTIal Method直接使用圖的拓撲結(jié)構(gòu),根據(jù)圖的鄰居信息進行信息收集。
注意力機制。Graph AttenTIon Network致力于將注意力機制應用在圖中的信息收集階段。
門機制。這些變體將門機制應用于節(jié)點更新階段。Gated graph neural network將GRU機制應用于節(jié)點更新。很多工作致力于將LSTM應用于不同類型的圖上,根據(jù)具體情境的不同,可以分為TreeLSTM、GraphLSTM和SentenceLSTM等。
殘差連接。注意到堆疊多層圖神經(jīng)網(wǎng)絡可能引起信息平滑的問題,很多工作將殘差機制應用于圖神經(jīng)網(wǎng)絡中,文中介紹了Highway GNN和Jump Knowledge Network兩種不同的處理方式。
文章還對于不同的信息傳遞方式進行了公式化總結(jié)。簡單來說,信息傳遞函數(shù)主要包括信息收集(agggregation)和節(jié)點信息更新(update)兩個部分,在表格中列出了每種方法的不同配置。
▲表1.采用不同消息傳遞函數(shù)的GNN變體總結(jié)
在2.2.3節(jié)中,文章介紹了GNN的不同訓練方法。譬如Graph SAGE從附近的鄰居收集信息,并且能夠應用于inductive learning領域;Fast GCN使用了importance sampling的方法,使用采樣替代使用節(jié)點所有的鄰居信息,加快了訓練過程。
在2.3節(jié)中,文章介紹了近年來文獻中提出的圖神經(jīng)網(wǎng)絡通用框架MPNN(Message Passing NeuralNetwork)、NLNN(Non-local Neural Network)以及Deepmind的GN(Graph Network)。
MPNN將模型總結(jié)為信息傳遞階段和節(jié)點更新階段,概括了多種圖神經(jīng)網(wǎng)絡和圖卷積神經(jīng)網(wǎng)絡方法。NLNN總結(jié)了很多種基于自注意力機制的方法。GN提出了更加通用的模型,能夠總結(jié)概括幾乎所有文中提到的框架,并且擁有更加靈活的表示能力、易于配置的塊內(nèi)結(jié)構(gòu)以及易于組合的多模塊架構(gòu)。
▲圖3.GN Block組合成復雜網(wǎng)絡結(jié)構(gòu)
GNN被應用在眾多的領域,文章具體將應用分為了結(jié)構(gòu)化場景、非結(jié)構(gòu)化場景以及其他三個類別。
在結(jié)構(gòu)化場景中,GNN被廣泛應用在社交網(wǎng)絡、推薦系統(tǒng)、物理系統(tǒng)、化學分子預測、知識圖譜等領域。文章中主要介紹了其在物理、化學、生物和知識圖譜中的部分應用。在非結(jié)構(gòu)領域,文章主要介紹了在圖像和文本中的應用。在其他領域,文章介紹了圖生成模型以及使用GNN來解決組合優(yōu)化問題的場景。
▲圖4.GNN的應用示例
▲表2.文章介紹的應用總結(jié)
文章最后提出了圖神經(jīng)網(wǎng)絡領域的四個開放問題:
1.淺層結(jié)構(gòu)。經(jīng)驗上使用更多參數(shù)的神經(jīng)網(wǎng)絡能夠得到更好的實驗效果,然而堆疊多層的GNN卻會產(chǎn)生over-smoothing的問題。具體來說,堆疊層數(shù)越多,節(jié)點考慮的鄰居個數(shù)也會越多,導致最終所有節(jié)點的表示會趨向于一致。
2.動態(tài)圖。目前大部分方法關注于在靜態(tài)圖上的處理,對于如何處理節(jié)點信息和邊信息隨著時間步動態(tài)變化的圖仍是一個開放問題。
3.非結(jié)構(gòu)化場景。雖然很多工作應用于非結(jié)構(gòu)化的場景(比如文本),然而并沒有通用的方法用于處理非結(jié)構(gòu)化的數(shù)據(jù)。
4.擴展性。雖然已經(jīng)有一些方法嘗試解決這個問題,將圖神經(jīng)網(wǎng)絡的方法應用于大規(guī)模數(shù)據(jù)上仍然是一個開放性問題。
本文來源:機器之心編譯 作者:? PaperWeekly