楊帥,王瑞琴,馬輝
(湖州師范學(xué)院信息工程學(xué)院,浙江 湖州 313000)
近年來,神經(jīng)網(wǎng)絡(luò)方法在各種頂級會議與期刊上成為最熱門的機(jī)器學(xué)習(xí)技術(shù)之一。例如,卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)[1]在圖像識別領(lǐng)域、循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)在自然語言處理領(lǐng)域等方面,解決實(shí)際需求的問題時以優(yōu)異的性能受到研究人員的青睞。在現(xiàn)實(shí)世界中許多問題可以直接用圖代替?zhèn)鹘y(tǒng)的表格、圖像或時間序列建模,并且比傳統(tǒng)模型更加直觀高效。一般來說,圖由節(jié)點(diǎn)和邊組成,在現(xiàn)實(shí)生活中真實(shí)存在的部分可以作為節(jié)點(diǎn),其間存在的聯(lián)系或互動作為邊。例如,路上的公交車站可以作為節(jié)點(diǎn),公交車的運(yùn)行路線可以作為邊。對于節(jié)點(diǎn),一般可以收集其信息建模為特征向量;對于路線,可以簡化為節(jié)點(diǎn)間的直線邊進(jìn)行建模。由于圖一般具有復(fù)雜的結(jié)構(gòu)信息,圖學(xué)習(xí)的一個挑戰(zhàn)就是找到一個行之有效的方法在眾多信息中學(xué)習(xí)一個高效的模型。這幾年來,研究者們已經(jīng)開發(fā)了數(shù)種針對圖學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)模型,相比傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)模型,其性能更優(yōu)異,應(yīng)用也更廣泛。受圖傅里葉變換的啟發(fā),Defferrar2等[2]將卷積神經(jīng)網(wǎng)絡(luò)中的卷積操作為原型提出了一種圖卷積運(yùn)算,Kipf等[3]使用重新歸一化的一階鄰接矩陣逼近多項(xiàng)式,以獲得圖節(jié)點(diǎn)分類任務(wù)的可比較結(jié)果,這些圖卷積網(wǎng)絡(luò)(graph convolutional network,GCN)[2-3]是結(jié)合圖節(jié)點(diǎn)特征和圖拓?fù)浣Y(jié)構(gòu)信息進(jìn)行預(yù)測的。Veli?kovi?等[4]將注意力機(jī)制引入圖學(xué)習(xí),提出了圖注意力網(wǎng)絡(luò)(graph attention network,GAT)。
目前,許多圖神經(jīng)網(wǎng)絡(luò)模型存在的一個問題是未能充分利用圖中的邊特征。在圖卷積神經(jīng)網(wǎng)絡(luò)中,圖被簡化為無邊屬性的連通圖,在圖注意網(wǎng)絡(luò)中同樣只需要使用節(jié)點(diǎn)間是否連通的特性。然而,實(shí)際上圖的邊通常擁有豐富的特征,如強(qiáng)度、類型、各種離散數(shù)值等多維變量。合理地利用邊特征可能會幫助許多圖學(xué)習(xí)方法獲得更高的精度。圖神經(jīng)網(wǎng)絡(luò)的另一個問題就是每個神經(jīng)層是根據(jù)作為輸入給出的原始鄰接矩陣聚合節(jié)點(diǎn)特征,但是原始的圖網(wǎng)絡(luò)有可能存在噪聲問題,這將限制信息聚合與預(yù)測任務(wù)的有效性。本文在標(biāo)準(zhǔn)GCN的基礎(chǔ)上以更合理的方式利用邊特征并優(yōu)化噪聲問題,提出邊學(xué)習(xí)圖卷積網(wǎng)絡(luò)(e2ge- learning graph convolution network,EGCN)。本文在幾個引文網(wǎng)絡(luò)數(shù)據(jù)集和分子數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn)。通過利用多通道學(xué)習(xí)邊特征,本文的方法與其他的最新方法相比,獲得了不錯的結(jié)果。實(shí)驗(yàn)結(jié)果表明,邊特征對圖學(xué)習(xí)具有重要幫助,并證明EGCN可以有效地學(xué)習(xí)邊特征??傊?,本文的特點(diǎn)包括兩點(diǎn):提出了針對數(shù)據(jù)中存在的噪聲的優(yōu)化方法,該方法通過多層感知機(jī)(multilayer perceptron,MLP)計(jì)算節(jié)點(diǎn)間的類相似度,忽略部分類相似度值較低的噪聲邊的影響,從而提升模型性能;提出多通道邊特征學(xué)習(xí)的方法,對圖中邊的每一種屬性進(jìn)行編碼,使模型在訓(xùn)練中更合理地學(xué)習(xí)邊的不同屬性的隱藏特征。
圖學(xué)習(xí)的一個關(guān)鍵問題是圖數(shù)據(jù)的復(fù)雜非歐結(jié)構(gòu)。為了解決這一問題,傳統(tǒng)的機(jī)器學(xué)習(xí)方法用圖表統(tǒng)計(jì)、核函數(shù)或其他手動制作的特征提取鄰域局部結(jié)構(gòu)特征。這些方法缺乏靈活性,且手動設(shè)計(jì)合理的功能非常耗時,需要大量的實(shí)驗(yàn)才能將其推廣到不同的任務(wù)或數(shù)據(jù)集中。圖表示學(xué)習(xí)嘗試使用數(shù)據(jù)導(dǎo)向的方法將圖或圖節(jié)點(diǎn)嵌入低維向量空間,較為流行的一類為基于矩陣分解的嵌入方法,如拉普拉斯特征映射、圖分解和高階鄰近保持嵌入(high-or2er proximity preserve2 embe22ing,HOPE);另一類方法側(cè)重于使用基于節(jié)點(diǎn)相似性度量的隨機(jī)游走,如DeepBalk、no2e2vec和大規(guī)模信息網(wǎng)絡(luò)嵌入(large-scale information network embe22ing,LINE)?;诰仃嚪纸夂突陔S機(jī)游走的圖學(xué)習(xí)方法均存在一定的局限性。例如,映射到低維向量空間的嵌入函數(shù)是過于簡單的線性函數(shù),可能無法捕捉復(fù)雜的信息,而且它們通常不包含節(jié)點(diǎn)特性;它們需要從鄰域聚合信息,所以需要對整個圖的結(jié)構(gòu)進(jìn)行訓(xùn)練。
最近,隨著深度學(xué)習(xí)的發(fā)展,圖學(xué)習(xí)中的部分問題有所解決?;谏窠?jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)可以表示復(fù)雜的映射函數(shù),并通過梯度下降方法進(jìn)行有效優(yōu)化。隨著CNN在圖像識別方面的成功,人們自然而然地想將卷積應(yīng)用于圖形學(xué)習(xí)中。在文獻(xiàn)[5]中,卷積運(yùn)算是在圖拉普拉斯變換的譜空間中定義的。Defferrar2等[2]提出利用圖拉普拉斯算子的切比雪夫展開式近似濾波器,從而產(chǎn)生空間域局部化的濾波器,同時避免了計(jì)算特征向量的拉普拉斯算子。Veli?kovi?等[4]在圖學(xué)習(xí)中引入了注意機(jī)制,提出了GAT。但GAT與GCN仍重點(diǎn)關(guān)注節(jié)點(diǎn)特征,未能充分考慮節(jié)點(diǎn)間邊的多維信息特征,僅使用了邊的連通性,同時他們的模型沒有考慮任務(wù)中部分節(jié)點(diǎn)的鄰居節(jié)點(diǎn)有誤導(dǎo)影響,沒有考慮噪聲的局限性。
為了有效利用圖上的邊特征,邊增強(qiáng)圖神經(jīng)網(wǎng)絡(luò)(e2ge enhance2 graph neural network,EGNN)[6]對邊特征使用雙重隨機(jī)歸一化以及跨網(wǎng)絡(luò)自適應(yīng)方法以學(xué)習(xí)邊特征,并且在GCN與GAT的基礎(chǔ)上提出了EGNN(C)與EGNN(A)的改進(jìn)模型。Chen等[7]則通過提取邊與節(jié)點(diǎn)的互信息(mutual information),提出邊信息最大化圖神經(jīng)網(wǎng)絡(luò)(e2ge information maximize2 graph neural network,EIGNN)。Gilmer等[8]研究近年來的眾多圖學(xué)習(xí)模型的共性后,提出了消息傳遞神經(jīng)網(wǎng)絡(luò)(message passing neural network,MPNN),圖神經(jīng)網(wǎng)絡(luò)的本質(zhì)是特征聚合,即節(jié)點(diǎn)根據(jù)周圍鄰居節(jié)點(diǎn)更新自身特征信息,這個方法即消息傳遞。上述圖神經(jīng)網(wǎng)絡(luò)將部分邊信息引入圖學(xué)習(xí),但仍存在未充分利用邊的多維信息和原始節(jié)點(diǎn)間可能存在噪聲影響的局限性。
傳統(tǒng)的GNN有許多變體,如GCN[3]、GAT[4]、Graphs AGE[9]等。這些神經(jīng)網(wǎng)絡(luò)模型側(cè)重于學(xué)習(xí)節(jié)點(diǎn)狀態(tài),可以為鄰居分配權(quán)重,但不能處理各種邊特征。其中,通用的鄰居節(jié)點(diǎn)聚合方案為:
其中,l表示第l層神經(jīng)網(wǎng)絡(luò)層,σ為非線性激活函數(shù);avw是一個標(biāo)準(zhǔn)化常數(shù)或?qū)W習(xí)注意系數(shù);h是一個將節(jié)點(diǎn)特征從輸入空間映射到輸出空間的變換,Wl是一個Fl×Fl+1的可學(xué)習(xí)權(quán)重矩陣。這些聚合方法尚不能滿足處理邊特征的需求。例如,對于分子分析的任務(wù)來說,原子鍵上的屬性對于分子屬性具有決定性影響,但目前的圖神經(jīng)網(wǎng)絡(luò)大多是針對單維邊屬性設(shè)計(jì)的,且不適合分子分析這種單個圖比較小、總體上圖的數(shù)量多的任務(wù)。
在傳統(tǒng)圖卷積神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上,本文的多通道邊學(xué)習(xí)圖卷積網(wǎng)絡(luò)模型總體結(jié)構(gòu)如圖1所示。
圖1 多通道邊學(xué)習(xí)圖卷積網(wǎng)絡(luò)模型總體結(jié)構(gòu)
設(shè)一個圖G=(V, E),G表示有N個節(jié)點(diǎn)的圖,其中V是一組N個數(shù)據(jù)的節(jié)點(diǎn)表示,E是一組N個數(shù)據(jù)的邊表示。圖1中的節(jié)點(diǎn)編碼為特征矩陣X∈RN×f,f表示一個節(jié)點(diǎn)的維度,X0是第一層神經(jīng)網(wǎng)絡(luò)的輸入,Ek表示通道k中的邊矩陣。在圖1中,上標(biāo)l表示第l層的輸出。首先,用MLP層對數(shù)據(jù)進(jìn)行預(yù)處理,經(jīng)過預(yù)處理后獲得更適合本文模型需要的節(jié)點(diǎn)集X0與邊集E0并將其輸入下一步的神經(jīng)網(wǎng)絡(luò)層。在信息聚合層,X0和E0表示神經(jīng)網(wǎng)絡(luò)的輸入。在第一層聚合層將邊特征E0應(yīng)用于X0,經(jīng)過聚合鄰域產(chǎn)生一個N×F1的新節(jié)點(diǎn)特征矩陣X1。經(jīng)過調(diào)整的E1作為邊特征送到下一層。這個步驟在以后的每一層都重復(fù)。節(jié)點(diǎn)特征XL可被認(rèn)為是圖節(jié)點(diǎn)在Fl維空間中的嵌入。對于節(jié)點(diǎn)分類問題,將softmax函數(shù)應(yīng)用于最后一維的每個節(jié)點(diǎn)嵌入向量XL。對于全圖預(yù)測(分類或回歸)問題,將池化層應(yīng)用于XL的第一維,從而將特征矩陣簡化為整個圖的單個向量嵌入。然后將全連接層應(yīng)用于圖向量,其輸出可用于預(yù)測回歸,也可用于分類。
現(xiàn)有圖網(wǎng)絡(luò)的初始鄰接矩陣可能有噪聲且不是最優(yōu)的,這將影響鄰域聚合操作的有效性。例如,引文網(wǎng)絡(luò)中機(jī)器學(xué)習(xí)論文有時引用數(shù)學(xué)論文或其他理論論文,然而,數(shù)學(xué)論文可能很少引用機(jī)器學(xué)習(xí)論文。在此之前已有類似的工作,例如,文獻(xiàn)[10]使用標(biāo)簽傳播和單個訓(xùn)練過的圖神經(jīng)網(wǎng)絡(luò)模型擴(kuò)大圖神經(jīng)網(wǎng)絡(luò)的訓(xùn)練集,文獻(xiàn)[11]采用DeepCluster[12]等無監(jiān)督學(xué)習(xí)技術(shù)幫助圖神經(jīng)網(wǎng)絡(luò)的自訓(xùn)練,文獻(xiàn)[10]和文獻(xiàn)[11]可被看作是圖神經(jīng)網(wǎng)絡(luò)自訓(xùn)練或協(xié)同訓(xùn)練的特定算法,文獻(xiàn)[13]使用正則化項(xiàng)對每個節(jié)點(diǎn)提供新的監(jiān)督信號進(jìn)行訓(xùn)練。
節(jié)點(diǎn)間的類相關(guān)度可以通過直接使用標(biāo)簽加節(jié)點(diǎn)數(shù)據(jù)進(jìn)行計(jì)算獲得,但是在稀疏分割條件下,只有小部分節(jié)點(diǎn)和標(biāo)簽可用,很難直接從節(jié)點(diǎn)和標(biāo)簽計(jì)算其類相關(guān)度,所以本文使用多層感知機(jī)從節(jié)點(diǎn)特征中學(xué)習(xí)獲得類相關(guān)度。具體來說,首先用多層感知機(jī)從原始節(jié)點(diǎn)屬性中提取類感知信息,多層感知機(jī)的第l層的定義為:
總的來說,本步驟基本思想為基于閾值的節(jié)點(diǎn)間類相似度的邊篩選方法,基于MLP的分類標(biāo)簽生成候選邊集。在訓(xùn)練過程中計(jì)算節(jié)點(diǎn)間的類相似度,將類相似度值低于閾值的節(jié)點(diǎn)對的邊劃入低類相關(guān)度集合,選擇集合中的一定比例的最低值的邊置為0,即經(jīng)過算法處理可得分配矩陣,該矩陣在網(wǎng)絡(luò)中的作用為按比例刪除假定為噪聲的邊。為了不過度破壞數(shù)據(jù)集原有的結(jié)構(gòu)以致影響任務(wù)的精度,實(shí)驗(yàn)中對于節(jié)點(diǎn)低相關(guān)性的邊進(jìn)行保守刪除,過高的刪除比例雖然會獲得更高的準(zhǔn)度,但會出現(xiàn)訓(xùn)練嚴(yán)重過擬合、精度不高等問題。
通常實(shí)際數(shù)據(jù)中圖的邊上包含有關(guān)圖的重要信息。例如,在引文網(wǎng)絡(luò)中,引用關(guān)系應(yīng)該是有方向的,對于節(jié)點(diǎn)分類任務(wù)來說,論文的引用方向可能有十分重要的作用,因此在建模引文網(wǎng)絡(luò)數(shù)據(jù)集時,將論文的引用方向作為一組邊特征編碼為一個通道;在分子性質(zhì)分析任務(wù)中,對分子建模時,由于其性質(zhì)十分復(fù)雜,不能簡單地將其視為無屬性連通圖。本文根據(jù)圖數(shù)據(jù)天然存在的屬性將邊編碼為多維矩陣,邊的每一個屬性將對應(yīng)一個通道,讓模型在各通道中根據(jù)不同的神經(jīng)網(wǎng)絡(luò)參數(shù)學(xué)習(xí)節(jié)點(diǎn)特征與邊特征。在引文網(wǎng)絡(luò)數(shù)據(jù)集中將論文的引用方向和引用次數(shù)分解為雙通道進(jìn)行建模,將分子數(shù)據(jù)利用不同的邊屬性分解為5個通道建模。圖的邊特征作為輸入進(jìn)入卷積層將被轉(zhuǎn)化為邊約束,卷積層l中的圖在基于邊約束的條件下轉(zhuǎn)換為約束圖信號,這個圖信號由邊約束矩陣{A1,A2,…,Ak}組成。圖卷積聚合來自每個通道的所有一階鄰居的節(jié)點(diǎn)信息。在第l層中,約束圖信號的圖卷積式為:
圖卷積的一個重要工具是圖拉普拉斯矩陣[3]。經(jīng)過證明,歸一化的圖拉普拉斯矩陣定義為
算法1多通道的邊學(xué)習(xí)圖卷積算法
輸入通道k;模型f (·);節(jié)點(diǎn)張量X;邊張量E;鄰接矩陣A
可學(xué)習(xí)參數(shù):權(quán)重W,權(quán)重w
多通道卷積方法
總之,本文的工作是基于一階近似的切比雪夫(Chebyshev)卷積,在此基礎(chǔ)上使用多通道學(xué)習(xí)方法對圖卷積進(jìn)行多次使用。多通道機(jī)制在模型學(xué)習(xí)過程中會產(chǎn)生一組邊權(quán)值wk,這些參數(shù)提供了比傳統(tǒng)圖卷積網(wǎng)絡(luò)更具表現(xiàn)力的網(wǎng)絡(luò)模型,圖卷積網(wǎng)絡(luò)可以學(xué)習(xí)節(jié)點(diǎn)之間多種邊類型,根據(jù)不同通道的可學(xué)習(xí)參數(shù),讓模型學(xué)習(xí)不同邊屬性的特征。
本文模型使用了可微分池化(Diffpool)[14]以層級化學(xué)習(xí)圖表示??晌⒎殖鼗O(shè)計(jì)了一個圖池化神經(jīng)網(wǎng)絡(luò)來生成節(jié)點(diǎn)的賦值矩陣S:
softmax函數(shù)的輸入是特征矩陣Xl和鄰接矩陣A,是第l層的傳統(tǒng)圖卷積網(wǎng)絡(luò)[3]。在可微分池化層的第一層nl= n,由于加入了多通道學(xué)習(xí)方法,第一個可微分池化層的輸入是,然后使用得到新的聚類鄰接矩陣Xl+1和聚類節(jié)點(diǎn)的特征矩陣Al+1,如式(7)、式(8)所示。
最后的輸出是圖表示X∈R1×fG,fG表示圖的維數(shù)。Diffpool定義了新的層級化池化層以抽取圖的信息,通過學(xué)習(xí)賦值矩陣將不同的節(jié)點(diǎn)分配到不同的聚類中,結(jié)合正則化的邊預(yù)測來共同優(yōu)化學(xué)習(xí)卷積參數(shù),從而學(xué)習(xí)到更豐富的層級化網(wǎng)絡(luò)信息。
與傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)不同,由于不同的節(jié)點(diǎn)與邊的復(fù)雜性不同,圖卷積的成本是不穩(wěn)定的,無法準(zhǔn)確給出每一步計(jì)算的時間復(fù)雜度,在計(jì)算機(jī)中數(shù)據(jù)的加減運(yùn)算的成本較低,故訓(xùn)練算法的時間復(fù)雜度可以通過乘法運(yùn)算的次數(shù)進(jìn)行推算。GCN、GAT與EGCN的時間復(fù)雜度與內(nèi)存復(fù)雜度對比見表1。
在表1中,n是所有節(jié)點(diǎn)的數(shù)量,m是所有邊的數(shù)量,K是網(wǎng)絡(luò)層數(shù),c是通道數(shù)量,節(jié)點(diǎn)隱含特征維數(shù)為d。傳統(tǒng)的GCN[3]的時間復(fù)雜度為O(Kmd+Knd2),GAT較GCN的計(jì)算量更少,但是需要處理的數(shù)據(jù)規(guī)模是相同的,而本文同樣使用傳統(tǒng)GCN的基于一階近似的切比雪夫卷積,所以增加的時間復(fù)雜度與計(jì)算復(fù)雜度為增加的通道數(shù)量。
本文所有的算法與實(shí)驗(yàn)都基于Python 3.7平臺上的torch-1.6.0實(shí)現(xiàn)。在所有的實(shí)驗(yàn)中,模型都用Intel core i5-10500處理器進(jìn)行處理。實(shí)驗(yàn)的任務(wù)包括驗(yàn)證本文方法對幾種基礎(chǔ)方法的改進(jìn)。由于引文網(wǎng)絡(luò)數(shù)據(jù)集需要使用邊特征來建模,因此使用了Cora和Citeseer的原始版本。分子數(shù)據(jù)集使用了Tox21、Freesolv、Lipophilicity和eSOL數(shù)據(jù)集。節(jié)點(diǎn)特征和邊特征是使用RDKit提取的,RDKit是一個開源的化學(xué)信息學(xué)軟件包。RDKit將SMILES字符串轉(zhuǎn)換為“mol”格式,其中包含用于構(gòu)建分子圖的分子結(jié)構(gòu)信息。
為了測試本文提出EGCN的有效性,將其應(yīng)用于多種常見的數(shù)據(jù)集。本節(jié)測試了兩個節(jié)點(diǎn)分類任務(wù)引文網(wǎng)絡(luò)數(shù)據(jù)集——Cora、Citeseer;一個全圖分類任務(wù)的分子分析數(shù)據(jù)集,Tox21;3個預(yù)測分子性質(zhì)的分子分析數(shù)據(jù)集,Lipophilicity、Freesolv和eSOL。引文網(wǎng)絡(luò)中的Cora與Citeseer均用論文中關(guān)鍵字是否出現(xiàn)以二進(jìn)制指標(biāo)表示節(jié)點(diǎn)特征,根據(jù)論文的引用方向關(guān)系編碼為多個離散值的邊特征矩陣。Tox21的原始數(shù)據(jù)來自21世紀(jì)的毒理學(xué)研究計(jì)劃,它包含7 831個環(huán)境化合物和藥物,以及12個標(biāo)簽的生物學(xué)結(jié)果,是全圖分類任務(wù)?;貧w任務(wù)有3個數(shù)據(jù)集:Freesolv是一個含有642個水中小中性分子的水合自由能的數(shù)據(jù)庫;Lipophilicity(Lipo)由ChEMBL數(shù)據(jù)庫整理,包含4 200個化合物;eSOL提供了1 128種化合物的水溶性數(shù)據(jù)。各數(shù)據(jù)集的基礎(chǔ)統(tǒng)計(jì)數(shù)據(jù)見表2。分子數(shù)據(jù)集均從MoleculeNet[15]下載。實(shí)驗(yàn)中忽略了結(jié)構(gòu)圖沒有邊的SMILES樣本。
表2 各數(shù)據(jù)集的基礎(chǔ)統(tǒng)計(jì)數(shù)據(jù)
對于分類任務(wù),Cora與Citeseer數(shù)據(jù)集的任務(wù)為節(jié)點(diǎn)分類任務(wù),評價指標(biāo)為準(zhǔn)確率,由預(yù)測標(biāo)簽和實(shí)際標(biāo)簽計(jì)算得來。Tox21數(shù)據(jù)集的任務(wù)為分子分類,即全圖分類,采用ROC曲線下面積(area un2er curve,AUC)作為評價指標(biāo)。其中,ROC曲線全稱為“受試者工作特征曲線(receiver operating characteristic curve)”,它是根據(jù)分類得到的二值分類結(jié)果,以真陽性率(true positive rate,TPR)為縱坐標(biāo)、假陽性率(false positive rate,F(xiàn)PR)為橫坐標(biāo)繪制,AUC值可通過對ROC曲線下各部分的面積求和而得。由定義可知AUC取值在0.5和1.0之間,越接近1.0,模型可靠性越高。
表1 GCN、GAT與EGCN的時間復(fù)雜度與內(nèi)存復(fù)雜度對比
Lipo、Freesolv與eSOL數(shù)據(jù)集為回歸任務(wù),比較模型在不同數(shù)據(jù)集上的預(yù)測誤差,采用均方根誤差(root mean square error,RMSE)作為評價指標(biāo),由式(9)可知RMSE值由算法的預(yù)測值iy和實(shí)際值計(jì)算得來,RMSE值越小,模型性能越好。
本文將提出的基于多通道邊學(xué)習(xí)的圖卷積網(wǎng)絡(luò)與傳統(tǒng)的圖卷積網(wǎng)絡(luò)、圖注意網(wǎng)絡(luò)等分別做了相應(yīng)的對比,幾種對比算法的簡介如下。
(1)圖卷積網(wǎng)絡(luò)[3]使用一階近似的切比雪夫卷積實(shí)現(xiàn)譜域卷積。
(2)圖注意力網(wǎng)絡(luò)[4]將注意力機(jī)制引入基于空間域,通過一階鄰居節(jié)點(diǎn)的不同權(quán)重的表征更新節(jié)點(diǎn)特征。
(3)隨機(jī)森林(ran2om forest,RF)算法[15]通過訓(xùn)練多個決策樹,生成模型,然后綜合利用多個決策樹進(jìn)行分類。
(4)Beave[15]模型原理類似于圖卷積,Beave 特征化編碼了局部化學(xué)環(huán)境和分子中原子的連通性,專門用于分子分析。
(5)邊增強(qiáng)圖神經(jīng)網(wǎng)絡(luò)[6]是通過多種邊處理方法以學(xué)習(xí)邊信息的圖神經(jīng)網(wǎng)絡(luò)。
(6)邊信息最大化圖神經(jīng)網(wǎng)絡(luò)[7]通過最大化邊特征與消息傳遞通道間的互信息來學(xué)習(xí)邊的多維屬性。
(7)消息傳遞神經(jīng)網(wǎng)絡(luò)[8]是通過關(guān)注節(jié)點(diǎn)之間信息的傳遞,定義聚合函數(shù)而提出的一種通用的GNN框架。
3.4.1 引文網(wǎng)絡(luò)實(shí)驗(yàn)
對于引文網(wǎng)絡(luò)數(shù)據(jù)集Cora和Citeseer,任務(wù)為對論文進(jìn)行分類,是節(jié)點(diǎn)分類任務(wù)。本文將整個數(shù)據(jù)集劃分為訓(xùn)練集、驗(yàn)證集和測試集,參照文獻(xiàn)[6]將數(shù)據(jù)集分為稀疏分割(Sparse)和密集分割(Dense)兩種模式,稀疏分割劃分為5%訓(xùn)練、15%驗(yàn)證和80%測試的3個子集;密集分割劃分為60%訓(xùn)練、20%驗(yàn)證和20%測試的3個子集。對于類相似度估計(jì),使用一個隱藏層有512個單元和另一個隱藏層有32個單元的雙層MLP。對于神經(jīng)網(wǎng)絡(luò)層,按文獻(xiàn)[6]的參數(shù)設(shè)置,使用兩層的卷積層,隱藏層設(shè)置輸出維度為64,2ropout率設(shè)為0.5,對權(quán)值W進(jìn)行L2正則化,權(quán)值衰減為0.000 5,并采用指數(shù)線性單元(exponential linear unit,ELU)作為隱藏層的非線性激活。在本次實(shí)驗(yàn)中,將標(biāo)準(zhǔn)的GCN[3]與GAT[4]作為基礎(chǔ)對照方法,并將文獻(xiàn)[6]中最佳性能的EGNN加入對比試驗(yàn)。同時,為了研究每個功能的有效性,在實(shí)驗(yàn)中對模型進(jìn)行了消融實(shí)驗(yàn),EGCN(N)表示保留圖去噪方法,EGCN(M)表示保留多通道邊學(xué)習(xí)方法,EGCN(MN)表示使用完整的模型。本節(jié)總共測試了6個模型在Cora和Citeseer兩個數(shù)據(jù)集的兩種分割方法下的表現(xiàn),每個模型分別運(yùn)行10次,取其精度的均值和標(biāo)準(zhǔn)差。各模型基于引文網(wǎng)絡(luò)數(shù)據(jù)集的結(jié)果和EGCN模型在引文網(wǎng)絡(luò)數(shù)據(jù)集上消融實(shí)驗(yàn)的結(jié)果分別見表3和表4,其中粗體數(shù)字表示不同模型得到的最好性能。
表3 各模型基于引文網(wǎng)絡(luò)數(shù)據(jù)集的結(jié)果
表4 EGCN模型在引文網(wǎng)絡(luò)數(shù)據(jù)集上消融實(shí)驗(yàn)的結(jié)果
分析表3和表4可知,EGCN總體上比基礎(chǔ)的GCN與GAT模型有更好的性能,保留去噪方法對分類結(jié)果的準(zhǔn)確率提升效果明顯,而保留多通道邊學(xué)習(xí)方法提升較小,可能是引用網(wǎng)絡(luò)數(shù)據(jù)集的可用邊特征較少,對算法的影響有限,密集分割條件下,EGCN在Cora數(shù)據(jù)集上表現(xiàn)為第二優(yōu)。這些結(jié)果表明EGCN模型在數(shù)據(jù)集較為簡單的情況下仍能保持相當(dāng)?shù)男阅堋?紤]到實(shí)際應(yīng)用中可能存在實(shí)體標(biāo)簽缺失的問題,如何提高模型在稀疏分割或半監(jiān)督任務(wù)下的性能是未來研究的一個方向。
3.4.2 分子分析實(shí)驗(yàn)
本文在4個分子數(shù)據(jù)集:Tox21、Freesolv、eSOL及Lipo上進(jìn)行測試,數(shù)據(jù)集均使用RDKit將分子轉(zhuǎn)換為圖數(shù)據(jù),將原子鍵信息編碼為邊特征矩陣。對于模型,本文采用兩層圖卷積層,每個通道的各圖處理層的輸出維度分別為60、100,一層微分池化層,輸出維度為128,一層全連接層,輸出維度為64。對于分類任務(wù),全連接層使用sigmoi2交叉熵?fù)p失函數(shù)輸出logits。回歸任務(wù)的全連接層使用均方誤差損失函數(shù)輸出 logits。對權(quán)值W進(jìn)行L2正則化,權(quán)值衰減為0.000 1,2ropout率設(shè)為0.6,采用指數(shù)線性單元作為隱含層的非線性激活。在分子分析任務(wù)中,將實(shí)驗(yàn)中最佳性能的EGNN[6]模型加上GCN[3]、GAT[4]、EIGNN[7]和MPNN[8]作為參照,另外也加上RF和Beave進(jìn)行了測試。參照文獻(xiàn)[6]的設(shè)置,這些數(shù)據(jù)集以80%、10%、10%的比例分為訓(xùn)練、驗(yàn)證和測試子集。上述模型每個運(yùn)行5次,取評價得分的平均值和標(biāo)準(zhǔn)偏差。對于分類任務(wù)(Tox21),采用ROC曲線下方面積作為評價指標(biāo);對于回歸任務(wù)(Lipo等),采用均方根誤差作為評價指標(biāo);分子數(shù)據(jù)集下各神經(jīng)網(wǎng)絡(luò)的結(jié)果見表5,其中粗體數(shù)字表示不同模型得到的最好性能。
EGCN在Freesolv與eSOL分子數(shù)據(jù)集上的消融實(shí)驗(yàn)結(jié)果見表6,驗(yàn)證了多通道學(xué)習(xí)在模型中的必要性。基于分子分析數(shù)據(jù)集的EGCN中共有5個通道,分別代表分子圖數(shù)據(jù)集中的
Atom Pair Type、Bon2 Or2er、Aromaticity、Conjugation和Ring Status的屬性。消融實(shí)驗(yàn)基于Freesolv與eSOL數(shù)據(jù)集,k表示EGCN中保留的通道數(shù)量,當(dāng)k=1時EGCN退化為傳統(tǒng)GCN模型,故將GCN引入對比測試。每個EGCNk均為記錄多次實(shí)驗(yàn)平均值加標(biāo)準(zhǔn)差,例如,EGCN4為保留4個通道,具體來說就是每次刪除一個通道,運(yùn)行5次,然后刪除其他數(shù)個通道重復(fù)該操作,共記錄25條數(shù)據(jù),取其均值。
表5 分子數(shù)據(jù)集下各神經(jīng)網(wǎng)絡(luò)的結(jié)果
表6 EGCN在Freesolv與eSOL分子 數(shù)據(jù)集上的消融實(shí)驗(yàn)結(jié)果
從表6中可以清楚地看到刪除數(shù)個通道后的結(jié)果與原模型的實(shí)驗(yàn)結(jié)果,比較分析后可知通道數(shù)量增加使模型性能有明顯提升。
在去噪處理這部分,計(jì)算節(jié)點(diǎn)間的類相關(guān)度使用MLP從節(jié)點(diǎn)特征中學(xué)習(xí)獲得類相關(guān)度矩陣,再將類相關(guān)度值最低的邊刪除,刪除一定數(shù)量的噪聲邊后根據(jù)剩余邊比例獲得數(shù)據(jù)結(jié)果,EGCN在Cora數(shù)據(jù)集上基于剩余邊的比例的準(zhǔn)確率如圖2所示。
圖2 EGCN在Cora數(shù)據(jù)集上基于剩余邊的比例的準(zhǔn)確率
從圖2可以看出,經(jīng)過去噪處理后分類準(zhǔn)確率提升明顯,說明圖中的部分噪聲邊影響明顯,剔除噪聲后EGCN能有效提升分類性能。被刪除的邊達(dá)到一定數(shù)量后,繼續(xù)刪除圖中的噪聲邊雖然可以獲得略高的準(zhǔn)確率,但是提升幅度不明顯,并且訓(xùn)練準(zhǔn)確率已達(dá)100%,表明過擬合效應(yīng)嚴(yán)重。這里可以認(rèn)為進(jìn)一步刪除邊會造成數(shù)據(jù)失真以致訓(xùn)練過擬合,所以選擇保留96%的邊作為后續(xù)實(shí)驗(yàn)的閾值。
在傳統(tǒng)的CNN[1]中擴(kuò)大感受野可以明顯提高模型性能。圖卷積神經(jīng)網(wǎng)絡(luò)在引入多通道學(xué)習(xí)后,為了探究更大的感受野對模型訓(xùn)練是否有增益,本節(jié)在一階近似的切比雪夫卷積的基礎(chǔ)上對模型進(jìn)行k階切比雪夫多項(xiàng)式改造。高階鄰域?qū)τ趫D卷積神經(jīng)網(wǎng)絡(luò)意味著更大的感受野,對于分子分析來說,單個分子作為一個小型圖,對其使用高階卷積可能并不適合。本節(jié)實(shí)驗(yàn)基于Cora與Citeseer數(shù)據(jù)集進(jìn)行對比。這里將k的階數(shù)設(shè)為1~4,基于Cora與Citeseer的k階鄰域?qū)Ρ葘?shí)驗(yàn)結(jié)果如圖3所示。
圖3 基于Cora與Citeseer的k階鄰域?qū)Ρ葘?shí)驗(yàn)結(jié)果
圖3中,在Cora與Citeseer數(shù)據(jù)集上,與k=1相比,當(dāng)k=2時準(zhǔn)確率有略微下降,當(dāng)k=3或k=4時準(zhǔn)確率均出現(xiàn)明顯降低?;谶@些結(jié)果分析可知,對于圖卷積網(wǎng)絡(luò),每次消息傳遞來自其k階鄰域,通常需要一個合適的感受野捕捉鄰域信息,直接鄰域足以提供卷積所需的特征信息,來自高階鄰域的大量信息會放大噪聲的干擾,并對節(jié)點(diǎn)預(yù)測任務(wù)造成負(fù)面影響。在實(shí)驗(yàn)中發(fā)現(xiàn),使用高階切比雪夫卷積時會增大模型的計(jì)算量,且明顯增加訓(xùn)練的時間,所以EGCN采用一階近似的切比雪夫卷積。
本文首先總結(jié)了現(xiàn)有的圖學(xué)習(xí)神經(jīng)網(wǎng)絡(luò),分析比較了各種圖神經(jīng)網(wǎng)絡(luò)的優(yōu)點(diǎn)、缺點(diǎn)。接著針對傳統(tǒng)的圖卷積網(wǎng)絡(luò)存在的噪聲問題與邊信息利用不充分問題,提出了使用MLP的去噪方法和基于多通道邊學(xué)習(xí)的圖卷積神經(jīng)網(wǎng)絡(luò)。通過大量的實(shí)驗(yàn)證明多通道邊學(xué)習(xí)用于圖卷積的可行性和有效性。
基于多通道的邊學(xué)習(xí)圖卷積網(wǎng)絡(luò)相較于傳統(tǒng)的圖神經(jīng)網(wǎng)絡(luò)方法有所改進(jìn),但是仍存在問題亟須解決,如加深網(wǎng)絡(luò)層數(shù)產(chǎn)生的過度平滑、特征聚合過程中計(jì)算量較大等。在未來的工作中,將嘗試更多的先進(jìn)思想解決本文中EGCN存在的問題并加以改進(jìn)。