做者 | Mr Bearphp
編輯 | 叢 末node
近年來,隨着圖神經網絡在各個領域的火熱應用,愈來愈多的學者試圖從圖論的角度對圖神經網絡的表達能力進行理論分析,並基於這些理論分析開發出了性能強大的模型。然而,在實際應用中,這些在理論上很是強大的模型的性能每每會受到計算複雜度等因素的限制。ios
本文做者 Michael Bronstei n 是一名來 自帝國理工學院的教授,同時也是 Twitter 圖機器學習項目組的負責人。在本文中,他深刻淺出地介紹了近年來分析圖神經網絡表達能力的工做,並介紹了他們對於該領域將來發展方向的思考。git
1github
圖神經網絡和 WL 圖同構測試之間的關係算法
衆所周知,傳統的前饋神經網絡(多層感知機)是一種通用函數近似器:它們可以以任意的準確率逼近任意的平滑函數。對於近期興起的圖神經網絡來講,其表徵性質還不太爲人所知。在實驗中,咱們常常能夠看到圖神經網絡在某些數據集上性能優異,但同時又在另外一些數據集上表現使人失望。express
爲了探究形成這種現象的根本緣由,咱們不得不思考一個問題:圖神經網絡究竟有多強大?網絡
在探究這一問題的過程當中,咱們所面臨的一個挑戰是:實際應用場景下使用的圖每每是連續結構和離散結構(節點、邊特徵、連通性)的組合。所以,該問題能夠被表述爲不一樣的形式。一種可能的形式化定義是:圖神經網絡是否可以區分不一樣類型的圖結構。在圖論中,這是一種被稱爲「圖同構問題」的經典問題,旨在判斷兩個圖在拓撲意義上是否等價。兩個同構的圖擁有相同的連通性,其差異僅僅多是節點的排列不一樣。架構
稍使人驚訝的是,咱們尚不知曉精確的圖同構問題的複雜度級別。該問題在多項式時間內不可解,它也不是一個 NP 徹底(NPC)問題。有時,咱們將其複雜度稱爲一種特殊的「GI 級」(GI class)。app
一、Weisfeiler-Lehman 測試
Boris Weisfeiler 和 Andrey Lehman 於 1968 年發表的具備開創性意義的論文「The reduction of a graph to canonical form and the algebra which appears therein 」),提出了一種高效的啓發式算法,咱們如今將其稱爲「WL 測試」。
最初,人們認爲 WL 測試能夠在多項式時間內求解圖同構問題。但一年以後,人們就舉出了一個反例。然而,從機率意義上說,彷佛 WL 測試對於幾乎全部的圖都有效。
圖 1:在兩個同構圖上執行 WL 測試的示例。包含弧線的 hash 圓括號表明多重集。在着色狀況再也不變化後算法會終止,並給出輸出結果(顏色直方圖)。若將兩圖輸入給該算法獲得的輸出相同,則說明兩圖可能同構。
WL 測試是創建在迭代式的圖重着色(圖論中的「着色」指的是一種離散的節點標籤)基礎上的,在初始狀態下,每一個節點的顏色均不相同。在每一步迭代中,算法會聚合節點及其鄰居節點的顏色,並將它們表徵爲多重集,而後將聚合獲得的顏色多重集經過 Hash 函數映射到某種惟一的新顏色上。當達到穩定的着色狀態(各節點着色狀態再也不變化)後,算法終止。當算法終止後,若兩圖的着色狀況不一樣,則咱們認爲它們「非同構」。若是兩圖着色狀況相同,它們可能(但並不必定)是同構的。換句話說,WL 測試是圖同構的必要非充分條件。有一些非同構的圖在接受 WL 測試後獲得的着色狀況也是相同的,而在這種狀況下 WL 測試就失效了,所以咱們只能認爲它們「可能同構」。下圖展現了其中的一種可能性:
圖 2:顯然,WL 圖同構測試會爲上面的兩個非同構圖生成相同的着色結果,此時 WL 測試失效。在化學領域中,這兩個圖分別表明兩種不一樣的化合物「decalin」(左圖)和「bicyclopentyl」(右圖)的分子結構。
二、圖同構網絡(GIN)
Keyulu Xu 等人發表的論文「 How powerful are graph neural networks?」和 Christopher Morris 等人發表的論文,以及 Thomas 在他至少兩年前撰寫的博客「GRAPH CONVOLUTIONAL NETWORKS」,中注意到,WL 測試與圖消息傳遞神經網絡有驚人的類似之處,它們都在圖上進行了一種相似於卷積的操做。
相關論文/文章連接:
https://arxiv.org/abs/1810.00826
https://tkipf.github.io/graph-convolutional-networks/
在一個消息傳遞層中,每一個節點的特徵會以聚合其鄰居節點特徵的方式被更新。對聚合和更新操做的選擇是十分重要的:只有使用多重集的單射函數才能使其與 WL 算法等價。在前人的研究中,「取最最大值」或「取均值」等聚合操做都是必定弱於 WL 的能力,它們甚至不能區分很是簡單的圖結構:
圖 3:經過「取最大值」操做沒法區分左圖、中圖、右圖,經過「取均值」聚合函數能夠區分左圖和中圖、經過「取最大值」和「取均值」操做均沒法區分左圖和右圖。這是由於經過這些方法從黑色節點的鄰居中聚合而來的特徵將會是相同的。
Xu 提出了一種聚合和更新函數的選擇方案,它使得消息傳遞神經網絡與 WL 算法等價,該網絡被稱爲「圖同構網絡」(GIN)。該網絡和標準的消息傳遞神經網絡同樣強大。可是,GIN 不只僅是一種新的網絡架構,其主要影響在於它經過一種簡單的設定形式化定義了圖神經網絡表達能力的問題,這種設定與圖論中的經典問題相關。該網絡的思路也啓發了許多後續的工做。
三、Weisfeiler-Lehman 層次結構
使用更增強大的圖同構測試,是擴展 Xu 和 Morris 等人工做的一個方向。所以,László Babai 提出了 k-WL 測試,這是 WL 算法在高階上的擴展,它在 k 元組上進行操做,而非操做單個節點。除了 1-WL 和 2-WL 測試是等價的,(k+1)-WL 始終嚴格強於 k-WL(k≥2),即對於某些圖而言 k-WL 測試失效,而 (k+1)-WL 測試能夠成功斷定圖是否同構,但反之則否則。所以,k-WL 是一種層次結構的或隨着 k 的增大而逐漸更增強大的圖同構測試,有時被稱爲「Weisfeiler-Lehman 層次結構」。
咱們能夠設計出遵循 k-WL 測試的圖神經網絡,這種網絡是必定比消息傳遞架構更增強大的。Morris 等人在論文「 Weisfeiler and Leman go neural: Higher-order graph neural networks 」中提出了第一種這樣的架構 k-GNN。
相關論文連接:
https://aaai.org/ojs/index.php/AAAI/article/view/4384/4262
傳統的消息傳遞神經網絡和這種高階圖神經網絡之間最關鍵的區別在於:因爲 k-WL 算法在節點的 k 元組上進行操做,因此這種高階圖神經網絡是非局部的(non-local)。這對算法的實現及其計算複雜度和存儲複雜度都有重要的影響:k-GNN 須要 (n) 的存儲空間。爲了下降複雜度,Morris 基於在局部鄰居節點中的信息聚合機制設計了一種 k-GNN 的局部版本,然而其表達能力要稍微弱於 k-WL。
Haggai Maron 提出了一種稍微有些不一樣的高階圖架構。他基於 k-階張量定義了一類不變性圖網絡(IGN),說明它們與 k-WL 測試同樣強大。IGN 是根據 k-WL 的另外一種變體衍生而來,與 k-GNN 相比,IGN 在計算複雜度方面更具優點。具體而言,與 3-WL 等價的 IGN「僅僅」具備 n 的平方級的計算複雜度,這多是惟一一種實際可用的嚴格強於消息傳遞架構的圖神經網絡,但它的複雜度與消息傳遞架構的線性複雜度仍然有很大的差距。
從理論的角度來看,可證實的強大圖神經網絡的相關工做提供了一種嚴謹的數學框架,它能夠幫助研究者們解釋並對比不一樣的算法。許多後繼的工做使用圖論和分佈式局部算法中的各類方法對這些工做的結果進行了擴展。
然而,從實用的角度來看,這些新架構幾乎沒有產生重大的影響:例如,Bengio 等人提出的最新的對比基準說明,近期這些可證實的強大算法實際上性能要差於以前的技術。
在機器學習領域中,這並不是是一種不尋常的情況。實際上,理論和實踐之間每每有很大的鴻溝。其中一種可能的解釋是,這是由對比基準測試自己的缺陷所致使的。可是更深層次的緣由也許是,更好的表達能力並不必定意味着更好的泛化性能(有時甚至剛好相反)。此外,在具體的應用中圖同構模型可能並不能正確地捕獲圖類似性的實際概念。能夠確定的是,這一領域的工做碩果累累,它搭建了連通其它學科的橋樑,並引入了之前在圖上的深度學習領域中沒有使用過的方法。
2
超越 Weisfeiler-Lehman:將子結構用於可證實的具備強大表達能力的圖神經網絡
圖 4:圖中的子結構
最近發表的具備開創性意義的論文「 How powerful are graph neural networks?」和「 Weisfeiler and Leman go neural: Higher-order graph neural networks 」將圖神經網絡和圖同構測試聯繫了起來,而且觀察到了消息傳遞機制和 WL 測試之間的類似性。「WL 測試」是一種對基於圖論的層次化迭代式算法的統稱,這類算法能夠在多項式時間內求解,被用於斷定圖是否同構。k-WL 測試根據某些鄰居節點的聚合規則,在每一步中對圖中頂點的 k 元組從新着色,直到達到穩定的着色狀態才終止算法。若兩圖的色彩直方圖不一樣,則咱們認爲它們非同構;不然,兩圖可能(但不必定)同構。
https://aaai.org/ojs/index.php/AAAI/article/view/4384/4262
消息傳遞神經網絡最多與 1-WL 測試(又稱「node colour refinement」算法)同等強大。所以,它甚至沒法區分很是簡單的非同構圖實例。例如,消息傳遞神經網絡沒法對三角形進行計數,而這種三角形模體(motif)被認爲在社交網絡中扮演者重要的角色,它與表示用戶「緊密聯繫」程度的聚類係數息息相關。咱們能夠設計表達能力更強的圖神經網絡來模擬愈來愈強大的 k-WL 測試。然而,這樣的架構會致使計算複雜度很高,引入大量的參數。更重要的是,這樣的架構每每還須要非局部的操做,這使得它們並不具有可行性。
圖 5:沒法被 1-WL 檢測區分,可是能夠被 3-WL 檢測區分開來的非同構圖示例。這是因爲 3-WL 能夠對三角形模體進行計數。
所以,基於 WL 層次結構的可證實的強大圖神經網絡要麼性能較弱但較爲實用,要麼性能強大但並不實用。在做者 Michael Bronstein看來,應該有另一種簡單的的方式設計既高效有可證實的強大圖神經網絡,咱們在與 Giorgos Bouritsas 和 Fabrizio Frasca 等人合做完成的論文「Improving Graph Neural Network Expressivity via Subgraph Isomorphism Counting」中提出了這種方法。
相關論文連接:https://arxiv.org/abs/2006.09252
一、圖子結構網絡
圖子結構網絡的思路實際上十分簡單,在概念上與位置編碼或圖元核(graphlet)描述子類似:讓消息傳遞機制感知局部的圖結構,使其可以根據末端節點之間的拓撲關係以不一樣的方式計算消息。這是經過向消息傳遞函數傳遞與每一個節點關聯的附加結構描述子來實現的,這種描述子是經過子圖同構計數實現的。經過這種方式,咱們能夠將圖中的節點劃分到不一樣的等價類中,這些等價類反映了每一個圖內部的節點之間以及跨越不一樣圖的節點之間共享的拓撲特性。
咱們將這種架構稱爲「圖子結構網絡」(GSN)。該網絡與標準的消息傳遞神經網絡擁有相同的算法設計、存儲複雜度以及計算複雜度,可是它在構造結構描述子以前增長了一個預計算步驟。選擇須要計數的子結構對於 GSN 的表達能力以及預計算步驟的計算複雜度都是相當重要的。
對於包含 n 個節點的圖,在對包含 k 個節點的子結構進行計數的過程當中,最差的計算複雜度爲 (n)。所以,這與高階圖神經網絡模型或前文中提到的 Morris 和 Maron 所提出的模型相相似。然而,GSN 相較於其它方法具備如下優點:
(1)對於「路徑」或「環」等類型的子結構,GSN 能夠以明顯較低的複雜度進行技術;
(2)具備高昂計算開銷的步驟僅僅做爲預處理執行一次,所以不會影響網絡的訓練和推理,正如在消息傳遞神經網絡中同樣,網路的訓練和推理會保持線性。訓練和推理時的存儲複雜度也是線性的;
(3)最重要的是,GSN 的表達能力與 k-WL 測試是不一樣的,在某些狀況下,GSN 的表達能力要更強。
二、GSN 有多強大?
子結構計數賦予了 GSN 比標準的消息傳遞神經網絡更強的表達能力。首先,須要說明的是,GSN 的表達能力取決於使用的圖的子結構。與 k-WL 測試中的層次結構相同,咱們能夠基於對一種或多種結構進行計數獲得 GSN 的不一樣的變體。經過使用比星型圖更復雜的結構,GSN 能夠得到必定強於 1-WL(或等價的 2-WL)更強的能力,所以也比標準的消息傳遞架構更強。當使用四元團(4-clique)時,GSN 的能力至少不會弱於 3-WL。
在下面的示例中,GSN 在強正則圖上仍然有效,而 3-WL 則失效了:
圖 6:包含 16 個頂點的非同構強正則圖的示例,每一個頂點的度爲 6,每 2 個鄰接的頂點擁有 2 個共同鄰居。3-WL 測試在本例中失效,然而使用四元團的 GSN 能夠區分這兩個圖。在左圖(被稱爲「Rook's graph」)中,每一個節點都剛好被包含在一個四元團中。右圖(Shrikhande graph)則包含三元最大團(三角形)。
更通常來講,對於各類 (1) 階的子結構而言,只要不能經過 3-WL 對其進行計數,那麼就存在 GSN 可以成功區分而 3-WL 沒法區分的圖。儘管咱們找不出反例,可是原則上這種反例是存在的——這也正是咱們稍有顧慮地僅僅將 GSN 的能力表述爲「至少不會弱於 3-WL」的緣由。
當 k-WL 中的 k 取更大值時,上述結論也成立;上圖中的強正則圖能夠被概括爲「k-iosregular」,它們是 (k+1)-WL 測試失效的實例。使用恰當結構的 GSN 也能夠區分這些示例。所以,GSN 的表達能力以下圖所示:
圖 7:GSN 在 WL 層次結構以外。在使用恰當的結構時(例如,特定規模的團或環),GSN 的能力至少不弱於 k-WL。
通常來講,GSN 的能力究竟有多強呢?這仍然是一個開放性的問題。圖重構猜測(Graph Reconstruction Conjecture)假定了根據一張圖的全部刪除某些節點後獲得的子結構恢復出該圖的機率。所以,若是圖重構猜測是正確的,那麼使用包含 n-1 個節點組成的子結構的 GSN 就能夠正確地測試任意圖的同構性。然而,到如今爲止,人們只在節點數 n≤11 的圖上證實了圖重構猜測。其次,對如此大的子結構進行計算也是不切實際的。
一個更有趣的問題是,對於「小型」結構(大小爲 (1) 常數階,與節點數 n 無關)而言,是否存在類似的結果。咱們的實驗結果證實,使用小型子結構(例如,環、路徑、團)的 GSN 對於區分強正則圖是有效的,而這對於 WL 測試來講是十分困難的。
最重要的是,GSN 是構建在標準的消息傳遞架構之上的,所以繼承了其局部性和線性複雜度。GSN 的超參數包括爲了構建結構描述子而計數的結構。也許,實際的應用會在「須要的表達能力」、「能保證這種表達能力的結構大小」、「計算複雜度」之間進行權衡。
圖 8:使用考慮了長度 k≥6 的環結構的 GSN,在 ZINC 數據集中,顯著提高了對分子圖的化學性質的預測性能。ZINC 數據集被製藥公司用於候選藥物的虛擬篩查。這種環結構在有機分子中大量存在。
在實驗中,咱們觀察到:不一樣的子結構會爲不一樣的問題和數據集帶來幫助。所以,對於子結構的選擇可能須要視具體問題而定。幸運的是,在某些實際應用中,咱們每每知道何種子結構是有用的。例如,在社交網絡中,三角形和高階的團是很常見的,而且有明確的「社會學」解釋。在化學領域中,環是一種很是常見的模式(例如,五元、六元芳環在大量的有機分子中都存在)。下圖顯示了一種咱們大多數人都很熟悉的示例:咖啡因的分子結構。
圖 9:1,3,7—三甲基黃嘌呤,俗稱咖啡因,是一種包含五元、六元環(分別表示爲紅色和黃色)的換裝化合物。
3
超越 Weisfeiler-Lehman:近似同構性與度量嵌入
基於圖論的在多項式時間內可以求解的算法爲圖同構問題提供了一種必要不充分條件。在圖深度學習領域中,研究人員已經證實了消息傳遞神經網絡和 1-WL 測試的能力至關。採用高階、更強大的 k-WL 測試能夠實現具備高計算複雜度的圖神經網絡,此時網絡涉及非局部操做,而在實際應用程序中,這是不實用的。
Michael Bronstein 近期在論文「Improving graph neural network expressivity via subgraph isomorphism counting 」中介紹了一種不一樣的方法,它摒棄了 WL 層次結構,轉而採用了一種消息傳遞機制,這種機制能夠感知環、團、路徑等局部圖結構。這使得咱們的圖神經網絡擁有吸引人的局部性以及標準消息傳遞架構的低計算複雜度。同時,做者能夠證實,該網絡比 2-WL 更強大,而且至少不弱於 3-WL。這種視角開啓了圖論領域中,還沒有在圖神經網絡表達性方面被探索過的開放性問題的深層次的聯繫。
相關論文連接:https://arxiv.org/abs/2006.09252
故事到這裏還遠未結束。做者表示,他相信,咱們能夠經過改變看待問題的角度作得更好。
一、近似同構
雖然研究人員已經基於圖神經網絡與圖同構問題的聯繫產生了一些重要的思路,可是這種設定自己仍是至關具備侷限性的。咱們能夠認爲圖神經網絡試圖尋找圖嵌入 f(G) ,這種嵌入具備咱們指望的特性,即 f(G)=f(G′) 當且僅當 G~G′。
不幸的是,因爲能夠經過 WL 測試是斷定圖同構的必要非充分條件,上述咱們指望獲得的特性只有一個方向能說得通:當 G~G′ 時, f(G)=f(G′),但反之不必定成立:兩個非同構的圖可能會得出相同的嵌入。
在實際應用中,咱們不多處理徹底同構的圖,而是處理以下圖所示的「近似同構」的圖:
圖 10:近似同構圖示例:(G, G′)、(G, G″)都是非同構的。可是 G 和 G′ 只有一條邊不一樣,而 G 和 G″ 有五條邊不一樣,所以 G 和 G′ 擁有比 G 和 G″ 之間「更強的同構性」。
咱們能夠用一種度量指標 d 來量化「近似同構」的概念,當兩圖不類似時 d 的值較大,而當兩圖很類似時 d 的值較小。「圖編輯距離」或「Gromov-Hausdorff」距離是兩種可能的 d 的示 例。須要注意的是,該度量標準能夠被定義爲:d(G,G′)=0 當且僅當 G~G′,即說明兩個同構圖難以被區分。保距嵌入(isometric embedding)問題:
對於全部的 G, G′,有 |f(G)f(G′)|=d(G,G′) ()
試圖使用圖嵌入之間的歐氏距離 |.| 替代圖的距離,咱們要求這兩種距離是相等的(在本例中,嵌入 f 是「保距的」)。
圖神經網絡表達能力的相關工做說明,咱們能夠在多項式時間內,在 WL 測試有效的一系列圖上構建知足 () 的圖嵌入。而這一設定彷佛限制性太強。第一,也許咱們沒法設計一種局部的高效算法,保證 () 對於全部圖都成立。第二,圖同構問題中的性質並不必定在近似同構圖上成立(在 d(G,G′)>0 的狀況下)。通常而言,更類似的圖在嵌入空間中反而較爲不類似的狀況也是可能存在的,即 d(G,G′)|f(G)f(G″)|。
可是另外一方面,對度量的形式化定義卻提供了更大的靈活性。咱們沒必要要求 () 必定成立,能夠經過規定「度量膨脹」(metric dilation)的界對其進行鬆弛:
當 c≥1 時,c d(G,G′) ≤ |f(G)f(G′)| ≤ c d(G,G′) ()
它能夠被表示爲嵌入 f 的雙 Lipschitz 常數。這意味着該嵌入不會使用比 c 大的因子「拉長」或「縮短」真實的圖距離。
這種嵌入被稱爲「近似保距」。咱們但願獲得獨立於圖(特別是與定點數無關)的界 c。請注意,因爲對於同構的圖 G~G′,咱們有 d(G,G′) 且 f(G)=f(G′),所以圖同構是 () 的特例。如前文所述,在全部圖上實現這種近似保距是不可能的。然而,咱們能夠容許額外的度量失真 ε,從而使模型 () 能夠被進一步鬆弛:
當 c≥1時,c d(G,G′)ε ≤ |f(G)f(G′)| ≤ c d(G,G′)+ε ()
它設置了一個同構圖之間距離的容忍度。若是能夠知足()的圖要比能夠知足 () 的圖多得多,那麼對於許多應用程序來講,這是一個很小的代價。
圖 11:近似保距嵌入問題
二、機率近似保距
咱們能夠以「機率近似正確」(PAC)的形式將近似同構問題從新寫爲如下的機率化表達:
( c d(G,G′)ε ≤ |f(G)f(G′)| ≤ c d(G,G′) )>1δ
其中,「近似」的思想體如今度量膨脹 c 上,而「機率」指的是對於一些圖的分佈而言,界 ()有很高的機率 1δ 成立。這種設定可能會比肯定性近似保距嵌入問題更容易分析。
三、鏈接連續和離散的結構
最後,圖神經網絡表達能力的問題主要仍是關注於圖的拓撲結構。然而,在大多數實際的應用中,圖也會包含節點層面或邊層面上的特徵,這些特徵每每被表徵爲向量。度量框架經過定義一種恰當的帶屬性的圖之間的距離很天然地處理了以上兩種結構。
再次聲明,人們須要牢記:大部分近期研發的有關圖神經網絡表達能力的工做都是創建在圖論領域的經典結果之上的。將這些工做拓展到度量幾何等其它的數學領域中,彷佛是一條頗有前景的道路,它們頗有可能在不久的未來結出碩果。
原文連接:https://towardsdatascience.com/expressive-power-of-graph-neural-networks-and-the-weisefeiler-lehman-test-b883db3c7c49