王新生,朱小飛,黃賢英
(重慶理工大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,重慶 400054)
圖結(jié)構(gòu)數(shù)據(jù)的半監(jiān)督學(xué)習(xí)的目的是在給定網(wǎng)絡(luò)結(jié)構(gòu)、節(jié)點(diǎn)特征和標(biāo)簽節(jié)點(diǎn)子集的情況下對(duì)網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)進(jìn)行分類.在現(xiàn)實(shí)世界中,分類問(wèn)題有十分廣泛的應(yīng)用,如節(jié)點(diǎn)分類[1]、推薦系統(tǒng)[2]和文本分類[3]等.研究表明,這些應(yīng)用大多數(shù)都存在同質(zhì)現(xiàn)象[4],即假設(shè)具有連邊的節(jié)點(diǎn)往往具有相似的標(biāo)簽.在同質(zhì)假設(shè)下,許多傳統(tǒng)方法使用隨機(jī)游走方式來(lái)傳播標(biāo)簽[5,6],或者是正則化鄰居節(jié)點(diǎn)之間的標(biāo)簽差異[7,8]來(lái)傳播標(biāo)簽.
隨著深度學(xué)習(xí)的興起,知識(shí)蒸餾(Knowledge Distillation,KD)已經(jīng)證明了它在神經(jīng)網(wǎng)絡(luò)方面的有效性.然而,知識(shí)蒸餾的研究大多集中在卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNNs)[9]上,并且以常規(guī)數(shù)據(jù)作為輸入實(shí)例,能夠處理不規(guī)則數(shù)據(jù)的圖神經(jīng)網(wǎng)絡(luò)(Graph Neural Networks,GNNs)[10]卻很少受到關(guān)注.一個(gè)顯著的差異是,GNNs[10]在跨網(wǎng)絡(luò)層的特征嵌入更新中包含了拓?fù)湫畔?而大多數(shù)知識(shí)蒸餾的研究沒(méi)有考慮到這一點(diǎn),限制了它們對(duì)GNNs[10]的潛在擴(kuò)展.最近的知識(shí)蒸餾研究[11],提出通過(guò)轉(zhuǎn)移局部結(jié)構(gòu)將知識(shí)蒸餾與GNNs[10]結(jié)合建模.實(shí)驗(yàn)結(jié)果表明,這種方法能夠很好地解決上述問(wèn)題.然而,該方法有兩個(gè)主要缺點(diǎn):1)知識(shí)蒸餾框架集中在單方面的知識(shí)指導(dǎo),忽略了其他層面的知識(shí),導(dǎo)致學(xué)生模型不能充分地從教師模型汲取知識(shí)信息;2)知識(shí)蒸餾框架未能很好地利用同質(zhì)現(xiàn)象,忽略了原有數(shù)據(jù)集中的先驗(yàn)知識(shí).
針對(duì)上述的2個(gè)問(wèn)題,本文提出了一個(gè)雙通道的知識(shí)蒸餾框架,將基于拓?fù)浣Y(jié)構(gòu)和特征屬性的教師模型所學(xué)習(xí)到的知識(shí)注入到設(shè)計(jì)良好的學(xué)生模型中.教師模型分別為基于拓?fù)鋱D的教師模型和基于特征圖的教師模型,前者學(xué)習(xí)空間拓?fù)浣Y(jié)構(gòu)的知識(shí)信息,后者學(xué)習(xí)節(jié)點(diǎn)及鄰居節(jié)點(diǎn)特征屬性的知識(shí)信息,從兩個(gè)不同的知識(shí)層面給予學(xué)生模型指導(dǎo).學(xué)生模型包括參數(shù)化標(biāo)簽傳播模塊和鄰居特征聚合模塊,二者根據(jù)同質(zhì)現(xiàn)象進(jìn)行設(shè)計(jì).前者根據(jù)鄰居節(jié)點(diǎn)的標(biāo)簽表示分配不同權(quán)重,加強(qiáng)自身的標(biāo)簽表示,進(jìn)而保留了基于結(jié)構(gòu)的先驗(yàn)知識(shí);后者采用圖注意力網(wǎng)絡(luò)(Graph Attention Network,GAT)[12],根據(jù)鄰居特征表示分配不同權(quán)重,加強(qiáng)自身的特征表示,進(jìn)而保留了基于特征的先驗(yàn)知識(shí).此外,采用多層融合模式,每一層都會(huì)將兩個(gè)模塊的知識(shí)進(jìn)行融合,進(jìn)一步提升學(xué)生模型自身的學(xué)習(xí)效果.
本文的主要貢獻(xiàn)包括3個(gè)方面:
1)提出了一個(gè)雙通道的知識(shí)蒸餾框架來(lái)提取GNNs[10]模型學(xué)習(xí)到的拓?fù)浣Y(jié)構(gòu)和特征屬性方面的知識(shí)信息,并將其注入到學(xué)生模型中進(jìn)行更有效的預(yù)測(cè);
2)將學(xué)生模型設(shè)計(jì)為參數(shù)化標(biāo)簽傳播模塊和鄰居特征聚合模塊的可訓(xùn)練組合,使得學(xué)生模型保留了基于結(jié)構(gòu)和基于特征的先驗(yàn)知識(shí),同時(shí)保證了學(xué)生模型具有一定的學(xué)習(xí)能力;
3)在5個(gè)真實(shí)數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果證明了本文所提出方法的有效性,且與最優(yōu)的方法相比具有更好的分類效果.
近幾年,圖神經(jīng)網(wǎng)絡(luò)在不規(guī)則數(shù)據(jù)的各種任務(wù)上取得了巨大成功,如節(jié)點(diǎn)分類、蛋白質(zhì)屬性預(yù)測(cè)等.本文將簡(jiǎn)要介紹圖神經(jīng)網(wǎng)絡(luò)中的GAT[12].
圖結(jié)構(gòu)數(shù)據(jù)常常含有噪聲,意味著節(jié)點(diǎn)與節(jié)點(diǎn)之間的邊有時(shí)不是那么可靠,對(duì)于同一節(jié)點(diǎn)來(lái)說(shuō),鄰居節(jié)點(diǎn)的相對(duì)重要性也有差異.因此,為了解決鄰居節(jié)點(diǎn)差異性這個(gè)問(wèn)題,提出了GAT[12].主要做法是在圖算法中引入“注意力”機(jī)制.通過(guò)計(jì)算當(dāng)前節(jié)點(diǎn)與鄰居的“注意力系數(shù)”,在聚合鄰居的特征表示時(shí)進(jìn)行加權(quán),使得圖神經(jīng)網(wǎng)絡(luò)能夠更加關(guān)注重要的節(jié)點(diǎn),以減少邊噪聲帶來(lái)的影響,進(jìn)而提升模型效果.
最近的一些研究表明,通過(guò)引入傳統(tǒng)的預(yù)測(cè)機(jī)制,如標(biāo)簽傳播,GNNs[10]的性能可以得到進(jìn)一步的提高.例如,廣義標(biāo)簽傳播(Generalized Label Propagation,GLP)[13]修改了圖卷積濾波器以生成平滑特征,并對(duì)圖的相似性進(jìn)行編碼.UniMP[14]通過(guò)共享消息傳遞網(wǎng)絡(luò)進(jìn)而融合特征聚合和標(biāo)簽傳播.GCN-LPA[15]采用標(biāo)簽傳播作為正則化,以幫助圖卷積網(wǎng)絡(luò)(Graph Convolution Neural Network,GCN)[16,17]獲得更好的性能.值得注意的是,標(biāo)簽傳播機(jī)制是用簡(jiǎn)單的基于結(jié)構(gòu)的先驗(yàn)知識(shí)構(gòu)建的.以上的改進(jìn)表明,這種先驗(yàn)知識(shí)在GNNs[10]中沒(méi)有得到充分的探索.
知識(shí)蒸餾是2015年[18]首次被提出的,其目標(biāo)是將知識(shí)從典型的教師模型中提取出來(lái),將其輸入到參數(shù)量較少的學(xué)生模型,使學(xué)生模型的表現(xiàn)與教師模型相似.這樣,學(xué)生模型可以在不損失預(yù)測(cè)質(zhì)量的情況下減少時(shí)間和空間復(fù)雜性.知識(shí)蒸餾在計(jì)算機(jī)視覺(jué)領(lǐng)域得到了廣泛的應(yīng)用,例如將一個(gè)深度卷積神經(jīng)網(wǎng)絡(luò)(Convolution Neural Network,CNN)[9]壓縮成一個(gè)淺層神經(jīng)網(wǎng)絡(luò)來(lái)加速推理.
近年來(lái),隨著GNN在各種圖任務(wù)上取得了巨大成功,將知識(shí)蒸餾和GNN相結(jié)合的研究也越來(lái)越多.然而,他們的動(dòng)機(jī)和模型架構(gòu)和本文有很大的不同.Yang等人[11]在計(jì)算機(jī)視覺(jué)領(lǐng)域提出了一種利用局部結(jié)構(gòu)保持模塊,將具有較大特征映射的深層圖卷積網(wǎng)絡(luò)壓縮為參數(shù)較少的淺層GCN.Furlanello等人[19]通過(guò)可靠的數(shù)據(jù)蒸餾(Reliable Data Distillation,RDD)[20]訓(xùn)練了多個(gè)具有相同架構(gòu)的GCN學(xué)生模型,然后以類似于BAN[19]的方式將他們集成以獲得更好的性能.圖馬爾可夫神經(jīng)網(wǎng)絡(luò)(Graph Markov Neural Networks,GMNN)[21]也可以看作是一種知識(shí)蒸餾方法,其采用兩個(gè)參數(shù)大小不同的GCN相互學(xué)習(xí).
與之相比,本文提出的知識(shí)蒸餾框架簡(jiǎn)單有效且非常全面.兩種教師模型包含圖數(shù)據(jù)的全部信息,即拓?fù)浣Y(jié)構(gòu)和特征屬性,使得學(xué)生模型能夠全面汲取知識(shí)信息.此外,在訓(xùn)練過(guò)程中,不需要在教師模型和學(xué)生模型之間進(jìn)行整合或迭代提取,使得訓(xùn)練任務(wù)更加簡(jiǎn)單有效.
本章節(jié)將介紹半監(jiān)督的節(jié)點(diǎn)分類任務(wù)的輸入信息以及相關(guān)表示符號(hào).本文提出一個(gè)基于拓?fù)浣Y(jié)構(gòu)和特征屬性的雙通道知識(shí)蒸餾框架,如圖1所示.它由兩種教師模型和學(xué)生模型組成:基于拓?fù)鋱D的教師模型和基于特征圖的教師模型,學(xué)生模型由參數(shù)化標(biāo)簽傳播模塊和鄰居特征聚合模塊組成.
圖1 MPS結(jié)構(gòu)圖Fig.1 Architecture of MPS
節(jié)點(diǎn)分類任務(wù)的原始信息為一個(gè)有n個(gè)節(jié)點(diǎn)的連通圖G=(V,E,X),其中V={v1,v2,…,vn}記為n個(gè)節(jié)點(diǎn)的集合,E={eij}記為邊的集合,X={x1,x2,…,xn}∈n×d記為所有節(jié)點(diǎn)的特征集合,xi是節(jié)點(diǎn)vi的d維的特征向量.鄰接矩陣A={aij}∈n×n記為G的空間拓?fù)浣Y(jié)構(gòu),如果節(jié)點(diǎn)vi和節(jié)點(diǎn)vj之間有邊eij,那么aij>0;否則aij=0.
半監(jiān)督節(jié)點(diǎn)分類任務(wù)的節(jié)點(diǎn)集合V將被劃分為兩部分:有標(biāo)簽的節(jié)點(diǎn)集合VL?V,其中XL?X;無(wú)標(biāo)簽的節(jié)點(diǎn)集合VU=VVL,其中XU=XXL.
在知識(shí)蒸餾模型中,當(dāng)教師模型的輸入信息一定,那么該教師模型所學(xué)習(xí)到的知識(shí)就局限于輸入的信息,給予學(xué)生模型的指導(dǎo)也只停留在單方面信息.因此,本文提出雙通道模型,通過(guò)不同的輸入信息得到不同知識(shí)層面的教師模型,給予
1本文嘗試用最小化KL散度或最大化交叉熵作為替代方案,但最終發(fā)現(xiàn)歐式距離表現(xiàn)最好.
學(xué)生模型不同知識(shí)層面的指導(dǎo).
3.2.1 基于拓?fù)鋱D的教師模型
本章節(jié)將對(duì)基于拓?fù)鋱D的教師模型(Topology Teacher,Topology-Teacher)進(jìn)行分析說(shuō)明.
(1)
其中,θ*記為訓(xùn)練得到的模型參數(shù),distance(·)表示計(jì)算兩個(gè)標(biāo)簽集合之間的距離.在這項(xiàng)工作中,使用的是歐式距離1.
值得注意的是,知識(shí)蒸餾[22]中,學(xué)生模型訓(xùn)練時(shí),通過(guò)擬合預(yù)訓(xùn)練教師模型的軟標(biāo)簽來(lái)提升自身學(xué)習(xí)能力,最終超越教師模型.因此,教師模型的最終預(yù)測(cè)結(jié)果將作為訓(xùn)練學(xué)生模型的指導(dǎo)信息.
3.2.2 基于特征圖的教師模型
本節(jié)將對(duì)基于特征圖的教師模型(Feature Teacher,Feature-Teacher)進(jìn)行分析說(shuō)明.
在這個(gè)模塊,通過(guò)計(jì)算節(jié)點(diǎn)特征之間的余弦相似度,得到特征圖.即由節(jié)點(diǎn)特征的相似性來(lái)得到節(jié)點(diǎn)的高置信度鄰居.給定一對(duì)節(jié)點(diǎn)(vi,vj),它們的余弦相似度由如下公式計(jì)算得到:
(2)
根據(jù)上述計(jì)算得到的每對(duì)節(jié)點(diǎn)的余弦相似度,為每個(gè)節(jié)點(diǎn)選擇余弦相似度最大的k個(gè)節(jié)點(diǎn)作為鄰居節(jié)點(diǎn),得到新的邊集合EF和鄰接矩陣AF.最終得到特征圖,記為GF=(V,EF,X).
最終得到訓(xùn)練后的模型參數(shù)β*:
(3)
學(xué)生模型包含兩個(gè)模塊:1)參數(shù)化標(biāo)簽傳播模塊,其能保留基于結(jié)構(gòu)的先驗(yàn)知識(shí);2)鄰居特征聚合模塊,其能保留基于特征的先驗(yàn)知識(shí);最終將二者所學(xué)習(xí)到的知識(shí)進(jìn)行融合.
3.3.1 參數(shù)化標(biāo)簽傳播模塊
在前面提到過(guò)同質(zhì)現(xiàn)象,即具有連邊的節(jié)點(diǎn)往往具有相似的標(biāo)簽.針對(duì)這一現(xiàn)象,之前有許多研究工作都利用了同質(zhì)現(xiàn)象來(lái)加強(qiáng)節(jié)點(diǎn)的表示.早期的標(biāo)簽傳播[23]方法在傳播過(guò)程中平等地對(duì)待節(jié)點(diǎn)的所有鄰居,即對(duì)于所有鄰居賦予相同的權(quán)重.然而,不同的鄰居節(jié)點(diǎn)對(duì)節(jié)點(diǎn)的重要性是不同的.因此,參數(shù)化標(biāo)簽傳播對(duì)于不同鄰居節(jié)點(diǎn)得到不同的參數(shù)置信分?jǐn)?shù),根據(jù)更大的參數(shù)置信分?jǐn)?shù)賦予鄰居節(jié)點(diǎn)更大的權(quán)重[24].
(4)
(5)
其中Nv表示節(jié)點(diǎn)v的鄰居節(jié)點(diǎn)集合,wuv表示節(jié)點(diǎn)u和節(jié)點(diǎn)v通過(guò)softmax函數(shù)計(jì)算出的邊的權(quán)重:
(6)
在這里,參數(shù)置信分?jǐn)?shù)cv作為可選操作對(duì)于inductive和transductive任務(wù):
cv=zTxv
(7)
其中z∈是一個(gè)可學(xué)習(xí)的參數(shù).
3.3.2 鄰居特征聚合模塊
圖結(jié)構(gòu)數(shù)據(jù)主要包括結(jié)構(gòu)知識(shí)和特征知識(shí),在上一小節(jié)已經(jīng)通過(guò)PLP模塊學(xué)習(xí)到基于結(jié)構(gòu)的先驗(yàn)知識(shí),在這一小節(jié)將引入單層圖注意力網(wǎng)絡(luò)模塊(Single Graph Attention network,SGAT),使得學(xué)生模型進(jìn)一步學(xué)習(xí)基于特征的先驗(yàn)知識(shí).特征圖GF=(V,EF,X)是根據(jù)節(jié)點(diǎn)特征相似性得到的,并且是挑選每個(gè)節(jié)點(diǎn)最相似的k個(gè)節(jié)點(diǎn)作為其鄰居,因此可以得到,每個(gè)節(jié)點(diǎn)及其一階鄰居是按照節(jié)點(diǎn)特征預(yù)先分好的簇,每個(gè)節(jié)點(diǎn)是該簇的中心.進(jìn)一步,將特征圖GF=(V,EF,X)輸入SGAT模塊,通過(guò)每個(gè)節(jié)點(diǎn)的鄰居節(jié)點(diǎn)特征加強(qiáng)自身表示,最終得到每一個(gè)節(jié)點(diǎn)的特征表示:
(8)
(9)
eij=fFNN([Wihi‖Wjhj])
(10)
其中Wi和Wj是可學(xué)習(xí)的參數(shù)矩陣,fFNN表示單層前饋神經(jīng)網(wǎng)絡(luò)函數(shù).
值得注意的是,SGAT模塊為了減少聚合節(jié)點(diǎn)鄰居特征的噪聲,只聚合每個(gè)節(jié)點(diǎn)的一階鄰居.這樣的做法充分利用了特征圖的特點(diǎn),只聚合每個(gè)節(jié)點(diǎn)最相似的k個(gè)節(jié)點(diǎn)的特征,保證了提取的特征知識(shí)的有效性.
3.3.3 融合節(jié)點(diǎn)表示模塊
在這個(gè)模塊,通過(guò)融合PLP模塊和SGAT模塊(merge PLP and SGAT,MPS)的節(jié)點(diǎn)表示,進(jìn)一步提高節(jié)點(diǎn)特征的表征能力.具體來(lái)說(shuō),通過(guò)學(xué)習(xí)一個(gè)可訓(xùn)練的參數(shù)av∈[0,1],進(jìn)而去平衡PLP模塊和SGAT模塊的節(jié)點(diǎn)表示:
(11)
注意,針對(duì)于inductive任務(wù)將使用公式(6)得到參數(shù)化置信分?jǐn)?shù),而對(duì)于transductive任務(wù)將為每個(gè)節(jié)點(diǎn)訓(xùn)練可學(xué)習(xí)參數(shù)來(lái)作為置信分?jǐn)?shù).
之前的知識(shí)蒸餾模型,往往只針對(duì)單個(gè)教師模型進(jìn)行知識(shí)蒸餾,給予學(xué)生模型的指導(dǎo)也只停留在單方面信息.因此,本文引入雙通道模型,分別基于拓?fù)浣Y(jié)構(gòu)和特征屬性來(lái)對(duì)學(xué)生模型進(jìn)行指導(dǎo).
假設(shè)學(xué)生模型有m層,那么基于拓?fù)浣Y(jié)構(gòu)的知識(shí)蒸餾公式為:
(12)
基于特征屬性的知識(shí)蒸餾公式為:
(13)
其中‖·‖2表示計(jì)算歐式距離.
最終的損失函數(shù)為:
L=λLT+(1-λ)LF
(14)
其中,λ表示超參數(shù).
本文使用5個(gè)公共基準(zhǔn)數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),數(shù)據(jù)集的統(tǒng)計(jì)信息如表1所示.與之前工作[25-27]一樣,本文只考慮最大連通分量,并將連邊視為無(wú)向的.這是因?yàn)獒槍?duì)圖數(shù)據(jù)的研究,主要是探究圖結(jié)構(gòu)的作用,即圖中各個(gè)節(jié)點(diǎn)之間關(guān)系的相互作用,因此主要考慮圖數(shù)據(jù)的最大連通分量.其次,本文是基于同質(zhì)圖的研究,Cora數(shù)據(jù)集、Citerseer數(shù)據(jù)集和Pubmed數(shù)據(jù)集的圖的連邊表示論文之間的相互引用關(guān)系,為了統(tǒng)一邊的類別,本文將“引用”和“被引用”視為同一種關(guān)系,即論文間存在引用關(guān)系;A-computer數(shù)據(jù)集和A-Photo數(shù)據(jù)集表示商品共同購(gòu)買的關(guān)系,本身就是一個(gè)無(wú)向圖,因此連邊是無(wú)向的.數(shù)據(jù)集的詳細(xì)信息如下:
表1 數(shù)據(jù)集統(tǒng)計(jì)Table 1 Statistics of the datasets
1)Cora數(shù)據(jù)集[28].Cora數(shù)據(jù)集是一個(gè)由機(jī)器學(xué)習(xí)論文組成的基準(zhǔn)引文數(shù)據(jù)集,其中每個(gè)節(jié)點(diǎn)代表一個(gè)文檔,具有稀疏的詞袋特征向量.連邊表示文檔之間的引用,標(biāo)簽表示每篇論文的研究領(lǐng)域.
2)Citeseer數(shù)據(jù)集[28].Citeseer數(shù)據(jù)集是另一個(gè)計(jì)算機(jī)科學(xué)出版物引文基準(zhǔn)數(shù)據(jù)集,與Cora數(shù)據(jù)集有類似的屬性.
3)Pubmed數(shù)據(jù)集[29].Pubmed數(shù)據(jù)集也是一個(gè)引文數(shù)據(jù)集,包含了Pubmed數(shù)據(jù)庫(kù)中與糖尿病相關(guān)的文章.節(jié)點(diǎn)特征為TF/IDF加權(quán)詞頻,標(biāo)簽表示糖尿病類型.
4)A-Computers數(shù)據(jù)集和A-Photo數(shù)據(jù)集[26].A-Computers數(shù)據(jù)集和A-Photo數(shù)據(jù)集從Amazon的共購(gòu)圖中提取,其中節(jié)點(diǎn)表示產(chǎn)品,邊表示兩種產(chǎn)品是否經(jīng)常同時(shí)被購(gòu)買,特征表示用詞袋模型編碼的產(chǎn)品評(píng)論,標(biāo)簽是預(yù)定義的產(chǎn)品類別.
上述的5個(gè)數(shù)據(jù)集都是來(lái)自現(xiàn)實(shí)世界的實(shí)際應(yīng)用,說(shuō)明在5個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)具有實(shí)際意義.其次,這5個(gè)數(shù)據(jù)集充分考慮了圖的大小、稀疏性、節(jié)點(diǎn)特征維度的差異.如Pubmed數(shù)據(jù)集的節(jié)點(diǎn)數(shù)是Cora數(shù)據(jù)集的接近8倍,A-computers數(shù)據(jù)集連邊數(shù)與節(jié)點(diǎn)數(shù)的比值是Citeseer數(shù)據(jù)集的接近11倍,Cora數(shù)據(jù)集特征維度是Pubmed數(shù)據(jù)集的接近287倍.因此,在這5個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)可以驗(yàn)證模型的有效性以及普適性.
本文將與基準(zhǔn)方法進(jìn)行比較,基準(zhǔn)方法的簡(jiǎn)要描述如下.
1)Topology-Teacher,非知識(shí)蒸餾方法,只包含教師模型方法,即基于拓?fù)鋱D的教師模型.
2)Feature-Teacher,非知識(shí)蒸餾方法,只包含教師模型方法,即基于特征圖的教師模型.
3)CPF-ind/tra[30],知識(shí)蒸餾方法,其中CPF-ind針對(duì)于inductive任務(wù),CPF-tra針對(duì)于transductive任務(wù).
教師模型:使用GAT模型作為知識(shí)蒸餾框架中的教師模型.
學(xué)生模型:PLP模塊,具有參數(shù)化標(biāo)簽傳播機(jī)制;SGAT模塊,聚合一階鄰居的圖神經(jīng)網(wǎng)絡(luò)模型;MPS-ind,用于inductive任務(wù)的MPS模型;MPS-tra,用于transductive任務(wù)的MPS模型.
其他設(shè)置:隨機(jī)初始化模型參數(shù),采用早停法,早停值設(shè)置為50.如果驗(yàn)證集的分類準(zhǔn)確率在50次迭代內(nèi)沒(méi)有提高,將停止訓(xùn)練.對(duì)于超參數(shù)優(yōu)化,采用啟發(fā)式搜索,其中學(xué)生模型網(wǎng)絡(luò)層數(shù)m∈{1,3,5,7,9,11},特征圖的k∈{1,2,5,10,20,30,50,100},dropout比率dr∈{0.2,0.5,0.8},Adam優(yōu)化器的學(xué)習(xí)率lr∈{0.001,0005,0.01},權(quán)重衰減wd∈{0.005,0.001,0.01}.
4.4.1 模型對(duì)比
表2和表3展示了本文提出的方法在5個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果.其中Topology-Teacher和Feature-Teacher是非知識(shí)蒸餾方法,僅包含教師模型方法,分別為基于拓?fù)浣Y(jié)構(gòu)的教師模型和基于特征屬性的教師模型; CPF-ind/tra[30]是最優(yōu)的基準(zhǔn)方法,是基于教師模型和學(xué)生模型的知識(shí)蒸餾框架;MPS-ind/tra是本文提出的一種新型的雙通道知識(shí)蒸餾框架.通過(guò)觀察分析有以下結(jié)果:
1)知識(shí)蒸餾方法與非知識(shí)蒸餾方法相比具有更好的分類效果.CPF-ind/tra[30]和MPS-ind/tra均為知識(shí)蒸餾方法,Topology-Teacher和Feature-Teacher為非知識(shí)蒸餾方法,從表2和表3可以看出,知識(shí)蒸餾方法在5個(gè)數(shù)據(jù)集上的分類效果均優(yōu)于非知識(shí)蒸餾方法.例如,在Pubmed數(shù)據(jù)集上,相比Topology-Teacher和Feature-Teacher非知識(shí)蒸餾方法,CPF-ind[30]知識(shí)蒸餾方法的分類效果分別提升了4.01%,1.21%;CPF-tra[30]知識(shí)蒸餾方法的分類效果分別提升了4.39%,1.58%;MPS-ind知識(shí)蒸餾方法的分類效果分別提升了6.27%,3.41%;MPS-tra知識(shí)蒸餾方法的分類效果分別提升了3.41%,3.08%.
表2 節(jié)點(diǎn)分類任務(wù)分類準(zhǔn)確率Table 2 Test accuracy on node classification
表3 節(jié)點(diǎn)分類任務(wù)分類準(zhǔn)確率Table 3 Test accuracy on node classification
2)本文提出的MPS-ind/tra知識(shí)蒸餾方法相比最優(yōu)的基準(zhǔn)知識(shí)蒸餾方法CPF-ind[30],在大部分?jǐn)?shù)據(jù)集上具有更好的分類效果.其中在inductive任務(wù)上,相比最優(yōu)基準(zhǔn)方法CPF-ind,本文提出的方法MPS-ind在4個(gè)數(shù)據(jù)集Citeseer, Pubmed,A-Computers 和 A-Photo上取得更好的性能:在Citeseer數(shù)據(jù)集上分類準(zhǔn)確率提升了1.45%,在Pubmed數(shù)據(jù)集上提升了2.17%,在A-Computers數(shù)據(jù)集上提升了3.31%,在A-Photo數(shù)據(jù)集上提升了0.80%.其中在transductive任務(wù)上,相比最優(yōu)基準(zhǔn)方法CPF-tra,本文提出的方法MPS-tra取得了與inductive任務(wù)上相似的表現(xiàn),即在4個(gè)數(shù)據(jù)集Citeseer,Pubmed,A-Computers and A-Photo上取得了比CPF-tra更好的性能:在Citeseer數(shù)據(jù)集上分類準(zhǔn)確率提升了0.72%,在Pubmed數(shù)據(jù)集上提升了1.48%,在A-Computers數(shù)據(jù)集上提升了3.55%,在A-Photo數(shù)據(jù)集上提升了1.73%.在inductive任務(wù)和transductive任務(wù)上,本文提出的方法在Cora數(shù)據(jù)集上的性能略低于最優(yōu)基準(zhǔn)方法,這是因?yàn)镃ora的特征數(shù)在十萬(wàn)量級(jí),遠(yuǎn)遠(yuǎn)大于其他數(shù)據(jù)集,在生成特征圖時(shí),計(jì)算節(jié)點(diǎn)特征之間的余弦相似度會(huì)引入噪聲,因此降低了實(shí)驗(yàn)效果.
4.4.2 消融實(shí)驗(yàn)
為了進(jìn)一步分析模型MPS-ind/tra中各個(gè)模塊的作用,通過(guò)對(duì)不同教師模型和學(xué)生模型進(jìn)行組合的實(shí)驗(yàn),進(jìn)而驗(yàn)證本文提出的方法的有效性.因此,本文設(shè)置了以下消融實(shí)驗(yàn):
1)MPS-ind/tra(Topology).該方法是基于拓?fù)鋱D教師模型和學(xué)生模型的單通道知識(shí)蒸餾框架,即基于拓?fù)鋱D的教師模型對(duì)學(xué)生模型進(jìn)行指導(dǎo),學(xué)生模型由PLP模塊和SGAT模塊組成.
2)MPS-ind/tra(Feature).該方法是基于特征圖教師模型和學(xué)生模型的單通道知識(shí)蒸餾框架,即基于特征圖的教師模型對(duì)學(xué)生模型進(jìn)行指導(dǎo),學(xué)生模型由PLP模塊和SGAT模塊組成.
3)MPS-ind/tra(Dual-MLP).該方法是基于拓?fù)鋱D教師模型、特征圖教師模型和學(xué)生模型的雙通道知識(shí)蒸餾框架.此外,本文參考CPF-ind/tra[30],用兩層MLP來(lái)作為學(xué)生模型中的鄰居特征聚合模塊,即用兩層MLP替代SGAT模塊.
4)MPS-ind/tra(ours).該方法是基于拓?fù)鋱D教師模型、特征圖教師模型和學(xué)生模型的雙通道知識(shí)蒸餾框架,學(xué)生模型由PLP模塊和SGAT模塊組成.
表4 MPS-ind在5個(gè)數(shù)據(jù)集上的消融實(shí)驗(yàn)Table 4 Ablation study of MPS-ind on 5 datasets
表5 MPS-tra在5個(gè)數(shù)據(jù)集上的消融實(shí)驗(yàn)Table 5 Ablation study of MPS-tra on 5 datasets
實(shí)驗(yàn)結(jié)果如表4和表5所示.從實(shí)驗(yàn)結(jié)果來(lái)看,在大部分?jǐn)?shù)據(jù)集上,MPS-ind/tra(Topology)和基于特征圖MPS-ind/tra(Feature)的效果相差不大.其中,效果相差最大的是在Cora數(shù)據(jù)集上,前面提到過(guò),由于Cora數(shù)據(jù)集的特征數(shù)太大,生成特征圖時(shí)會(huì)引入大量噪聲,導(dǎo)致實(shí)驗(yàn)效果變差.隨后,引入雙教師模型的知識(shí)蒸餾框架,使得分類效果進(jìn)一步提升,驗(yàn)證了雙教師模型的有效性.此外,本文參考CPF-ind/tra[30],對(duì)MPS-ind/tra(ours)的學(xué)生模型進(jìn)行修改,用兩層MLP替代SGNN模塊,得到MPS-ind/tra(Dual-MLP)方法,發(fā)現(xiàn)分類效果在5個(gè)數(shù)據(jù)集上均變差.實(shí)驗(yàn)結(jié)果表明,本文提出的MPS-ind/tra各個(gè)子模塊都是有益于整個(gè)模型的.
4.4.3 特征圖中k不同取值的分析
為了分析Feature-Teacher中選取鄰居節(jié)點(diǎn)個(gè)數(shù)對(duì)模型的效果影響,本文分別選取不同的k值(k∈{1,2,5,10,20,30,50,100})在5個(gè)數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn).從圖2的實(shí)驗(yàn)結(jié)果可以看出,剛開(kāi)始隨著k值的增大,模型分類效果逐漸提高,但是隨著k值的不斷增大,模型分類效果降低了.這是因?yàn)?剛開(kāi)始引入鄰居信息會(huì)加強(qiáng)節(jié)點(diǎn)表示,然而隨著引入的鄰居信息越來(lái)越多,會(huì)導(dǎo)致信息冗雜,噪聲越來(lái)越多,導(dǎo)致模型效果變差.
4.4.4 標(biāo)簽樣本數(shù)量的分析
為了進(jìn)一步證明模型的有效性,本文將在訓(xùn)練集中選取不同數(shù)量的有標(biāo)簽樣本進(jìn)行實(shí)驗(yàn).如圖3和圖4所示,以Citeseer數(shù)據(jù)集為例,本文從各個(gè)類別中分別選取n個(gè)節(jié)點(diǎn)(n∈{5,10,20})作為有標(biāo)簽節(jié)點(diǎn),依次進(jìn)行實(shí)驗(yàn).從實(shí)驗(yàn)結(jié)果可以看出,在inductive任務(wù)和transductive任務(wù)上,隨著標(biāo)簽節(jié)點(diǎn)數(shù)量增多,兩種方法的分類準(zhǔn)確率逐漸升高.其中,本文提出的MPS-ind/tra方法在不同數(shù)量的標(biāo)簽節(jié)點(diǎn)上的分類效果皆優(yōu)于最優(yōu)的基準(zhǔn)方法CPF-ind/tra[30].
圖2 參數(shù)k的分析Fig.2 Analysis of parameter k
圖3 inductive任務(wù)中標(biāo)簽樣本數(shù)量分析Fig.3 Analysis on the number of labeled samples in the inductive task
圖4 transductive任務(wù)中標(biāo)簽樣本數(shù)量分析Fig.4 Analysis on the number of labeled samples in the transductive task
4.4.5 學(xué)生模型中網(wǎng)絡(luò)層數(shù)的分析
在本小節(jié)中,將研究MPS-ind/tra體系結(jié)構(gòu)中的一個(gè)關(guān)鍵超參數(shù)的影響,即學(xué)生模型網(wǎng)絡(luò)層的數(shù)量m.實(shí)際上, GAT
等流行的GNN模型對(duì)網(wǎng)絡(luò)層數(shù)非常敏感,過(guò)多的網(wǎng)絡(luò)層會(huì)導(dǎo)致過(guò)度平滑問(wèn)題,嚴(yán)重的還將損害模型性能.為此,本文在5個(gè)數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),進(jìn)一步分析該超參數(shù).
圖5和圖6分別表示具有不同網(wǎng)絡(luò)層數(shù)m∈{1,3,5,7,9,11}學(xué)生模型的MPS-ind和MPS-tra的分類效果.可以看出,在大多數(shù)數(shù)據(jù)集上具有不同網(wǎng)絡(luò)層數(shù)m的分類效果差距相對(duì)較小.對(duì)于每個(gè)數(shù)據(jù)集,本文計(jì)算其相應(yīng)最佳和最差表現(xiàn)準(zhǔn)確率之間的差距,MPS-ind和MPS-tra的最大差距在1%左右,大部分?jǐn)?shù)據(jù)集的最大差距不到0.5%.可以看出,本文提出的模型分類效果較為穩(wěn)定,不會(huì)隨著網(wǎng)絡(luò)層數(shù)的變化,性能驟降.
圖6 transductive任務(wù)中參數(shù)m的分析Fig.6 Analysis of parameter m in the transductive task
本文提出了一個(gè)基于拓?fù)浣Y(jié)構(gòu)和特征屬性的雙通道知識(shí)蒸餾框架,即學(xué)習(xí)得到兩個(gè)具有不同層面知識(shí)的預(yù)訓(xùn)練教師模型,來(lái)指導(dǎo)學(xué)生模型.其中學(xué)生模型由兩種預(yù)測(cè)機(jī)制組合而成:參數(shù)化標(biāo)簽傳播模塊和鄰居特征聚合模塊,根據(jù)同質(zhì)現(xiàn)象,分別保留基于結(jié)構(gòu)和基于特征的先驗(yàn)知識(shí).兩種教師模型和學(xué)生模型組成知識(shí)蒸餾框架,使得學(xué)生模型能夠利用先驗(yàn)知識(shí),并且汲取兩種教師模型的知識(shí),從而達(dá)到更好的分類效果.在5個(gè)真實(shí)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,本文提出的知識(shí)蒸餾框架能夠使得學(xué)生模型很好地汲取教師模型的知識(shí),且在4個(gè)真實(shí)數(shù)據(jù)集上的分類效果優(yōu)于最優(yōu)的基準(zhǔn)方法.
在未來(lái)的工作中,將探討在雙通道模型的基礎(chǔ)上,改進(jìn)學(xué)生模型.例如:構(gòu)建多通道多學(xué)生的知識(shí)蒸餾框架,在教師模型知識(shí)多樣性的基礎(chǔ)上,打造學(xué)生模型知識(shí)的多樣性.另一個(gè)方向是實(shí)現(xiàn)教師模型和學(xué)生模型在訓(xùn)練中不斷交互學(xué)習(xí)以獲得更好的效果,進(jìn)一步完善本文提出的模型框架.