張 芳,王 祺,劉彥北
(1.天津工業(yè)大學 生命科學學院,天津 300387;2.天津工業(yè)大學 電子與信息工程學院,天津 300387)
圖是表示不規(guī)則數據的強大工具,其結構鏈接表示連接實體之間的某種形式的關系。在化學領域[1]中,它們可以代表化合物的分子結構;在生物學領域[2]中,它們可以代表蛋白質相互作用的網絡;在社會科學領域[3]中,它們可以代表人際關系網絡。圖表示學習已經成為越來越受歡迎的研究領域,被用來解決各行各業(yè)的問題,例如:在生物化學領域中的藥物設計、疾病分類;在交通領域對交通需求預測、道路速度預測;在計算機視覺領域的目標檢測、視覺推理;在自然語言處理領域的實體關系抽取、文本生成;在網絡運營領域的社交推薦系統(tǒng)、用戶行為預測等。
圖自編碼器是一類圖表示學習方法,旨在通過使用神經網絡體系結構將網絡頂點表示為低維向量空間[4]。一種典型的解決方案是利用多層感知器作為編碼器來獲取節(jié)點表示,其中解碼器重建節(jié)點鄰域統(tǒng)計信息。自動編碼器及其變體廣泛用于無監(jiān)督學習,適用于學習沒有標簽信息的圖的節(jié)點表示。稀疏自動編碼器(SAE)[5]將鄰接矩陣或其變體作為節(jié)點的原始特征,并使用自動編碼器作為降維技術來學習低維節(jié)點表示。用于圖表示的深度神經網絡(DNGR)[6]使用堆疊式去噪自動編碼器來重構逐點互信息矩陣(PPMI),特別是當存在缺失值時學習得到的潛在表示更具有魯棒性。結構深度網絡嵌入(SDNE)[7]使用堆疊式自動編碼器共同保留節(jié)點的一階近似度和二階近似度。深度遞歸網絡嵌入(DRNE)[8]提出了另一種修改方法代替重建鄰接矩陣,即使用長短期記憶網絡(LSTM)通過聚集鄰域信息來直接重建節(jié)點的低維向量。DRNE直接重建節(jié)點的隱藏狀態(tài),而不是整個圖形統(tǒng)計信息。變分圖自編碼器(VGAE)[9]是基于變分自動編碼器(VAE)[10]無監(jiān)督學習圖結構數據的框架,將降維與生成模型結合使用,該模型將圖卷積網絡(GCN)[11]集成到圖自編碼器中,并采用簡單的線性內積作為解碼器。對抗正則化圖形自編碼器(ARGA)[12]采用了生成對抗網絡(GAN)的訓練方案[13]來正則化圖自編碼器。在ARGA中,編碼器通過GCN將具有其特征的節(jié)點結構信息編碼為隱藏表示,然后解碼器從編碼器的輸出中重建鄰接矩陣。深度變異網絡嵌入(DVNE)[14]通過將每個節(jié)點表示為高斯分布,為圖數據提出了另一個VAE。與以前采用KL散度作為度量的工作不同,DVNE使用Wass-erstein距離來保留節(jié)點相似性的傳遞性。
盡管這些圖自編碼器網絡已廣泛用于無監(jiān)督學習中,并已取得了顯著的成果,但它們的解碼器僅考慮圖的結構特征的重建,沒有明確考慮圖的節(jié)點屬性特征的重建。傳統(tǒng)的圖自編碼器的解碼器僅重建節(jié)點的結構關系,并通過減少結構信息重建的損失對其進行進一步優(yōu)化,而不重建節(jié)點的屬性特征。在無監(jiān)督學習中,當節(jié)點的屬性信息更相似時,它們更有可能彼此連接或屬于同一類別。因此,節(jié)點屬性在圖自編碼器中的作用不能忽略。
本文提出了一種節(jié)點屬性增強的圖自編碼器(NEGAE),這是一種用于圖數據無監(jiān)督學習的新型模型。使用圖卷積網絡(GCN)[11]作為編碼器;除了簡單的內積之外,使用反卷積方法來重建節(jié)點屬性信息;將結構信息和節(jié)點屬性信息的重建誤差結合在統(tǒng)一的損失函數中進行優(yōu)化;將模型在Cora、Citeseer和Pubmed等3個國際公開的網絡數據集上進行實驗以驗證其有效性。
本文將圖定義為G=(V,E)。其中,V=(ν1,ν2,…,νn)表示節(jié)點的集合;E為節(jié)點之間相連的邊的集合。設n=|N|為節(jié)點數,e=|E|為邊數。A為鄰接矩陣,D=diag(d1,d2,…,dn)為對角度矩陣(其中,X=(x1,x2,…,xn)T為節(jié)點特征向量的矩陣。NEGAE模型示意圖如圖1所示。
圖1 NEGAE模型的示意圖Fig.1 Schematic of NEGAE model
從深入理解公式的角度[15],GCN可以被視為拉普拉斯平滑的一種特殊形式。輸入特征的每個通道上的拉普拉斯平滑公式為:
當γ=1時,可以得到拉普拉斯平滑的一種特殊形式,即圖卷積在頻譜域上的表示:
式中:Y為拉普拉斯平滑的形式;Z為圖卷積得到的表示,兩者在特定參數下得到統(tǒng)一形式。
那么,與拉普拉斯平滑法相反,通過與鄰居特征的銳化來計算節(jié)點屬性的新特征,相當于從平滑結果中重建節(jié)點特征。為了放大當前節(jié)點與其鄰居之間的差異,圖的銳化公式為:
式中:Y為X銳化后新的特征矩陣。相應地,當γ=1時,可以得到節(jié)點屬性信息的重建公式:
式中:為圖表示Z重建后得到的特征矩陣。
給定輸入節(jié)點屬性矩陣X∈Rn×m和鄰接矩陣A∈Rn×n,利用圖卷積網絡獲得編碼器,圖卷積的公式為:
式中:Wf為在卷積層中要訓練的權重矩陣;Z為卷積后得到的圖表示;σ(·)表示激活函數,例如ReLU(·)=max(0,·)。編碼過程如圖1的編碼部分所示。
解碼器重建圖數據,包括結構的重建和節(jié)點屬性的重建。計算重建的圖的結構的公式為:
式中:為重建的鄰接矩陣。圖結構重建過程如圖1的解碼上半部分所示。
使用交叉熵函數來衡量生成的圖結構與原始圖結構之間的差異。鄰接矩陣的重構誤差的公式為:
式中:a代表A中元素的值(0或1);代表中相應元素的值(0至1之間);Le為圖結構重建的損失函數。
給定節(jié)點表示矩陣Z∈Rn×c,其中c為節(jié)點類別的數量。計算重建的圖的節(jié)點屬性的公式為:
式中:Wg為在反卷積層中要訓練的權重矩陣;X^為重建后的節(jié)點屬性矩陣。經過銳化處理后,可以從平滑特征中重建圖數據的節(jié)點屬性特征,如圖1的解碼下半部分所示。
使用均方根誤差來衡量所生成的節(jié)點屬性矩陣與原始節(jié)點屬性矩陣之間的差異。節(jié)點屬性的重構誤差的公式為:
式中:RMSE代表均方根誤差的計算;Ln為節(jié)點屬性重建的損失函數。
給定輸入帶有屬性的圖數據G=(V,E),編碼部分通過圖卷積獲得圖的表示,解碼部分包含圖結構重建和節(jié)點屬性重建,統(tǒng)一后的損失函數L的公式為:
利用3個開源的引文網絡數據集,包括Cora、Citeseer和Pubmed[16]驗證本文所提出的NEGAE模型的有效性。數據集的詳細信息如表1所示。
表1實驗中使用的引文網絡數據集信息Tab.1 Information of citation network datasets used in experiments
將本文提出的方法與譜聚類(SC)[17]、DeepWalk(DW)[18]、圖自編碼器(GAE)[9]和變分圖自編碼器(VGAE)[15]等4種流行的基線方法進行比較。譜聚類(SC)[17]是一種學習社會表征的有效方法。DeepWalk(DW)[18]是一種將社會關系編碼為連續(xù)向量空間的網絡表示方法。圖自編碼器(GAE)[9]是用于圖數據的基于自動編碼器的一種框架,它利用了拓撲信息和內容信息進行無監(jiān)督學習。變分圖自編碼器(VGAE)[9]是一種變分的進行圖表示學習的圖自編碼器方法,它也利用拓撲和內容信息。
對于GAE、VGAE和NEGAE,按照Glorot的方法[19]進行初始化權重,使用Adam優(yōu)化算法[20]以0.01的學習率進行400次迭代訓練。在所有實驗中,都使用32維的隱藏層和16維的潛在變量。對于SC方法,按照Pedregosa的設置方式[21],即嵌入維數為128。對于DW方法,按照Grover提供的標準設置[22],即在單個迭代的訓練中,嵌入維數為128,每個節(jié)點的長度為80,隨機游走10次,上下文大小為10。
在所有3個數據集中,節(jié)點對應于文檔,邊對應(無向)引文。實驗評估了1000個測試節(jié)點上圖表示的相關任務的性能。另外,使用500個其他節(jié)點進行驗證,這與GCN[11]中用于超參數優(yōu)化的設置相同。記錄的結果是20次隨機權重初始化的運行的平均結果。
模型進行訓練時,數據集的部分引文鏈接(邊)已經被刪除,而所有節(jié)點特征均被保留下來。從先前刪除的邊和相同數量的未連接節(jié)點(非邊)的隨機采樣對中形成驗證和測試集,實驗記錄了測試集上每個模型的ROC曲線下面積(AUC)和平均精度分數(AP)。
3個引文網絡基準數據集的比較結果如表2所示,最佳結果標記為粗體。由表2可以看到,本文提出的方法NEGAE在所有數據集上始終優(yōu)于基線方法。此外,與GAE相比,NEGAE在所有數據集上均得到了改進,表明NEGAE模型可以學習到更有效的節(jié)點表示。
表2 鏈接預測結果Tab.2 Link prediction results
將得到的節(jié)點表示作為新的輸入,然后利用KMeans算法[23]執(zhí)行節(jié)點聚類任務。聚類簇數設置為數據集的類別數量。使用5個評估指標來評估聚類結果的質量,包括聚類準確度(clustering accuracy,ACC)、歸一化互信息(normalized mutual information,NMI)、調整蘭德指數(adjusted rand index,ARI)、精確度(precision)和F1分數(F1-score)。實驗結果如表3所示。
由表3可以發(fā)現,NEGAE在所有數據集上均取得良好的表現,其中在Cora、Citeseer數據集上的所有指標均優(yōu)于GAE方法,這再次驗證了NEGAE模型用于圖表示學習的有效性。
表3 節(jié)點聚類結果Tab.3 Node clustering results
采用Cora數據集,將模型學習到的特征表示經過2D t-SNE[24]變換,進行可視化操作。DeepWalk、GAE、VGAE和NEGAE輸出的可視化結果如圖2所示。不同的類別用不同的顏色標記。
圖2 Cora數據集上的t-SNE可視化Fig.2 t-SNE visualizations on Cora dataset
由圖2可以看出,與圖2(a)、(b)、(c)相比,圖2(d)中不同類別的分布更加清晰、緊湊,說明了NEGAE模型進行圖表示學習的較強能力。
本文提出了一種節(jié)點屬性增強的圖自編碼器(NEGAE),它是一種同時包含結構重建和節(jié)點屬性重建的新型模型,并在3個網絡數據集上對其有效性進行了驗證。結果表明:
(1)在鏈路預測任務中,NEGAE在Cora、Citeseer、Pubmed數據集上的AUC分別達到91.19%、90.27%、96.69%,均優(yōu)于基線方法;
(2)在聚類任務中,NEGAE在Cora、Citeseer、Pubmed數據集上的ACC分別達到60.31%、50.60%、66.79%,均優(yōu)于傳統(tǒng)GAE方法;
(3)實驗驗證了NEGAE模型用于圖表示學習的有效性。