想入門圖深度學習?這篇55頁的教程幫你理清楚了脈絡

  • 2020 年 2 月 21 日
  • 筆記

選自arXiv

作者:David Bacciu等

機器之心編譯

義大利比薩大學的研究者發表論文,介紹了圖深度學習領域的主要概念、思想和應用。與其他論文不同的是,這篇論文更像一份入門教程,既適合初學者作為學習材料,也可以幫助資深從業者理清該領域的脈絡,避免重複造輪子。

論文鏈接:https://arxiv.org/pdf/1912.12693.pdf

圖是表示不同性質數據的強大工具,而數據來源於多種人工和自然流程。圖數據具備複合性,是原子資訊片段的複合體;同時它也具備關聯性,定義數據結構的鏈接,即表示鏈接實體之間的關係。圖通過鏈接方向和標籤來表示大量關聯(association),如離散關係類型、化學性質和分子鍵強度。

而最重要的一點是,圖具備普遍性。在化學和材料科學中,圖表示化合物的分子結構、蛋白質相互作用和藥物相互作用網路,以及生物學和生物化學關聯。在社會科學中,圖網路被廣泛用於表示人們之間的關係,以及推薦系統中的複雜購買行為。

近日,大量圖數據以及越來越多的可用大型資源庫,促使人們對以適應性方式處理圖的深度學習模型產生了濃厚興趣。然而,圖深度學習模型面臨多項方法論和實踐挑戰。

首先,圖學習模型應能夠適應大小和拓撲結構變化多樣的樣本。其次,我們很難獲取關於節點 ID 和多個樣本之間順序的資訊。此外,圖是離散對象,其可微性存在一定限制,而且圖的複合性阻礙了窮舉搜索方法的應用。最後,最通用的圖類別允許出現循環(loop),當涉及消息傳遞和節點訪問時,循環會導致複雜度增加。也就是說,從表達能力和計算複雜度來看,處理圖數據會帶來前所未有的挑戰。因此,對於開發和測試新型神經網路方法而言,圖數據是不錯的試驗場。

儘管深度學習社區近期才對圖數據產生濃厚興趣,但實際上用神經網路處理圖數據由來已久,可以追溯到 20 世紀 90 年代早期使用遞歸神經網路 (RecNN) 處理樹結構化數據的開創性研究 [98, 32, 9]。後來,RecNN 方法在自然語言處理應用領域中被重新發現 [99, 97]。此外,它還從有向無環圖 [75] 逐漸擴展到更複雜、更豐富的結構,通用逼近(universal approximation)對此提供了支援 [44]。對結構的遞歸處理也被概率方法所利用,最初是作為純理論模型 [32],後來通過高效的近似分布得到更加實用的方法 [6]。

遞歸模型共享(神經)狀態轉移系統(state transition system)這一思路,即遍歷整個結構來計算嵌入。把這種方法擴展到一般圖(有環/無環、有向/非有向)存在一個主要問題,即對環(cycle)的處理,這是由於神經遞歸單元定義的狀態變數之間存在相互依賴性。

解決該問題的最早模型是圖神經網路(Graph Neural Network,GNN)和 Neural Network for Graphs (NN4G)。與 RecNN 類似,GNN 模型也基於狀態轉換系統(state transition system)構建,不過它允許在狀態計算中處理環。而 NN4G 利用「依靠來自架構之前層的表示可以管理變數相互依賴性」這一想法,使用多層架構打破了圖循環中的遞歸依賴。這些模型具備開創性意義,為兩種主要的圖處理方法奠定了基礎,即循環方法(基於 GNN)和前饋方法(基於 NN4G)。具體而言,後者現已成為主流方法,屬於圖卷積(神經)網路的範疇。

本文從歷史的角度介紹基於圖數據的神經網路領域,在現代術語中它叫做「圖深度學習」(deep learning for graph)。本文並非文獻綜述,而更像一篇教程,旨在對該領域的主要概念和構成圖神經架構的構造塊進行充分連貫的介紹。

本教程的寫作動機是多方面的。首先,近期圖深度學習研究工作的急劇增長是以遺忘開創性、綜合性工作為代價的。因此,該領域存在重新發現已有結果和模型的風險。另一方面,社區開始注意到對圖深度學習模型的評估方面存在問題,因此需要一種原則性更強的方法。最後,一些綜述論文開始出現,但對方法論的介紹仍然匱乏。

本教程採取自上而下的方法概述該領域,同時從清晰的歷史角度介紹其主要概念和思想。

本文第 2 章為圖表示學習問題提供了通用公式,從而引入本文剩餘部分遵循的架構路線圖。本文將著重於資訊的局部和迭代處理方法,這些方法與神經網路的運作機制更加契合。因此,本文對基於譜圖的全局方法(即假設一個固定鄰接矩陣)不做過多關注。

第 3 章介紹創建現代圖深度學習架構所需的構造塊。具體而言,該章節將介紹將圖卷積作為局部鄰域聚合函數的概念、注意力的使用、基於圖定義的取樣和池化操作,最後討論用於計算整體結構嵌入的聚合函數。

