本發(fā)明屬于計(jì)算機(jī)科學(xué)和網(wǎng)絡(luò)數(shù)據(jù)挖掘,涉及一種結(jié)合全局信息的圖掩碼自編碼器訓(xùn)練方法、設(shè)備及產(chǎn)品,具體涉及一種基于圖結(jié)構(gòu)信息和節(jié)點(diǎn)特征信息的圖掩碼自編碼器生成式自監(jiān)督圖預(yù)訓(xùn)練方法、設(shè)備及產(chǎn)品。
背景技術(shù):
1、圖是一種用于描述實(shí)體及其關(guān)系的數(shù)據(jù)結(jié)構(gòu),通過節(jié)點(diǎn)和邊來表示實(shí)體以及實(shí)體間的復(fù)雜關(guān)系。圖結(jié)構(gòu)數(shù)據(jù)作為一種豐富的信息載體,與圖像和文本等傳統(tǒng)的數(shù)據(jù)格式不同,圖數(shù)據(jù)沒有固定的結(jié)構(gòu),而且高度稀疏,在數(shù)據(jù)挖掘和信息檢索的研究工作中變得越來越重要。
2、深度學(xué)習(xí)在圖結(jié)構(gòu)數(shù)據(jù)上的巨大成功往往很大程度上依賴著海量的標(biāo)記數(shù)據(jù),大多數(shù)工作都集中在有監(jiān)督或半監(jiān)督學(xué)習(xí)的設(shè)置下,即通過特定的下游任務(wù)和豐富的標(biāo)記數(shù)據(jù)來訓(xùn)練模型。不過在現(xiàn)有的研究中,有時(shí)圖結(jié)構(gòu)的標(biāo)記數(shù)據(jù)存在著極度稀缺的情況,并且高質(zhì)量的標(biāo)記數(shù)據(jù)通常需要耗費(fèi)大量時(shí)間成本與資源成本,尤其是在生物信息、社交網(wǎng)絡(luò)等領(lǐng)域。標(biāo)記數(shù)據(jù)的稀缺、標(biāo)注困難等問題限制著有監(jiān)督或半監(jiān)督學(xué)習(xí)方式在圖結(jié)構(gòu)數(shù)據(jù)研究中的廣泛應(yīng)用。
3、為了應(yīng)對(duì)這一挑戰(zhàn),許多技術(shù)和方法被提出,以充分利用現(xiàn)有的大量未標(biāo)記數(shù)據(jù),旨在增強(qiáng)圖學(xué)習(xí)模型的訓(xùn)練效果。自監(jiān)督圖預(yù)訓(xùn)練方法因其有效性而備受關(guān)注,在學(xué)術(shù)界和工業(yè)界都獲得了很大程度的關(guān)注。自監(jiān)督圖預(yù)訓(xùn)練方法可以大致概括為對(duì)比式自監(jiān)督圖學(xué)習(xí)和生成式自監(jiān)督圖學(xué)習(xí)。在生成式自監(jiān)督圖學(xué)習(xí)的研究發(fā)展中,圖掩碼自編碼器的出現(xiàn)標(biāo)志著自監(jiān)督圖預(yù)訓(xùn)練領(lǐng)域取得了一個(gè)重大進(jìn)展,特別是圖掩碼自編碼器在圖分類等下游任務(wù)中的效果尤為明顯。然而,現(xiàn)有的圖掩碼自編碼器主要通過隨機(jī)掩碼方法、簡(jiǎn)單的圖神經(jīng)網(wǎng)絡(luò)編碼器和節(jié)點(diǎn)級(jí)的優(yōu)化目標(biāo),來利用局部信息學(xué)習(xí)圖的表示,從而忽略了圖中豐富的全局信息。全局信息理解為反映整個(gè)圖語義和結(jié)構(gòu)的信息,通過圖中長(zhǎng)距離節(jié)點(diǎn)的信息融合來提取。
技術(shù)實(shí)現(xiàn)思路
1、為了解決上述技術(shù)問題,本發(fā)明結(jié)合全局信息的圖掩碼自編碼器,透提出了一種基于圖結(jié)構(gòu)信息和節(jié)點(diǎn)特征信息的圖掩碼自編碼器生成式自監(jiān)督圖預(yù)訓(xùn)練方法、設(shè)備及產(chǎn)品。
2、本發(fā)明的方法采用的技術(shù)方案是:一種圖掩碼自編碼器生成式自監(jiān)督圖預(yù)訓(xùn)練方法,包括以下步驟:
3、步驟1:輸入需要進(jìn)行圖分類的圖數(shù)據(jù)集、節(jié)點(diǎn)特征集合、節(jié)點(diǎn)的真實(shí)標(biāo)簽、掩碼的比例、聚類子圖數(shù)量、神經(jīng)網(wǎng)絡(luò)層數(shù);
4、步驟2:使用從局部過渡到全局的聚類掩碼方法對(duì)圖中的節(jié)點(diǎn)特征進(jìn)行遮蔽,首先從一個(gè)子圖內(nèi)的局部節(jié)點(diǎn)開始進(jìn)行遮蔽,并逐步地對(duì)整個(gè)子圖內(nèi)的所有節(jié)點(diǎn)進(jìn)行遮蔽,以此讓圖掩碼自編碼器從圖中的局部信息學(xué)習(xí)開始,并逐漸融合跨子圖的全局信息;
5、步驟3:使用捕捉全局信息的混合編碼機(jī)制訓(xùn)練圖掩碼自編碼器。
6、作為優(yōu)選,步驟2的具體實(shí)現(xiàn)包括以下子步驟:
7、步驟2.1:圖數(shù)據(jù)預(yù)處理;
8、將圖數(shù)據(jù)采用metis聚類子圖算法劃分成幾個(gè)不相交的聚類子圖,且各個(gè)聚類子圖互不相交;
9、步驟2.2:聚類子圖內(nèi)的節(jié)點(diǎn)掩碼;
10、在訓(xùn)練的開始階段,隨機(jī)選擇每個(gè)聚類子圖內(nèi)部的一部分節(jié)點(diǎn)集合的節(jié)點(diǎn)特征進(jìn)行遮蔽;
11、步驟2.3:從聚類子圖內(nèi)過渡到聚類子圖間的掩碼;
12、隨著訓(xùn)練的進(jìn)行,在某些聚類子圖內(nèi)的所有節(jié)點(diǎn)的特征會(huì)被全部遮蔽掉,與此同時(shí)其他剩余的聚類子圖內(nèi)的一些節(jié)點(diǎn)的特征也在繼續(xù)被遮蔽;
13、步驟2.4:跨聚類子圖間的節(jié)點(diǎn)掩碼;
14、在訓(xùn)練的最后階段,被選中的聚類子圖內(nèi)的所有節(jié)點(diǎn)特征都將被完全地遮蔽掉,模型的學(xué)習(xí)目標(biāo)轉(zhuǎn)變?yōu)榛谄渌S嘧訄D中的節(jié)點(diǎn)信息來預(yù)測(cè)被完全掩碼子圖中的節(jié)點(diǎn)特征。
15、作為優(yōu)選,步驟2中所述圖掩碼自編碼器,包括圖神經(jīng)網(wǎng)絡(luò)編碼模塊、transformer編碼模塊和解碼器模塊;所述圖神經(jīng)網(wǎng)絡(luò)編碼模塊,包括串聯(lián)設(shè)置的n個(gè)圖同構(gòu)網(wǎng)絡(luò),用來捕捉融合輸入圖中的局部的、節(jié)點(diǎn)鄰域級(jí)的信息;所述transformer編碼模塊,包括串聯(lián)設(shè)置的n個(gè)自注意力機(jī)制層,通過增加整個(gè)圖中的長(zhǎng)距離交互,使得該圖掩碼自編碼器增加了考慮全局圖信息的能力;所述解碼器模塊,包括一個(gè)圖同構(gòu)網(wǎng)絡(luò)或者多層感知機(jī),用于將編碼器生成的潛在節(jié)點(diǎn)嵌入映射為重構(gòu)的節(jié)點(diǎn)特征;其中,n為預(yù)設(shè)值。
16、作為優(yōu)選,所述圖神經(jīng)網(wǎng)絡(luò),其編碼的處理過程為:
17、
18、其中,a表示輸入圖的鄰接矩陣,h(l-1)表示在經(jīng)過第l-1層圖神經(jīng)網(wǎng)絡(luò)編碼器后的節(jié)點(diǎn)嵌入,表示第l層圖神經(jīng)網(wǎng)絡(luò)編碼器。
19、作為優(yōu)選,所述圖transformer,其編碼的處理過程為:
20、
21、其中,h(l)為在經(jīng)過第l層transformer編碼器后的潛在節(jié)點(diǎn)嵌入,以及分別圖transformer中自注意力層的可學(xué)習(xí)參數(shù)矩陣,σ表示最后的輸出前的softmax函數(shù),d分別表示潛在節(jié)點(diǎn)嵌入的維度。
22、作為優(yōu)選,在解碼器部分中,解碼器f將潛在的節(jié)點(diǎn)嵌入h映射回節(jié)點(diǎn)特征x;圖掩碼自編碼器輸出所有節(jié)點(diǎn)的潛在表征后,對(duì)被掩碼的節(jié)點(diǎn)在輸入到解碼器之前進(jìn)行重新掩碼;
23、
24、其中,是節(jié)點(diǎn)vi輸入到解碼器的節(jié)點(diǎn)潛在表征,hm是被重新掩碼后的節(jié)點(diǎn)表征,v表示被掩碼的節(jié)點(diǎn)的集合;
25、在經(jīng)過重新掩碼后,圖的節(jié)點(diǎn)表征輸入到解碼器中以重構(gòu)節(jié)點(diǎn)的輸入特征。
26、作為優(yōu)選,步驟3中,采用多任務(wù)優(yōu)化的策略對(duì)圖掩碼自編碼器進(jìn)行訓(xùn)練;其中,采用的多任務(wù)優(yōu)化損失函數(shù)l為:
27、l=l1+λl2;
28、
29、其中,vm表示被掩碼的節(jié)點(diǎn)的集合,xi表示節(jié)點(diǎn)i的原始特征,hi表示節(jié)點(diǎn)i的經(jīng)過解碼器還原的節(jié)點(diǎn)特征;λ為權(quán)重值;zt表示的是從大型的已預(yù)訓(xùn)練好的教師模型中得到的圖級(jí)別表征,pool表示的是圖池化操作,fproj表示的是投影處理函數(shù),表示節(jié)點(diǎn)vi從學(xué)生模型中得到的節(jié)點(diǎn)表征。
30、本發(fā)明的設(shè)備采用的技術(shù)方案是:一種圖掩碼自編碼器生成式自監(jiān)督圖預(yù)訓(xùn)練設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在所述存儲(chǔ)器上并可在所述處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述程序時(shí)實(shí)現(xiàn)圖掩碼自編碼器生成式自監(jiān)督圖預(yù)訓(xùn)練方法。
31、本發(fā)明的產(chǎn)品采用的技術(shù)方案是:一種軟件產(chǎn)品,包括計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)圖掩碼自編碼器生成式自監(jiān)督圖預(yù)訓(xùn)練方法。
32、相對(duì)于現(xiàn)有技術(shù),本發(fā)明的有益效果包括:
33、(1)本發(fā)明使用從局部過渡到全局的聚類掩碼方法對(duì)圖中的節(jié)點(diǎn)特征進(jìn)行遮蔽,首先從一個(gè)子圖內(nèi)的局部節(jié)點(diǎn)開始進(jìn)行遮蔽,并逐步地對(duì)整個(gè)子圖內(nèi)的所有節(jié)點(diǎn)進(jìn)行遮蔽,以此讓模型從圖中的局部信息學(xué)習(xí)開始,并逐漸融合跨子圖的全局的信息,促進(jìn)了圖掩碼自編碼器進(jìn)行一個(gè)從局部過渡到全局的學(xué)習(xí)過程。
34、(2)本發(fā)明使用捕捉全局信息的混合編碼機(jī)制訓(xùn)練該圖掩碼自編碼器。該編碼機(jī)制的核心在于利用了圖神經(jīng)網(wǎng)絡(luò)和圖transformer這兩種架構(gòu)的優(yōu)勢(shì),圖神經(jīng)網(wǎng)絡(luò)擅長(zhǎng)捕捉局部的、節(jié)點(diǎn)鄰域級(jí)的信息,而另一方面引入圖transformer,通過增加整個(gè)圖中的長(zhǎng)距離交互,使得圖掩碼自編碼器增加了考慮全局圖信息的能力。
35、(3)本發(fā)明使用融合全局信息的多任務(wù)優(yōu)化策略優(yōu)化該圖掩碼自編碼器。該優(yōu)化策略的核心在于不僅繼續(xù)將節(jié)點(diǎn)特征重建當(dāng)作圖掩碼自編碼器的優(yōu)化重點(diǎn),而且結(jié)合了預(yù)測(cè)全局圖屬性的輔助任務(wù)。使用更大的預(yù)訓(xùn)練圖掩碼自編碼器當(dāng)作教師模型做知識(shí)補(bǔ)充,使得結(jié)合全局信息的圖掩碼自編碼器(學(xué)生模型)能夠更好地捕捉圖中的全局信息,進(jìn)行更廣泛的圖表示學(xué)習(xí)。
36、(4)本發(fā)明設(shè)計(jì)了多任務(wù)優(yōu)化的策略,打破了現(xiàn)有圖掩碼自編碼器將節(jié)點(diǎn)特征重建作為唯一優(yōu)化目標(biāo)的局限性,不僅繼續(xù)將節(jié)點(diǎn)特征重建當(dāng)作圖掩碼自編碼器優(yōu)化的重點(diǎn),而且結(jié)合了預(yù)測(cè)全局圖屬性的輔助任務(wù),促使模型更好地捕捉圖中的全局信息,并且通過知識(shí)蒸餾的方法賦予模型在全局信息處理方面的高級(jí)能力。