圖神經(jīng)網(wǎng)絡(luò)迎來快速爆發(fā)期 GNN的原理、變體及拓展
01 GNN:從嘗鮮進入快速爆發(fā)期
今年以來,圖神經(jīng)網(wǎng)絡(luò)技術(shù)(Graph Neural Network, GNN)得到了學(xué)術(shù)界極大的關(guān)注與響應(yīng)。各大學(xué)術(shù)會議紛紛推出 GNN 相關(guān)的 workshop,在投中的論文中,以 Graph Network 為關(guān)鍵詞的論文數(shù)量也呈現(xiàn)井噴之勢,下圖給出了近三年,上述關(guān)鍵詞在各學(xué)術(shù)會議上的增長趨勢:
GNN 在經(jīng)歷過 2017-2018 年兩年的孕育期與嘗試期之后,在 2018 年末至今的一年多時間里,迎來了快速爆發(fā)期。從理論研究到應(yīng)用實踐,可謂是遍地開花,讓人應(yīng)接不暇。
在理論研究上,GNN 的原理解釋、變體模型以及對各種圖數(shù)據(jù)的拓展適配等工作成為了主流。而在應(yīng)用實踐上,GNN 更是展現(xiàn)出了前所未有的滲透性,從視覺推理到開放性的閱讀理解問題,從藥物分子的研發(fā)到 5G 芯片的設(shè)計,從交通流量預(yù)測到 3D 點云數(shù)據(jù)的學(xué)習(xí),我們看到了 GNN 極其廣闊的應(yīng)用前景。
本文將對近一年各大頂級會議(如 ICML、NIPS、CVPR、ACL、KDD 等)上的 GNN 相關(guān)論文進行梳理,重點從理論研究和應(yīng)用實踐兩方面解讀過去一年 GNN 的進展。由于時間和篇幅有限,本文并沒有對每一個方向都進行全面的總結(jié)與概括,感興趣的讀者可以根據(jù)文中給出的論文鏈接自行查漏補缺。
02 GNN 的原理、變體及拓展
GNN 作為一個新興的技術(shù)方向,其原理解讀以及各類變體與拓展構(gòu)成了理論研究的熱點,這些論文很好地回答了 GNN 的優(yōu)缺點以及相關(guān)的適應(yīng)性改造問題。
1. GNN 原理解讀
當(dāng)前 GNN 研究的第一個熱點在于其相關(guān)能力的理論化研究。在 “How Powerful are Graph Neural Networks?” 和 “On the equivalence between graph isomorphism testing and funcTIon approximaTIon with GNNs” 中,都對 GNN 在圖同構(gòu)問題上的表現(xiàn)進行了探討。
圖同構(gòu)問題是辨別給定的兩個圖是否一致,同構(gòu)圖如下圖所示。這個問題考驗了算法對圖數(shù)據(jù)結(jié)構(gòu)的辨別能力,這兩篇文章都證明了 GNN 模型具有出色的結(jié)構(gòu)學(xué)習(xí)能力。
圖中天然包含了關(guān)系,因此許多 GNN 相關(guān)的工作就建立在對給定系統(tǒng)進行推理學(xué)習(xí)的研究上,在這些研究中,“Can graph neural networks help logic reasoning? ” 和 “The Logical Expressiveness of Graph Neural Networks” 論證了 GNN 在邏輯推理上的優(yōu)秀表現(xiàn)。“All We Have is Low-Pass Filters ” 從低通濾波的層面解釋了 GNN 的有效性。
這些原理解讀,有助于我們對 GNN 的特色專長建立一種更加清晰的認(rèn)識。
2. GNN 的各類變體
GNN 模型的相關(guān)變體研究是領(lǐng)域內(nèi)的另一個熱點,這些變體在一些方面提升了 GNN 的能力表現(xiàn)。我們知道 GCN 模型來源于圖信號上的傅里葉變換,“Graph Wavelet Neural Network” 引入了圖信號上的小波變換來改造 GCN 模型,將卷積計算變換到空域局部鄰域內(nèi)。
將數(shù)據(jù)表征從歐式空間轉(zhuǎn)化到雙曲空間,不僅能獲得更好地層次化表示,同時能大大節(jié)約空間維度,“Hyperbolic Graph ConvoluTIonal Neural Networks”和 “Hyperbolic AttenTIon Networks” 同時將 GNN 拓展到了雙曲空間上去。
在 “MixHop: Higher-Order Graph Convolutional Architectures via Sparsified Neighborhood Mixing” 和 “Diffusion Improves Graph Learning”中,同時將原始 GCN 中的鄰居定義由一階拓展到高階,強化了模型低通濾波的特性。
3. GNN 在各類圖數(shù)據(jù)及任務(wù)上的拓展
圖數(shù)據(jù)是一個種類繁多的數(shù)據(jù)家族,模型對這些不同類型的數(shù)據(jù)如何適配,是 GNN 發(fā)展的另一重要方向。下表給出了相應(yīng)的概括:
圖類型 相關(guān)說明 對應(yīng)論文 屬性圖 多種節(jié)點類型,節(jié)點包含屬性,最具代表性 [1] [2] 超圖 一條邊同時連接兩個以上節(jié)點 [3] 動態(tài)圖 圖結(jié)構(gòu)隨時間演化 [4] 隱式圖 節(jié)點之間沒有顯式邊,需要先學(xué)習(xí)圖的結(jié)構(gòu) [5] [6]?
[1]: HetGNN: Heterogeneous Graph Neural Network
https://www.kdd.org/kdd2019/accepted-papers/view/hetgnn-heterogeneous-graph-neural-network
[2]: Representation Learning for Attributed Multiplex Heterogeneous Network
https://arxiv.org/abs/1905.01669
[3]: HyperGCN: A New Method For Training Graph Convolutional Networks>https://arxiv.org/abs/1809.02589
[4]: DyRep: Learning Representations over Dynamic Graphs
https://openreview.net/pdf?id=HyePrhR5KX
[5]: Semi-supervised Learning with Graph Learning-Convolutional Networks
http://openaccess.thecvf.com/content_CVPR_2019/papers/Jiang_Semi-Supervised_Learning_With_Graph_Learning-Convolutional_Networks_CVPR_2019_paper.pdf
[6]: Learning Discrete Structures for Graph Neural Networks
https://arxiv.org/abs/1903.11960
在圖數(shù)據(jù)相關(guān)的任務(wù)上,圖的分類是一個重要而又未完全解決好的問題,其難處在于如何在圖數(shù)據(jù)上實現(xiàn)層次化的池化操作從而獲得圖的全局表示,“Graph Convolutional Networks with EigenPooling”中給出了一種新的操作思路。
03 GNN 相關(guān)應(yīng)用
近幾年,以深度學(xué)習(xí)為代表的人工智能技術(shù)給產(chǎn)業(yè)界帶來了新的變革。該技術(shù)在視覺、語音、文本三大領(lǐng)域取得了極大的應(yīng)用成果,這種成功,離不開深度學(xué)習(xí)技術(shù)對這三類數(shù)據(jù)定制化的模型設(shè)計工作。
脫離于這三類數(shù)據(jù)之外,圖數(shù)據(jù)是一種更加廣泛的數(shù)據(jù)表示方式,夸張地說,沒有任何一個場景中的數(shù)據(jù)彼此之間是孤立存在的,這些數(shù)據(jù)之間的關(guān)系都可以以圖的形式進行表達。下圖給出了一些圖數(shù)據(jù)的使用場景:
如何將圖數(shù)據(jù)的學(xué)習(xí)與深度學(xué)習(xí)技術(shù)進行深度結(jié)合成為了一個迫切且緊要的需求。在這樣的背景之下,圖神經(jīng)網(wǎng)絡(luò)技術(shù)的興起恰似一股東風(fēng),第一次使得我們看到了深度學(xué)習(xí)應(yīng)用到圖數(shù)據(jù)之上的曙光。
實際上,在最近一年,GNN 的應(yīng)用場景不斷延伸,覆蓋了計算機視覺、3D 視覺、自然語言處理、科研、知識圖譜、推薦、反欺詐等場景,下面我們將逐項概括。
1. 計算機視覺
在前幾年跨越了視覺識別的大門之后,推理相關(guān)的視覺任務(wù)已經(jīng)成為了了各大 CV 頂會的主要關(guān)注點,如:視覺問答、視覺推理、語義圖合成、human-object interaction 等,甚至如視覺的基礎(chǔ)任務(wù),目標(biāo)檢測也需要用到推理來提升性能。在這些任務(wù)中,已經(jīng)大量出現(xiàn)應(yīng)用 GNN 的相關(guān)工作。
下面我們以最常見的視覺問答任務(wù)舉例說明,在“Relation-Aware Graph Attention Network for Visual Question Answering”一文中,給出了將 GNN 與視覺模型結(jié)合的示意圖:
在上圖中,視覺模型的作用是提取給定圖像中的語義區(qū)域,這些語義區(qū)域與問題一并當(dāng)做圖中的節(jié)點,送到一個 GNN 模型中進行推理學(xué)習(xí),這樣的一種建模方式,可以更加有效地在視覺問答中對問題進行自適應(yīng)地推理。
另外一個有意思的場景是少樣本或零樣本學(xué)習(xí),由于這類場景下樣本十分缺乏,如何充分挖掘樣本之間的潛在關(guān)聯(lián)信息(比如標(biāo)簽語義關(guān)聯(lián)、潛層表達關(guān)聯(lián))就成為了一個至關(guān)重要的考量因素,引入 GNN 成為了一個非常自然的動作,相關(guān)工作有“Rethinking Knowledge Graph Propagation for Zero-Shot Learning”“Edge-labeling Graph Neural Network for Few-shot Learning”。
2. 3D 視覺
3D 視覺是計算機視覺的又一重要發(fā)展方向,世界是 3D 的,如何讓計算機理解 3D 世界,具有極其重要的現(xiàn)實價值。3D 視覺中,點云數(shù)據(jù)是一種十分常見的數(shù)據(jù)表示方法。
點云數(shù)據(jù)通常由一組坐標(biāo)點(x,y,z)表示,這種數(shù)據(jù)由于映射了現(xiàn)實世界中物體的特征,因此存在一種內(nèi)在的表征物體語義的流行結(jié)構(gòu),這種結(jié)構(gòu)的學(xué)習(xí)也是 GNN 所擅長的。
需要說明一點的是,在 3D 視覺中流行的是幾何學(xué)習(xí) Geometry Learning,當(dāng)下,幾何學(xué)習(xí)與 GNN 在一些場景如點云分割、點云識別等正在深度融合,相關(guān)論文有 “Graph Attention Convolution for Point Cloud Segmentation”“Semantic Graph Convolutional Networks for 3D Human Pose Regression”。
3. 自然語言處理
GNN 與 NLP 的結(jié)合,關(guān)鍵點也在于 GNN 優(yōu)秀的推理能力。GNN 在一些場景如:閱讀理解、實體識別與關(guān)系抽取、依存句法分析中都有應(yīng)用。
下面我們以多跳閱讀(Multi-hop reading)為例,多跳閱讀是說在閱讀理解的過程中,往往需要在多篇文檔之間進行多級跳躍式的關(guān)聯(lián)與推理,才能找到正確答案,相比較以前的單文檔問答數(shù)據(jù)集,這是一個更具有開放性與挑戰(zhàn)性的推理任務(wù)。下圖給出了多跳閱讀的樣例:
在“Cognitive Graph for Multi-Hop Reading Comprehension at Scale”一文中,作者基于 BERT 和 GNN 的實現(xiàn)可有效處理 HotPotQA 數(shù)據(jù)集中有關(guān)多跳閱讀問題的數(shù)百萬份文檔,在排行榜上的聯(lián)合 F1 得分為 34.9,而第二名的得分只有 23.6。
4. 科研場景
如果我們把原子看做圖中的節(jié)點、化學(xué)鍵看做邊,那么分子就可以表征為一張圖。這種以圖來表示分子的方法,可以將 GNN 結(jié)合到很多實際的科研場景中,如蛋白質(zhì)相互作用點預(yù)測、化學(xué)反應(yīng)產(chǎn)物預(yù)測等,這些場景有利于將深度學(xué)習(xí)的快速擬合能力帶入進藥物研發(fā)、材料研發(fā)等行業(yè)中去,提升研發(fā)效率。
在“Circuit-GNN: Graph Neural Networks for Distributed Circuit Design”一文中,作者將 GNN 結(jié)合進高頻電路設(shè)計(如 5G 芯片等)場景,大大提升了電路電磁特性仿真計算的效率。下圖給出了系統(tǒng)示意圖:
5. 知識圖譜
由于知識圖譜本身就是一種圖數(shù)據(jù),因此知識圖譜 +GNN 的組合自然就成了解決各類知識圖譜問題的新手段。關(guān)系補全或預(yù)測問題是知識圖譜的一大基礎(chǔ)任務(wù),通過關(guān)系的推理補全可以大大提升知識圖譜的應(yīng)用質(zhì)量,下圖給出了關(guān)系補全的一個實例:
在論文“Learning Attention-based Embeddings for Relation Prediction in Knowledge Graphs”中,作者選擇用 GNN 對知識圖譜進行建模,相比之前基于單獨三元組關(guān)系的推理,基于 GNN 的方法可以更好地捕捉三元組鄰域復(fù)雜而隱含的模式信息,這種優(yōu)勢對完成關(guān)系補全任務(wù)具有十分重要的作用。
實體對齊是知識圖譜的另一類任務(wù),給定多個知識圖譜,需要首先確定各自圖譜中的哪些實體描述的是同一個對象,完成這項工作才能正確地將它們合成一個大的知識圖譜。論文“Multi-Channel Graph Neural Network for Entity Alignment”提出了一種基于 GNN 的實體對齊方案,實驗表明,在多個數(shù)據(jù)集上,該方案均取得了最好的效果。
近幾年,知識圖譜在工業(yè)界聲勢日隆,在這種語境下,我們也稱知識圖譜為業(yè)務(wù)圖譜,在論文“Estimating Node Importance in Knowledge Graphs Using Graph Neural Networks”中,作者成功運用 GNN 技術(shù)對電影業(yè)務(wù)圖譜進行建模,在電影流行度預(yù)測上效果表現(xiàn)十分出色。
另外,知識圖譜與推薦系統(tǒng)結(jié)合也成了近期一個比較熱門的方向,這部分可參考下一節(jié)推薦系統(tǒng)中的講解。
6. 推薦系統(tǒng)
推薦是各大互聯(lián)網(wǎng)公司十分重要的營收手段,因此一直以來備受工業(yè)界與學(xué)術(shù)界雙重關(guān)注。過去這幾年,推薦系統(tǒng)由早期的協(xié)同過濾算法發(fā)展到 MF 模型、再到之后的 Wide&Deep,以及基于 Network Embedding 的方法,可以明顯地看到基于神經(jīng)網(wǎng)絡(luò)的方法正在逐漸占據(jù)主要位置,而 GNN 的出現(xiàn),又一次大大加速了這個技術(shù)趨勢。
以電商平臺的推薦為例,推薦系統(tǒng)的核心數(shù)據(jù)在于用戶 - 商品交互的二部圖,而基于神經(jīng)網(wǎng)絡(luò)的多數(shù)方法將二部圖中的實體映射到一個合適的向量空間中去,使得在圖上距離越近的兩個實體在向量空間中的距離也越近,如下圖所示:
GNN 本身是一種深度模型,與推薦系統(tǒng)結(jié)合之后,多層 GNN 模型可以更好地捕捉用戶與商品之間的高階協(xié)同關(guān)系,論文“Neural Graph Collaborative Filtering”中,作者論證了多層 GNN 所帶來的“Deep”與“High order”效益對推薦質(zhì)量的有效提升。
除了推薦系統(tǒng)算法模型本身的研究,另一種思路在于如何使推薦系統(tǒng)有效融合進額外的信息,如用戶端社交網(wǎng)絡(luò)的信息、商品端商品知識圖譜的信息。這類信息中通常也蘊含了極強的關(guān)系,因此可以非常自然地與用戶 - 商品二部圖合在一起構(gòu)成一個更大的異構(gòu)圖。下圖給出了與電影知識圖譜的結(jié)合示意圖:
圖片來源 https://arxiv.org/pdf/1902.06236.pdf
有了這樣的圖數(shù)據(jù)抽象之后,引進 GNN 進行推薦建模也就成了一種自然的選擇,相關(guān)論文有 KGAT:“ Knowledge Graph Attention Network for Recommendation”“Metapath-guided Heterogeneous Graph Neural Network for Intent Recommendation”“Session-based Social Recommendation via Dynamic Graph Attention Networks”等。
另外一個十分重要的、也與推薦系統(tǒng)息息相關(guān)相關(guān)的業(yè)務(wù)場景是廣告點擊率(CTR)預(yù)測。該場景下的樣本通常是由多領(lǐng)域的特征數(shù)據(jù)構(gòu)成,比如用戶域、設(shè)備域、廣告域等等,如何建模這些數(shù)據(jù)域之間的特征交互,成為了該任務(wù)的核心。
最近基于神經(jīng)網(wǎng)絡(luò)的方法都是直接將各個域之間的特征拼接起來然后送到上層的網(wǎng)絡(luò)模型中,以期得到這些域之間的高階交互,這種簡單的非結(jié)構(gòu)化的拼接方式,會大大限制模型的學(xué)習(xí)能力。
在“Fi-GNN: Modeling Feature Interactions via Graph Neural Networks for CTR Prediction”一文中,作者將各個域之間以圖的形式連接起來(下圖中的 Feature graph),然后用 GNN 建模各個特征域之間高階復(fù)雜的交互關(guān)系,相比之前的模型取得了最好效果。
7. 反欺詐
反欺詐業(yè)務(wù)是各大公司保證運營業(yè)務(wù)與營銷業(yè)務(wù)正常開展的前提,通常我們所面臨的欺詐問題包括:垃圾評論、排名欺詐、交易欺詐、薅羊毛、賬戶盜用等。這些欺詐現(xiàn)象的背后往往是黑產(chǎn)團伙協(xié)同作案,大大提高了反欺詐業(yè)務(wù)的打擊成本。
關(guān)系數(shù)據(jù)的挖掘是絕大部分反欺詐業(yè)務(wù)開展最重要的技術(shù)視角,不論是基于欺詐風(fēng)險傳播的關(guān)聯(lián)分析還是基于黑產(chǎn)團伙模式的結(jié)構(gòu)化挖掘,圖都是反欺詐業(yè)務(wù)人員的首選工具。
在這樣的背景下,GNN 也變得極有發(fā)揮空間。例如,論文“Heterogeneous Graph Neural Networks for Malicious Account Detection”中運用 GNN 對支付寶欺詐用戶進行識別檢測,“Spam Review Detection with Graph Convolutional Networks”中運用 GNN 對咸魚上的評論進行欺詐識別。
04 GNN 開源項目總結(jié)
在 2019 年,圖領(lǐng)域出現(xiàn)了不少新的開源項目,一些已有的開源項目也有較大的改善。
1 月,阿里媽媽開源了國內(nèi)首個支持工業(yè)級圖深度學(xué)習(xí)的框架 Euler,內(nèi)置很多實用的圖算法。項目地址:
https://github.com/alibaba/euler
3 月,德國多特蒙德工業(yè)大學(xué)的學(xué)者們提出了 Pytorch Geometric ,實現(xiàn)了諸多 GNN 的變體模型,上線之后獲得了大佬 Yann LeCun 的推薦。項目地址:
https://github.com/rusty1s/pytorch_geometric
5 月,著名圖學(xué)習(xí)框架 DGL 發(fā)布 v0.3 版本(目前已經(jīng)更新至 0.4.1 版本,也補齊了很多 GNN 的變體模型),0.3 版本在性能上有了非常顯著的提升,相比 0.2 版本訓(xùn)練速度提高了 19 倍,同時支持億級規(guī)模的圖神經(jīng)網(wǎng)絡(luò)訓(xùn)練。項目地址:
https://github.com/dmlc/dgl
12 月,斯坦福大學(xué)的 Jure Leskovec 教授在 NeurlPS 2019 大會演講中宣布開源 Open Graph Benchmark,通過這一數(shù)據(jù)集可以更好地評估模型性能等方面的指標(biāo)。項目地址:
http://ogb.stanford.edu
同月,清華大學(xué)知識工程研究室(KEG)推出了大規(guī)模圖表示學(xué)習(xí)工具包 CogDL,可以讓研究者和開發(fā)者更加方便地訓(xùn)練和對比用于節(jié)點分類、鏈路預(yù)測以及其他圖任務(wù)的基準(zhǔn)或定制模型。項目地址:
https://github.com/THUDM/cogdl/
除了上述的項目,GitHub 上圖相關(guān)的兩個論文項目也很不錯,總結(jié)了近年來各大頂會所有相關(guān)論文,收錄非常及時全面,推薦大家關(guān)注:
https://github.com/naganandy/graph-based-deep-learning-literature
https://github.com/DeepGraphLearning/LiteratureDL4Graph
05 展望
展望來年,最可以確定的一點是 GNN 依然會保持如今快速發(fā)展的態(tài)勢。從理論研究上看,不斷解構(gòu) GNN 相關(guān)的原理、特色與不足,進而提出相應(yīng)地改進與拓展,是非常值得我們關(guān)注的部分。
另外,關(guān)于一直以來研究 GNN 所用的標(biāo)準(zhǔn)數(shù)據(jù)集,如 Cora、PubMed,這些數(shù)據(jù)集場景單一、異構(gòu)性不足,難以對復(fù)雜的 GNN 模型進行準(zhǔn)確評價,針對這一問題,近期斯坦福大學(xué)等開源的 OGB 標(biāo)準(zhǔn)數(shù)據(jù)集有望大大改善這個現(xiàn)狀,在新的評價體系下,哪些工作能夠脫穎而出,且讓我們拭目以待。
在應(yīng)用場景上,相信 GNN 能夠帶給我們更加亮眼的工作,除了在視覺推理、點云學(xué)習(xí)、關(guān)系推理、科研、知識圖譜、推薦、反欺詐等領(lǐng)域有廣泛應(yīng)用外,在其他的一些場景,如交通流量預(yù)測、醫(yī)療影像、組合優(yōu)化等,也出現(xiàn)了一些 GNN 相關(guān)的工作。
大體上看,如何準(zhǔn)確有效地將圖數(shù)據(jù)與 GNN 二者有機結(jié)合到相關(guān)場景,是應(yīng)用上需要著重考慮的事情,相信來年,會出現(xiàn)更多這樣的工作來拓展 GNN 的應(yīng)用邊界。