孫 悅,趙宇紅,薛 婷
(內(nèi)蒙古科技大學(xué) 信息工程學(xué)院,內(nèi)蒙古 包頭 014010)
社區(qū)發(fā)現(xiàn)是將網(wǎng)絡(luò)中的相似節(jié)點(diǎn)聚成一個(gè)社區(qū),且同一社區(qū)內(nèi)的節(jié)點(diǎn)連接緊密[1]。早期,學(xué)者把網(wǎng)絡(luò)中的節(jié)點(diǎn)和邊都為同一類型的網(wǎng)絡(luò)稱為同質(zhì)網(wǎng)絡(luò),并提出基于圖分割算法,基于模塊度優(yōu)化算法[2]等社區(qū)發(fā)現(xiàn)方法。但現(xiàn)實(shí)世界中多為異質(zhì)網(wǎng)絡(luò),即節(jié)點(diǎn)和邊是多種類型。同質(zhì)網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)方法適用于異質(zhì)網(wǎng)絡(luò),但社區(qū)劃分準(zhǔn)確率較低。隨著研究的深入,研究者發(fā)現(xiàn)真實(shí)網(wǎng)絡(luò)中的社區(qū)存在重疊現(xiàn)象,即一個(gè)節(jié)點(diǎn)屬于多個(gè)社區(qū)。而異質(zhì)網(wǎng)絡(luò)中的重疊社區(qū)發(fā)現(xiàn)尚在起步階段,具有較大的研究空間。學(xué)者將SLPA算法[3]進(jìn)行改進(jìn)提出異質(zhì)網(wǎng)絡(luò)重疊社區(qū)發(fā)現(xiàn)算法NELPA[4]。研究表明圖神經(jīng)網(wǎng)絡(luò)(GNN)可以充分提取網(wǎng)絡(luò)中的各種信息,但傳統(tǒng)的GNN不能利用異質(zhì)網(wǎng)絡(luò)不同的語(yǔ)義信息。本文基于GNN提出HAOCD(heterogeneous graph attention of overlapping community discovery)模型解決異質(zhì)網(wǎng)絡(luò)中重疊社區(qū)發(fā)現(xiàn)問(wèn)題,其中貢獻(xiàn)有以下幾點(diǎn):①結(jié)合異質(zhì)網(wǎng)絡(luò)多種元路徑的結(jié)構(gòu)和屬性信息構(gòu)建異質(zhì)網(wǎng)絡(luò)的節(jié)點(diǎn)特征表示;②改變基于GNN的異質(zhì)圖注意網(wǎng)絡(luò)(HAN)[5]中語(yǔ)義級(jí)注意的激活函數(shù),解決梯度消失問(wèn)題,并生成新的節(jié)點(diǎn)特征向量,更好利用異質(zhì)網(wǎng)絡(luò)豐富語(yǔ)義信息;③通過(guò)圖卷積神經(jīng)網(wǎng)絡(luò)[6](graph convolutional neural networks,GCN)生成社區(qū)隸屬矩陣,并將Bernoulli-Poisson(B-P)模型的負(fù)對(duì)數(shù)似然函數(shù)作為損失函數(shù)優(yōu)化社區(qū)重疊度,并通過(guò)社區(qū)劃分的閾值得到最終異質(zhì)網(wǎng)絡(luò)重疊社區(qū)劃分結(jié)果。
圖神經(jīng)網(wǎng)絡(luò)(GNN)的概念由Gori等提出,并由Scarselli等進(jìn)一步闡明[7],它具有對(duì)圖數(shù)據(jù)之間依賴關(guān)系進(jìn)行建模的強(qiáng)大功能,并且可以對(duì)圖數(shù)據(jù)進(jìn)行特征提取和表示[8],可以用于節(jié)點(diǎn)分類、鏈路預(yù)測(cè)、社區(qū)發(fā)現(xiàn)等數(shù)據(jù)挖掘領(lǐng)域。
Bruna等基于譜圖論(spectral graph theory)提出了GCN。GCN與卷積神經(jīng)網(wǎng)絡(luò)(CNN)本質(zhì)上是一致的,都是將鄰域信息進(jìn)行聚合計(jì)算。不同點(diǎn)是CNN處理的是以像素點(diǎn)排列成的歐幾里德結(jié)構(gòu)的數(shù)據(jù),而GCN處理的是由節(jié)點(diǎn)和邊構(gòu)成的非歐幾里德結(jié)構(gòu)的數(shù)據(jù)[9],例如社交網(wǎng)絡(luò)、引文網(wǎng)絡(luò)等。
注意力機(jī)制在計(jì)算機(jī)各個(gè)領(lǐng)域都有大量的應(yīng)用,包括機(jī)器翻譯、自然語(yǔ)言處理、圖像識(shí)別等領(lǐng)域。例如在機(jī)器翻譯領(lǐng)域,學(xué)者們發(fā)現(xiàn)上下文單詞對(duì)目標(biāo)單詞的影響力不同,引入注意力模型(attention model,AM)可以得到不同單詞相對(duì)目標(biāo)單詞的權(quán)重信息,來(lái)提高翻譯的準(zhǔn)確性。通過(guò)注意力機(jī)制可以學(xué)習(xí)到不同信息的權(quán)重,更好利用影響力高的信息。注意力機(jī)制具有不同的類型包括自注意力、多頭注意力、硬注意力和軟注意力、全局注意力和局部注意力等機(jī)制[10]。
隨著圖神經(jīng)網(wǎng)絡(luò)的提出,許多研究者將注意力機(jī)制與圖神經(jīng)網(wǎng)絡(luò)結(jié)合并應(yīng)用到各個(gè)領(lǐng)域中,并且相對(duì)傳統(tǒng)算法都有良好的表現(xiàn)。注意力機(jī)制結(jié)合圖神經(jīng)網(wǎng)絡(luò)有多種形式應(yīng)用,包括聚合特征信息時(shí)向不同近鄰分配注意力權(quán)重,根據(jù)注意力權(quán)重集成多個(gè)模型,以及使用注意力權(quán)重引導(dǎo)隨機(jī)游走等。圖注意力網(wǎng)絡(luò)(GAT)[11]是將GCN與注意力機(jī)制進(jìn)行結(jié)合,根據(jù)不同鄰居節(jié)點(diǎn)特征對(duì)節(jié)點(diǎn)的影響力不同的特點(diǎn),通過(guò)注意力機(jī)制得到不同鄰居節(jié)點(diǎn)的權(quán)重,充分利用影響力高的鄰居節(jié)點(diǎn)的特征聚合該節(jié)點(diǎn)的特征信息。
B-P模型是一種允許重疊社區(qū)的圖生成模型,通過(guò)B-P模型可以優(yōu)化重疊社區(qū)發(fā)現(xiàn)結(jié)果。Mingyuan Zhou[12]提出的邊緣劃分模型(edge partition model)中首先提出了泊松因子模型。為了將提出的泊松因子模型用于具有二進(jìn)制鄰接矩陣的非加權(quán)網(wǎng)絡(luò),研究者提出了伯努利-泊松鏈(BerPo Link)。
伯努利-泊松鏈可以衡量不同節(jié)點(diǎn)與多個(gè)社區(qū)的關(guān)系,所以可以用于重疊社區(qū)發(fā)現(xiàn)。Shchur O等[13]基于伯努利-泊松鏈提出可用于重疊社區(qū)發(fā)現(xiàn)的B-P模型,其公式如式(1)所示
(1)
式中:Auv∈N×N是節(jié)點(diǎn)的鄰接矩陣;是社區(qū)隸屬矩陣。Fu是F的行向量。從公式可以看出點(diǎn)積越高,即節(jié)點(diǎn)u和節(jié)點(diǎn)v共有的社區(qū)越多,節(jié)點(diǎn)u,v越有可能通過(guò)邊連接。
同樣,Adrien等[14]提出可用于重疊社區(qū)的馬爾科夫鏈蒙特卡洛(Markov chain Monte Carlo)模型也應(yīng)用了B-P模型,得到單個(gè)節(jié)點(diǎn)對(duì)每個(gè)社區(qū)從屬程度的權(quán)重信息。
定義1 異質(zhì)網(wǎng)絡(luò):給定屬性網(wǎng)絡(luò)G(V,E,S,R), 其中V={v1,v2,…,vn} 是n個(gè)節(jié)點(diǎn)集合;E是邊集,且|E|=m,m為總邊數(shù);S為節(jié)點(diǎn)類型的集合;R為邊類型的集合。當(dāng)網(wǎng)絡(luò)中節(jié)點(diǎn)類型滿足 |S|>1或關(guān)系類型滿足 |R|>1時(shí),稱這樣的網(wǎng)絡(luò)為異質(zhì)網(wǎng)絡(luò)。
定義2 重疊社區(qū):將圖劃分為k個(gè)社區(qū),將其定義為C={c1,c2,…,ck}。 若節(jié)點(diǎn)i∈c1且i∈c2, 即存在一個(gè)節(jié)點(diǎn)屬于多個(gè)社區(qū)。直觀的解釋是,一個(gè)作者可以在多個(gè)領(lǐng)域發(fā)表論文,一篇論文也可以同時(shí)屬于多個(gè)領(lǐng)域。
本文提出基于異質(zhì)圖注意力網(wǎng)絡(luò)的重疊社區(qū)發(fā)現(xiàn)方法HAOCD模型,先構(gòu)建異質(zhì)網(wǎng)絡(luò)架構(gòu),結(jié)合結(jié)構(gòu)信息和屬性信息將不同類型的節(jié)點(diǎn)和特征嵌入到統(tǒng)一的特征空間,使圖神經(jīng)網(wǎng)絡(luò)適用于異質(zhì)網(wǎng)絡(luò)。然后基于異質(zhì)圖注意力網(wǎng)絡(luò),利用雙層注意力機(jī)制捕捉節(jié)點(diǎn)級(jí)的重要性和語(yǔ)義級(jí)的重要性,融合所有重要性信息得到節(jié)點(diǎn)的特征向量。新的節(jié)點(diǎn)特征向量充分結(jié)合了異質(zhì)網(wǎng)絡(luò)不同類型節(jié)點(diǎn)的語(yǔ)義信息和重要性信息。然后將節(jié)點(diǎn)的特征向量經(jīng)過(guò)GCN訓(xùn)練和B-P模型重構(gòu)損失得到最終的重疊社區(qū)隸屬關(guān)系矩陣。HAOCD模型圖如圖1所示。
圖1 HAOCD模型
2.3.1 異質(zhì)網(wǎng)絡(luò)特征表示
異質(zhì)網(wǎng)絡(luò)包含豐富的結(jié)構(gòu)信息和屬性信息,本文首先將不同類型的節(jié)點(diǎn)根據(jù)指定元路徑得到基于元路徑的結(jié)構(gòu)信息,然后將基于元路徑的結(jié)構(gòu)信息和節(jié)點(diǎn)的屬性信息結(jié)合構(gòu)建異質(zhì)網(wǎng)絡(luò)特征表示Hφi, 其公式如式(2)所示
Hφi=X·Aφi
(2)
式中:X表示節(jié)點(diǎn)的屬性信息,Aφi表示基于元路徑的結(jié)構(gòu)信息。
2.3.2 異質(zhì)圖注意力網(wǎng)絡(luò)
本文研究異質(zhì)網(wǎng)絡(luò)的重疊社區(qū)發(fā)現(xiàn)算法,異質(zhì)網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)基于不同元路徑的鄰居具有不同的影響能力,而且不同元路徑包含的語(yǔ)義信息不同,對(duì)社區(qū)發(fā)現(xiàn)任務(wù)也具有不同影響。因此引入HAN,它具有節(jié)點(diǎn)級(jí)和語(yǔ)義級(jí)兩層注意力機(jī)制,捕捉節(jié)點(diǎn)級(jí)的重要性和語(yǔ)義級(jí)的重要性。本文將HAN的語(yǔ)義級(jí)注意的激活函數(shù)進(jìn)行改進(jìn),采用RELU函數(shù),解決訓(xùn)練過(guò)程中梯度消失問(wèn)題。HAN節(jié)點(diǎn)級(jí)和語(yǔ)義級(jí)注意機(jī)制的聚合過(guò)程如圖2所示。
(1)節(jié)點(diǎn)級(jí)注意力機(jī)制
(3)
(4)
(5)
從公式可以看出節(jié)點(diǎn)i基于元路徑φ的節(jié)點(diǎn)級(jí)注意的嵌入向量與它所有的一階鄰居節(jié)點(diǎn)有關(guān)。
由于單個(gè)元路徑的單個(gè)注意力,不夠穩(wěn)定且圖數(shù)據(jù)方差大,所以本文使用多頭注意力,使訓(xùn)練過(guò)程更加穩(wěn)定,其公式如式(6)所示
(6)
式中:X為注意力頭數(shù)。最終得到P組基于不同元路徑的節(jié)點(diǎn)級(jí)嵌入向量,P為選取的不同元路徑的總數(shù),嵌入向量表示為 {Zφ1,Zφ2,…,Zφp}, 節(jié)點(diǎn)級(jí)注意詳細(xì)過(guò)程如圖2所示。
圖2 異質(zhì)圖注意力網(wǎng)絡(luò)雙層注意機(jī)制
(2)語(yǔ)義級(jí)注意
不同元路徑代表了不同的語(yǔ)義信息,對(duì)于社區(qū)發(fā)現(xiàn)任務(wù),不同元路徑對(duì)社區(qū)發(fā)現(xiàn)結(jié)果也有不同的影響能力。為了更好的捕捉不同的語(yǔ)義信息,使用語(yǔ)義級(jí)注意自動(dòng)學(xué)習(xí)不同元路徑對(duì)社區(qū)發(fā)現(xiàn)的重要性。將得到的P組基于不同元路徑的節(jié)點(diǎn)級(jí)嵌入向量 {Zφ1,Zφ2,…,Zφp} 作為輸入,通過(guò)語(yǔ)義級(jí)注意的神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)每個(gè)元路徑的權(quán)重,其公式如式(7)所示
{βφ1,βφ2…,βφp}=attsem(Zφ1,Zφ2…,Zφp}
(7)
式中:attsem表示語(yǔ)義級(jí)注意的圖神經(jīng)網(wǎng)絡(luò)。
為了捕捉不同元路徑的重要性,利用結(jié)合語(yǔ)義級(jí)注意力機(jī)制的單層感知機(jī),并且將ReLU函數(shù)作為激活函數(shù),得到該元路徑對(duì)不同的節(jié)點(diǎn)的重要性,其公式如式(8)所示
ωφi=qT·f(Zφi)=qT·ReLU(W·Zφi+b)
(8)
式中:i∈P表示元路徑i;ωφi表示元路徑i對(duì)不同節(jié)點(diǎn)的重要性;f(·) 是所使用的單層感知機(jī);ReLU(·) 是單層感知機(jī)所用的非線性激活函數(shù);W是單層感知機(jī)的權(quán)值向量;b是單層感知機(jī)的偏差向量;q是語(yǔ)義級(jí)注意向量。
將特定元路徑對(duì)不同節(jié)點(diǎn)的重要性ωφi的平均值作為這條元路徑的重要性ωφi,其公式如式(9)所示
(9)
然后,上述得到的不同元路徑的重要性需要通過(guò)softmax函數(shù)進(jìn)行歸一化處理,最終得到元路徑的權(quán)重系數(shù)βφi, 其公式如式(10)所示
(10)
利用學(xué)習(xí)到的權(quán)重系數(shù)與特定元路徑的嵌入進(jìn)行融合聚集,獲得最終的節(jié)點(diǎn)特征嵌入,詳細(xì)過(guò)程如圖2所示,其公式如式(11)所示
(11)
2.3.3 圖卷積網(wǎng)絡(luò)
基于異質(zhì)注意網(wǎng)絡(luò)得到了節(jié)點(diǎn)特征嵌入Z,然后以Z作為輸入數(shù)據(jù)經(jīng)過(guò)GCN得到社區(qū)隸屬矩陣F,GCN的構(gòu)成如式(12)所示
(12)
式中:A∈N×N是節(jié)點(diǎn)的鄰接矩陣;是結(jié)合自循環(huán)的鄰接矩陣;ReLU(·) 是非線性激活函數(shù)可以確保F的非負(fù)性;W是權(quán)重矩陣。
接著,將B-P模型的負(fù)對(duì)數(shù)似然作為損失函數(shù),并且最小化B-P模型的負(fù)對(duì)數(shù)似然來(lái)優(yōu)化社區(qū)隸屬矩陣F,其公式如式(13)所示
(13)
得到最終的社區(qū)隸屬矩陣后,設(shè)置一個(gè)固定閾值ρ, 進(jìn)行二元社區(qū)分配。具體過(guò)程為,如果節(jié)點(diǎn)i的隸屬?gòu)?qiáng)度Fuv高于固定閾值ρ, 將節(jié)點(diǎn)i分配給社區(qū)c。
為了驗(yàn)證異質(zhì)網(wǎng)絡(luò)重疊社區(qū)發(fā)現(xiàn)HAOCD模型的有效性和可行性,本文選取了2個(gè)真實(shí)異質(zhì)網(wǎng)絡(luò)數(shù)據(jù)集和2個(gè)同質(zhì)網(wǎng)絡(luò)數(shù)據(jù)集與傳統(tǒng)社區(qū)發(fā)現(xiàn)算法和其它基于圖神經(jīng)網(wǎng)絡(luò)的算法進(jìn)行對(duì)比實(shí)驗(yàn)分析。
本文選取了DBLP、IMDB兩個(gè)真實(shí)異質(zhì)網(wǎng)絡(luò)數(shù)據(jù)集和兩個(gè)同質(zhì)網(wǎng)絡(luò)Facebook數(shù)據(jù)集。下面詳細(xì)敘述這幾個(gè)數(shù)據(jù)集,其參數(shù)見(jiàn)表1。
表1 數(shù)據(jù)集參數(shù)
DBLP數(shù)據(jù)集。此數(shù)據(jù)集是經(jīng)典的記錄計(jì)算機(jī)領(lǐng)域文獻(xiàn)的數(shù)據(jù)集。本文選取DBLP-FOUR-AREA中的一個(gè)子集,包含作者(Author)、論文(Paper)、會(huì)議(Confe-rence)、術(shù)語(yǔ)(Term)4種類型的節(jié)點(diǎn)。作者分為數(shù)據(jù)庫(kù)、數(shù)據(jù)挖掘、信息檢索、機(jī)器學(xué)習(xí)4個(gè)領(lǐng)域。作者特征是由關(guān)鍵字組成的單詞包構(gòu)成。
IMDB數(shù)據(jù)集。此數(shù)據(jù)集是經(jīng)典的電影數(shù)據(jù)集。本文選取IMDB中的一個(gè)子集,包含電影(Movie)、導(dǎo)演(Director)、演員(Actor)3種類型的節(jié)點(diǎn)。電影分為動(dòng)作片、喜劇片、戲劇片3種類型。電影的特征是由情節(jié)組成的單詞包元素構(gòu)成。
Facebook數(shù)據(jù)集1(F1)和Facebook數(shù)據(jù)集2(F2)。此數(shù)據(jù)集是社交網(wǎng)絡(luò)數(shù)據(jù)集。本文選取Facebook網(wǎng)絡(luò)中兩個(gè)小型同質(zhì)網(wǎng)絡(luò)數(shù)據(jù)集。Facebook用戶為網(wǎng)絡(luò)中的節(jié)點(diǎn),社區(qū)由真實(shí)人際關(guān)系構(gòu)成。用戶的特征由用戶的信息構(gòu)成。
通過(guò)對(duì)節(jié)點(diǎn)類型、元路徑語(yǔ)義、元路徑長(zhǎng)度的充分考慮與分析,在DBLP數(shù)據(jù)集選取APA、APCPA、APTPA這3條元路徑信息,在IMDB數(shù)據(jù)集選取MDM、MAM兩條元路徑信息。
社區(qū)發(fā)現(xiàn)的評(píng)價(jià)指標(biāo)大致分為兩類:一類是需要真實(shí)社區(qū)劃分結(jié)果,例如標(biāo)準(zhǔn)化互信息NMI值和準(zhǔn)確率precsion;另一類不需要真實(shí)社區(qū)劃分結(jié)果,例如模塊度Q。模塊度Q是經(jīng)典的社區(qū)發(fā)現(xiàn)評(píng)價(jià)指標(biāo),通過(guò)計(jì)算同一社區(qū)和不同社區(qū)之間邊的關(guān)系,可以衡量社區(qū)發(fā)現(xiàn)的穩(wěn)定度。擴(kuò)展模塊度EQ考慮了社區(qū)之間的重疊節(jié)點(diǎn),適用于重疊社區(qū)發(fā)現(xiàn)算法。
本文所研究異質(zhì)網(wǎng)絡(luò)重疊社區(qū)發(fā)現(xiàn)算法,選擇不需真實(shí)社區(qū)發(fā)現(xiàn)結(jié)果的評(píng)價(jià)指標(biāo)擴(kuò)展模塊度EQ,并且根據(jù)異質(zhì)網(wǎng)絡(luò)不同節(jié)點(diǎn)類型的特點(diǎn),結(jié)合特定元路徑的鄰接矩陣和元路徑權(quán)重系數(shù),將擴(kuò)展模塊度EQ函數(shù)改進(jìn)為EQ*,其公式如式(14)所示
(14)
本文提出的HAOCD模型與傳統(tǒng)社區(qū)發(fā)現(xiàn)算法SLPA,異質(zhì)網(wǎng)絡(luò)重疊社區(qū)發(fā)現(xiàn)方法NELPA,基于圖神經(jīng)網(wǎng)絡(luò)的算法GAT、HAN、NOCD進(jìn)行對(duì)比。
SLPA:是一種傳統(tǒng)的重疊社區(qū)發(fā)現(xiàn)算法,是LPA[16](標(biāo)簽傳播算法)的擴(kuò)展,它通過(guò)記錄每次迭代所分配的社區(qū)來(lái)實(shí)現(xiàn)重疊社區(qū)發(fā)現(xiàn)。
NELPA:是一種基于SLPA的異質(zhì)網(wǎng)絡(luò)重疊社區(qū)發(fā)現(xiàn)算法,首先通過(guò)Metapath2vec異質(zhì)網(wǎng)絡(luò)嵌入方法獲得節(jié)點(diǎn)嵌入向量,然后改進(jìn)SLPA算法實(shí)現(xiàn)重疊社區(qū)發(fā)現(xiàn)。
GAT:一種基于圖神經(jīng)網(wǎng)絡(luò)結(jié)合注意力機(jī)制的同質(zhì)網(wǎng)絡(luò)圖嵌入方法,得到節(jié)點(diǎn)嵌入之后采用K-MEANS方法進(jìn)行聚類得到社區(qū)發(fā)現(xiàn)結(jié)果。
HAN:一種基于圖神經(jīng)網(wǎng)絡(luò)結(jié)合注意力機(jī)制的異質(zhì)圖嵌入方法,同樣采用K-MEANS方法對(duì)得到的節(jié)點(diǎn)嵌入進(jìn)行聚類得到社區(qū)發(fā)現(xiàn)結(jié)果。
NOCD:一種同質(zhì)網(wǎng)絡(luò)中基于圖神經(jīng)網(wǎng)絡(luò)的重疊社區(qū)發(fā)現(xiàn)方法,采用B-P模型重構(gòu)損失,使得到的社區(qū)結(jié)果更接近真實(shí)社區(qū)。
3.4.1 實(shí)驗(yàn)過(guò)程
對(duì)于基線算法,SLPA和NELPA算法設(shè)置標(biāo)簽閾值r為0.35。GAT算法設(shè)置注意力頭X的數(shù)量為8。HAN算法設(shè)置注意力頭X的數(shù)量為8,語(yǔ)義級(jí)注意向量q的維數(shù)為128。NOCD算法設(shè)置固定閾值ρ為0.5。為了對(duì)比實(shí)驗(yàn)的統(tǒng)一性,所有算法都采用100patience的提前停止策略。并都使用改進(jìn)過(guò)的擴(kuò)展模塊度EQ*作為標(biāo)準(zhǔn)對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行測(cè)評(píng)。
3.4.2 參數(shù)分析
本文對(duì)兩個(gè)異質(zhì)網(wǎng)絡(luò)數(shù)據(jù)集DBLP和IMDB進(jìn)行實(shí)驗(yàn),從模型的注意力頭數(shù)X,語(yǔ)義級(jí)注意向量維度q,社區(qū)劃分閾值ρ這3個(gè)參數(shù)進(jìn)行分析。
本文研究不同注意力頭數(shù)量X對(duì)社區(qū)劃分結(jié)果的影響,X的數(shù)量影響節(jié)點(diǎn)級(jí)注意力機(jī)制過(guò)程的權(quán)重的生成,多個(gè)注意力頭會(huì)學(xué)習(xí)到不同的節(jié)點(diǎn)權(quán)重信息并加以整合。以X=1作為初始實(shí)驗(yàn)參數(shù),即只有單一注意力頭。通過(guò)圖3參數(shù)分析圖可以看出,當(dāng)X=1時(shí),EQ*=0.65(DBLP)和EQ*=0.35(IMDB),相對(duì)多頭注意力EQ*值偏低,原因是單個(gè)注意力頭可能導(dǎo)致注意力機(jī)制學(xué)習(xí)到的權(quán)重不穩(wěn)定。兩個(gè)實(shí)驗(yàn)都可表明注意力頭數(shù)越多,EQ*值越高,即社區(qū)劃分結(jié)果更好。但當(dāng)X>8時(shí),DBLP實(shí)驗(yàn)中EQ*值增長(zhǎng)緩慢,IMDB實(shí)驗(yàn)中EQ*值略有下降,并且注意力頭數(shù)過(guò)多會(huì)使模型過(guò)于復(fù)雜,因此選取X=8作為不同數(shù)據(jù)集的注意力頭數(shù)設(shè)置。研究語(yǔ)義級(jí)注意力向量的維度q對(duì)社區(qū)劃分結(jié)果的影響,q的維度影響語(yǔ)義級(jí)注意力機(jī)制過(guò)程的權(quán)重的生成,維度越大權(quán)重信息表示越豐富。以q=32作為初始實(shí)驗(yàn)參數(shù),之后成倍增加語(yǔ)義級(jí)注意力向量的維度。通過(guò)兩個(gè)數(shù)據(jù)集的實(shí)驗(yàn)可以看出,當(dāng)維度q設(shè)置為128時(shí),EQ*值最高。當(dāng)q>128時(shí),EQ*值都呈降低趨勢(shì)這可能是因?yàn)檫^(guò)擬合導(dǎo)致語(yǔ)義級(jí)注意力權(quán)重信息不準(zhǔn)確,因此選取q=128作為最終的參數(shù)設(shè)置。社區(qū)劃分閾值ρ的設(shè)置直接影響最后社區(qū)劃分結(jié)果,ρ的取值偏大或偏小都會(huì)導(dǎo)致社區(qū)劃分出現(xiàn)較大偏差。以ρ=0.1作為初始實(shí)驗(yàn)參數(shù),依次獲取閾值ρ在0.1,0.3,0.5,0.7,0.9取值的實(shí)驗(yàn)結(jié)果。通過(guò)兩個(gè)數(shù)據(jù)集的實(shí)驗(yàn)可以看出當(dāng)閾值ρ=0.5時(shí)EQ*值更高,說(shuō)明此時(shí)社區(qū)發(fā)現(xiàn)結(jié)果更準(zhǔn)確,因此選取ρ=0.5作為最終的閾值設(shè)置。
圖3 HAOCD模型的參數(shù)分析
3.4.3 實(shí)驗(yàn)結(jié)果
圖4展示了本文提出的HAOCD模型與SLPA、GAT、HAN、NOCD、NELPA算法在DBLP、IMDB兩個(gè)異質(zhì)網(wǎng)絡(luò)數(shù)據(jù)集和兩個(gè)同質(zhì)網(wǎng)絡(luò)數(shù)據(jù)集F1、F2上進(jìn)行的實(shí)驗(yàn)對(duì)比結(jié)果,并采用EQ*作為評(píng)價(jià)指標(biāo)。
圖4 6種社區(qū)發(fā)現(xiàn)模型EQ*值對(duì)比
從兩個(gè)異質(zhì)網(wǎng)絡(luò)數(shù)據(jù)集的實(shí)驗(yàn)中可以看出,本文提出的模型相比傳統(tǒng)社區(qū)發(fā)現(xiàn)算法和基于GNN的社區(qū)發(fā)現(xiàn)方法都有一定程度的提升。傳統(tǒng)社區(qū)發(fā)現(xiàn)方法SLPA在DBLP數(shù)據(jù)集實(shí)驗(yàn)中EQ*值只有0.35,IMDB數(shù)據(jù)集中EQ*為0.109。SLPA相對(duì)基于GNN的社區(qū)發(fā)現(xiàn)方法,不僅EQ*值偏低,而且所得結(jié)果不穩(wěn)定。這可能與SLPA只利用了網(wǎng)絡(luò)的結(jié)構(gòu)信息進(jìn)行社區(qū)發(fā)現(xiàn),沒(méi)有結(jié)合網(wǎng)絡(luò)節(jié)點(diǎn)的特征信息有關(guān)。與基于GNN的算法不同的是,NELPA算法是通過(guò)Metapath2vec異質(zhì)網(wǎng)絡(luò)嵌入方法將異質(zhì)網(wǎng)絡(luò)的結(jié)構(gòu)信息和屬性信息結(jié)合并抽取不同元路徑的特征信息,然后經(jīng)過(guò)SLPA算法實(shí)現(xiàn)重疊社區(qū)劃分。本文提出的HAOCD模型與NELPA算法相比也有小幅度提升。HAOCD模型基于GNN可以充分挖掘異質(zhì)信息網(wǎng)絡(luò)的節(jié)點(diǎn)信息和語(yǔ)義信息,具有較高的社區(qū)發(fā)現(xiàn)準(zhǔn)確率。實(shí)驗(yàn)結(jié)果表明基于GNN社區(qū)發(fā)現(xiàn)方法在DBLP實(shí)驗(yàn)中EQ*值都大于0.6,表示基于GNN的社區(qū)發(fā)現(xiàn)算法可以更好結(jié)合網(wǎng)絡(luò)的節(jié)點(diǎn)特征信息和結(jié)構(gòu)信息并提高社區(qū)發(fā)現(xiàn)準(zhǔn)確性。
HAOCD模型在與基于GNN的算法GAT、HAN、NOCD的對(duì)比中也有不同程度提高。GAT可以通過(guò)注意力機(jī)制得到鄰居節(jié)點(diǎn)的權(quán)重,更新節(jié)點(diǎn)特征嵌入,但是沒(méi)有利用異質(zhì)網(wǎng)絡(luò)的特點(diǎn)。HAN提出的雙層注意力機(jī)制可以更好地利用異質(zhì)網(wǎng)絡(luò)的語(yǔ)義信息,但是沒(méi)有關(guān)注到網(wǎng)絡(luò)中存在的重疊社區(qū)現(xiàn)象。HAN與GAT相比在DBLP、IMDB實(shí)驗(yàn)中EQ*值都提升了大約10%,可以表明基于異質(zhì)網(wǎng)絡(luò)進(jìn)行社區(qū)發(fā)現(xiàn)可以充分利用網(wǎng)絡(luò)中的語(yǔ)義信息并使社區(qū)發(fā)現(xiàn)結(jié)果更準(zhǔn)確。NOCD基于圖神經(jīng)網(wǎng)絡(luò)結(jié)合B-P模型,關(guān)注到網(wǎng)絡(luò)中的重疊社區(qū)現(xiàn)象,但是沒(méi)有利用異質(zhì)網(wǎng)絡(luò)中的不同語(yǔ)義信息。本文提出的算法HAOCD相比其它基于GNN算法在IMDB實(shí)驗(yàn)中EQ*值提升明顯,大約提升了20%,在DBLP實(shí)驗(yàn)中也提升了大約5%。HAOCD模型通過(guò)注意力機(jī)制充分提取異質(zhì)網(wǎng)絡(luò)的語(yǔ)義信息,并關(guān)注到社區(qū)中的重疊現(xiàn)象采用重疊生成模型B-P模型。
HAOCD算法在同質(zhì)網(wǎng)絡(luò)數(shù)據(jù)集F1、F2的實(shí)驗(yàn)中也有類似的結(jié)果。在同質(zhì)網(wǎng)絡(luò)數(shù)據(jù)集實(shí)驗(yàn)中HAOCD算法相對(duì)傳統(tǒng)社區(qū)發(fā)現(xiàn)算法SLPA提升了大約20%,相對(duì)基于GNN的算法和NELPA算法提升了大約5%。因此實(shí)驗(yàn)結(jié)果表明HAOCD模型將異質(zhì)圖注意力網(wǎng)絡(luò)與重疊生成模型B-P模型進(jìn)行有效結(jié)合,不僅可以充分利用異質(zhì)網(wǎng)絡(luò)中的語(yǔ)義信息進(jìn)行異質(zhì)網(wǎng)絡(luò)重疊社區(qū)發(fā)現(xiàn)并使社區(qū)發(fā)現(xiàn)結(jié)果接近真實(shí)社區(qū),也可用于同質(zhì)網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn),提升社區(qū)發(fā)現(xiàn)的準(zhǔn)確率。
本文研究基于異質(zhì)圖注意力網(wǎng)絡(luò)的重疊社區(qū)發(fā)現(xiàn)問(wèn)題,并提出了HAOCD模型。該模型首先基于改進(jìn)的異質(zhì)圖注意力網(wǎng)絡(luò)融合基于元路徑鄰居節(jié)點(diǎn)的權(quán)重和不同元路徑的權(quán)重得到新的節(jié)點(diǎn)特征嵌入向量,然后通過(guò)圖卷積網(wǎng)絡(luò)結(jié)合B-P模型得到社區(qū)隸屬矩陣,最后通過(guò)社區(qū)劃分閾值取得最終社區(qū)發(fā)現(xiàn)結(jié)果。將提出的模型與傳統(tǒng)社區(qū)發(fā)現(xiàn)方法SLPA和基于圖神經(jīng)網(wǎng)絡(luò)的方法GAT、HAN、NOCD進(jìn)行實(shí)驗(yàn)對(duì)比并以改進(jìn)過(guò)的EQ*作為評(píng)價(jià)指標(biāo),結(jié)果顯示HAOCD模型在真實(shí)數(shù)據(jù)集DBLP、IMDB、F1和F2上均有良好的表現(xiàn)。
但是,HAOCD模型只考慮了異質(zhì)網(wǎng)絡(luò)中節(jié)點(diǎn)類型不同的問(wèn)題,但異質(zhì)網(wǎng)絡(luò)還存在關(guān)系類型不同的特點(diǎn),所以未來(lái)可以全面考慮異質(zhì)網(wǎng)絡(luò)中節(jié)點(diǎn)類型和關(guān)系類型不同的特點(diǎn),更好利用網(wǎng)絡(luò)中的信息進(jìn)行社區(qū)發(fā)現(xiàn)。