邢小雷,趙 超,鄭江文,溫可欣
1(河北工程大學 信息與電氣工程學院,河北 邯鄲 056038)
2(河北工程大學 管理工程與商學院,河北 邯鄲 056038)
圖無處不在,刷短視頻、微信上瀏覽好友動態(tài)、網(wǎng)上購物或查找感興趣的東西時,這些行為都有可能在一個大圖上觸發(fā)查詢.圖神經(jīng)網(wǎng)絡(luò)(Graph neural networks,GNN)已被證明是建模圖結(jié)構(gòu)數(shù)據(jù)的強大工具,然而訓練圖神經(jīng)網(wǎng)絡(luò)通常需要大量特定于任務(wù)的標記數(shù)據(jù),而獲取這些數(shù)據(jù)往往較為困難,利用圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練模型可以較好地解決這個缺點.預(yù)訓練的思想是在一個大數(shù)據(jù)集中做訓練,使模型有一個良好的初始化,然后將預(yù)訓練好的模型在下游具體任務(wù)中微調(diào).近年來,一些學者開始研究圖結(jié)構(gòu)數(shù)據(jù)的預(yù)訓練策略[1,2].然而由于拓撲結(jié)構(gòu)的變化,圖數(shù)據(jù)往往比圖像和文本數(shù)據(jù)更加復(fù)雜,將計算機視覺和自然語言處理領(lǐng)域的預(yù)訓練任務(wù)轉(zhuǎn)移到圖域并非易事.主要的挑戰(zhàn)是圖屬于不規(guī)則的非歐式數(shù)據(jù),與圖像/語言數(shù)據(jù)所在的二維/一維網(wǎng)格歐式數(shù)據(jù)相比,非歐式數(shù)據(jù)更普遍也更復(fù)雜.如今一些研究人員也開始利用對比學習和生成學習,使圖神經(jīng)網(wǎng)絡(luò)能夠從未標記的輸入數(shù)據(jù)中學習圖數(shù)據(jù)的表示[2,3].為此本文把這些面向圖神經(jīng)網(wǎng)絡(luò)的預(yù)訓練模型進行了全面的回顧.
圖是一種復(fù)雜的數(shù)據(jù)結(jié)構(gòu),它可用于模擬現(xiàn)實世界中許多復(fù)雜的系統(tǒng),如社交網(wǎng)絡(luò)、蛋白質(zhì)分子網(wǎng)絡(luò)、交通網(wǎng)絡(luò)、引文網(wǎng)絡(luò)和知識圖譜等.近年來,隨著深度學習技術(shù)的快速發(fā)展,許多學者開始采用該技術(shù)來處理圖,圖神經(jīng)網(wǎng)絡(luò)就在這種情況下應(yīng)運而生[4,5].它是被廣泛應(yīng)用于圖分析任務(wù)的一類神經(jīng)網(wǎng)絡(luò),憑借其優(yōu)越的性能,在社交網(wǎng)絡(luò)、推薦系統(tǒng)、風控、藥物發(fā)現(xiàn)任務(wù)和交通預(yù)測等領(lǐng)域大放異彩.各種圖神經(jīng)網(wǎng)絡(luò)模型層出不窮,對圖數(shù)據(jù)上的機器學習任務(wù)產(chǎn)生了深刻的影響.由于GNN是本文中主要的編碼器,因此在本節(jié)中介紹一個基于消息傳遞機制的通用框架[6].給定一個屬性圖G及其特征矩陣X,其中xi= X[i,:]T是節(jié)點vi的d維特征向量,GNN的目標是學習每個節(jié)點vi∈V的表示hi,考慮第m層GNN,第m層的表達式為:
(1)
(2)
對于節(jié)點級任務(wù),節(jié)點的表示hi直接用于下游任務(wù).對于圖級任務(wù),如公式(3)所示,需要一個額外的讀出函數(shù)來聚合節(jié)點特性以獲得整個圖的表示hG.由于篇幅關(guān)系,這里不討論特定GNN的運算,如有需要請讀者參閱相關(guān)的GNN綜述[7-9].
(3)
隨著深度學習的飛速發(fā)展,模型參數(shù)的數(shù)量迅速增加,需要更大的數(shù)據(jù)集來充分訓練模型并防止過擬合.然而對于大多數(shù)圖分析任務(wù)來說,構(gòu)建大規(guī)模的標記數(shù)據(jù)集是一個巨大的挑戰(zhàn),因為注釋成本極高.例如像生物化學醫(yī)療分子圖的標記,往往需要大量的專業(yè)領(lǐng)域人員來標記,相比之下大規(guī)模的無標記圖結(jié)構(gòu)數(shù)據(jù)相對容易構(gòu)建.為了利用大量未標記的圖結(jié)構(gòu)數(shù)據(jù),可以首先在這些數(shù)據(jù)中做預(yù)訓練,然后將預(yù)訓練好的模型用于其他下游具體任務(wù)中.預(yù)訓練是將所學知識從相關(guān)任務(wù)轉(zhuǎn)移到目標任務(wù)以提高泛化能力的一種常用而有效的方法[10],它可以為模型提供高質(zhì)量的初始化,從而提高模型的性能,是一種遷移學習[11].它的一般方法是在大量無標簽數(shù)據(jù)集上預(yù)先訓練模型,然后在有監(jiān)督的數(shù)據(jù)上對模型進行微調(diào).近些年,預(yù)訓練在多個領(lǐng)域取得了顯著的成功,如計算機視覺和自然語言處理.近年來,研究人員開始探索GNN的預(yù)訓練,使其能夠從大量的未標記圖數(shù)據(jù)中更有效地學習圖.GNN預(yù)訓練的目的是根據(jù)不同的任務(wù)學習模型的參數(shù),然后在給定的下游具體任務(wù)中,對預(yù)訓練的模型進一步優(yōu)化.
通過對不同模型預(yù)訓練策略的瀏覽,可以了解到GNN預(yù)訓練設(shè)計思路的大體演化進程如下.如何同時學習到有效的局部和全局信息并且避免負遷移?Hu等人[1]提出了一種結(jié)合節(jié)點級和圖級任務(wù)對模型進行預(yù)訓練的方法.在節(jié)點級別使用兩個自監(jiān)督方法,即上下文預(yù)測和屬性預(yù)測,在圖級采用有監(jiān)督屬性預(yù)測和結(jié)構(gòu)相似度預(yù)測,結(jié)合4個任務(wù)GNN可以學習有用的局部和全局圖表示,最終有效地提高了分子圖分類任務(wù)的性能.如何學習到通用的、跨領(lǐng)域、可遷移的拓撲結(jié)構(gòu)信息?Qiu Jiezhong等人[2]提出了一種自監(jiān)督GNN預(yù)訓練框架GCC,該模型是在無屬性圖上做預(yù)訓練,用于捕獲跨多個網(wǎng)絡(luò)的通用網(wǎng)絡(luò)拓撲特性.該模型將預(yù)訓練的任務(wù)設(shè)計為一個圖或跨圖的子圖級實例識別,使用對比學習來更好地學習內(nèi)部和可轉(zhuǎn)移的結(jié)構(gòu)表示,最后在3個圖學習任務(wù)(節(jié)點分類、圖分類和相似度搜索)中對模型進行了評估.通過多任務(wù)預(yù)訓練,提高模型泛化能力,Hu Ziniu等人[11]提出了一種基于多個子任務(wù)的通用預(yù)訓練框架,包括去噪鏈路重構(gòu)、中心評分排序和聚類保持,該模型期望從多個角度(節(jié)點、邊和子圖結(jié)構(gòu))來捕捉圖的特征.如何用概率生成模型對圖分布進行重構(gòu)建模?GPT-GNN[3]是一個基于生成任務(wù)的圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練框架,其主要思想是最大化輸入屬性圖的生成概率,它的訓練任務(wù)包含屬性生成任務(wù)和結(jié)構(gòu)生成任務(wù).PT-DGNN模型[13]是在重構(gòu)動態(tài)圖,該方法利用動態(tài)屬性圖生成任務(wù)同時學習圖的結(jié)構(gòu)、語義和演化特征,該方法包括兩個步驟:1)動態(tài)子圖采樣;2)帶有動態(tài)屬性圖生成任務(wù)的預(yù)訓練.在預(yù)訓練的過程中怎樣更好的學習目標任務(wù),縮小預(yù)訓練和微調(diào)過程優(yōu)化目標不一致的差異?L2P-GNN[14]模型作者認為預(yù)訓練范式存在預(yù)訓練和微調(diào)過程的優(yōu)化目標不一致的問題,針對該問題,論文提出了一個基于元學習思想的自監(jiān)督預(yù)訓練策略,其關(guān)鍵思想在于使得預(yù)訓練后的模型能夠針對下游目標任務(wù)被快速、有效地微調(diào).Han Xueting等人[15]提出的新范式也在解決類似的問題,該范式可以自適應(yīng)地選擇和組合圖上的各種輔助任務(wù),它能更好地適應(yīng)目標任務(wù),提高知識轉(zhuǎn)移的有效性.它通過測量輔助任務(wù)(預(yù)訓練任務(wù))和目標任務(wù)梯度之間的余弦相似度來量化輔助任務(wù)和目標任務(wù)之間的一致性,并設(shè)計了一個自適應(yīng)輔助損失加權(quán)模型.
本文剩余章節(jié)安排如下,第2節(jié)介紹圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練任務(wù),對節(jié)點級預(yù)訓練任務(wù)、圖級預(yù)訓練任務(wù)以及混合預(yù)訓練任務(wù)分別闡述;第3節(jié)對GNN預(yù)訓練模型進行分析,主要包括對比學習模型、生成學習模型以及其它模型;第4節(jié)根據(jù)預(yù)訓練任務(wù)、GNN編碼、模型類別、損失函數(shù)等依據(jù)對GNN預(yù)訓練模型進行整體分類;第5節(jié)概括GNN預(yù)訓練模型的主要應(yīng)用,包括在推薦系統(tǒng)、生物醫(yī)藥、化學等領(lǐng)域的應(yīng)用;第6節(jié)進行了總結(jié)和展望.
預(yù)訓練任務(wù)對圖結(jié)構(gòu)數(shù)據(jù)的普遍表征學習至關(guān)重要,通常這些預(yù)訓練任務(wù)應(yīng)該具有挑戰(zhàn)性,并有大量的訓練數(shù)據(jù).預(yù)訓練任務(wù)的學習方法通常有:監(jiān)督學習、無監(jiān)督學習和自監(jiān)督學習.監(jiān)督學習(Supervised learning,SL)是指利用一組已知類別的樣本調(diào)整分類器的參數(shù),使其達到所要求性能的過程;無監(jiān)督學習(Unsupervised learning,UL)是指從未標記的數(shù)據(jù)中尋找一些內(nèi)在的知識,如簇、密度、潛在表示等;監(jiān)督學習(Self-Supervised learning,SSL)是監(jiān)督學習和非監(jiān)督學習的混合體,SSL的學習模式與監(jiān)督學習類似,但訓練數(shù)據(jù)的標簽是自動生成的[16,17].有監(jiān)督和無監(jiān)督方法均可對模型進行預(yù)訓練,多數(shù)預(yù)訓練都需要大量的數(shù)據(jù)集,但在大量數(shù)據(jù)集做監(jiān)督標簽通常是耗時耗力的,考慮到實際情況標注數(shù)據(jù)少,而圖本身有豐富的結(jié)構(gòu)和屬性信息可以提供監(jiān)督信息,所以目前多數(shù)的圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練模型都采用自監(jiān)督的學習方式.本節(jié)對GNN預(yù)訓練的任務(wù)進行分類闡述,其主要分為3大類:節(jié)點級預(yù)訓練任務(wù)、圖級預(yù)訓練任務(wù)、混合的預(yù)訓練任務(wù).
節(jié)點級的預(yù)訓練任務(wù)主要包括上下文預(yù)測、節(jié)點或邊的屬性掩碼、鏈接預(yù)測等.
2.1.1 上下文預(yù)測(Context Prediction)
上下文預(yù)測是根據(jù)節(jié)點的鄰居來預(yù)測某個節(jié)點,可以是在分子圖中隨機的掩蓋一些原子(鍵保持不變),預(yù)訓練的目的是恢復(fù)原來的原子,其思想與word2vec[18]類似.例如Hu Weihua等人[1]提出的預(yù)訓練任務(wù),對于一個中心節(jié)點(Center Node,圖 1(a)左側(cè)中心節(jié)點),定義其周圍K跳節(jié)點構(gòu)成的子圖為其鄰居,定義其r1跳至r2跳之間(可以看成一個環(huán))的節(jié)點構(gòu)成的子圖為上下文圖,其中r1 2.1.2 屬性掩碼(Attribute Masking) 屬性掩碼即預(yù)測圖中節(jié)點/邊的屬性,通過學習分布在圖結(jié)構(gòu)上的節(jié)點/邊屬性的規(guī)律來獲取領(lǐng)域知識,遮掩節(jié)點和邊的屬性,預(yù)訓練任務(wù)就是基于鄰域結(jié)構(gòu)來預(yù)測這些屬性.這類似于在掩碼語言模型中使用掩碼(Mask)標記的技巧[19],例如圖1(b)中,根據(jù)鄰居節(jié)點預(yù)測某個節(jié)點的原子序號,通過用特殊的掩碼指標來替換輸入節(jié)點/邊的屬性,如分子圖中的原子類型,然后用圖神經(jīng)網(wǎng)絡(luò)獲得相應(yīng)的節(jié)點/邊嵌入,在嵌入的基礎(chǔ)上來預(yù)測掩碼節(jié)點/邊的屬性.節(jié)點和邊屬性掩碼方法對于生物化學領(lǐng)域?qū)傩载S富的圖尤其有益,在分子圖中,節(jié)點屬性對應(yīng)于原子類型,通過捕獲它們在圖上的分布,GNN可以了解簡單的化學規(guī)律,例如化合價.以及潛在的更復(fù)雜的化學現(xiàn)象,例如功能團的電子或空間性質(zhì).同樣在蛋白質(zhì)相互作用(PPI)圖中,邊屬性對應(yīng)著一對蛋白質(zhì)之間的不同類型的相互作用,通過捕獲這些屬性在PPI圖中的分布情況,GNN可以了解不同的交互是如何相互關(guān)聯(lián)的.屬性掩碼對模型通過學習圖結(jié)構(gòu)上節(jié)點/邊的屬性的規(guī)律,進而獲取內(nèi)在領(lǐng)域知識的作用很明顯,屬性恢復(fù)也是圖重構(gòu)的重要組成部分. 圖1 上下文節(jié)點預(yù)測和屬性掩碼[1] 2.1.3 鏈接生成(Edge Generation) 鏈接生成預(yù)訓練任務(wù)是指恢復(fù)或生成本來圖中存在的鏈接,把節(jié)點之間的鏈接(邊)通過隨機丟棄或者加入噪聲等手段把鏈接刪除,然后通過預(yù)訓練將其恢復(fù).例如Ziniu Hu等人[11]提出了去噪鏈路重構(gòu)自監(jiān)督預(yù)訓練任務(wù),在輸入圖G中加入噪聲,然后通過隨機去除一部分現(xiàn)有邊,得到其噪聲版本G*,GNN模型以帶噪聲的圖G*為輸入,學習將帶噪聲的圖表示為F,然后將學習到的表示傳遞給神經(jīng)張量網(wǎng)絡(luò)成對解碼器Drec,它可以預(yù)測兩個節(jié)點u和v是否連接.通過這種方法,預(yù)訓練的GNN能夠?qū)W習到輸入數(shù)據(jù)的魯棒表示,這對于不完整或有噪聲的圖尤其有用. 2.1.4 其它節(jié)點層級的預(yù)訓練任務(wù) 把嵌入(Embedding)恢復(fù)作為預(yù)訓練任務(wù)[20],即預(yù)訓練GNN以充分交互的方式模擬用戶/物品的冷啟動場景,并將嵌入重構(gòu)作為預(yù)訓練任務(wù),直接提高嵌入質(zhì)量,易于適應(yīng)新的冷啟動用戶/物品.以及其它節(jié)點層級的預(yù)訓練任務(wù),例如以局部獎勵最大化為預(yù)訓練任務(wù)[21]、節(jié)點與上下文互信息[22]等. 子圖是比節(jié)點更高級的視圖,圖級別預(yù)訓練任務(wù)可以捕獲全局的圖特征.子圖的獲取可以是隨機采樣得到,也可以是類模體(motif)子圖的提取.進行子圖級對比學習的關(guān)鍵挑戰(zhàn)是抽取語義上有意義的信息性子圖,進而使模型能更好的捕獲全局圖的特征. 2.2.1 子圖實例區(qū)分 子圖實例區(qū)分作為預(yù)訓練任務(wù),其中子圖通常是以概率隨機丟邊或者是隨機游走獲得該節(jié)點K階鄰居組成的,模型的預(yù)訓練任務(wù)是識別它們是不是同一個圖或者是否由一個中心節(jié)點隨機游走生成的子圖.子圖也可以是一個分子圖按一定的概率范圍分成兩個半圖,預(yù)訓練任務(wù)是識別兩個半圖是否來自同一個源圖[23].GCC模型[2]提出使用子圖實例區(qū)分作為預(yù)訓練任務(wù),在沒有屬性也沒有標簽的數(shù)據(jù)集上做預(yù)訓練.具體來說由兩部組成,首先是在數(shù)據(jù)集中設(shè)計子圖實例,然后就是定義相似的子圖.子圖實例是通過將單個頂點擴展到其局部結(jié)構(gòu)得到,對于某個頂點v,它的一個實例定義為其r階的自我中心網(wǎng)絡(luò)(r-ego network).設(shè)G=(V,E)是一個圖,其中V表示頂點集合,E?V×V表示邊集合域,對于頂點v,其r階鄰居定義為Sv={u∶d(u,v)<=r},其中d(u,v)是圖G中u和v之間的最短路徑距離,頂點v的r階自我中心網(wǎng)絡(luò)記為Gv,是由Sv導(dǎo)出的子圖,圖2顯示了2階自我中心網(wǎng)絡(luò)的兩個示例.接下來簡單介紹一下相似實例的定義,GCC模型中,將同一個頂點的r-ego網(wǎng)絡(luò)的兩個隨機數(shù)據(jù)擴展作為一個相似的實例對,并將數(shù)據(jù)擴展定義為圖采樣[24].圖采樣是一種從原始圖中提取具有代表性的子圖樣本的方法,該模型的圖采樣遵循3個步驟,即通過隨機游走重啟(random walks with restart,RWR)[25]、子圖歸納(subgraph induction)和匿名化(anonymization)[26],按上述步驟重復(fù)兩次來創(chuàng)建兩個數(shù)據(jù)增量.它們可以形成一個類似的實例對(xq,xk+),當兩個子圖是從不同的中心節(jié)點網(wǎng)絡(luò)中擴充而來,則把它們當作兩個子圖不相似的實例對(xq,xk),也就是負樣本.子圖實例的區(qū)分作為預(yù)訓練任務(wù),可以捕獲圖之間內(nèi)在的結(jié)構(gòu)模式. 圖2 子圖實例區(qū)分示例[2] 2.2.2 模體(motif) 模體是抽取語義上有意義的信息子圖,是經(jīng)常出現(xiàn)的子圖模式,如分子的功能團,具有很強的表達能力.為了研究有意義的子圖,圖挖掘界的學者提出了通過圖模體來揭示圖的全局屬性,圖模體被定義為圖中頻繁出現(xiàn)的重要子圖模式[27].把學習圖模體作為預(yù)訓練任務(wù),可以學習捕獲圖的全局結(jié)構(gòu)和語義屬性.MICRO-Graph模型[28]的預(yù)訓練任務(wù)就是學習圖的模體.該模型利用GNN從大型圖數(shù)據(jù)集中提取模體,然后利用學過的模體對信息子圖進行采樣,將模體學習模塊和對比學習模塊相互強化,從而訓練出表達能力更強的GNN編碼器,進而提取出更多有意義的子圖.圖3所示展示模體提取的核心思想,通過GNN編碼器對采樣的類模體子圖進行編碼,并得到子圖嵌入,然后通過EM算法[29]最大化圖似然來學習它們.通過模體來指導(dǎo)生成類模體子圖,進而解決信息子圖生成的挑戰(zhàn).由于模體代表了圖主要結(jié)構(gòu)屬性,模體類子圖比圖節(jié)點和隨機采樣得到的子圖能提供了更多的信息,從而增強了對比學習來捕獲全局圖特征的能力. 圖3 MICRO-Graph模型模體提取整體思想[28] 2.2.3 圖重構(gòu) 圖重構(gòu)(恢復(fù)或者生成)作為模型的預(yù)訓練任務(wù),可以通過設(shè)計一個屬性圖生成任務(wù)來建模節(jié)點屬性和圖結(jié)構(gòu),可以將圖生成目標分解為兩個部分:屬性生成和邊生成[13],它們的聯(lián)合優(yōu)化等價于最大化整個屬性圖生成的概率.在優(yōu)化過程中預(yù)訓練模型可以捕獲節(jié)點屬性和圖結(jié)構(gòu)之間的內(nèi)在依賴關(guān)系. 2.2.4 其它圖級預(yù)訓練任務(wù) 其它圖級預(yù)訓練任務(wù)可以是把預(yù)測圖特定領(lǐng)域的屬性作為預(yù)訓練任務(wù),將特定領(lǐng)域的知識注入到預(yù)訓練的嵌入中,可以是圖級多任務(wù)監(jiān)督預(yù)訓練,以聯(lián)合預(yù)測不同的獨立圖的監(jiān)督標簽[12].像分子性質(zhì)預(yù)測中,可以用預(yù)訓練GNN來預(yù)測已經(jīng)實驗測量到的分子的所有性質(zhì);像蛋白質(zhì)功能預(yù)測中,目標可以是預(yù)測蛋白質(zhì)是否具有給定的功能. 2.3.1 遷移成本 自監(jiān)督預(yù)訓練任務(wù)與下游任務(wù)在優(yōu)化目標和訓練數(shù)據(jù)上存在內(nèi)在的差距,傳統(tǒng)的預(yù)訓練方法可能對知識遷移不夠有效,因為它們不能很好的適應(yīng)下游任務(wù).為了解決這一問題,縮小預(yù)訓練任務(wù)與下游任務(wù)內(nèi)在的差距,Han Xueting等人[15]提出了一種新的遷移學習范式,該范式可以有效地將自監(jiān)督任務(wù)作為輔助任務(wù)(預(yù)訓練任務(wù))來幫助目標任務(wù)訓練.在微調(diào)階段,該方法可以將不同的輔助任務(wù)與目標任務(wù)進行自適應(yīng)的選擇和組合,即設(shè)計一個自適應(yīng)輔助損失加權(quán)模型,通過量化輔助任務(wù)與目標任務(wù)之間的一致性來學習輔助任務(wù)的權(quán)重.此外該模型還通過元學習來指導(dǎo)權(quán)重,可以應(yīng)用各種遷移學習的方法,在預(yù)訓練和微調(diào)中有良好的表現(xiàn). 2.3.2 課程式預(yù)訓練(Curriculum Learning) 課程學習[30]作為一種學習范式,與人類學習過程類似,從簡單的模式開始,逐漸增加到更復(fù)雜的模式.課程式預(yù)訓練[31],即從局部(如節(jié)點級)到全局(如子圖級)上下文提取和學習有用的信息,在子圖中逐步學習局部和全局知識,即從簡單的任務(wù)或?qū)嵗_始,逐步向更復(fù)雜的任務(wù)或?qū)嵗D(zhuǎn)變.該模型設(shè)計了難度不斷增加的初級和高級課程(即預(yù)訓練任務(wù)),初級課程重在從異構(gòu)子圖中獲取局部上下文信息(如節(jié)點、邊和路徑),它通過3個任務(wù)即掩碼節(jié)點預(yù)測:該任務(wù)是根據(jù)異構(gòu)子圖中的周圍鄰居環(huán)境來推斷屏蔽的節(jié)點;掩碼邊預(yù)測:掩碼邊預(yù)測任務(wù)是根據(jù)周圍鄰居環(huán)境恢復(fù)兩個相鄰節(jié)點掩碼的邊;元路徑類型預(yù)測:用戶-物品交互子圖由多條路徑組成,路徑級語義編碼顯得極為重要,以解釋特定用戶-物品交互發(fā)生的潛在規(guī)律.前兩個任務(wù)側(cè)重于增強節(jié)點級表示,而元路徑類型預(yù)測任務(wù)是為用戶-項目交互捕獲路徑級語義.高級課程則是為了在子圖層面捕獲與全局的相關(guān)的特征,具體通過子圖對比學習任務(wù)來訓練,其核心思想是增加一些特定于交互的子圖,為用戶-物品交互建模. 2.3.3 其它混合預(yù)訓練任務(wù) 其它混合預(yù)訓練任務(wù)像節(jié)點和子圖之間互信息最大化[32],依賴于節(jié)點表征和圖表征之間互信息最大化,通過對比學習局部表征和全局表征的互信息最大化來進行圖學習. 本節(jié)對主要的圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練模型進行分析,主要分為基于對比學習的模型、基于生成學習的模型和其它類型的模型(基于圖固有屬性以及混合利用多種學習方式). 對比學習主要利用了樣本間的約束信息構(gòu)造輔助任務(wù),通過構(gòu)建正樣本和負樣本,然后度量正負樣本的距離進行自監(jiān)督學習,對比學習的關(guān)鍵就在于如何合理定義正負樣本,也是難點所在. GCC模型[2]是一個自監(jiān)督的對比學習預(yù)訓練框架,該模型是利用圖的結(jié)構(gòu)信息對圖數(shù)據(jù)進行預(yù)訓練,不用依賴節(jié)點和邊的信息,可以避免復(fù)雜的特征工程,更具有普適性.而GCC的缺點便是子圖數(shù)據(jù)生成部分耗時過多,主要是隨機游走采樣獲取子圖耗時.GCC的基本假設(shè)是:如果圖中兩個不同節(jié)點具有相似的結(jié)構(gòu)信息,則兩個節(jié)點表示也是相似的.該模型的關(guān)鍵問題:1)如何定義圖中的子圖實例,即首先定義一個r階的自我中心網(wǎng)絡(luò)(r-ego network),一個限定跳數(shù)為r的子網(wǎng)絡(luò),對于一個節(jié)點v,通過隨機游走的方式獲取節(jié)點v一個限定跳數(shù)為r的子網(wǎng)絡(luò),便得到了一個子圖實例;2)如何定義子圖實例之間的相似度,即定義以節(jié)點v為中心出發(fā)的兩個隨機游走得到的r-ego network作為兩個相似的子圖實例,這便得到了正樣本,而負樣本是選擇一個其他不同于v的節(jié)點,進行隨機游走,以此得到負樣本.論文中給出了兩種生成負樣例的方式:分別是E2E(負樣例從同一個批次中抽取)和MoCo[33](保存歷史子圖來獲取負樣本,不用每次重新隨機游走).該模型使用圖同構(gòu)網(wǎng)絡(luò)(Graph Isomorphism Network,GIN)[34]進行子圖實例編碼表征,它的訓練損失函數(shù)定義為InfoNCE Loss[35],公式如下: (4) q=fq(xq),k=fk(xk) (5) 其中τ是超參數(shù),fq和fk是兩個圖神經(jīng)網(wǎng)絡(luò),用于編碼子圖實例xq和xk成表征向量,從公式可以看出分子是xq和正樣本的相似度,分母是xq和負樣本的相似度,因此優(yōu)化損失函數(shù)時,隨著損失函數(shù)越小分子趨向越大分母趨向越小,就是在訓練模型區(qū)分開正樣本和負樣本的能力. GraphCL[36]是一個基于對比學習的自監(jiān)督預(yù)訓練模型,通過添加隨機擾動可以得到一個節(jié)點的兩個L階鄰居子圖,通過最大化兩個子圖間的相似度來進行自監(jiān)督學習.與GCC模型核心思想類似,不同點主要在于數(shù)據(jù)集是屬性圖還是無屬性圖.DGI模型[32]利用節(jié)點和子圖之間互信息最大化做訓練,它依賴于節(jié)點表示和圖表示之間的互信息,通過最大化節(jié)點表示和其子圖之間的互信息,最小化負樣本和該子圖之間的互信息進行對比學習.由于不同類型的對比可以提供不同視角,因此可以將多個基于對比學習的任務(wù)整合在一起.GraphLoG模型[37]包含3個對比目標:子圖與子圖、圖與圖、圖與上下文,3種類型對比的互信息的估計量目標函數(shù)用InfoNCE[35].對比學習的關(guān)鍵就在于如何合理定義正負樣本,現(xiàn)有的對比學習中正負樣本多數(shù)采用隨機丟棄節(jié)點或者鏈接刪除等子圖生成方法,往往不能很好地適應(yīng)輸入數(shù)據(jù)或保持原始圖的語義結(jié)構(gòu).為了解決這一問題,AutoGCL模型[38]提出了一種新的自動圖對比學習框架,它使用了一組可學習的子圖生成器,這些生成器有一個自動增強的策略,其中每個子圖生成器都學習了一個受輸入條件約束的圖概率分布.該模型生成每個對比樣本時保留了原始圖最具代表性的圖結(jié)構(gòu),在遷移學習方面的大量實驗證明了AutoGCL框架在圖對比學習方面的優(yōu)越性.結(jié)果進一步證實,可學習子圖生成器可以提供更緊湊、語義更有意義的對比樣本. (6) 生成式學習以自編碼器為代表,在自編碼器中對數(shù)據(jù)樣本編碼成特征再解碼重構(gòu),以此來學習樣本的特征表達.通過對節(jié)點、邊和結(jié)構(gòu)3個不同層次的關(guān)注,可以產(chǎn)生不同的生成方法,可以是節(jié)點屬性生成、圖補全[39]、邊生成和圖重構(gòu)等. GPT-GNN模型[3]是自監(jiān)督生成式預(yù)訓練框架,通過預(yù)訓練捕捉圖固有的結(jié)構(gòu)和語義等內(nèi)在的屬性信息.它的編碼GNN為異質(zhì)圖轉(zhuǎn)換架構(gòu)(Heterogeneous Graph Transformer,HGT)[40].該模型訓練通過兩個生成任務(wù)—屬性生成和邊生成,并且構(gòu)建節(jié)點屬性和圖結(jié)構(gòu)之間的相互依賴關(guān)系,來捕捉隱含的特征信息,模型結(jié)構(gòu)圖如圖4所示.預(yù)訓練任務(wù)(屬性生成、邊生成)實現(xiàn)思路:先給圖中節(jié)點和邊編號,通過已知X(頂點)和E(邊)預(yù)測未知X和E,目的就是通過預(yù)訓練得到圖的最大似然估計.例如在第i步時,利用i步之前已經(jīng)生成的X 圖4 GPT-GNN的預(yù)訓練架構(gòu)[3] (7) 生成任務(wù)便歸納為最大化logpθ(X,E),由于生成Xi和生成Ei不是相互獨立的,圖預(yù)訓練模型最主要的便是要學習節(jié)點屬性和圖結(jié)構(gòu)之間的潛在依賴,于是該模型提出了交替預(yù)測,即用觀測到的邊預(yù)測未知的節(jié)點屬性,用觀測到的節(jié)點屬性預(yù)測未知的邊,這樣便可以學習到節(jié)點屬性和圖結(jié)構(gòu)之間的潛在依賴.同時為了提高模型的訓練效率,希望對輸入的圖只運行一次圖模型即可同時對屬性和邊進行生成,但這樣會存在信息泄露,因為邊生成時需要節(jié)點屬性作為輸入,這樣就可能把節(jié)點屬性泄露給屬性生成任務(wù),所以將每個節(jié)點的任務(wù)拆成兩個(節(jié)點屬性生成和邊生成),兩個任務(wù)分開來訓練.屬性生成任務(wù)損失函數(shù)使用的是平均絕對誤差(Mean Absolute Error,MAE),邊生成任務(wù)損失函數(shù)具體計算如下公式所示: (8) PT-DGNN[41]是一種動態(tài)圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練模型,該模型的預(yù)訓練任務(wù)與GPT-GNN模型類似,都是把屬性和邊的生成作為預(yù)訓練任務(wù),它的不同點在于它更關(guān)注的是動態(tài)網(wǎng)絡(luò)的預(yù)訓練.該模型提出了一種基于動態(tài)邊生成任務(wù)和節(jié)點屬性生成任務(wù)的動態(tài)圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練方法.在預(yù)訓練中,利用歷史邊來預(yù)測未來邊,從而捕捉網(wǎng)絡(luò)的動態(tài)特征.具體來說該模型包含3部分,即動態(tài)子圖采樣、動態(tài)屬性圖生成和微調(diào).動態(tài)子圖采樣主要包括3個步驟:1)隨機選取m個節(jié)點作為采樣初始點;2)將節(jié)點的一階鄰居放入候選池,并將其時間戳保存為權(quán)值,計算抽樣概率;3)根據(jù)抽樣概率選擇最終的m個節(jié)點.由動態(tài)子圖生成的圖,通過節(jié)點屬性和邊的掩碼來用作預(yù)訓練,動態(tài)邊生成任務(wù)的損失函數(shù)為: (9) 動態(tài)節(jié)點屬性生成任務(wù)損失函數(shù): (10) 其中MLP是多層感知機,用作編碼器. Graph-BERT模型[42]是一種依賴注意力機制,不涉及任何圖卷積和聚合操作的新型的圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練模型.它利用自監(jiān)督節(jié)點屬性重構(gòu)和圖結(jié)構(gòu)恢復(fù)任務(wù)對模型進行預(yù)訓練,然后將模型轉(zhuǎn)移到其他下游任務(wù),或者在有監(jiān)督標簽信息的情況下進行必要的微調(diào).G-BERT模型[43]結(jié)合了GNN和BERT的功能,對藥物推薦進行表征學習.具體地說,該模型采用了兩個類BERT的自監(jiān)督預(yù)訓練任務(wù)—自我預(yù)測和雙重預(yù)測.自預(yù)測以學習到的嵌入為輸入,重構(gòu)相同類型的掩碼;雙預(yù)測以一種嵌入為輸入,嘗試重構(gòu)另一種類型的嵌入. PMGT模型[44]利用兩個生成任務(wù)來捕獲多模態(tài)輔助信息以此進行更好地推薦.該模型通過以下兩個目標進行預(yù)訓練:1)圖結(jié)構(gòu)重構(gòu);2)掩碼節(jié)點特征重構(gòu).節(jié)點特征重構(gòu)任務(wù)的重點是捕獲節(jié)點表示中的多模態(tài)特征,與其它方法比如Graph-BERT相比,設(shè)計了一個沒有掩碼操作的屬性重構(gòu)任務(wù),因此Graph-BERT模型聚合不同節(jié)點特征的能力可能會受到限制.在PMGT模型中設(shè)計的掩碼節(jié)點屬性特征重構(gòu)任務(wù),其目標是通過其它非掩碼節(jié)點來重構(gòu)掩碼節(jié)點的特征.節(jié)點屬性特征重構(gòu)的損失函數(shù)為: (11) 式中Mh為掩碼節(jié)點的集合,Wri為第i個模態(tài)信息重構(gòu)的權(quán)矩陣. 邊重構(gòu)的損失函數(shù): (12) 其中σ為sigmoid激活函數(shù),Pn和Q分別表示負抽樣分布和負抽樣數(shù). 其它GNN預(yù)訓練模型可以是基于圖固有屬性的輔助方法或者混合多種預(yù)訓練任務(wù)的模型.GROVER模型[45]精心設(shè)計了節(jié)點級、邊級和圖級的自監(jiān)督預(yù)訓練任務(wù),它可以從大量未標記的分子數(shù)據(jù)中學習到豐富的分子結(jié)構(gòu)和語義信息.該模型將GNN中的消息傳遞網(wǎng)絡(luò)[6](Message Passing Networks,MPN)集成到Transformer[46]的架構(gòu)中,以提供更具表現(xiàn)力的分子編碼器.模型架構(gòu)如圖 5所示,該模型是對經(jīng)典的Transformer模型進行修改:1)輸入由序列變成圖;2)引入了動態(tài)消息傳遞網(wǎng)絡(luò)提取圖的結(jié)構(gòu)信息;3)將每一層的編碼的殘差連接變成了長距離殘差連接,也就是直接從第一層到最后一層.GROVER模型的預(yù)訓練框架分為兩個階段(雙層信息提取):1)消息傳遞過程捕獲圖的局部結(jié)構(gòu)信息,因此使用GNN模型的輸出作為Q、K、V(query、key和value),這樣將得到所涉及的局部子圖結(jié)構(gòu),從而構(gòu)成信息提取的第一級;2)Transformer的編碼可以被視為一個完全連通圖上的圖注意力網(wǎng)絡(luò)(GAT)[47]的變體,使用它對第一級信息進一步提取,得到全局節(jié)點的關(guān)聯(lián)關(guān)系,這構(gòu)成了信息提取的第2級.動態(tài)消息傳遞網(wǎng)絡(luò)計算公式如下所示: 圖5 GROVER架構(gòu)的概述[45],使用節(jié)點視圖GTransformer(左半圖)和邊視圖GTransformer(右半圖) (13) (14) 預(yù)訓練和微調(diào)之間有差異,那么如何緩解GNN預(yù)訓練和微調(diào)之間的優(yōu)化誤差,L2P-GNN模型[14]通過引入元學習縮小預(yù)訓練和微調(diào)之間的差距,使 GNN 預(yù)訓練的優(yōu)化目標為削減預(yù)訓練任務(wù)與下游任務(wù)之間遷移的成本.L2P-GNN模型整體示意圖如圖 6所示,如圖6中(a)和(b)所示為任務(wù)的構(gòu)建.為了在預(yù)訓練的過程中做類似下游任務(wù)微調(diào)的內(nèi)容,作者用的方法是提前把預(yù)訓練的數(shù)據(jù)集也劃分成訓練集和測試集,對于需要預(yù)訓練多個任務(wù),每個任務(wù)都會這樣劃分,分別對應(yīng)圖中的支撐集(support set)和測試集(query set).而為了模擬在下游訓練集上的微調(diào)過程,直接在預(yù)訓練數(shù)據(jù)集上訓練損失函數(shù)使其得到可遷移的先驗知識,然后適配其在下游任務(wù)數(shù)據(jù)集上即可.圖6中的(c)所示為雙重適應(yīng)策略,為了縮小預(yù)訓練和微調(diào)過程之間的差距,在預(yù)訓練過程中優(yōu)化模型快速適應(yīng)新任務(wù)的能力是至關(guān)重要的.為了將局部信息和全局信息都編碼到先驗信息中,作者提出雙重適應(yīng)在節(jié)點級和圖級兩個層面進行更新. 圖6 L2P-GNN模型示意圖[14] 該部分將從以下幾個角度對已有的GNN預(yù)訓練模型進行分類: 1)圖預(yù)訓練任務(wù)類型:根據(jù)圖預(yù)訓練任務(wù)類型的分類,已經(jīng)在第2節(jié)中進行了討論; 2)GNN預(yù)訓練模型分析,已經(jīng)在第3節(jié)中討論; 3)架構(gòu):圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練框架使用的圖神經(jīng)網(wǎng)絡(luò),包括圖卷積神經(jīng)網(wǎng)絡(luò)(GCN)[5]、圖注意力網(wǎng)(GAT)[47]、圖同構(gòu)網(wǎng)絡(luò)(GIN)[34]、APPNP[48]、LightGCN[49]等GNN編碼; 4)損失函數(shù):包括交叉熵(Cross Entropy)、infoNCE[35]、平均絕對誤差(Mean Absolute Error,MAE)、均方對數(shù)損失(mean logarithmic squared error,MSLE)、三元損失函數(shù)(Triplet Margin Loss)[50]、平方損失函數(shù)(square loss function)、JSD(Jensen-Shannon divergence)[51]. 5)預(yù)訓練數(shù)據(jù)類型:包括屬性圖、無屬性圖、異構(gòu)圖、超圖、動態(tài)圖等; 6)監(jiān)督學習(SL),無監(jiān)督學習(UL),自監(jiān)督學習(SSL) 進而可以得到表1和圖7. 圖7 圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練模型的分類(若圖編碼網(wǎng)絡(luò)有多個,則指訓練效果相對較好的GNN,加#代表是該論文新提出的GNN模型) 表1 圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練模型的分類 圖是普遍存在的數(shù)據(jù)結(jié)構(gòu),GNN被廣泛應(yīng)用在社交網(wǎng)絡(luò)、推薦系統(tǒng)、化學分子預(yù)測、知識圖譜等領(lǐng)域[62,63],而GNN預(yù)訓練模型還主要應(yīng)用在推薦系統(tǒng)和生物化學領(lǐng)域. 在真實場景中,通常會遇到數(shù)據(jù)稀疏的問題,如冷啟動.近年來,預(yù)訓練模型在宏觀領(lǐng)域和具體任務(wù)之間的知識轉(zhuǎn)移方面表現(xiàn)出了良好的效果,這可以潛在地緩解推薦系統(tǒng)中的數(shù)據(jù)稀疏問題[64].圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練模型在推薦系統(tǒng)上有廣泛的應(yīng)用,有預(yù)估點擊率的模型、模擬冷啟動、模擬商品和用戶的關(guān)系等模型.多數(shù)模型的預(yù)訓練任務(wù)主要會通過掩碼節(jié)點或邊,增刪節(jié)點和邊等方式來訓練.PCF-GNN模型[59]把豐富的用戶和商品之間的歷史交互特征建模成圖上的邊,然后用GNN來有效的學習特征之間的顯式關(guān)系.采用自監(jiān)督預(yù)訓練的方式來預(yù)估GNN模型學到的顯式交互特征進而推出新邊的信息.該模型在MovieLens數(shù)據(jù)集(包含1000209樣本)和工業(yè)數(shù)據(jù)集(阿里巴巴數(shù)據(jù)集)進行了大量的實驗,在各種任務(wù)中的性能和內(nèi)存效率方面都顯示出了競爭力. 冷啟動問題是推薦工作面臨的一個基本挑戰(zhàn),Hao Bowen等人[20]提出在將GNN模型應(yīng)用于推薦之前先對其進行預(yù)訓練,與推薦的目標不同,預(yù)訓練GNN以充分交互的方式模擬用戶/物品的冷啟動場景,并將嵌入重構(gòu)作為預(yù)訓練任務(wù),提高了嵌入質(zhì)量,使模型更易于適應(yīng)新的冷啟動用戶/物品.在3個公共推薦數(shù)據(jù)集上的實驗表明,該GNN預(yù)訓練模型在用戶/物品嵌入推理和推薦任務(wù)方面優(yōu)于原始GNN模型.CHEST模型[31]從異構(gòu)信息網(wǎng)絡(luò)(Heterogeneous information network,HIN)[65]中提取有用信息,組成特定于交互的異構(gòu)子圖,其中包含足夠相關(guān)的上下文信息,然后捕獲子圖中的豐富語義.此外該模型設(shè)計了一個課程式預(yù)訓練策略,提供一個從初級到高級的預(yù)訓練學習過程,進而平滑地遷移HIN中的基本語義,用于建模用戶-物品交互關(guān)系.在3個真實數(shù)據(jù)集上進行的大量實驗表明,該方法在許多競爭性基線上具有優(yōu)越性,特別是當只有有限的訓練數(shù)據(jù)可用時. GNN在生物和化學中有著廣泛的應(yīng)用,如分子性質(zhì)預(yù)測、反應(yīng)預(yù)測和藥物靶標相互作用預(yù)測、蛋白質(zhì)相互作用點檢測、以及疾病預(yù)測等[45,66,67].最近有多項圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練模型在生物化學領(lǐng)域進行,通過在該領(lǐng)域進行特定的預(yù)訓練,在下游任務(wù)中進行微調(diào),可以實現(xiàn)可觀的改善.Jure Leskovec等人[1]發(fā)表的圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練策略進行的大量的實驗就是在化學分子數(shù)據(jù)集和蛋白質(zhì)分子網(wǎng)絡(luò)中進行的,通過設(shè)置合理的預(yù)訓練策略,進而實現(xiàn)正向遷移.先在節(jié)點級進行自監(jiān)督預(yù)訓練,然后在通過有監(jiān)督的多任務(wù)圖級別的預(yù)訓練,這就確保了節(jié)點的嵌入能夠捕獲到了局部鄰居的語義信息.這些語義信息被匯聚到一起以得到有意義的圖級別的表示,而這些圖級別的表示可以被用于下游任務(wù)中的化合物的分類等任務(wù)中去.GraphCL[36]模型是一種自監(jiān)督的圖對比學習框架,該模型的預(yù)訓練任務(wù)就是在蛋白質(zhì)數(shù)據(jù)集和化學數(shù)據(jù)集上進行的.GROVER[45]預(yù)訓練模型能夠在大規(guī)模的無標簽的化學分子數(shù)據(jù)上進行自監(jiān)督訓練,通過精心設(shè)計的節(jié)點級、邊級和圖級的自監(jiān)督任務(wù),可以從大量未標記的分子數(shù)據(jù)中學習到豐富的分子結(jié)構(gòu)和語義信息,而不需要任何監(jiān)督標簽,從而解決標簽數(shù)據(jù)少和泛化性能差的兩個問題,使得模型在下游任務(wù)的泛化性能更強.該模型在1000萬個未標記分子上,用1億個參數(shù)去做預(yù)訓練,利用預(yù)訓練的GROVER進行分子性質(zhì)預(yù)測,然后進行特定任務(wù)的微調(diào),在11個具有挑戰(zhàn)性的基準上,與當時最先進的方法相比GROVER模型有了較大的改進(平均超過6%). 藥物發(fā)明是一個復(fù)雜的系統(tǒng)工程,從發(fā)明到實際應(yīng)用于市場,通??缍?0-15年.人工智能和藥物發(fā)明之間的跨學科研究,由于其卓越的速度和性能而受到越來越多的關(guān)注.近年來,在深度學習體系結(jié)構(gòu)中,GNN逐漸成為建模分子數(shù)據(jù)的有力工具.已經(jīng)提出了多種GNN結(jié)構(gòu)在藥物發(fā)現(xiàn)方面取得了較大的進展[68].由于標記數(shù)據(jù)的缺乏,專業(yè)實驗室實驗昂貴且耗時,藥物發(fā)現(xiàn)中的訓練數(shù)據(jù)集通常大小有限,GNN往往會過度擬合[45],導(dǎo)致模型缺乏泛化性.PHD模型[23]傾向于大規(guī)模未標記分子的分子表征,一種新的基于分子預(yù)訓練圖神經(jīng)網(wǎng)絡(luò)模型,通過節(jié)點級和圖級任務(wù)進行預(yù)訓練,在對1100萬個未標記分子進行預(yù)訓練后,可以捕獲有價值的內(nèi)在化學屬性,進而產(chǎn)生可解釋的表.該模型為當時的藥物發(fā)現(xiàn)領(lǐng)域最先進模型,該模型可以進行分子屬性預(yù)測、藥物之間的相互作用以及藥物和靶標之間的相互作用. 近年來,圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練成為GNN領(lǐng)域的研究熱點.本節(jié)總結(jié)了該領(lǐng)域待解決的問題,以及給出了未來研究方向.主要包括GNN架構(gòu)、預(yù)訓練任務(wù)設(shè)計、可解釋性、理論基礎(chǔ)、從預(yù)訓練到下游任務(wù)的增益以及微調(diào)策略、以及更廣泛的應(yīng)用. 在自然語言處理領(lǐng)域,Transformer已被證明是一種有效的預(yù)訓練編碼架構(gòu)[69],然而圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練領(lǐng)域目前還沒有一種有效的預(yù)訓練GNN的編碼網(wǎng)絡(luò).GNN預(yù)訓練模型多數(shù)使用的編碼網(wǎng)絡(luò)為GIN[34],GIN雖具有較強的表達能力,但其網(wǎng)絡(luò)層數(shù)并不深.深層GNN架構(gòu)的設(shè)計是具有挑戰(zhàn)性的,深層GNN、表達能力更強的GNN等研究路線,將會對GNN預(yù)訓練產(chǎn)生深刻的影響.同時根據(jù)下游任務(wù)的類型專門設(shè)計特定于任務(wù)的體系GNN結(jié)構(gòu)也是很值得研究一個方向. 預(yù)訓練任務(wù)對圖結(jié)構(gòu)數(shù)據(jù)的普遍表征學習至關(guān)重要,通常這些預(yù)訓練的任務(wù)應(yīng)該具有挑戰(zhàn)性,并有大量的訓練數(shù)據(jù).預(yù)訓練任務(wù)的設(shè)計對模型實現(xiàn)正遷移、學習到圖領(lǐng)域固有特征屬性至關(guān)重要,往往決定模型的訓練效果. 多個預(yù)訓練任務(wù)學習:現(xiàn)有的GNN預(yù)訓練方法大多通過解決一個預(yù)訓練任務(wù)來學習表示,只有少數(shù)模型混合了多種預(yù)訓練任務(wù)來探索多個GNN預(yù)訓練.如之前的基于多個子任務(wù)的通用預(yù)訓練框架[11],以及自然語言處理預(yù)訓練模型BERT混合方法所示,不同的預(yù)訓練任務(wù)可以從不同角度提供不同的監(jiān)督信號,這有助于GNN預(yù)訓練模型學習到更多有價值的信息.因此考慮多個預(yù)訓練任務(wù)的設(shè)計值得進一步研究. 復(fù)雜圖的預(yù)訓練任務(wù):目前圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練工作大多集中在屬性圖上,很少關(guān)注復(fù)雜圖的類型,如超圖、異構(gòu)圖或時空圖.對于復(fù)雜圖,主要挑戰(zhàn)是如何設(shè)計能夠捕捉這些圖獨特的數(shù)據(jù)特征的預(yù)訓練任務(wù).現(xiàn)有的一些方法將互信息最大化[32]的思想應(yīng)用到復(fù)雜圖學習中,但其利用數(shù)據(jù)豐富的信息能力有限.此外這些預(yù)訓練任務(wù)通常只利用節(jié)點級或圖級特征,限制了它們利用更豐富信息的能力,如時空圖中的時間信息和異構(gòu)圖中的關(guān)系信息.因此如何設(shè)計更合適的預(yù)訓練任務(wù)可以從以下方面考慮:1)設(shè)計針對圖結(jié)構(gòu)數(shù)據(jù)類型的預(yù)訓練任務(wù),根據(jù)圖類型自適應(yīng)地選擇最適合的任務(wù);2)從自動學習的角度,將預(yù)訓練任務(wù)的自動設(shè)計作為一個新的研究課題.復(fù)雜圖的預(yù)訓練任務(wù)未來是很值得研究探討的方向. 可解釋人工智能[70]一直是人工智能領(lǐng)域研究的一個重點,機器學習模型的可解釋性主要關(guān)注兩個方向,一個是對黑盒模型的事后解釋,另一個是提升模型本身的可解釋性.圖結(jié)構(gòu)數(shù)據(jù)提供了額外的拓撲信息,也對可解釋性提出了更高的要求.XGNN模型[71]提出了一種基于輸入優(yōu)化后的圖神經(jīng)網(wǎng)絡(luò)事后解釋方法,Lanciano Tommaso等人[72]關(guān)注提升模型的本身的可解釋性,提出了一種基于對比子圖的可解釋性腦網(wǎng)絡(luò)分類方法.盡管GNN預(yù)訓練模型的性能令人印象深刻,但其非線性架構(gòu)使決策過程高度不透明,與卷積神經(jīng)網(wǎng)絡(luò)對圖像的解釋不同,解釋GNN預(yù)訓練模型更加困難.然而大多數(shù)現(xiàn)有的GNN預(yù)訓練模型僅以在下游任務(wù)上達到更高的性能為目標,忽視了學習表示和預(yù)測結(jié)果的可解釋性.因此仍然不知道從預(yù)訓練任務(wù)中學到了什么?哪些特征模式、重要結(jié)構(gòu)或特征-結(jié)構(gòu)關(guān)系是通過預(yù)訓練學會的?有可能在輸入數(shù)據(jù)中找到可解釋的對應(yīng)嗎?這些是理解和解釋模型行為的重要問題,因此GNN預(yù)訓練的可解釋性也是一個值得繼續(xù)深入研究的方向. 盡管GNN預(yù)訓練在各種任務(wù)和數(shù)據(jù)集上取得了較大的成功,但它們大多借鑒了在計算機視覺和自然語言處理領(lǐng)域上的成功經(jīng)驗,仍然缺乏理論基礎(chǔ)來證明它的實用性.在現(xiàn)有的大多數(shù)工作中,所提出的方法主要是根據(jù)直覺設(shè)計的,并通過實驗驗證來進行評價,設(shè)計背后缺乏足夠的理論基礎(chǔ)導(dǎo)致了性能瓶頸和糟糕的可解釋性.本文認為可以從圖論等角度為GNN預(yù)訓練構(gòu)建堅實的理論基礎(chǔ),縮小理論基礎(chǔ)與實證設(shè)計之間的差距,也是一個很有前景的研究方向. 對模型進行預(yù)訓練,然后將預(yù)訓練模型用于特定的下游任務(wù),通過微調(diào)或凍結(jié)權(quán)重,是GNN預(yù)訓練模型中常見的訓練策略.但是應(yīng)該如何將預(yù)訓練的知識更好的遷移到下游的任務(wù)中去呢?盡管在計算機視覺和自然語言處理領(lǐng)域已經(jīng)提出了許多策略來解決這個問題[73],但是由于圖的固有非歐結(jié)構(gòu),這些策略很難直接應(yīng)用到圖上.在預(yù)訓練的過程中怎樣更好的學習目標任務(wù),縮小預(yù)訓練和微調(diào)過程優(yōu)化目標不一致的差異? Lu Yuanfu[14]和Han Xueting等人[15]認為預(yù)訓練范式存在一個問題,提出的模型也在解決此問題.設(shè)計特定于圖的技術(shù)來最小化預(yù)訓練和后續(xù)目標任務(wù)之間的差距是一個重要的問題,也是一個值得繼續(xù)研究的問題. 目前微調(diào)是GNN預(yù)訓練模型的知識向下游任務(wù)遷移的主要方式,但其不足之處在于參數(shù)低效,每個下游任務(wù)都有自己的微調(diào)參數(shù).目前工作還沒用研究解決此問題,在自然語言處理領(lǐng)域一種改進的解決方案是固定預(yù)訓練的原始參數(shù),并為特定任務(wù)添加可微調(diào)的適配模塊[74],因此可以使用一個共享的預(yù)訓練模型來服務(wù)多個下游任務(wù).所以怎么改進參數(shù)低效也是值得研究的方向,期望有更多有效的微調(diào)策略. 在大多數(shù)應(yīng)用領(lǐng)域中,獲取人工標簽往往是昂貴的.在這種情況下,GNN預(yù)訓練在許多應(yīng)用領(lǐng)域中有著廣闊的前景,特別是那些高度依賴專業(yè)知識來注釋數(shù)據(jù)的應(yīng)用.但目前大多數(shù) GNN預(yù)訓練模型的應(yīng)用僅局限于推薦系統(tǒng)、生物化學等少數(shù)領(lǐng)域,這說明 GNN預(yù)訓練在大多數(shù)應(yīng)用領(lǐng)域還沒有得到有效的開發(fā),因此將 GNN預(yù)訓練擴展到更廣闊的應(yīng)用領(lǐng)域?qū)⑹呛苤档美^續(xù)研究的方向. 在本文中,對圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練模型進行了全面的闡述,包括背景知識、預(yù)訓練任務(wù)、模型分析和相關(guān)應(yīng)用.本文可以幫助相關(guān)研究者快速和較全面地了解圖神經(jīng)網(wǎng)絡(luò)預(yù)訓練的基本現(xiàn)狀和研究進展,并對未來一段時間GNN預(yù)訓練相關(guān)研究給出了參考方向.2.2 圖級預(yù)訓練任務(wù)
2.3 混合預(yù)訓練任務(wù)
3 GNN預(yù)訓練模型分析
3.1 基于對比學習的GNN預(yù)訓練模型
3.2 基于生成學習的GNN預(yù)訓練模型
3.3 其它GNN預(yù)訓練模型
4 GNN預(yù)訓練模型分類
5 應(yīng)用分析
5.1 推薦系統(tǒng)
5.2 生物化學領(lǐng)域
6 總結(jié)與展望
6.1 GNN架構(gòu)
6.2 預(yù)訓練任務(wù)的設(shè)計
6.3 可解釋性
6.4 理論基礎(chǔ)
6.5 從預(yù)訓練到下游任務(wù)的增益以及微調(diào)策略
6.6 更廣泛的應(yīng)用
7 結(jié)束語