來源:Arxiv ,新智元 深度學習的最大軟肋是什么? 這個問題的回答仁者見仁,但圖靈獎得主Judea Pearl大概有99.9%的幾率會說,是無法進行因果推理。 對于這個問題,業(yè)界正在進行積極探索,而其中一個很有前景的方向就是圖神經(jīng)網(wǎng)絡(luò)(Graph Neural Network, GNN)。 最近,清華大學孫茂松教授組在 arXiv 發(fā)布了論文 Graph Neural Networks: A Review of Methods and Applications,作者對現(xiàn)有的GNN模型做了詳盡且全面的綜述。 作者:周界*、崔淦渠*、張正彥*,楊成,劉知遠,孫茂松 “圖神經(jīng)網(wǎng)絡(luò)是連接主義與符號主義的有機結(jié)合,不僅使深度學習模型能夠應用在圖這種非歐幾里德結(jié)構(gòu)上,還為深度學習模型賦予了一定的因果推理能力?!闭撐牡墓餐谝蛔髡咧芙缯f。 “在深度學習方法的魯棒性與可解釋性受到質(zhì)疑的今天,圖神經(jīng)網(wǎng)絡(luò)可能為今后人工智能的發(fā)展提供了一個可行的方向。” GNN最近在深度學習領(lǐng)域受到了廣泛關(guān)注。然而,對于想要快速了解這一領(lǐng)域的研究人員來說,可能會面臨著模型復雜、應用門類眾多的問題。 “本文希望為讀者提供一個更高層次的視角,快速了解GNN領(lǐng)域不同模型的動機與優(yōu)勢?!敝芙绺嬖V新智元:“同時,通過對不同的應用進行分類,方便不同領(lǐng)域的研究者快速了解將GNN應用到不同領(lǐng)域的文獻。” 毫不夸張地說,論文中的圖表對于想要了解學習GNN乃至因果推理等方向的研究者來說,簡直應該高清打印過塑然后貼在墻上以作參考—— GNN的各種變體,通過比對各自的 aggregator & updater,就能輕松分辨不同的GNN模型。這只是這篇綜述強大圖表的一個示例。 在內(nèi)容上,模型方面,本文從GNN原始模型的構(gòu)建方式與存在的問題出發(fā),介紹了對其進行不同改進的GNN變體,包括如何處理不同的圖的類型、如何進行高效的信息傳遞以及如何加速訓練過程。最后介紹了幾個近年來提出的通用框架,它們總結(jié)概括了多個現(xiàn)有的方法,具有較強的表達能力。 在應用上,文章將GNN的應用領(lǐng)域分為了結(jié)構(gòu)化場景、非結(jié)構(gòu)化場景以及其他場景并介紹了諸如物理、化學、圖像、文本、圖生成模型、組合優(yōu)化問題等經(jīng)典的GNN應用。 典型應用場景介紹 文章最后提出了四個開放性問題,包括如何處理堆疊多層GNN造成的平滑問題,如何處理動態(tài)變化的圖結(jié)構(gòu),如何使用通用的方法處理非結(jié)構(gòu)化的數(shù)據(jù)以及如何將其擴展到更大規(guī)模的網(wǎng)絡(luò)上。 作者還整理了一個GNN論文列表: https://github.com/thunlp/GNNPapers 以下是小編對這篇綜述的部分摘譯,點擊閱讀原文查看 arXiv 論文。 GNN的概念首先是在F. Scarselli等人的論文The graph neural network model(F. Scarselli et. al. 2009)中提出的。在這里,我們描述了原始的GNN,并列舉了原始GNN在表示能力和訓練效率方面的局限性。 接著,我們介紹了幾種不同的GNN變體,這些變體具有不同的圖形類型,利用不同的傳播函數(shù)和訓練方法。 最后,我們介紹了三個通用框架,分別是message passing neural network (MPNN),non-local neural network (NLNN),以及graph network(GN)。MPNN結(jié)合了各種圖神經(jīng)網(wǎng)絡(luò)和圖卷積網(wǎng)絡(luò)方法;NLNN結(jié)合了幾種“self-attention”類型的方法;而圖網(wǎng)絡(luò)GN可以概括本文提到的幾乎所有圖神經(jīng)網(wǎng)絡(luò)變體。 圖神經(jīng)網(wǎng)絡(luò) 如前所述,圖神經(jīng)網(wǎng)絡(luò)(GNN)的概念最早是Scarselli等人在2009年提出的,它擴展了現(xiàn)有的神經(jīng)網(wǎng)絡(luò),用于處理圖(graph)中表示的數(shù)據(jù)。在圖中,每個節(jié)點是由其特性和相關(guān)節(jié)點定義的。 雖然實驗結(jié)果表明,GNN是建模結(jié)構(gòu)化數(shù)據(jù)的強大架構(gòu),但原始GNN仍存在一些局限性。 首先,對于固定節(jié)點,原始GNN迭代更新節(jié)點的隱藏狀態(tài)是低效的。如果放寬了固定點的假設(shè),我們可以設(shè)計一個多層的GNN來得到節(jié)點及其鄰域的穩(wěn)定表示。 其次,GNN在迭代中使用相同的參數(shù),而大多數(shù)流行的神經(jīng)網(wǎng)絡(luò)在不同的層中使用不同的參數(shù),這是一種分層特征提取方法。此外,節(jié)點隱藏狀態(tài)的更新是一個順序過程,可以從RNN內(nèi)核(如GRU 和 LSTM)中獲益。 第三,在邊上也有一些無法在原始GNN中建模的信息特征。此外,如何學習邊的隱藏狀態(tài)也是一個重要的問題。 最后,如果我們把焦點放在節(jié)點的表示上而不是圖形上,就不適合使用固定點,因為在固定點上的表示的分布在數(shù)值上是平滑的,區(qū)分每個節(jié)點的信息量也比較少。 在這一節(jié),我們提出圖神經(jīng)網(wǎng)絡(luò)的幾種變體。首先是在不同圖類型上運行的變體,這些變體擴展了原始模型的表示能力。其次,我們列出了在傳播步驟進行修改(卷積、門機制、注意力機制和skip connection)的幾種變體,這些模型可以更好地學習表示。最后,我們描述了使用高級訓練方法的標題,這些方法提高了訓練效率。 圖2概述了GNN的不同變體。 一覽GNN的不同變體 圖的類型(Graph Types) 在原始GNN中,輸入的圖由帶有標簽信息的節(jié)點和無向的邊組成,這是最簡單的圖形格式。然而,世界上有許多不同的圖形。這里,我們將介紹一些用于建模不同類型圖形的方法。 圖類型的變體
圖形的第一個變體是有向圖。無向邊可以看作是兩個有向邊,表明兩個節(jié)點之間存在著關(guān)系。然而,有向邊比無向邊能帶來更多的信息。例如,在一個知識圖中,邊從head實體開始到tail實體結(jié)束,head實體是tail實體的父類,這表明我們應該區(qū)別對待父類和子類的信息傳播過程。有向圖的實例有ADGPM (M. Kampffmeyer et. al. 2018)。
圖的第二個變體是異構(gòu)圖,異構(gòu)圖有幾種類型的節(jié)點。處理異構(gòu)圖最簡單的方法是將每個節(jié)點的類型轉(zhuǎn)換為與原始特征連接的一個one-hot特征向量。異構(gòu)圖如GraphInception。
圖的另外一個變體是,每條邊都有信息,比如權(quán)值或邊的類型。例如G2S和R-GCN。 使用不同訓練方法的圖變體 訓練方法變體 在傳播步驟進行修改的GNN變體 傳播步驟變體 除了圖神經(jīng)網(wǎng)絡(luò)的不同變體之外,我們還介紹了幾個通用框架,旨在將不同的模型集成到一個框架中。 J. Gilmer等人(J. Gilmer et. al. 2017)提出了消息傳遞神經(jīng)網(wǎng)絡(luò)(message passing neural network, MPNN),統(tǒng)一了各種圖神經(jīng)網(wǎng)絡(luò)和圖卷積網(wǎng)絡(luò)方法。 X. Wang等人(X. Wang et. al. 2017)提出了非局部神經(jīng)網(wǎng)絡(luò)(non-local neural network, NLNN),它結(jié)合了幾種“self-attention”風格的方法。 P. W. Battaglia等人(P. W. Battaglia et. al. 2018)提出了圖網(wǎng)絡(luò)(graph network, GN),它統(tǒng)一了統(tǒng)一了MPNN和NLNN方法以及許多其他變體,如交互網(wǎng)絡(luò)(Interaction Networks),神經(jīng)物理引擎(Neural Physics Engine),CommNet,structure2vec,GGNN,關(guān)系網(wǎng)絡(luò)(Relation Network),Deep Sets和Point Net。 盡管GNN在不同領(lǐng)域取得了巨大成功,但值得注意的是,GNN模型還不能在任何條件下,為任何圖任務(wù)提供令人滿意的解決方案。這里,我們將陳述一些開放性問題以供進一步研究。
淺層結(jié)構(gòu)
傳統(tǒng)的深度神經(jīng)網(wǎng)絡(luò)可以堆疊數(shù)百層,以獲得更好的性能,因為更深的結(jié)構(gòu)具備更多的參數(shù),可以顯著提高網(wǎng)絡(luò)的表達能力。然而,GNN總是很淺,大多數(shù)不超過三層。 實驗顯示,堆疊多個GCN層將導致過度平滑,也就是說,所有頂點將收斂到相同的值。盡管一些研究人員設(shè)法解決了這個問題,但這仍然是GNN的最大局限所在。設(shè)計真正的深度GNN對于未來的研究來說是一個令人興奮的挑戰(zhàn),并將對進一步深入理解GNN做出相當大的貢獻。
動態(tài)圖形另一個具有挑戰(zhàn)性的問題是如何處理具有動態(tài)結(jié)構(gòu)的圖形。靜態(tài)圖總是穩(wěn)定的,因此對其進行建模是可行的,而動態(tài)圖引入了變化的結(jié)構(gòu)。當邊和節(jié)點出現(xiàn)或消失時,GNN不能自適應地做出改變。目前對動態(tài)GNN的研究也在積極進行中,我們認為它是一般GNN的具備穩(wěn)定性和自適應性的重要里程碑。
非結(jié)構(gòu)性場景
我們討論了GNN在非結(jié)構(gòu)場景中的應用,但我們沒有找到從原始數(shù)據(jù)中生成圖的最佳方法。在圖像域中,一些研究可以利用CNN獲取特征圖,然后對其進行上采樣,形成超像素作為節(jié)點,還有的直接利用一些對象檢測算法來獲取對象節(jié)點。在文本域中,有些研究使用句法樹作為句法圖,還有的研究采用全連接圖。因此,關(guān)鍵是找到圖生成的最佳方法,使GNN在更廣泛的領(lǐng)域發(fā)揮更大的作用。
可擴展性問題
如何將嵌入式算法應用于社交網(wǎng)絡(luò)或推薦系統(tǒng)這類大規(guī)模網(wǎng)絡(luò)環(huán)境,是幾乎所有圖形嵌入算法面對的一個致命問題,GNN也不例外。對GNN進行擴展是很困難的,因為涉及其中的許多核心流程在大數(shù)據(jù)環(huán)境中都要消耗算力。 這種困難體現(xiàn)在幾個方面:首先,圖數(shù)據(jù)并不規(guī)則,每個節(jié)點都有自己的鄰域結(jié)構(gòu),因此不能批量化處理。其次,當存在的節(jié)點和邊數(shù)量達到數(shù)百萬時,計算圖的拉普拉斯算子也是不可行的。此外,我們需要指出,可擴展性的高低,決定了算法是否能夠應用于實際場景。目前已經(jīng)有一些研究提出了解決這個問題的辦法,我們正在密切關(guān)注這些新進展。 在過去幾年中,GNN已經(jīng)成為圖領(lǐng)域機器學習任務(wù)的強大而實用的工具。這一進展有賴于表現(xiàn)力,模型靈活性和訓練算法的進步。在本文中,我們對圖神經(jīng)網(wǎng)絡(luò)進行了全面綜述。對于GNN模型,我們引入了按圖類型、傳播類型和訓練類型分類的GNN變體。 此外,我們還總結(jié)了幾個統(tǒng)一表示不同GNN變體的通用框架。在應用程序分類方面,我們將GNN應用程序分為結(jié)構(gòu)場景、非結(jié)構(gòu)場景和其他18個場景,然后對每個場景中的應用程序進行詳細介紹。最后,我們提出了四個開放性問題,指出了圖神經(jīng)網(wǎng)絡(luò)的主要挑戰(zhàn)和未來的研究方向,包括模型深度、可擴展性、動態(tài)圖處理和對非結(jié)構(gòu)場景的處理能力。 廣告 & 商務(wù)合作請加微信:kellyhyw 投稿請發(fā)送至:mary.hu@aisdk.com |
|