圖上如何做異常分析?澳大利亞聯邦大學最新《圖學習異常分析:算法、應用與挑戰》綜述,闡述GCN/GAT/GAE等方法
異常分析是一項廣泛而重要的研究任務,已經被研究了幾十年。與此同時,深度學習在解決許多基于圖的任務方面表現出了其能力,如節點分類、鏈接預測和圖分類。近年來,許多研究通過擴展圖學習模型來解決異常分析問題,使得基于圖的異常分析技術取得了一些有益的進展。**本文對用于異常分析任務的圖學習方法進行了全面的概述。根據模型架構將它們分為四類,即圖卷積網絡(GCN)、圖注意力網絡(GAT)、圖自編碼器(GAE)和其他圖學習模型。**系統地比較了這些方法之間的差異。概述了現實世界中跨不同領域的幾個基于圖的異常分析應用。最后,討論了這一快速發展領域未來可能的5個研究方向。1. 引言
異常也被稱為離群點,普遍存在于各種真實世界的網絡[12]中,如觀點網絡中的虛假評論[121]、社交網絡中的假新聞[119]、協作網絡中的離群成員[94,118]、交通網絡中的突發人群[50]、移動網絡中的社會自私節點[110]以及計算機網絡中的網絡入侵[24]。異常檢測的研究可以追溯到20世紀60年代,幾十年來一直是一個熱門的研究領域。隨著日益增長的需求和在不同領域的廣泛應用,異常分析在數據挖掘、機器學習等領域發揮著越來越重要的作用。 隨著深度學習的發展,圖學習被提出,它是為應用于圖結構數據的基于深度學習的模型而創造的[112,128]。由于其令人信服的性能和可解釋性,近年來在各個學科中,越來越多的研究專注于利用深度圖模型[99,137]進行異常檢測和預測任務,而不僅僅局限于隨機游走等淺層網絡嵌入[40,111]。圖作為一種獨特的非歐氏數據結構,能夠表示不同場景中的實體及其關系。然而,在將深度學習和人工智能應用于真實世界網絡時,該研究方向對所有檢測方法都面臨著一些不可避免的問題復雜性[57,105]。
圖結構不規則。與文本、序列和圖像等其他規則結構化數據不同,圖中的節點是無序的,并且可能具有不同的鄰域,這使得圖的結構不規則。因此,一些傳統的深度學習架構無法直接應用,例如卷積神經網絡(convolutional neural networks, CNN)中的卷積和池化操作[72]。
異構異常類。圖中節點和鏈接的類型通常不統一,導致異質信息網絡(heterogeneous information networks, HINs)的出現。HINs通常包含實體和關系之間更復雜的信息,特別是那些包含不同模態的信息[85],這對于識別特定圖中不同類型的異常非常重要。
可擴展到真實世界的網絡。如今,現實世界的網絡(如社交網絡)由數百萬甚至數十億的節點、邊和屬性信息組成[113]。這種大規模網絡無疑增加了計算復雜度。因此,設計相對于圖大小具有線性時間復雜度的可擴展模型是勢在必行的。
標簽稀缺性。與人工生成的圖數據相比,真實世界網絡的稀疏性主要有兩個原因。第一個是無標度網絡結構的性質,在大多數現實世界網絡中,節點的度服從長尾分布[123]。另一種是在抓取數據過程中受到采集技術和隱私保護的限制。此外,由于缺乏標記數據集,設計無監督的異常檢測模型變得越來越重要。
不同類型的異常。研究人員探索了幾種類型的異常,如節點、邊、子圖和路徑(如圖2所示)。節點異常是指在整個圖中與其他節點相比表現出異常行為的實體,例如在社交網絡中傳播假新聞的用戶。其他類型的異常也有類似的概念和它們自己的實際應用。在這種情況下,子圖異常難以檢測,因為從異常子圖中抽取出的子圖節點可能表現出正常的行為。
**已有一系列深度異常檢測研究證明,在解決上述挑戰方面,其性能明顯優于傳統模型。**盡管采用的技術從圖卷積網絡(GCNs)到圖自編碼器(GAEs)不同,但由于現有異常的復雜性,大多數方法專注于在特定情況下檢測或預測異常。目前很少有人對這些方法進行全面的總結,并清晰地分析它們如何應用于解決實際應用場景。
本綜述的其余部分結構如下。第2節介紹圖學習模型的表示法和初步知識,這些知識將在后續章節中使用。第3 ~ 6節將介紹異常分析方法。在第7節中,我們概述了可以用深度圖模型解決的異常分析的幾個實際應用,并在第8節中討論了一些未來的研究方向和挑戰。最后,我們在第9節簡要總結了這個綜述。
表1. 檢測和預測異常的圖學習模型綜述
2. 基于GCN的檢測方法
作為深度圖模型中最流行的結構,圖卷積網絡(graph Convolutional Networks, GCNs)可以通過卷積操作學習和生成節點嵌入,即從節點的局部鄰域聚合信息的過程。在本節中,我們介紹基于GCN的異常檢測和預測方法,這也是所有異常分析模型中最流行的模型類型。根據方法是否針對特定異常檢測任務設計,將其分為兩類,即通用模型和任務驅動模型。圖3展示了如何使用空間卷積操作檢測社交網絡中的異常用戶的玩具模型。表3總結了這些方法的主要特點。
3. 基于GAT的檢測方法
在深度圖模型中,節點鄰居的權重被定義為相等或默認設置。然而,鄰居的重要性往往因屬性和結構特征的不同而不同。受注意力機制的啟發,Velivckovic等人[92]將注意力機制應用于GCN的空間卷積操作,提出了一種圖注意力網絡(GAT)。圖4展示了注意力機制如何應用于網絡欺凌檢測的一個簡單示例。在本節中,我們總結并介紹了使用圖注意力網絡的異常分析算法。該方法按照異常類型分為2個子檢測,即節點異常檢測和(子)圖異常檢測。表4總結了這些方法的主要特征。
4**. 基于GAT的檢測方法**
圖自動編碼器(GAE)是一種用于生成低維表示的無監督結構,目的是最小化編碼器的輸入和解碼器的輸出之間的損失[91]。在本節中,我們將介紹應用于異常分析的基于GAE的算法。根據訓練和學習模式的不同,將這些方法分為3類,即通用自編碼器、對抗訓練和超球學習。表5總結了這些方法的主要特點。在圖5中,我們提出了一個基于GAE的異質網絡異常引用行為檢測模型
圖在表示關系數據(如化合物、蛋白質和社交網絡)方面具有卓越的能力。因此,圖級學習以一組圖作為輸入,已應用于許多任務,包括比較、回歸、分類等。傳統的圖學習方法往往依賴于手工設計的特征,如子結構。但是,雖然這些方法受益于良好的可解釋性,但它們往往遭受計算瓶頸,因為它們不能繞過圖同構問題。相反,深度學習通過自動提取特征并將圖解碼為低維表示,幫助圖級學習適應不斷增長的圖規模。**因此,這些深度圖學習方法取得了許多成功。然而,沒有一個全面的調研來回顧從傳統學習到深度學習方法的圖級學習。本文填補了這一空白,并將具有代表性的算法框架化為一個系統的分類,包括傳統學習、圖級深度神經網絡、圖級圖神經網絡和圖池化。為了確保一個徹底的全面的綜述,從四個不同的分支的開發方法之間的演變,交互和交流也被檢查。**接下來簡要回顧基準數據集、評估指標和常見的下游應用。該調研總結了13個必要研究的未來方向,這些研究將有助于克服這一蓬勃發展的領域面臨的挑戰。
1. 引言
對圖結構數據的研究始于18世紀的哥尼斯堡橋問題,即:“我們如何在哥尼斯堡市的7座橋中設計一條每座橋只穿過一次的路徑?”1741年,Euler將7座橋梁建模成一個圖,并證明在沒有重復路徑[1]的情況下,該圖是不能完全遍歷的。在圖中,節點表示橋梁之間的連接點,而邊表示橋梁本身。**從那時起,圖結構數據已經成為建模和探索世界不可或缺的一部分。在大量與圖相關的文獻中,圖級學習引起了相當大的關注。圖級學習是對由圖組成的數據集的分析。**例如,圖同構問題,即兩個成對圖是否同構的問題,自1942年首次提出以來吸引了大量的研究[2]-[4][5]。進一步,在2016年[6]提出一個擬多項式時間解之前,圖同構被認為是NP-immediate的候選對象。還研究了其他有重要價值的應用。例如,Wang et al.[7]采用分子圖,其中節點表示原子,邊表示化學鍵,并執行圖回歸作為預測分子特性的一種方法,以幫助發現更經濟的晶體。在另一項研究中,基于一系列蛋白質圖的圖生成任務用于生成具有特定功能的蛋白質圖,以支持藥物發現[8]。同樣,基于腦圖的圖分類具有將神經系統疾病的腦結構與健康個體[9]的腦結構區分開來的潛力。
**傳統的圖級學習主要依賴手工設計的特征來區分圖。然而,盡管手工特征賦予了傳統方法良好的可解釋性,但它們通常具有較高的計算復雜度,這是阻礙其部署的主要障礙。**該方法的復雜性在于:(1)大規模圖數據中手工特征通常過于稀疏;(2)大多數依賴于這些手工特征的圖級學習算法通常涉及圖同構問題。例如,一些傳統的圖分類方法是根據從圖數據集中分解出的一系列子結構對圖進行分類的,其主要問題是判斷是否存在同構子結構。然而,深度學習技術已經開啟了圖級學習的新時代。通過這些方法,可以以端到端的方式自動學習圖的非線性和特定任務的特征,這為最先進的性能帶來了新的基準。此外,深度神經網絡學習的高維表示可以支持不斷增長的圖數據規模。美中不足的是,深度學習的黑箱性質導致可信性下降,因此一個新的趨勢是通過傳統技術開發可靠的神經網絡。
**此外,要理解跨越傳統和深度學習的各種圖級學習技術,需要全面回顧大量的圖級學習文獻。有一些關于學習圖結構數據的調研。**然而,這些評論有兩個主要缺點。首先,現有的研究大多集中在探索單個圖中的節點/邊/子結構的文章,如網絡嵌入[10]、社區檢測[11]、[12]、異常檢測[13]和圖神經網絡[14]、[15];圖級學習被視為占用分段或更少部分的副產品。圖1說明了單個圖上的圖學習和圖級別學習之間的差異。其次,僅從單一角度研究圖級學習,如圖核[16]或圖池[17]。因此,這些調研并不全面,因為它們忽略了不同圖級學習技術之間的相互作用。據我們所知,這是對圖級學習的第一次全面調查,涵蓋了傳統方法和基于深度學習的技術。詳盡地描述了圖級學習不同時期的主流技術(見圖2),并進一步討論了它們之間的演變、相互作用和交流。因此,本調研的貢獻包括: * 全面的分類法:本文提出了圖級學習技術的全面分類法。具體來說,該分類涵蓋了通過傳統和深度學習方法進行的圖級學習。 * 深度回顧:總結了四類具有代表性的算法,進行了比較,并討論了現有方法的貢獻和局限性。 * 豐富的資源:這份調研為讀者提供了豐富的圖級學習資源,包括最先進算法的信息,不同領域的基準數據集,不同圖級學習任務的公平評估指標,以及實際的下游應用。本文的存儲庫可在 * 未來方向:本文確定了圖級學習領域的13個重要未來方向。
圖2:四種主流技術下的圖級學習時間線。
**本節提供圖級學習技術的分類。**它的類別包括傳統學習,圖級深度神經網絡(GL-DNNs),圖級圖神經網絡(GL-GNNs)和圖池化。圖3中的分類樹描述了圖級學習的這四個分支,并突出了所選算法。接下來簡要介紹每一類。 A. 傳統的學習:
在深度學習技術取得巨大成功之前,傳統的學習形式曾經是圖級學習的主流。傳統的學習方法大多依賴手工特征來描述圖,如隨機游走序列[16]。給定確定性的圖描述,使用現成的機器學習模型以非端到端的方式執行下游任務,如圖分類。即使在今天,傳統方法也比深度學習技術具有一些優勢,例如更好的可解釋性和更好的建模不規則結構的能力。出于這些原因,傳統方法仍然為圖級學習社區提供了有價值的見解。
B.圖級深度神經網絡(GL-DNNs):
傳統方法不僅僅包括經典方法。它們還包括對深度學習技術的初步探索,如RNN、CNN和CapsNet。這三種類型的深度神經網絡最初并不是為了學習像圖這樣的非歐氏數據而設計的。因此,GL-DNNs的一個重要問題是如何使這些深度神經網絡學習大小不一且鄰域結構不規則的圖結構數據。
C.圖級圖神經網絡(GL-GNNs):
GL-GNNs使用專門為圖結構數據提出的圖卷積操作作為執行圖級學習的主干。大多數GL-GNN使用圖卷積MPNNs框架,因為它們簡單,易于理解,并且具有線性復雜度。GL-GNNs凝聚了圖級學習最豐富的成果。此外,一些從業者將基于MPNN的GL-GNN的優勢與其他技術,特別是傳統學習技術相結合,以提高圖級學習。
D .圖池化:
圖池化是一種縮小圖規模的技術,通過將一系列節點壓縮為一個超級節點來產生圖的緊湊表示。例如,圖池化可以通過求和或平均操作將圖的所有節點嵌入全局聚合到一個最終超級節點中。同時,圖池化可以逐層減小圖的大小。這種多層縮小過程傾向于在每一層聚集同一層次結構(例如,社區)中的節點。
圖學習旨在學習現實世界中常見的復雜節點關系和圖的拓撲結構,如社交網絡、學術網絡和電子商務網絡等。這些關系使得圖數據與傳統的表格數據不同,其中節點依賴于非歐氏空間,包含了豐富的信息。圖學習從圖論發展到圖數據挖掘,現在被賦予表示學習的能力,使其在各種場景中取得了出色的性能,甚至包括文本、圖像、化學和生物。由于在現實世界中的廣泛應用前景,圖學習已經成為機器學習中一個熱門且有前景的領域**。**
近年來,已有成千上萬的研究成果被提出用于解決圖學習中的各種問題,引起了學術界越來越多的關注,因此對已有的有價值的研究成果進行綜述變得至關重要。盡管一些研究人員已經注意到這種現象,并完成了關于圖學習的令人印象深刻的調研。然而,由于圖學習的快速擴展,它們未能以更合乎邏輯的方式將相關目標、方法和應用聯系起來,并涵蓋當前豐富的場景和具有挑戰性的問題。
1. 引言
圖學習旨在對圖進行建模,圖是一種廣泛存在于真實場景中的非歐氏數據,與以往機器學習中的數據結構有很大不同,如社交網絡[1]、[2]、[3],學術網絡[4]、[5]、[6],電子商務網絡[7]、[8]、[9],企業知識圖譜[10]、[11]、[12]等。挖掘圖中節點間復雜連接關系和拓撲結構中蘊含的豐富信息,對于圖上的許多任務和應用具有重要意義。此外,傳統應用也可以轉換為圖數據(如計算機視覺[13]、[14]、[15]、語言模型[16]、[17]、[18]、物理[19]、[20]和化學[21]、[22])。重點假設不同實體之間存在許多未直接觀察到的潛在聯系。這使得圖學習不僅是一種處理自然圖結構的方法,而且是一種思考各種問題的方式。
由于圖學習具有廣闊的應用前景,因此在國內外引起了廣泛的關注。盡管之前關于圖的理論工作幫助人們理解圖上的各種字符,并提供了基本的分析框架。這些工作通常集中在較小的模擬圖上,這限制了它們在真實場景中的應用,特別是當圖上存在復雜的關系和結構時。
盡管在這一領域已經有了一些顯著而詳細的調查。目前還缺乏一個綜合的、將相關的目標、方法和應用聯系起來,形成一個有機的、邏輯的綜述。此外,每年在頂級會議上都有數百篇關于圖學習的研究,并且數量還在高速增長。由于其發展迅速,缺乏涵蓋最新趨勢和挑戰的全面調研。 圖2按時間順序展示了有影響力的圖學習方法。這些方法主要分為3類(圖挖掘方法、圖表示方法和深度圖學習方法)。在圖學習早期,大多數方法集中于圖的字符[1]或利用圖的結構信息在小圖[25]、[26]上完成一些下游任務。圖表示學習目前占據主流地位,可歸納為圖嵌入方法和圖神經網絡方法兩大類。這兩類方法都旨在學習節點、邊或圖的語義表示。前者直接優化嵌入,可以減少圖結構信息的損失;后者利用深度神經網絡,在圖上建模信息傳遞過程。
如圖3所示,在本綜述中,我們從圖學習目標的角度提供了一個直觀的分類法。根據圖的元素(即節點、邊和圖結構)對以前對圖的工作進行排序。基于這種邏輯,綜述了圖上的相關方法和任務。展示了圖學習在現實世界中的各種應用上的出色性能。最后,提出了圖學習的發展趨勢和挑戰,以期進一步推動該領域的研究。
本綜述的主要貢獻總結如下。
本文的其余部分組織如下。第2節從數據、模型和任務3個角度,基于節點、邊和圖結構對已有工作進行了直觀的分類。第3節展示了用于圖學習的主要方法和當前的研究趨勢。第四部分總結了該方法在實際中的應用。第5節提出了當今圖學習面臨的挑戰。
2 方法
在本節中,我們將當前的模型分為兩大類(即傳統模型和圖神經網絡)。傳統模型可以進一步分為3類(即矩陣分解模型、基于隨機游走的模型和基于自編碼器的模型)。首先回顧了傳統模型,其中一些仍然活躍或與GNN相結合,并給出了當前模型的許多啟示。在大多數場景下,與傳統模型相比,GNN表現出更高的表達能力和出色的性能。本文將GNN歸納為兩個方面。
3 應用
介紹當前圖學習在現實世界中的主要應用,包括傳統的機器學習場景,如推薦系統、自然語言處理、計算機視覺和金融科技,以及科學場景中的新興應用,如化學、生物、物理和數學。最后,總結了圖學習中流行的數據集。
圖神經網絡(GNNs)是一種基于圖的深度學習模型,已成功應用于許多領域。盡管GNN具有一定的有效性,但GNN要有效地擴展到大型圖仍然是一個挑戰。作為一種補救措施,分布式計算能夠提供豐富的計算資源,成為訓練大規模GNN的一種很有前途的解決方案。然而,圖結構的依賴性增加了實現高效分布式GNN訓練的難度,這將受到海量通信和工作量不平衡的影響。近年來,人們在分布式GNN訓練方面做了很多工作,提出了一系列的訓練算法和系統。然而,從圖處理到分布式執行的優化技術還缺乏系統的綜述。本文分析了分布式GNN訓練中的三個主要挑戰,即大量特征通信、模型精度損失和工作負載不平衡。然后,我們介紹了分布式GNN訓練優化技術的一種新的分類法,以解決上述挑戰。新的分類法將現有技術分為四類:GNN數據分區、GNN批處理生成、GNN執行模型和GNN通信協議。我們仔細討論了每個類別中的技術。最后,我們分別總結了現有的多GPU、GPU集群和CPU集群分布式GNN系統,并對可擴展GNN的未來發展方向進行了討論。
//www.zhuanzhi.ai/paper/f714e263f8583bad283b4dcbc85a2aa5
1. 概述
圖神經網絡(GNN)是處理圖建模問題的強大工具,已被廣泛應用于各種應用中,包括社交網絡(如社交垃圾郵件檢測[87,112],社會網絡分析[91]),生物信息學(如蛋白質界面預測[35],疾病-基因關聯[83]),藥物發現[11,66],流量預測[61],醫療保健[2,21],推薦[32,49,55,111],自然語言處理[134,145]和其他[26,85,133,141,144]。通過將圖結構信息融入到深度學習模型中,GNNs可以取得明顯優于傳統機器學習和數據挖掘方法的效果。GNN模型通常包含多圖卷積層,其中每個頂點聚合其鄰居的最新狀態,更新頂點的狀態,并對更新的頂點狀態應用神經網絡(即轉換)。以傳統的圖卷積網絡(GCN)為例,在每一層中,頂點使用求和函數聚合相鄰的狀態和自己的狀態,然后應用單層MLP轉換新狀態。如果層數為??,這樣的過程重復??次。在??th層中生成的頂點狀態供下游任務使用,如節點分類、鏈接預測等。近年來,許多研究工作在圖神經網絡模型的設計方面取得了顯著進展。著名的模型包括GCN[108]、GraphSAGE[46]、GAT[95]、GIN[118]和許多其他特定于應用程序的GNN模型[128,130]。到目前為止,已有數十篇綜述綜述了GNN模型[114,116,135,147]。另一方面,為了高效地開發不同的GNN模型,基于各種深度學習庫提出了許多面向GNN的框架[8,14,34,44,68,104]。許多新的優化被提出來加速GNN訓練,包括GNN計算內核[19,38,52,53,81,93,129],高效的編程模型[51,113,117],以及充分利用新硬件[18,42,124,148]。然而,這些框架和優化主要集中在單個機器上訓練GNN,而沒有過多關注輸入圖的可擴展性。
如今,大規模圖神經網絡[62,70]由于大規模大圖數據的普遍存在而成為一個熱門話題。擁有數十億個頂點和數萬億條邊的圖形是很常見的,比如新浪微博、微信、Twitter和Facebook等社交網絡。然而,現有的大多數GNN模型只在小圖數據集上進行測試,無法處理大圖數據集[50]或效率低下。這是因為之前的GNN模型比較復雜,在處理大型圖時需要大量的計算資源。通過設計可擴展的GNN模型,實現了大規模的圖神經網絡。他們使用簡化[36,47,110],量化[4,33,54,71,90,100,101,107,139],取樣[20,123,125]和蒸餾[24,121,131]來設計高效的模型。另一種方法是將分布式計算應用于GNN訓練。因為在處理大型圖形時,單個設備(如GPU)有限的內存和計算資源成為大規模GNN訓練的瓶頸,而分布式計算提供更多的計算資源(如多GPU、CPU集群等)來提高訓練效率。在設計高效的分布式GNN訓練框架(如PipeGCN [99], BNS-GCN[98])和分布式GNN訓練系統(如AliGraph [150], DistDGL [142], ROC[58])方面已經做出了許多努力。在這個調查中,我們關注的工作與分布式計算的大圖神經網絡,又稱分布式GNN訓練。它將整個模型訓練的工作量分配給一組工人,所有工人并行處理工作量。然而,由于GNN的數據依賴性,將現有的分布式機器學習方法[96,103]應用于GNN并非易事,許多新的技術被提出來優化分布式GNN的訓練管道。盡管有很多關于GNN模型的調查[114,135,147],但據我們所知,很少有人系統地回顧分布式GNN訓練的技術。最近,Besta等[9]只回顧了GNN的并行計算范式,Abadal[1]從算法到硬件加速器考察了GNN計算。
為了清晰地組織分布式GNN訓練的技術,我們介紹了一種通用的分布式GNN訓練管道,該管道由數據劃分、GNN模型優化和梯度聚合三個階段組成。前兩個階段涉及GNN特定的執行邏輯,包括圖處理和圖聚合。最后一個階段與傳統的分布式機器學習相同。在這個通用分布式GNN訓練管道的背景下,我們討論了分布式GNN訓練的三個主要挑戰,這些挑戰是由圖數據中的數據依賴性引起的,需要新的分布式GNN特定技術。為了幫助讀者更好地理解解決上述挑戰的各種優化技術,我們介紹了一種新的分類法,將這些技術分為四個正交的類別:GNN數據分區、GNN批處理生成、GNN執行模型和GNN通信協議。該分類法不僅涵蓋了小批分布式GNN訓練和全圖分布式GNN訓練中使用的優化技術,而且還討論了從圖處理到模型執行的技術。我們仔細回顧了每個類別中的現有技術,然后描述了23個來自業界或學術界的代表性分布式GNN系統和框架。最后,簡要討論了分布式GNN訓練的未來發展方向。
這項綜述的貢獻如下:
這是第一個專注于高效分布式GNN訓練優化技術的綜述,它幫助研究人員快速了解分布式GNN訓練的現狀。
通過考慮端到端分布式GNN訓練的生命周期,我們引入了分布式GNN訓練技術的一種新的分類法。在高層次上,新的分類法由四個正交類別組成,分別是GNN數據分區、GNN批處理生成、GNN執行模型和GNN通信協議。
我們為新分類法中的每個類別提供了詳細和全面的技術總結。
我們回顧了23個具有代表性的分布式GNN訓練系統和框架,從工業界到學術界。
討論分布式GNN訓練的未來發展方向。
2. 分布式GNN訓練和挑戰
為了更好地理解端到端分布式GNN訓練的一般工作流程,我們將訓練管道分為數據劃分、GNN模型優化和梯度聚合三個階段。圖1可視化了端到端分布式GNN訓練工作流的高級抽象。
數據分區。這是一個支持分布式訓練的預處理階段。它將輸入數據(即圖和特征)分布到一組工作者中。考慮到GNN訓練數據的依賴性,數據劃分階段比傳統分布式機器學習中的數據劃分階段更加復雜。如圖1所示,分區數據(即子圖)之間的跨工作者邊暗示了數據依賴性。如果我們承認分區之間的數據依賴性,分布式訓練效率會因通信而降低;如果我們簡單地忽略數據依賴性,模型的準確性就會被破壞。因此,數據分區是端到端分布式GNN訓練效率的關鍵階段。
GNN模型優化。這是分布式GNN訓練的核心階段,執行GNN模型的訓練邏輯(即前向計算和后向計算)。我們進一步將這一階段分為計算圖生成、執行模型和通信協議。首先,每個worker根據分塊的輸入圖和特征生成計算圖,然后用計算圖執行GNN模型,計算損失和梯度。但由于數據的依賴性,計算圖的生成和GNN模型的執行與傳統的深度學習模型有很大的不同。在不訪問遠程輸入數據的情況下,小批量訓練策略的計算圖可能無法正確生成。執行模型涉及GNN模型的??-layer圖聚合,聚合呈現不規則的數據訪問模式。在分布式全圖訓練中,每一層的圖聚合需要通過通信協議訪問頂點遠程鄰居的隱藏特征,還需要考慮層與層之間的同步模式。因此,與傳統的分布式機器學習相比,由于GNN的數據依賴性,計算圖的生成和模型的執行變得更加復雜。
梯度聚合。該階段負責聚合最新的局部梯度,獲得全局梯度,更新模型參數。在GNN環境下,模型規模通常較小,模型更新邏輯與其他機器學習模型相同。經典分布式機器學習中已有的梯度聚合技術可以直接應用于分布式GNN訓練。
為了解決上述問題,實現分布式GNN訓練并優化訓練效率,近年來提出了許多新的技術。大多數現有的工作都是從系統或框架的角度來展示他們自己的技術貢獻,而沒有從技術的角度來很好地回顧相關的工作。本文介紹了一種新的分類法,以端到端分布式訓練管道中的階段為基礎,組織分布式gnn特定技術。通過這樣的設計,我們將分布式GNN訓練管道中相同階段的相似技術組織在一起,幫助讀者充分理解分布式GNN訓練中不同階段的現有解決方案。根據以往的實證研究,由于數據依賴性,分布式GNN訓練的瓶頸一般出現在數據分區和在建的GNN模型優化階段,而針對GNN的新技術就在這兩個階段。此外,不同的訓練策略(如小批量訓練、全圖訓練)帶來不同的工作負載模式,導致模型優化中使用不同的優化技術。例如,模型優化階段的計算圖生成對于小批訓練很重要,而通信協議對于全圖訓練很重要。因此,我們的新分類法將特定于分布式GNN的技術分為四類(即GNN數據分區、GNN批處理生成、GNN執行模型和GNN通信協議),如圖2所示。下面,我們將介紹每個類別的概述。
3. GNN數據分區****
在本節中,我們回顧了分布式GNN訓練中現有的GNN數據分區技術。圖3描述了這些技術的概述。考慮到圖和特征是GNN中兩種典型的數據類型,我們將劃分方法分為圖劃分和特征劃分。優化目標是工作量平衡、通信和計算最小化,旨在解決挑戰#1和#3。此外,成本模型是捕獲GNN工作負載特征的另一個關鍵組件。在下面,我們首先提出了代價模型,然后分別討論了圖劃分和特征劃分。
4 GNN批量生成
小批GNN訓練是將GNN擴展為大型圖的常用方法。圖采樣實際上是在獨立模式下生成小批量的工具。到目前為止,已經提出了許多基于采樣的圖神經網絡[17,23,46,56,125,151],根據采樣方法的不同類型,可以分為頂點采樣、層采樣和子圖采樣。不同的批生成方法會影響訓練效率和訓練精度。為了避免圖采樣成為瓶頸,人們對高效GNN數據加載器進行了一些探索[5,25,27,76]。在小批分布式GNN訓練中,數據依賴性為批生成過程帶來了大量的通信。為了提高分布式環境下的訓練效率,針對分布式訓練提出了幾種新的GNN批生成技術,并解決了挑戰#1和挑戰#2。如圖4所示,一種解決方案是通過分布式抽樣生成小批處理,另一種是直接使用本地分區(或子圖)作為小批處理。
5. GNN執行模型
圖1中的GNN模型優化階段包括計算圖生成和計算圖執行兩個子階段。執行模型負責對子階段的操作進行調度,以達到較高的訓練效率。這兩個子階段針對不同的訓練范式有不同的運算符。在分布式小批訓練中,采樣和特征提取操作影響訓練效率,計算圖生成成本高。而對于分布式全圖訓練,由于工作者之間的數據依賴性,計算圖的執行比較復雜。下面,我們分別討論了計算圖生成和計算圖執行的執行模型。
6 結論
分布式GNN訓練是將GNN模型擴展到大圖的成功方法之一。在本綜述中,我們系統地回顧了現有的分布式GNN訓練技術,從圖數據處理到分布式模型執行,涵蓋了端到端分布式GNN訓練的生命周期。我們將分布式GNN訓練管道分為三個階段,其中數據劃分階段和GNN模型優化階段是影響GNN訓練效率的兩個關鍵階段。為了清晰地組織優化這兩個關鍵階段的新技術貢獻,我們提出了一個新的分類法,由四個正交的類別組成:GNN數據分區、GNN批處理生成、GNN執行模型和GNN通信協議。在GNN數據分區類別中,我們描述了用于分布式GNN訓練的數據分區技術;在GNN批生成類中,我們提出了用于小批分布式GNN訓練的快速GNN批生成技術;在GNN執行模型方面,討論了計算圖生成和計算圖執行所使用的執行模型;在GNN通信協議類別中,我們討論了分布式GNN訓練的同步和異步協議。在仔細回顧了這四類技術之后,我們分別總結了現有代表性的多GPU分布式GNN系統、GPU集群分布式GNN系統和CPU集群分布式GNN系統,并對未來優化大規模GNN訓練的方向進行了討論。
近年來,深度學習已經徹底改變了許多機器學習任務,從圖像分類和視頻處理到語音識別和自然語言理解。這些任務中的數據通常用歐幾里得空間表示。然而,越來越多的應用從非歐幾里得域生成數據,并表示為對象之間具有復雜關系和相互依賴關系的圖。圖數據的復雜性給現有的機器學習算法帶來了巨大的挑戰。近年來,許多關于圖數據擴展深度學習方法的研究已經出現。在八報告中,提供了一個簡明的圖神經網絡(GNNs)在數據挖掘和機器學習領域的概述。我們提出了一種新的分類方法,將最先進的圖神經網絡分為四類,即遞歸圖神經網絡、卷積圖神經網絡、圖自編碼器和時空圖神經網絡。我們進一步討論了圖神經網絡在各個領域的應用,并總結了圖神經網絡的開源代碼、基準數據集和模型評估。最后,我們提出了這一快速發展領域的潛在研究方向。
社區揭示了不同于網絡中其他社區成員的特征和聯系。社區檢測在網絡分析中具有重要意義。除了經典的譜聚類和統計推理方法,我們注意到近年來用于社區檢測的深度學習技術在處理高維網絡數據方面的優勢有了顯著的發展。因此,通過深度學習對社區檢測的最新進展進行全面概述,對學者和從業者都是及時的。本文設計并提出了一種新的分類方法,包括基于深度神經網絡的深度學習模型、深度非負矩陣分解和深度稀疏濾波。主要的類別,即深度神經網絡,進一步分為卷積網絡,圖注意力網絡,生成對抗網絡和自動編碼器。綜述還總結了流行的基準數據集、模型評估指標和開源實現,以解決實驗設置。然后討論了社區檢測在各個領域的實際應用,并提出了實現方案。最后,通過提出這一快速發展的深度學習領域中具有挑戰性的課題,我們概述了未來的發展方向。
//www.zhuanzhi.ai/paper/eb70a346cb2540dab57be737828445c6
引言
早在20世紀20年代,社會學和社會人類學就對社區進行了研究。然而,直到21世紀之后,研究人員才開始利用強大的數學工具和大規模數據操作來檢測社區,以解決具有挑戰性的問題[2]。自2002年[3]以來,Girvan和Newman將圖劃分問題引起了更廣泛的關注。在過去的10年里,計算機科學研究者廣泛研究了基于網絡拓撲結構[5]-[8]和實體語義信息[9]-[11]、靜態網絡[12]-[14]、小型網絡和大型網絡[15]-[17]的社區檢測問題[4]。越來越多的基于圖的方法被開發出來用于檢測具有復雜數據結構[18],[19]環境中的社區。通過社區檢測,可以詳細分析網絡中社區的動態和影響,如謠言傳播、病毒爆發、腫瘤進化等。
社區的存在推動了社區檢測研究的發展,是一個越來越具有現實意義的研究領域。俗話說,物以類聚,人以群分。根據六度分離理論,世界上任何一個人都可以通過六個熟人認識其他人[21]。事實上,我們的世界是一個由一系列社區組成的巨大網絡。例如,通過檢測社交網絡[22]-[24]中的社區,如圖1所示,平臺贊助商可以向目標用戶推廣他們的產品。在引文網絡[25]中,社區檢測決定了研究主題的重要性、關聯性、演化和識別研究趨勢。在代謝網絡[26]、[27]和蛋白質-蛋白質相互作用(PPI)網絡[28]中,社區檢測揭示了具有相似生物學功能的代謝和蛋白質。同樣,腦網絡[19]、[29]中的社區檢測反映了腦區域的功能和解剖分離。
許多傳統的技術,如譜聚類[30],[31]和統計推理[32]-[35],被用于小型網絡和簡單的場景。然而,由于它們的計算和空間成本巨大,它們無法擴展到大型網絡或具有高維特征的網絡。現實網絡中非線性結構信息豐富,使得傳統模型在實際應用中不太適用。因此,需要更強大的具有良好計算性能的技術。目前,深度學習提供了最靈活的解決方案,因為深度學習模型: (1) 學習非線性網絡屬性,如節點之間的關系,(2) 提供一個低維的網絡表示,保持復雜的網絡結構,(3) 提高了從各種信息中檢測社區的性能。因此,深度學習用于社區檢測是一種新的趨勢,需要及時全面的調查。
據我們所知,本文是第一次全面調研深度學習在社區檢測方面的貢獻。以往的研究主要集中在傳統的社區檢測上,回顧了其在發現網絡固有模式和功能[36]、[37]方面的重要影響。這篇論文綜述了一些具體的技術,但不限于: 基于隨機塊模型(sms)的部分檢測[38],標簽傳播算法(LPAs)[39],[40],以及單目標和多目標優化的進化計算[13],[14]。在網絡類型方面,研究人員綜述了動態網絡[12]、有向網絡[41]和多層網絡[5]中的社區檢測方法。此外,[6],[7]還回顧了一系列關于不相交和重疊的社區缺陷的概述。圍繞應用場景,以往的論文綜述了社交網絡[9]、[42]中的社區檢測技術。
本文旨在幫助研究人員和從業者從以下幾個方面了解社區檢測領域的過去、現在和未來趨勢:
系統性分類和綜合評價。我們為此項綜述提出了一個新的系統分類(見圖3)。對于每個類別,我們回顧、總結和比較代表性的工作。我們還簡要介紹了現實世界中的社區檢測應用。這些場景為未來的社區檢測研究和實踐提供了見解。
豐富的資源和高影響力的參考資料。該綜述不僅是文獻綜述,而且是基準數據集、評估指標、開源實現和實際應用的資源集合。我們在最新的高影響力國際會議和高質量同行評審期刊上廣泛調查社區檢測出版物,涵蓋人工智能、機器學習、數據挖掘和數據發現等領域。
未來的發展方向。由于深度學習是一個新的研究趨勢,我們討論了當前的局限性,關鍵的挑戰和開放的問題,為未來的方向。
社區檢測在網絡分析和數據挖掘中具有重要意義。圖4展示了傳統學習方法和深度學習方法的發展。傳統的方法是在網絡結構上探索社區。這七種方法(圖3左圖)僅以一種簡單的方式捕捉淺連接。傳統方法的檢測結果往往是次優的。我們將在本節簡要回顧它們的代表性方法。深度學習方法(圖3右圖)揭示了深度網絡信息,復雜關系,處理高維數據。
本文提出了一種深度社區檢測的分類方法。分類法將方法歸納為六類: 卷積網絡、圖注意力網絡(GAT)、生成對抗網絡(GAN)、自動編碼器(AE)、深度非負矩陣分解(DNMF)和基于深度稀疏濾波(DSF)的深度社區檢測方法。卷積網絡包括卷積神經網絡(CNN)和圖卷積網絡(GCN)。AE又分為堆疊型AE、稀疏型AE、去噪型AE、圖卷積型AE、圖關注型AE和變分型AE (VAE)。
近年來,人們對學習圖結構數據表示的興趣大增。基于標記數據的可用性,圖表示學習方法一般分為三大類。第一種是網絡嵌入(如淺層圖嵌入或圖自動編碼器),它側重于學習關系結構的無監督表示。第二種是圖正則化神經網絡,它利用圖來增加半監督學習的正則化目標的神經網絡損失。第三種是圖神經網絡,目的是學習具有任意結構的離散拓撲上的可微函數。然而,盡管這些領域很受歡迎,但在統一這三種范式方面的工作卻少得驚人。在這里,我們的目標是彌合圖神經網絡、網絡嵌入和圖正則化模型之間的差距。我們提出了圖結構數據表示學習方法的一個綜合分類,旨在統一幾個不同的工作主體。具體來說,我們提出了一個圖編碼解碼器模型(GRAPHEDM),它將目前流行的圖半監督學習算法(如GraphSage、Graph Convolutional Networks、Graph Attention Networks)和圖表示的非監督學習(如DeepWalk、node2vec等)歸納為一個統一的方法。為了說明這種方法的一般性,我們將30多個現有方法放入這個框架中。我們相信,這種統一的觀點既為理解這些方法背后的直覺提供了堅實的基礎,也使該領域的未來研究成為可能。
概述
學習復雜結構化數據的表示是一項具有挑戰性的任務。在過去的十年中,針對特定類型的結構化數據開發了許多成功的模型,包括定義在離散歐幾里德域上的數據。例如,序列數據,如文本或視頻,可以通過遞歸神經網絡建模,它可以捕捉序列信息,產生高效的表示,如機器翻譯和語音識別任務。還有卷積神經網絡(convolutional neural networks, CNNs),它根據移位不變性等結構先驗參數化神經網絡,在圖像分類或語音識別等模式識別任務中取得了前所未有的表現。這些主要的成功僅限于具有簡單關系結構的特定類型的數據(例如,順序數據或遵循規則模式的數據)。
在許多設置中,數據幾乎不是規則的: 通常會出現復雜的關系結構,從該結構中提取信息是理解對象之間如何交互的關鍵。圖是一種通用的數據結構,它可以表示復雜的關系數據(由節點和邊組成),并出現在多個領域,如社交網絡、計算化學[41]、生物學[105]、推薦系統[64]、半監督學習[39]等。對于圖結構的數據來說,將CNNs泛化為圖并非易事,定義具有強結構先驗的網絡是一項挑戰,因為結構可以是任意的,并且可以在不同的圖甚至同一圖中的不同節點之間發生顯著變化。特別是,像卷積這樣的操作不能直接應用于不規則的圖域。例如,在圖像中,每個像素具有相同的鄰域結構,允許在圖像中的多個位置應用相同的過濾器權重。然而,在圖中,我們不能定義節點的順序,因為每個節點可能具有不同的鄰域結構(圖1)。此外,歐幾里德卷積強烈依賴于幾何先驗(如移位不變性),這些先驗不能推廣到非歐幾里德域(如平移可能甚至不能在非歐幾里德域上定義)。
這些挑戰導致了幾何深度學習(GDL)研究的發展,旨在將深度學習技術應用于非歐幾里德數據。特別是,考慮到圖在現實世界應用中的廣泛流行,人們對將機器學習方法應用于圖結構數據的興趣激增。其中,圖表示學習(GRL)方法旨在學習圖結構數據的低維連續向量表示,也稱為嵌入。
廣義上講,GRL可以分為兩類學習問題,非監督GRL和監督(或半監督)GRL。第一個系列的目標是學習保持輸入圖結構的低維歐幾里德表示。第二系列也學習低維歐幾里德表示,但為一個特定的下游預測任務,如節點或圖分類。與非監督設置不同,在非監督設置中輸入通常是圖結構,監督設置中的輸入通常由圖上定義的不同信號組成,通常稱為節點特征。此外,底層的離散圖域可以是固定的,這是直推學習設置(例如,預測一個大型社交網絡中的用戶屬性),但也可以在歸納性學習設置中發生變化(例如,預測分子屬性,其中每個分子都是一個圖)。最后,請注意,雖然大多數有監督和無監督的方法學習歐幾里德向量空間中的表示,最近有興趣的非歐幾里德表示學習,其目的是學習非歐幾里德嵌入空間,如雙曲空間或球面空間。這項工作的主要動機是使用一個連續的嵌入空間,它類似于它試圖嵌入的輸入數據的底層離散結構(例如,雙曲空間是樹的連續版本[99])。
鑒于圖表示學習領域的發展速度令人印象深刻,我們認為在一個統一的、可理解的框架中總結和描述所有方法是很重要的。本次綜述的目的是為圖結構數據的表示學習方法提供一個統一的視圖,以便更好地理解在深度學習模型中利用圖結構的不同方法。
目前已有大量的圖表示學習綜述。首先,有一些研究覆蓋了淺層網絡嵌入和自動編碼技術,我們參考[18,24,46,51,122]這些方法的詳細概述。其次,Bronstein等人的[15]也給出了非歐幾里德數據(如圖或流形)的深度學習模型的廣泛概述。第三,最近的一些研究[8,116,124,126]涵蓋了將深度學習應用到圖數據的方法,包括圖數據神經網絡。這些調查大多集中在圖形表示學習的一個特定子領域,而沒有在每個子領域之間建立聯系。
在這項工作中,我們擴展了Hamilton等人提出的編碼-解碼器框架,并介紹了一個通用的框架,圖編碼解碼器模型(GRAPHEDM),它允許我們將現有的工作分為四大類: (i)淺嵌入方法,(ii)自動編碼方法,(iii) 圖正則化方法,和(iv) 圖神經網絡(GNNs)。此外,我們還介紹了一個圖卷積框架(GCF),專門用于描述基于卷積的GNN,該框架在廣泛的應用中實現了最先進的性能。這使我們能夠分析和比較各種GNN,從在Graph Fourier域中操作的方法到將self-attention作為鄰域聚合函數的方法[111]。我們希望這種近期工作的統一形式將幫助讀者深入了解圖的各種學習方法,從而推斷出相似性、差異性,并指出潛在的擴展和限制。盡管如此,我們對前幾次綜述的貢獻有三個方面
我們介紹了一個通用的框架,即GRAPHEDM,來描述一系列廣泛的有監督和無監督的方法,這些方法對圖形結構數據進行操作,即淺層嵌入方法、圖形正則化方法、圖形自動編碼方法和圖形神經網絡。
我們的綜述是第一次嘗試從同一角度統一和查看這些不同的工作線,我們提供了一個通用分類(圖3)來理解這些方法之間的差異和相似之處。特別是,這種分類封裝了30多個現有的GRL方法。在一個全面的分類中描述這些方法,可以讓我們了解這些方法究竟有何不同。
我們為GRL發布了一個開源庫,其中包括最先進的GRL方法和重要的圖形應用程序,包括節點分類和鏈接預測。我們的實現可以在//github.com/google/gcnn-survey-paper上找到。