隨著深度學(xué)習(xí)的成功,基于圖神經(jīng)網(wǎng)絡(luò)(GNN)的方法[8,12,30]已經(jīng)證明了它們在分類節(jié)點(diǎn)標(biāo)簽方面的有效性。大多數(shù)GNN模型采用消息傳遞策略[7]:每個節(jié)點(diǎn)從其鄰域聚合特征,然后將具有非線性激活的分層映射函數(shù)應(yīng)用于聚合信息。這樣,GNN可以在其模型中利用圖結(jié)構(gòu)和節(jié)點(diǎn)特征信息。然而,這些神經(jīng)模型的預(yù)測缺乏透明性,人們難以理解[36],而這對于與安全和道德相關(guān)的關(guān)鍵決策應(yīng)用至關(guān)重要[5]。此外,圖拓?fù)?、?jié)點(diǎn)特征和映射矩陣的耦合導(dǎo)致復(fù)雜的預(yù)測機(jī)制,無法充分利用數(shù)據(jù)中的先驗(yàn)知識。
例如,已有研究表明,標(biāo)簽傳播法采用上述同質(zhì)性假設(shè)來表示的基于結(jié)構(gòu)的先驗(yàn),在圖卷積網(wǎng)絡(luò)(GCN)[12]中沒有充分使用[15,31]。作為證據(jù),最近的研究提出通過添加正則化[31]或操縱圖過濾器[15,25]將標(biāo)簽傳播機(jī)制納入GCN。他們的實(shí)驗(yàn)結(jié)果表明,通過強(qiáng)調(diào)這種基于結(jié)構(gòu)的先驗(yàn)知識可以改善GCN。然而,這些方法具有三個主要缺點(diǎn):
(1)其模型的主體仍然是GNN,并阻止它們進(jìn)行更可解釋的預(yù)測;
(2)它們是單一模型而不是框架,因此與其他高級GNN架構(gòu)不兼容;
(3)他們忽略了另一個重要的先驗(yàn)知識,即基于特征的先驗(yàn)知識,這意味著節(jié)點(diǎn)的標(biāo)簽完全由其自身的特征確定。為了解決這些問題,我們提出了一個有效的知識蒸餾框架,以將任意預(yù)訓(xùn)練的GNN教師模型的知識注入精心設(shè)計(jì)的學(xué)生模型中。學(xué)生模型是通過兩個簡單的預(yù)測機(jī)制構(gòu)建的,即標(biāo)簽傳播和特征轉(zhuǎn)換,它們自然分別保留了基于結(jié)構(gòu)和基于特征的先驗(yàn)知識。具體來說,我們將學(xué)生模型設(shè)計(jì)為參數(shù)化標(biāo)簽傳播和基于特征的2層感知機(jī)(MLP)的可訓(xùn)練組合。另一方面,已有研究表明,教師模型的知識在于其軟預(yù)測[9]。通過模擬教師模型預(yù)測的軟標(biāo)簽,我們的學(xué)生模型能夠進(jìn)一步利用預(yù)訓(xùn)練的GNN中的知識。
因此,學(xué)習(xí)的學(xué)生模型具有更可解釋的預(yù)測過程,并且可以利用GNN和基于結(jié)構(gòu)/特征的先驗(yàn)知識。我們的框架概述如圖1所示。
圖1:我們的知識蒸餾框架的示意圖。學(xué)生模型的兩種簡單預(yù)測機(jī)制可確保充分利用基于結(jié)構(gòu)/功能的先驗(yàn)知識。
在知識蒸餾過程中,將提取GNN教師中的知識并將其注入學(xué)生。因此,學(xué)生可以超越其相應(yīng)的老師,得到更有效和可解釋的預(yù)測。我們在五個公共基準(zhǔn)數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn),并采用了幾種流行的GNN模型,包括GCN[12]、GAT[30]、SAGE[8]、APPNP[13]、SGC[33]和最新的深層GCN模型GCNII[4]作為教師模型。實(shí)驗(yàn)結(jié)果表明,就分類精度而言,學(xué)生模型的表現(xiàn)優(yōu)于其相應(yīng)的教師模型1.4%-4.7%。
值得注意的是,我們也將框架應(yīng)用于GLP[15],它通過操縱圖過濾器來統(tǒng)一GCN和標(biāo)簽傳播。結(jié)果,我們?nèi)匀豢梢垣@得1.5%-2.3%的相對改進(jìn),這表明了我們框架的潛在兼容性。此外,我們通過探究參數(shù)化標(biāo)簽傳播與特征轉(zhuǎn)換之間的可學(xué)習(xí)平衡參數(shù)以及標(biāo)簽傳播中每個節(jié)點(diǎn)的可學(xué)習(xí)置信度得分,來研究學(xué)生模型的可解釋性。總而言之,改進(jìn)是一致,并且更重要的是,它具有更好的可解釋性。本文的貢獻(xiàn)總結(jié)如下:
我們提出了一個有效的知識蒸餾框架,以提取任意預(yù)訓(xùn)練的GNN模型的知識,并將其注入學(xué)生模型,以實(shí)現(xiàn)更有效和可解釋的預(yù)測。
我們將學(xué)生模型設(shè)計(jì)為參數(shù)化標(biāo)簽傳播和基于特征的兩層MLP的可訓(xùn)練組合。因此,學(xué)生模型有一個更可解釋的預(yù)測過程,并自然地保留了基于結(jié)構(gòu)/特征的先驗(yàn)。因此,學(xué)習(xí)的學(xué)生模型可以同時利用GNN和先驗(yàn)知識。
五個基準(zhǔn)數(shù)據(jù)集和七個GNN教師模型上的實(shí)驗(yàn)結(jié)果表明了我們的框架有效性。對學(xué)生模型中學(xué)習(xí)權(quán)重的廣泛研究也說明了我們方法的可解釋性。
2 方法
在本節(jié)中,我們將從形式化半監(jiān)督節(jié)點(diǎn)分類問題開始,并介紹符號。然后,我們將展示我們的知識蒸餾框架,以提取GNN的知識。然后,我們將提出學(xué)生模型的體系結(jié)構(gòu),該模型是參數(shù)化標(biāo)簽傳播和基于特征的兩層MLP的可訓(xùn)練組合。最后,我們將討論學(xué)生模型的可解釋性和框架的計(jì)算復(fù)雜性。
2.1 半監(jiān)督節(jié)點(diǎn)分類
我們首先概述節(jié)點(diǎn)分類問題。給定一個連通圖和一個標(biāo)記點(diǎn)集,其中師節(jié)點(diǎn)集,是邊集,節(jié)點(diǎn)分類的目標(biāo)是為每個節(jié)點(diǎn)無標(biāo)記點(diǎn)集中的節(jié)點(diǎn)預(yù)測標(biāo)簽。每個節(jié)點(diǎn)擁有標(biāo)簽,其中是所有可能的標(biāo)簽集合。此外,圖數(shù)據(jù)通常擁有節(jié)點(diǎn)特征,并且可以利用特征來提升分類準(zhǔn)確率。每行矩陣的每行表示節(jié)點(diǎn)的維特征向量。
2.2 知識蒸餾框架
基于GNN的節(jié)點(diǎn)分類方法往往是一個黑盒,輸入圖結(jié)構(gòu)、標(biāo)記點(diǎn)集和節(jié)點(diǎn)特征,輸出分類器。分類器將預(yù)測無標(biāo)記點(diǎn)的標(biāo)簽為的概率,其中。對于標(biāo)記節(jié)點(diǎn),如果的標(biāo)簽為,那么,其余標(biāo)簽。簡化起見,我們使用表示所有標(biāo)簽的概率分布。在本文中,我們框架里的教師模型可以使用任意GNN,例如GCN[12]或GAT[30]。我們稱教師模型里的預(yù)訓(xùn)練分類器為。另一方面,我們使用表示學(xué)生模型,是參數(shù),表示學(xué)生模型對節(jié)點(diǎn)v的預(yù)測概率分布。在知識蒸餾[9]的框架中,訓(xùn)練學(xué)生模型使其最小化與預(yù)訓(xùn)練教師模型的軟標(biāo)簽預(yù)測,使得教師模型里的潛在知識被提取并注入學(xué)生模型中。因此,優(yōu)化目標(biāo)是對齊學(xué)生模型和與訓(xùn)練教師模型的輸出,可以形式化為:
其中度量兩個預(yù)測概率分布之間的距離。特別地,本文使用歐氏距離。(注:我們還嘗試最小化KL散度或最大化交叉熵。但是我們發(fā)現(xiàn)歐幾里得距離的效果最好,并且在數(shù)值上更穩(wěn)定。)
2.3 學(xué)生模型架構(gòu)
我們假設(shè)節(jié)點(diǎn)的標(biāo)簽預(yù)測遵循兩種簡單的機(jī)制:(1)從其相鄰節(jié)點(diǎn)傳播標(biāo)簽;(2)從其自身特征進(jìn)行轉(zhuǎn)換。因此,如圖2所示,我們將學(xué)生模型設(shè)計(jì)為這兩種機(jī)制的組合,即參數(shù)化標(biāo)簽傳播(PLP)模塊和特征轉(zhuǎn)換(FT)模塊,它們可以自然地分別保留基于結(jié)構(gòu)的先驗(yàn)知識和基于特征的先驗(yàn)知識。蒸餾后,學(xué)生將通過更易于解釋的預(yù)測機(jī)制從GNN和先驗(yàn)知識中受益。
圖2:我們建議的學(xué)生模型的架構(gòu)圖。以中心節(jié)點(diǎn)為例,學(xué)生模型從節(jié)點(diǎn)的原始特征和統(tǒng)一的標(biāo)簽分布作為軟標(biāo)簽開始,然后在每一層,將的軟標(biāo)簽預(yù)測更新為來自的鄰居的參數(shù)化標(biāo)簽傳播(PLP)和的特征變換(FT)的可訓(xùn)練組合。最終,將使學(xué)生與經(jīng)過訓(xùn)練的教師的軟標(biāo)簽預(yù)測之間的距離最小化。在本小節(jié)中,我們將首先簡要回顧傳統(tǒng)的標(biāo)簽傳播算法。然后,我們將介紹我們的PLP和FT模塊及其可訓(xùn)練的組合。
2.3.1 標(biāo)簽傳播
標(biāo)簽傳播(LP)[40]是基于圖的經(jīng)典半監(jiān)督學(xué)習(xí)模型。該模型僅遵循以下假設(shè):由邊連接(或占據(jù)相同流形)的節(jié)點(diǎn)極有可能共享相同的標(biāo)簽?;诖思僭O(shè),標(biāo)簽將從標(biāo)記的節(jié)點(diǎn)傳播到未標(biāo)記的節(jié)點(diǎn)以進(jìn)行預(yù)測。正式地,我們使用表示LP的最終預(yù)測,使用表示k輪迭代后的LP預(yù)測。在這個工作中,如果是標(biāo)記節(jié)點(diǎn),我們將對節(jié)點(diǎn)的預(yù)測初始化為一個獨(dú)熱編碼向量。否則,我們將為每個未標(biāo)記的節(jié)點(diǎn)設(shè)置均勻分布,這表明所有類的概率在開始時都是相同的。初始化可以形式化為:
其中,是節(jié)點(diǎn)在第次迭代中的預(yù)測概率分布。在第k+1次迭代時,LP將按照如下方式更新無標(biāo)記節(jié)點(diǎn)的預(yù)測:
其中,時節(jié)點(diǎn)的鄰居集合,是控制節(jié)點(diǎn)更新平滑度的超參。注意LP沒有需要訓(xùn)練的參數(shù),因此以端到端的方式不能擬合教師模型的輸出。因此,我們通過引入更多參數(shù)來提升LP的表達(dá)能力。
2.3.2 參數(shù)化標(biāo)簽傳播模塊
現(xiàn)在,我們將通過在LP中進(jìn)一步參數(shù)化邊緣權(quán)重來介紹我們的參數(shù)化標(biāo)簽傳播(PLP)模塊。如等式3所示,LP模型在傳播過程中平等對待節(jié)點(diǎn)的所有鄰居。但是,我們假設(shè)不同鄰居對一個節(jié)點(diǎn)的重要性應(yīng)該不同,這決定了節(jié)點(diǎn)之間的傳播強(qiáng)度。更具體地說,我們假設(shè)某些節(jié)點(diǎn)的標(biāo)簽預(yù)測比其他節(jié)點(diǎn)更“自信”。例如,一個節(jié)點(diǎn)的預(yù)測標(biāo)簽與其大多數(shù)鄰居相似。這樣的節(jié)點(diǎn)將更有可能將其標(biāo)簽傳播給鄰居,并使它們保持不變。形式化來說,我們將給每個節(jié)點(diǎn)v設(shè)置一個置信度分?jǐn)?shù)。在傳播過程中,所有節(jié)點(diǎn)的鄰居和自身將把他們的標(biāo)簽傳播給?;谥眯胖翟酱?,邊緣權(quán)值越大的直覺,我們?yōu)橹貙懥说仁?中的預(yù)測更新函數(shù)如下:
其中是節(jié)點(diǎn)和節(jié)點(diǎn)的邊權(quán),通過下面的函數(shù)計(jì)算:
與LP相似,按照等式2初始化,在傳播過程中,每個標(biāo)記點(diǎn)的仍然保持獨(dú)熱真實(shí)編碼向量。注意,作為可選項(xiàng),我們可以進(jìn)一步參數(shù)化置信度分?jǐn)?shù)用于歸納設(shè)置:
其中,是一個可學(xué)習(xí)參數(shù),將節(jié)點(diǎn)的特征映射為置信度分?jǐn)?shù)。
2.3.3 特征轉(zhuǎn)換模塊
注意,通過邊緣傳播標(biāo)簽的PLP模塊強(qiáng)調(diào)了基于結(jié)構(gòu)的先驗(yàn)知識。因此,我們還引入了特征變換(FT)模塊作為補(bǔ)充預(yù)測機(jī)制。FT模塊僅通過查看節(jié)點(diǎn)的原始特征來預(yù)測標(biāo)簽。形式化來說,用表示FT模塊的預(yù)測,我們使用兩層MLP后接一個softmax函數(shù)來將特征轉(zhuǎn)換為軟標(biāo)簽預(yù)測:
注:雖然單層邏輯回歸更具可解釋性,但我們發(fā)現(xiàn)兩層邏輯回歸對于提高學(xué)生的模型能力是必要的。
2.3.4 可訓(xùn)練組合
現(xiàn)在我們將結(jié)合PLP和FT模塊作為我們的完整學(xué)生模型。細(xì)節(jié)上,我們將為每個節(jié)點(diǎn)學(xué)習(xí)一個可訓(xùn)練參數(shù),來平衡PLP和FT之間的預(yù)測。換句話說,F(xiàn)T和PLP的預(yù)測將在每個傳播步驟合并。我們將合并后的完整模型命名為CPF,等式4中的每個無標(biāo)記節(jié)點(diǎn)的預(yù)測更新公式可以重新寫做:
其中邊權(quán)和初始化與PLP模塊一致。根據(jù)是否按照等式6參數(shù)化置信度分?jǐn)?shù),模型有兩個變體,分別是歸納模型CPF-ind和轉(zhuǎn)導(dǎo)模型CPF-tra。
2.4 整體算法與細(xì)節(jié)
假設(shè)我們的學(xué)生模型一共有K層,等式1中的蒸餾目標(biāo)可以進(jìn)一步寫為:
其中,是范數(shù),參數(shù)集合包括PLP和FT之間的平衡參數(shù),PLP模塊內(nèi)部的置信度參數(shù)(或歸納設(shè)置下的參數(shù)),以及FT模塊中MLP的參數(shù)。還有一個重要的超參數(shù):傳播層數(shù)。
2.5 對模型可解釋性與計(jì)算復(fù)雜性的討論
在本小節(jié)中,我們將討論學(xué)習(xí)的學(xué)生模型的可解釋性和算法的復(fù)雜性。經(jīng)過知識蒸餾后,我們的學(xué)生模型CPF會將特定節(jié)點(diǎn)的標(biāo)簽作為標(biāo)簽傳播和基于特征的MLP的預(yù)測之間的加權(quán)平均值進(jìn)行預(yù)測。平衡參數(shù)指示基于結(jié)構(gòu)的LP還是基于特征的MLP對于節(jié)點(diǎn)的預(yù)測更重要。LP機(jī)制幾乎是透明的,我們可以輕松地找出節(jié)點(diǎn)在每個迭代中受哪個鄰居影響的程度。另一方面,對基于特征的MLP的理解可以通過現(xiàn)有工作[21]或直接查看不同特征的梯度來獲得。因此,學(xué)習(xí)過的學(xué)生模型比GNN教師具有更好的解釋性。算法每次迭代(算法1的第3行到第13行)的時間復(fù)雜度和空間復(fù)雜度都是,這和數(shù)據(jù)集的規(guī)模線性相關(guān)。事實(shí)上,操作可以簡單寫成矩陣形式,對于真實(shí)數(shù)據(jù)集的訓(xùn)練過程,使用單GPU可以在幾秒內(nèi)完成。因此,我們提出的知識蒸餾框架的時間、空間效率都很高。
3 實(shí)驗(yàn)
在本節(jié)中,我們將從介紹實(shí)驗(yàn)中使用的數(shù)據(jù)集和教師模型開始。然后,我們將詳細(xì)介紹教師模型和學(xué)生變體的實(shí)驗(yàn)設(shè)置。之后,我們將給出評估半監(jiān)督節(jié)點(diǎn)分類的定量結(jié)果。我們還在不同數(shù)量的傳播層和訓(xùn)練比率下進(jìn)行實(shí)驗(yàn),以說明算法的魯棒性。最后,我們將提供定性案例研究和可視化效果,以更好地理解我們的學(xué)生模型CPF中的學(xué)習(xí)參數(shù)。
3.1 數(shù)據(jù)集
表1:數(shù)據(jù)集統(tǒng)計(jì)信息我們使用五個公共基準(zhǔn)數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),數(shù)據(jù)集的統(tǒng)計(jì)數(shù)據(jù)如表1所示。如以前的文獻(xiàn)[14,24,27]所做的那樣,我們僅考慮最大的連通分量,并將邊視為無向邊。根據(jù)先前工作[24]中的實(shí)驗(yàn)設(shè)置,我們從每個類別中隨機(jī)抽取20個節(jié)點(diǎn)作為標(biāo)記節(jié)點(diǎn),30個用于驗(yàn)證節(jié)點(diǎn),所有其他節(jié)點(diǎn)用于測試。
3.2 教師模型及其設(shè)置
為了進(jìn)行全面比較,我們在我們的知識蒸餾框架中考慮了七個GNN模型作為教師模型;對于每個數(shù)據(jù)集和教師模型,我們測試下列學(xué)生變體:
PLP: 只考慮參數(shù)化標(biāo)簽傳播機(jī)制的學(xué)生變體;
FT:只考慮特征轉(zhuǎn)換機(jī)制的學(xué)生變體;
CPF-ind:歸納設(shè)置下的完整模型;
CPF-tra:轉(zhuǎn)導(dǎo)設(shè)置下的完整模型。
3.3 分類結(jié)果分析
表2:GCN[12]和GAT[30]作為教師模型的分類準(zhǔn)確率
表3:APPNP[13]和SGAE[8]作為教師模型的分類準(zhǔn)確率
表4:SGC[33]和GCNII[4]作為教師模型的分類準(zhǔn)確率
表5:GLP[15]作為教師模型的分類準(zhǔn)確率五個數(shù)據(jù)集、七個GNN教師模型、四個學(xué)生變體模型上的實(shí)驗(yàn)結(jié)果在表格2,3,4,5中展示。
3.4 不同傳播層數(shù)的分析
在本小節(jié)中,我們將研究關(guān)鍵超參數(shù)對學(xué)生模型CPF的體系結(jié)構(gòu)(即傳播層數(shù))的影響。實(shí)際上,流行的GNN模型(例如GCN和GAT)對層數(shù)非常敏感。較大數(shù)量的層將導(dǎo)致過平滑的問題,并嚴(yán)重?fù)p害模型性能。因此,我們在Cora數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn),以進(jìn)一步分析該超參數(shù)。
圖3:Cora數(shù)據(jù)集上具有不同數(shù)量傳播層的CPF-ind和CPF-tra的分類精度。圖例表示指導(dǎo)學(xué)生的老師模式。
3.5 不同訓(xùn)練比例的分析
為了進(jìn)一步證明該框架的有效性,我們在不同的訓(xùn)練比例下進(jìn)行了額外的實(shí)驗(yàn)。具體來說,我們以Cora數(shù)據(jù)集為例,將每個類的標(biāo)記節(jié)點(diǎn)數(shù)量從5個變化到50個。實(shí)驗(yàn)結(jié)果如圖4所示。
圖4:Cora數(shù)據(jù)集上不同數(shù)量的標(biāo)記節(jié)點(diǎn)下的分類精度。子標(biāo)題指示相應(yīng)的教師模型。
3.6 可解釋性分析
現(xiàn)在,我們將分析學(xué)習(xí)的學(xué)生模型CPF的可解釋性。具體來說,我們將探究PLP和FT之間的學(xué)習(xí)平衡參數(shù)以及每個節(jié)點(diǎn)的置信度得分。我們的目標(biāo)是找出哪種節(jié)點(diǎn)具有最大或最小的和。在本小節(jié)中,我們將使用由GCN和GAT教師模型指導(dǎo)的CPF-ind學(xué)生模型在Cora數(shù)據(jù)集上進(jìn)行展示。
圖5:用于可解釋性分析的平衡參數(shù)案例研究。此處的子標(biāo)題表示該節(jié)點(diǎn)是按GCN/GAT作為教師模型,按大或小值選擇的。
圖6:用于可解釋性分析的置信度得分案例研究。此處的子標(biāo)題表示該節(jié)點(diǎn)是按GCN/GAT作為教師模型,按大或小值選擇的。
4 結(jié)論
在本文中,我們提出了一種有效的知識蒸餾框架,可以提取任意預(yù)訓(xùn)練的GNN(教師模型)的知識并將其注入精心設(shè)計(jì)的學(xué)生模型中。學(xué)生模型CPF被建立為兩個簡單預(yù)測機(jī)制的可訓(xùn)練組合:標(biāo)簽傳播和特征轉(zhuǎn)換,二者分別強(qiáng)調(diào)基于結(jié)構(gòu)的先驗(yàn)知識和基于特征的先驗(yàn)知識。蒸餾后,學(xué)習(xí)的學(xué)生可以利用先驗(yàn)知識和GNN知識,從而超越GNN老師。在五個基準(zhǔn)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,我們的框架可以通過更可解釋的預(yù)測過程來一致,顯著地改善所有七個GNN教師模型的分類精度。
在不同數(shù)量的訓(xùn)練比率和傳播層數(shù)上進(jìn)行的附加實(shí)驗(yàn)證明了我們算法的魯棒性。我們還提供了案例研究,以了解學(xué)生架構(gòu)中學(xué)習(xí)到的平衡參數(shù)和置信度得分。在未來的工作中,除了半監(jiān)督節(jié)點(diǎn)分類之外,我們還將探索將我們的框架用于其他基于圖的應(yīng)用。例如,無監(jiān)督節(jié)點(diǎn)聚類任務(wù)會很有趣,因?yàn)闃?biāo)簽傳播模式在沒有標(biāo)簽的情況下不能應(yīng)用。另一個方向是改進(jìn)我們的框架,鼓勵教師和學(xué)生模型互相學(xué)習(xí),以取得更好的成績。
原文標(biāo)題:【W(wǎng)WW2021】圖神經(jīng)網(wǎng)絡(luò)的知識提取與超越:一個有效的知識蒸餾框架
文章出處:【微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
責(zé)任編輯:haq
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4773瀏覽量
100861 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5505瀏覽量
121255
原文標(biāo)題:【W(wǎng)WW2021】圖神經(jīng)網(wǎng)絡(luò)的知識提取與超越:一個有效的知識蒸餾框架
文章出處:【微信號:zenRRan,微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論