第 4 章繼續介紹方法論,討論圖表示學習中的主要學習任務,以及相關的代價函數,並對相關歸納偏置進行界定。

本文最後一部分綜述其他相關方法和任務(第 5 章),討論有趣的研究挑戰(第 6 章)和應用(第 7 章)。文章最後,作者記錄了對未來研究方向的考量和提示。

第 2 章:概述

本章首先總結了必要的數學符號,然後討論了寫作動機,並展示了該領域大部分工作所共享的主要思想。

整體圖景

不管訓練目標是什麼,幾乎所有圖深度學習方法都會最終生成節點表示(狀態)h_v, ∀_v ∈ V_g。研究 [32] 將該過程定義為:對圖執行同構轉換(isomorphic transduction)。這些節點表示是並行訪問圖節點的結果,即在沒有特定節點順序的情況下遍歷整個圖。下圖 2 展示了整體機制,這對處理節點、邊和圖相關任務非常有用。例如,我們可以通過聚合節點表示,來輕鬆計算出圖表示。

圖 2:所有圖學習方法共享的機制。向深度圖網路(DGN)輸入圖,它將輸出節點表示 h_v, ∀_v ∈ V_g。將此類表示聚合起來,即可得到圖表示 h_g。

因此,研究者和從業人員的工作圍繞著深度學習模型的定義展開,這類模型從圖中自動提取相關特徵。本文將此類模型統一命名為「深度圖網路」(Deep Graph Networks,DGN)。一方面,該通用術語可以將圖神經網路(GNN,[89])和圖卷積網路(GCN,[59])區分開來。該領域文獻中常常使用 GNN 和 GCN 表示在圖數據上運行的全部神經網路類別,給從業人員造成概念模糊和混淆。另一方面,本文使用 DGN 作為模型分類的基礎(詳見圖 3),該分類即本文討論的路線圖。

圖 3:架構路線圖。

本文將 DGN 分為三個大類:深度神經圖網路(DNGN),此類模型受到神經架構的啟發;深度貝葉斯圖網路(DBGN),其代表性模型是圖概率模型;深度生成圖網路(DGGN),包括利用神經模型和概率模型的圖生成方法。該分類絕非對方法論的嚴格劃分,事實上,本文關注的所有方法均基於局部關係和迭代處理來散布圖中的節點語境(node context),與其神經或概率本質無關。

在本章的後半部分,作者還介紹了資訊的局部關係和迭代處理以及三種語境散布(Context Diffusion)機制,詳細內容可參見論文。

第 3 章:構造塊

現在,我們把注意力轉向局部圖學習模型的主要構成部分。這些構造塊的架構偏置決定了模型可以計算的表示類型。本章目的不是為所有模型提供最綜合通用的公式,而是展示多個架構共同使用的主要「組件」,以及如何結合這些組件來構建有效的圖學習模型。

本章討論了基於局部和迭代處理的 DGN 是如何利用可用資訊的,主要內容包括:

  • 鄰域聚合
  • 池化
  • 執行節點聚合,以形成圖嵌入

具體而言,本文展示了 DGN 如何聚合鄰域資訊、考慮邊資訊。更高級的方法包括注意力、池化和取樣,這些技術均針對不同目標。將這些構造塊結合起來,即可開發出能夠散布語境資訊的新型圖處理方法。

下表 1 總結了一些代表性模型的鄰域聚合方法:

下圖 7 展示了如何排列和結合不同的構造塊,來構建端到端訓練的前饋或循環模型:

第 4 章:任務

介紹完主要構造塊和生成節點和圖表示的常見方法之後,本章將討論待解決的不同學習任務,主要涉及無監督、監督、生成和對抗學習任務,從而為該領域的研究提供綜述。

表 2 依據四個核心屬性區分各個模型,這四個屬性分別是:語境散布方法、嵌入計算方法、層的構建方法,以及模型的本質屬性(神經/概率/混合)。然後,作者添加了一些其他屬性,如處理邊的能力、執行池化的能力、注意鄰域的能力,以及對鄰域取樣的能力。

第 5 章:其他方法和任務概覽

還有一些方法和主題暫未包含在上文分類中,本文主要關注基於局部和迭代處理的圖深度學習方法。為完整概述該領域的發展,本章將簡要概述上文未包含的一些主題:

  • 譜方法
  • 隨機遊走
  • 圖對抗訓練和攻擊
  • 圖序列生成模型

第 6 章:開放性挑戰和研究方向

儘管有關圖學習方法論的研究數量穩步增長,但還有一些研究領域尚未得到廣泛關注。本章列舉了一些有潛力的研究方向:

  • 時間演化圖(Time-evolving graph)
  • 偏差-方差權衡
  • 合理利用邊資訊
  • 超圖學習(Hypergraph learning)

第 7 章:應用

本章列舉了部分圖學習應用領域,旨在強調相比過去用平坦表示或順序表示解決圖問題,更通用的方法可能會帶來更多性能提升。由於圖具備普遍性,因此以下列表遠遠沒有窮盡。本章總結了部分常見應用:

  • 化學和藥物設計
  • 社交網路
  • 自然語言處理
  • 安防
  • 時空預測
  • 推薦系統