周樂,代婷婷,李淳,謝軍,楚博策,李峰,張君毅,劉嶠*
(1.電子科技大學信息與軟件工程學院,成都 610054;2.河北省電磁頻譜認知與管控重點實驗室,石家莊 050081;3.中國電子科技集團公司航天信息應用技術(shù)重點實驗室,石家莊 050081)
表示學習是指采用機器學習算法,將圖結(jié)構(gòu)數(shù)據(jù)中的實體節(jié)點表示為低維實值向量,可用于與圖相關(guān)的推理計算任務,如鏈路預測[1]或節(jié)點分類[2]等。在應用層面,可根據(jù)社交網(wǎng)絡中用戶間的拓撲結(jié)構(gòu)與用戶描述等上下文信息預測用戶的交友興趣,或根據(jù)論文引用網(wǎng)絡中的拓撲結(jié)構(gòu)和關(guān)鍵詞信息推斷文章的研究主題等。
根據(jù)研究對象的不同,表示學習模型可分為兩類:1)關(guān)系類型單一的網(wǎng)絡表示學習模型,如DeepWalk[2]、node2vec[3]等,該類研究大多基于隨機游走方法進行網(wǎng)絡節(jié)點序列采樣,然后采用Skip-gram[2-3]、循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network,RNN)[4]等序列學習模型得到節(jié)點的向量表達;2)關(guān)系類型多樣的知識圖譜表示學習模型,如TransE[5]、圖卷積神經(jīng)網(wǎng)絡模型(Graph Convolutional Network,GCN)[6]等,該類研究大多基于節(jié)點-關(guān)系語義映射思路[7],采用深度學習模型學習節(jié)點和關(guān)系的向量表達。本文主要關(guān)注屬性網(wǎng)絡表示學習建模問題。
基于隨機游走的采樣模型在大規(guī)模稀疏的網(wǎng)絡表示學習任務中因性能良好而被廣泛采用[1-3,8]。但近期研究表明,如果僅根據(jù)網(wǎng)絡的拓撲結(jié)構(gòu)進行隨機采樣,即限定隨機游走僅發(fā)生在直接相鄰的節(jié)點之間,容易導致采樣結(jié)果中,度較高的中心節(jié)點出現(xiàn)頻率較高[8-9],這樣不僅會削弱采樣結(jié)果的多樣性,而且難以有效利用網(wǎng)絡中的節(jié)點屬性等上下文信息[10-11]。為解決上述問題,Huang 等[4]提出了一種基于節(jié)點-屬性二部圖的隨機游走(Attributed random Walk,AttriWalk)方法,如果圖中的節(jié)點具有相同的屬性(虛擬節(jié)點),則可以通過該屬性節(jié)點對不相鄰的節(jié)點采樣,從而利用節(jié)點的屬性等上下文信息,該方法在提高采樣結(jié)果多樣性的同時有效地緩解了采樣偏向中心節(jié)點的問題。
然而,AttriWalk 也存在明顯局限性。AttriWalk 將網(wǎng)絡視為節(jié)點-屬性二部圖,分別采樣得到節(jié)點-節(jié)點、節(jié)點-屬性-節(jié)點兩種形式的序列。在“節(jié)點-屬性”采樣過程中,每個節(jié)點有多種屬性,不同屬性有不一樣的取值,AttriWalk 直接對屬性值歸一化,以此作為從多個屬性中選擇下一跳目標的遷移概率計算依據(jù),這種概率計算方式易導致采樣過程偏向?qū)傩灾递^高的屬性,而忽略了屬性值低、但在有邊相連的節(jié)點對之間頻繁出現(xiàn)的屬性。在實際網(wǎng)絡中,在不考慮屬性值影響的情況下,當部分屬性在有鄰接關(guān)系的節(jié)點對間出現(xiàn)次數(shù)越多,則非鄰接節(jié)點間含有這類共有屬性的數(shù)量越多,產(chǎn)生關(guān)聯(lián)的可能性越大。例如,在以關(guān)鍵詞為屬性、關(guān)鍵詞在論文中出現(xiàn)的次數(shù)為屬性值的論文引用網(wǎng)絡中,兩篇論文是否相關(guān)與其屬性值大小無關(guān),主要取決于它們是否同時包含多種在其他主題相似的論文中頻繁出現(xiàn)的共有關(guān)鍵詞,當這類關(guān)鍵詞種數(shù)越多,主題相似性越大。
針對上述問題,本文通過分析屬性對節(jié)點關(guān)系的影響,提出了一種基于節(jié)點鄰接關(guān)系與屬性關(guān)聯(lián)關(guān)系的隨機游走方法,根據(jù)網(wǎng)絡中相鄰節(jié)點間共有屬性分布情況調(diào)整屬性的權(quán)重,從而使得對節(jié)點間語義關(guān)聯(lián)真正有貢獻的屬性獲得采樣優(yōu)勢,并以此為媒介增加網(wǎng)絡中非鄰接節(jié)點間的關(guān)聯(lián)。在此基礎(chǔ)上,構(gòu)建了一個基于節(jié)點-屬性二部圖的網(wǎng)絡表示學習模型,學習獲得網(wǎng)絡中的節(jié)點向量表達。
本文主要工作如下:
1)提出了一種基于節(jié)點鄰接關(guān)系與屬性關(guān)聯(lián)關(guān)系的隨機游走方法。與已有工作不同的是,該方法通過鄰接節(jié)點的共有屬性分布獲取不同屬性對節(jié)點關(guān)聯(lián)的重要性,進而得到節(jié)點到每種屬性的采樣概率,又稱基于屬性權(quán)重的隨機游走(Weighted attribute based random Walk,WarWalk)方法。
2)構(gòu)建了一種基于節(jié)點-屬性二部圖的網(wǎng)絡表示學習模型(Network Embedding model based on Node Attribute Bipartite braph,NE-NAB)。NE-NAB 以WarWalk 的采樣結(jié)果為輸入,通過基于自注意力機制的序列學習模塊得到網(wǎng)絡節(jié)點的向量表達。在3 個公開數(shù)據(jù)集上的實驗結(jié)果表明,NE-NAB 的性能表現(xiàn)均優(yōu)于相關(guān)工作,且WarWalk 可以通過“節(jié)點-屬性-節(jié)點”類型的采樣序列提取非鄰接節(jié)點間的隱含信息,使采樣以較大概率發(fā)生在網(wǎng)絡中的同類節(jié)點間,從而增加序列中所包含的信息量。
現(xiàn)有表示學習模型根據(jù)研究對象的不同,可劃分為關(guān)系類型多樣的知識圖譜表示學習模型和關(guān)系類型單一的網(wǎng)絡表示學習模型。
知識圖譜表示學習模型重點關(guān)注多關(guān)系數(shù)據(jù)中節(jié)點-關(guān)系的映射,并采用深度學習模型獲得映射規(guī)律與節(jié)點關(guān)系的向量表達。如TransE[5]、TransH[12]、TransAH[13]以縮小知識圖譜三元組〈節(jié)點,關(guān)系,節(jié)點〉中任意兩個元素加和后與第三個元素的距離為節(jié)點-關(guān)系的映射方式,從而得到節(jié)點與關(guān)系的向量表達。DistMult[14]認為節(jié)點與節(jié)點之間的關(guān)系為線性映射;ComplEx[15]針對DistMult[14]線性映射中有向邊引發(fā)的語義不對稱性問題,將表示學習的向量空間推廣到復數(shù)空間;ConvE[16]、HolE(Holographic Embeddings)[17]分別通過二維卷積、循環(huán)卷積的方式學習節(jié)點-關(guān)系映射模式。上述模型通過知識圖譜三元組學習節(jié)點-關(guān)系的映射模式,忽略了多關(guān)系數(shù)據(jù)中節(jié)點的多跳關(guān)聯(lián),對此,Yun 等[18]提出基于元路徑的GTN(Graph Transformer Network)模型,將異構(gòu)圖轉(zhuǎn)換為由元路徑定義的同構(gòu)圖。Kipf 等[6]引入分層傳播規(guī)則對圖中節(jié)點的多跳鄰居進行信息聚合。
網(wǎng)絡表示學習模型(如DeepWalk[2]),通過隨機游走從網(wǎng)絡中采樣得到節(jié)點序列,然后用Skip-gram 算法進行序列學習,得到圖中節(jié)點的向量表達。DeepWalk 通過均勻隨機分布的方式選取隨機游走序列中下一個節(jié)點,采樣過程中會對中心節(jié)點重復采樣,Grover 等[3]定義目標節(jié)點到鄰居節(jié)點的不同轉(zhuǎn)移概率,將廣度優(yōu)先搜索和深度優(yōu)先搜索引入隨機游走中,使得采樣序列從不同角度捕獲網(wǎng)絡特征,從而提高網(wǎng)絡表示學習的效果。不同于DeepWalk 與node2vec 的近鄰相似假設,Ribeiro 等[19]認為除共同鄰居外,空間結(jié)構(gòu)相似的節(jié)點也擁有很高的相似性,如星型結(jié)構(gòu)的中心節(jié)點、社區(qū)結(jié)構(gòu)之間的橋接節(jié)點等,并提出基于分層帶權(quán)圖的struc2vec模型。
上述網(wǎng)絡表示學習模型從不同角度提取節(jié)點信息,在鏈路預測[1]、節(jié)點分類[2]等任務中各具優(yōu)勢,但由于采樣過程主要關(guān)注網(wǎng)絡結(jié)構(gòu)信息,即僅根據(jù)網(wǎng)絡結(jié)構(gòu)進行隨機游走,忽略了節(jié)點的上下文描述信息[10-11],導致采樣向度中心性較高的節(jié)點偏移[8-9],即越靠近網(wǎng)絡中心的節(jié)點采樣序列越相似。同時,對于分布不均衡的網(wǎng)絡,常存在簇內(nèi)連接緊密、簇間關(guān)聯(lián)稀疏的簇結(jié)構(gòu),上述采樣方法可能陷入簇內(nèi),很難全面訪問節(jié)點。
對于上述問題,部分研究者提出了通過構(gòu)建節(jié)點鄰居集[20]、節(jié)點角色抽象圖[21]或節(jié)點-屬性二部圖[4]的方式,獲取除節(jié)點關(guān)系以外的節(jié)點屬性、角色等描述信息。如Hou 等[20]提出通過屬性相似度進行節(jié)點聚類,用有偏采樣方法區(qū)分屬性相似和近鄰相似對目標節(jié)點的影響。Ahmed 等[21]通過聚類方法定義網(wǎng)絡中的節(jié)點角色,并根據(jù)節(jié)點類型、標簽、屬性值等提出基于節(jié)點角色的隨機采樣方法。Huang 等[4]提出了一種基于節(jié)點-屬性二部圖的屬性隨機游走模型,不僅可以將節(jié)點的直接鄰居作為采樣目標,還可以將節(jié)點的屬性作為采樣目標。該方法將屬性抽象成“節(jié)點”進行隨機游走,緩解了采樣向高中心性節(jié)點偏移的問題,但缺乏對屬性采樣概率的考慮,即以不同屬性為橋梁增加網(wǎng)絡中的節(jié)點交互時,不同屬性對節(jié)點關(guān)聯(lián)的重要性各異。
令G={V,E,F(xiàn)T}表示帶屬性的無向網(wǎng)絡,其中:V={v1,v2,…,vn}表示圖中的節(jié)點集合;E={e1,e2,…,em}表示圖中的邊集合;FT={ft1,ft2,…,ftk}表示圖中節(jié)點的屬性類型集合。令A∈Rn×n表示網(wǎng)絡鄰接矩陣,F(xiàn)∈Rn×k表示節(jié)點的屬性值矩陣,其中:n、m、k分別表示圖中節(jié)點、邊、屬性的數(shù)量。
令O∈Rk×k表示由屬性獨熱(one-hot)向量組成的特征矩陣,如式(1)所示:
令序列集合Seq={Q1,Q2,…,Qn}表示采樣結(jié)果,其中Qi表示以節(jié)點i為起點得到的采樣序列,有:
節(jié)點間的差異體現(xiàn)在節(jié)點本身所包含的屬性信息以及節(jié)點在網(wǎng)絡中的拓撲結(jié)構(gòu)。文獻[22-24]中的研究表明,節(jié)點的拓撲結(jié)構(gòu)與節(jié)點所包含的屬性信息存在顯著關(guān)系?,F(xiàn)有工作[5]雖然通過引入屬性增加了節(jié)點交互的多樣性,但忽略了不同屬性對節(jié)點關(guān)聯(lián)的作用程度不同。對此,本文提出基于屬性權(quán)重的隨機游走方法,其核心在于分析相鄰節(jié)點的共同屬性分布,根據(jù)屬性對節(jié)點語義關(guān)聯(lián)的影響,提高對節(jié)點語義關(guān)聯(lián)真正有貢獻的屬性采樣概率。WarWalk 示意圖如圖1 所示。
圖1 WarWalk示意圖Fig.1 Schematic diagram of WarWalk
首先,根據(jù)網(wǎng)絡拓撲結(jié)構(gòu)獲取鄰接矩陣中有直接交互(即有邊)的節(jié)點,然后從屬性矩陣中抽取兩個節(jié)點對應的屬性向量,通過屬性向量相乘判斷兩個節(jié)點之間的共有屬性,進而獲得不同屬性權(quán)重W∈Rn×k,如式(4)所示:
其中:Wi,a表示節(jié)點i與周圍節(jié)點產(chǎn)生語義關(guān)聯(lián)時,屬性a的重要程度;degreevi表示節(jié)點i的度;函數(shù)cnt(vi,vj,a)用于統(tǒng)計有邊關(guān)聯(lián)的節(jié)點i與節(jié)點j是否含有共同屬性a。cnt(vi,vj,a)的計算公式如式(5)所示:
根據(jù)上述采樣概率矩陣可以計算得到采樣序列Qi中,從元素到元素采樣的概率如式(8)所示:
根據(jù)上文描述的基于節(jié)點鄰接關(guān)系與屬性關(guān)聯(lián)關(guān)系的混合游走方法,具體實現(xiàn)過程如算法1 所示。
網(wǎng)絡采樣過程決定模型輸入包含何種網(wǎng)絡信息,序列特征學習則決定了模型可以從輸入中學習何種特征形成節(jié)點向量表達。本文以WarWalk 中的采樣序列為輸入,通過自注意力機制提取序列特征獲得節(jié)點向量表達,如圖2 所示。
圖2 NE-NAB示意圖Fig.2 Schematic diagram of NE-NAB
首先,通過屬性矩陣F與屬性獨熱矩陣O初始化序列Qi中對應元素的向量表達,并將其映射到低維向量中展開計算,如式(9)所示:
在上述序列向量矩陣中,表示從節(jié)點i出發(fā),第一次采樣經(jīng)過j-1 跳可以到達的元素,表示從節(jié)點i出發(fā),第二次采樣經(jīng)過j-1 跳可以到達的元素,對此,通過平均池化的方式,將每次采樣得到的信息按照跳數(shù)進行整合,如式(10)~(11)所示:
接著,通過基于自注意力機制堆疊前饋神經(jīng)網(wǎng)絡的序列學習模塊提取不同跳數(shù)上的元素特征,如式(12)~(13)所示:
根據(jù)上述模塊得到采樣序列中每個元素的向量表達。由于每個采樣序列是由一個目標節(jié)點出發(fā)得到,因此所得表達不僅包含目標節(jié)點自身的語義特征表達,還包含其不同跳鄰居的語義特征表達。類比GCN 中的信息聚合方式[6],此處通過平均池化與向量拼接⊕得到節(jié)點i的向量表達vi∈Rd,d表示向量維度,如式(14)所示:
根據(jù)所得節(jié)點向量表達,使用Softmax()函數(shù)為每個節(jié)點計算每個類別對應的概率,并使用交叉熵計算模型的損失,如式(15)~(16)所示:
PDCA循環(huán)貫穿整個項目施工過程,從最初的立項、結(jié)構(gòu)圖紙設計、現(xiàn)場的施工進度管理、質(zhì)量控制措施,安全管理等。隨著現(xiàn)代管理水平和施工技術(shù)水平的迅猛發(fā)展,在土木工程施工的過程中PDCA循環(huán)的應用越來越普遍,所起的作用也越來越顯著。
本文實驗數(shù)據(jù)情況如表1 所示。其中:n、m分別表示網(wǎng)絡中的節(jié)點、邊數(shù)量;k、l表示網(wǎng)絡屬性種類、節(jié)點標簽數(shù)量;Edge Density 與Attributed Density 分別表示邊與屬性的分布密度。
表1 實驗數(shù)據(jù)信息統(tǒng)計Tab.1 Statistics of experimental datasets
三個數(shù)據(jù)集分別如下:
1)Flickr 由圖片分享網(wǎng)站中的7 575 個用戶、12 047 種用戶描述信息與239 738 條好友關(guān)系組成,根據(jù)用戶喜歡的圖片類型,可將其劃分為9 種不同的興趣組;
2)BlogCatalog 是由博客社區(qū)中的5 196 個博主、171 743條關(guān)系組成,博主屬性由8 189 個博客關(guān)鍵字描述構(gòu)成,可將其劃分為6 種不同的類別;
3)Cora 數(shù)據(jù)集由2 708 篇論文、5 278 條引用關(guān)系組成,論文節(jié)點的屬性由1 433 個摘要關(guān)鍵詞組成,可劃分為7 種不同主題。
由于數(shù)據(jù)集來自不同領(lǐng)域,網(wǎng)絡稀疏性與屬性分布情況各不相同,所得實驗結(jié)果能夠較好地反映出本文所提表示學習算法模型的魯棒性和泛化性。
在模型訓練過程中,設置屬性采樣概率α=0.4,學習率為0.000 1,隱藏層神經(jīng)單元數(shù)為200,dropout設置為0.2,算法迭代次數(shù)為100。
為驗證模型性能,根據(jù)近期相關(guān)工作選取DeepWalk[2]、node2vec[3]以及GraphRNA(Graph Recurrent Networks with Attributed random walks)[4]為基準,并構(gòu)建了基于NE-NAB 的兩種對比模型,具體如下:
1)DeepWalk。只從節(jié)點關(guān)系采樣,然后采用Skip-gram學習網(wǎng)絡節(jié)點的向量表達。
2)node2vec。在DeepWalk 的基礎(chǔ)上引入超參數(shù)p、q控制節(jié)點的深度優(yōu)先采樣和廣度優(yōu)先采樣趨勢,隨機游走仍然只考慮節(jié)點關(guān)聯(lián)關(guān)系。
3)GraphRNA。通過節(jié)點-屬性二部圖采樣獲得既包含節(jié)點關(guān)系又包含節(jié)點屬性描述信息的序列,然后通過循環(huán)神經(jīng)網(wǎng)絡提取節(jié)點信息,獲得節(jié)點向量表達。但是,在屬性采樣時,未考慮屬性對節(jié)點間關(guān)系的影響。
4)NE-NAB_NW。與NE-NAB 相比,在屬性采樣時,使用不加權(quán)重的屬性矩陣為采樣依據(jù),即使用GraphRNA 中的AttriWalk 采樣方式,然后通過基于自注意力機制堆疊前饋神經(jīng)網(wǎng)絡的方式學習采樣序列中的特征。
5)NE-NAB_NA。如圖3 所示,與NE-NAB 相比,在得到不同跳的聚合信息后,直接聚合節(jié)點i的多跳鄰居信息。通過對比NE-NAB_NA 與NE-NAB,可驗證所提自注意力機制堆疊前饋神經(jīng)網(wǎng)絡在序列特征提取中的性能。
圖3 NE-NAB_NA示意圖Fig.3 Schematic diagram of NE-NAB_NA
網(wǎng)絡節(jié)點分類指通過節(jié)點與其他節(jié)點的關(guān)聯(lián)關(guān)系等網(wǎng)絡結(jié)構(gòu)信息、節(jié)點的屬性描述等上下文信息對節(jié)點進行分類。通過節(jié)點分類,可以有效區(qū)分不同類別的實體,從而根據(jù)實體類別進行信息管理和推薦。NE-NAB 與對比模型在3個數(shù)據(jù)集中的節(jié)點分類實驗結(jié)果如表2 所示,為與相關(guān)工作保持一致,將數(shù)據(jù)集劃分為訓練集、測試集和驗證集,其中訓練集的比例(Training Rate,TR)根據(jù)50%、70%、90%依次遞增。由于,采樣過程具有隨機性,所以相同比例訓練集的實驗將重復進行10 次,實驗結(jié)果取平均值,以Micro-F1、Macro-F1 為評判標準。
表2 Flickr、BlogCatalog和Cora數(shù)據(jù)集上的節(jié)點分類結(jié)果 單位:%Tab.2 Node classification results on Flickr,BlogCatalog and Cora datasets unit:%
由實驗結(jié)果可知,在Flickr、BlogCatalog、Cora 公開數(shù)據(jù)集上,用NE-NAB、GraphRNA、DeepWalk 得到的節(jié)點向量表達進行節(jié)點分類,Micro-F1 平均準確率分別為89.38%、87.36%、68.26%,NE-NAB 比GraphRNA 高出了2.02 個百分點,比經(jīng)典工作DeepWalk 高出了21.12 個百分點。此外,與DeepWalk、node2vec、GraphRNA 等模型相比,NE-NAB 在節(jié)點分類任務中呈現(xiàn)出較好的穩(wěn)定性與魯棒性,當Cora 數(shù)據(jù)集中的訓練集比例為70%時,NE-NAB 與GraphRNA 相比性能提高5.24%。
在使用WarWalk 方法進行隨機游走后,NE-NAB_NA 通過簡單映射模型可以獲得與GraphRNA 相當?shù)男阅?,說明本文所提WarWalk 方法可以通過提高部分屬性的采樣概率,有效增加網(wǎng)絡中的節(jié)點關(guān)聯(lián),使采樣序列包含更多網(wǎng)絡信息,提高了表示學習模型輸入數(shù)據(jù)的信息質(zhì)量。該結(jié)論可通過對比NE-NAB 與NE-NAB_NW 的性能驗證。當Cora 數(shù)據(jù)集中訓練集比例為90%時,使用WarWalk 方法的NE-NAB 與不使用的該采樣方法的NE-NAB_NW 模型性能差異最大,其中MicroF1 增加了3.73%,MacroF1 增加了4.05%。
此外,在不使用WarWalk 方法進行隨機游走時,NENAB_NW 的性能在BlogCatalog、Cora 數(shù)據(jù)上的效果均優(yōu)于DeepWalk、node2vec、GraphRNA 等模型,在Flickr 上的效果與GraphRNA 相當,由此可以說明:相較于GraphRNA 中的循環(huán)神經(jīng)網(wǎng)絡,本文提出通過基于自注意力機制堆疊前饋神經(jīng)網(wǎng)絡的序列特征學習方法可更好地學習節(jié)點序列的屬性與結(jié)構(gòu)信息。當NE-NAB 與NE-NAB_NA 都采用基于屬性權(quán)重的隨機游走方法時,該結(jié)論同樣成立。NE-NAB 的性能優(yōu)于NE-NAB_NA 模型,說明基于自注意力機制堆疊前饋神經(jīng)網(wǎng)絡的方法可以有效提取序列特征并將節(jié)點的上下文信息融入節(jié)點向量表達中。
在Flickr 與BlogCatalog 數(shù)據(jù)集上,隨著訓練數(shù)據(jù)從70%增加到90%,GraphRNA 與NE-NAB、NE-NAB_NA、NENAB_NW 等模型的節(jié)點分類實驗結(jié)果不增反降,這一下降趨勢在NE-NAB_NW 中較明顯,當Flickr 數(shù)據(jù)集中的訓練集比例為90%,Micro-F1 降低了2.92%。主要原因可能是隨著訓練集的增加,訓練數(shù)據(jù)中節(jié)點關(guān)系帶來的主要結(jié)構(gòu)信息增加,通過共有屬性引入的信息易對主要信息造成影響,從而導致性能下降。
為驗證屬性權(quán)重對采樣過程中提取網(wǎng)絡信息的貢獻,本文選取了三種方法進行了對比實驗:
1)RandomWalk[2-3]。只根據(jù)節(jié)點關(guān)系進行隨機游走。
2)AttriWalk[4]。根據(jù)節(jié)點關(guān)系與不含權(quán)重的屬性矩陣進行隨機游走。
3)WarWalk。根據(jù)節(jié)點鄰接關(guān)系和屬性關(guān)聯(lián)關(guān)系進行隨機游走。
實驗之前固定采樣長度len=5,每個節(jié)點的采樣次數(shù)為num=100,節(jié)點采樣偏差α=0.4。
分別對三種隨機游走方法所得序列中的節(jié)點類別進行統(tǒng)計,以節(jié)點i為例,在以節(jié)點i為起點的采樣序列中,統(tǒng)計除采樣起點外,與節(jié)點i含有相同類別的節(jié)點數(shù)量為ni,序列中除節(jié)點i之外的節(jié)點總數(shù)為sumi,節(jié)點i采樣序列中含有相同標簽節(jié)點所占比例Probi如式(17)所示:
用RW、AW、WW分別表示RandomWalk、AttriWalk、WarWalk。在三種采樣中,所得采樣序列中與目標節(jié)點含有相同標簽的節(jié)點所占比例分別記為以RandomWalk 為例,具體計算方式如式(18)所示:
在Flickr 中的所有n=7 575 個節(jié)點中,與RandomWalk 方法相比,使用AttriWalk 與WarWalk 方法后,采樣序列中與目標節(jié)點含有相同標簽的節(jié)點所占比例分別增加了14.91%和15.05%,即增加屬性對網(wǎng)絡元素進行隨機游走,尤其對共有屬性分析計算權(quán)重,調(diào)整不同屬性采樣概率后,采樣序列中與目標節(jié)點含相同標簽的節(jié)點采樣概率整體增加。為更好地驗證上述結(jié)論,在Flickr 數(shù)據(jù)集中隨機選取5 個節(jié)點,在相同采樣設置、不同采樣方法中,對每個節(jié)點采樣得到的序列中與目標節(jié)點含有相同標簽的節(jié)點占總采樣序列總節(jié)點的比例分布如圖4 所示。由圖4 可知,在增加屬性采樣,并提高對節(jié)點關(guān)聯(lián)有促進作用的屬性采樣概率后,能夠在采樣過程中更好地獲得與目標節(jié)點標簽相同的節(jié)點,增加采樣序列所含信息。
圖4 Flickr數(shù)據(jù)集中與目標節(jié)點含相同標簽的節(jié)點占比Fig.4 Proportion of nodes with common labels with target node in Flickr dataset
本文通過分析屬性對節(jié)點關(guān)系的影響程度,計算隨機游走過程中的屬性采樣權(quán)重,充分挖掘網(wǎng)絡潛在信息,并在有限采樣次數(shù)中獲取網(wǎng)絡結(jié)構(gòu)與節(jié)點屬性信息,然后提出基于注意力機制堆疊前饋神經(jīng)網(wǎng)絡的模塊提取序列中的節(jié)點特征,從而獲得高質(zhì)量的網(wǎng)絡節(jié)點向量表達。本文模型與設計的實驗主要面向帶屬性的同質(zhì)網(wǎng)絡,在未來的工作中,將針對如何提取異質(zhì)網(wǎng)絡屬性信息展開研究。同質(zhì)網(wǎng)絡與異質(zhì)網(wǎng)絡的區(qū)別在于節(jié)點類型與關(guān)系類型的多樣性。一般地,同種類型的節(jié)點才會有相似的屬性,而不同類型的節(jié)點很難有相似的屬性,所以基于屬性的隨機游走方式可以有效捕獲同類節(jié)點間的特征,但在異質(zhì)網(wǎng)絡中將主要考慮如何將關(guān)系類型與關(guān)系屬性合理納入游走機制中。