楊 磊,李臣龍
(1.安徽工程大學(xué) 計算機與信息學(xué)院,安徽 蕪湖 241000;2.安徽工程大學(xué) 計算機應(yīng)用技術(shù)重點實驗室,安徽 蕪湖 241000)
?
基于動態(tài)網(wǎng)絡(luò)的鏈接分析與預(yù)測研究
楊 磊1,2,李臣龍1,2
(1.安徽工程大學(xué) 計算機與信息學(xué)院,安徽 蕪湖 241000;2.安徽工程大學(xué) 計算機應(yīng)用技術(shù)重點實驗室,安徽 蕪湖 241000)
復(fù)雜網(wǎng)絡(luò)通過新節(jié)點和新鏈接的增加而隨著時間快速演化,使用網(wǎng)絡(luò)的靜態(tài)特征難以產(chǎn)生精確的鏈接預(yù)測。通過分析動態(tài)網(wǎng)絡(luò)特征,結(jié)合張量分解,提出了一種新的基于動態(tài)網(wǎng)絡(luò)的鏈接預(yù)測方法,并應(yīng)用于真實的復(fù)雜動態(tài)網(wǎng)絡(luò)數(shù)據(jù)集中對未來鏈接進行分析預(yù)測,實驗演示了該方法的優(yōu)點和效果,取得了較好的預(yù)測結(jié)果。
鏈接預(yù)測;動態(tài)網(wǎng)絡(luò);張量分析;局部路徑
隨著在線社交平臺和信息網(wǎng)絡(luò)的增長,復(fù)雜靜態(tài)網(wǎng)絡(luò)研究在社交網(wǎng)絡(luò)、信息網(wǎng)絡(luò)等多方面已經(jīng)有了大量的研究,并取得了很多成果,但這些研究僅僅關(guān)注復(fù)雜網(wǎng)絡(luò)單個快照的靜態(tài)圖屬性,缺少網(wǎng)絡(luò)演化的動態(tài)信息[1-2],而動態(tài)網(wǎng)絡(luò)的影響擴散過程與靜態(tài)網(wǎng)絡(luò)有很大不同?,F(xiàn)實世界中幾乎所有復(fù)雜網(wǎng)絡(luò)都具有某種動態(tài)性,其中個體之間的交互隨時間推移而不斷發(fā)生變化。由于鏈接預(yù)測的挑戰(zhàn),通過分析網(wǎng)絡(luò)中大量節(jié)點的增加或減少,抽取隨著時間改變的動態(tài)信息對于解決鏈接預(yù)測問題是必要的。
動態(tài)網(wǎng)絡(luò)是一種隨著時間演化的特殊網(wǎng)絡(luò),表示復(fù)雜網(wǎng)絡(luò)在不同時刻的快照,分析每個時刻網(wǎng)絡(luò)的演化情況,是動態(tài)網(wǎng)絡(luò)研究的重點。目前動態(tài)網(wǎng)絡(luò)研究還處于起步階段,國內(nèi)外很多研究人員針對動態(tài)網(wǎng)絡(luò)的各種問題進行探索,很多問題的提出及研究方法都源于靜態(tài)網(wǎng)絡(luò)。然而,基于動態(tài)網(wǎng)絡(luò)的時序特點,動態(tài)模式挖掘不是各時刻快照上的簡單疊加,動態(tài)網(wǎng)絡(luò)在最短路徑、聚集系數(shù)等指標(biāo)的全局及局部時序度量方面與靜態(tài)指標(biāo)度量有很大區(qū)別[2]。Shan 等人[3]依據(jù)所考察網(wǎng)絡(luò)相鄰時刻拓?fù)浣Y(jié)構(gòu)變化不太大的特點,用網(wǎng)絡(luò)變化增量方式考察每個時刻的社團結(jié)構(gòu)信息,李艷梅等人[4]針對動態(tài)信息網(wǎng)絡(luò)中異常結(jié)構(gòu)演化過程,通過角色定義刻畫網(wǎng)絡(luò)的結(jié)構(gòu)特征,提出了角色演化異常的概念,并給出了基于模式挖掘的角色演化異常發(fā)現(xiàn)算法。大多數(shù)動態(tài)網(wǎng)絡(luò)模型是基于平均節(jié)點度的增長函數(shù)[5-6],在鏈接預(yù)測方面有許多廣泛的應(yīng)用,如基于過去瀏覽歷史預(yù)測一個網(wǎng)絡(luò)沖浪者在一個特定的日子或許會訪問的Web頁面,預(yù)測計算機網(wǎng)絡(luò)故障的模式,預(yù)測一個旅行者在一個特定的月份將要飛往的地方??茖W(xué)家合作網(wǎng)絡(luò)是典型的動態(tài)網(wǎng)絡(luò),隨著新作者的加入和原作者間新的合作關(guān)系的產(chǎn)生而不斷變化,通過研究以前T年的科學(xué)會議出版數(shù)據(jù),預(yù)測作者將會在T+1年在哪次會議發(fā)表論文。
本文利用張量分解理論[7],結(jié)合局部路徑指標(biāo)鏈接預(yù)測方法[8],通過分析包括時間維在內(nèi)的三維張量網(wǎng)絡(luò)鏈接結(jié)構(gòu),提出了一種動態(tài)網(wǎng)絡(luò)的鏈接分析預(yù)測方法,新的方法應(yīng)用于真實的動態(tài)網(wǎng)絡(luò)數(shù)據(jù)集中進行實驗分析及評價,并與共同鄰居(CN)、Katz指標(biāo)方法以及EVtCF[9]進行比較參考,取得了較好的實驗結(jié)果。
定義1.1(動態(tài)網(wǎng)絡(luò)) 對于無向網(wǎng)絡(luò)圖G(V,E),其中V是節(jié)點集合,E是節(jié)點間邊的集合,集合{GT,t=1, 2, …, T}是一個動態(tài)圖,Gt是t 時刻網(wǎng)絡(luò)拓?fù)鋱D,GT+1= (V, ET+1),ET+1是時刻T+1上圖的邊集。圖1是網(wǎng)絡(luò)在不同時刻的狀態(tài)變化,節(jié)點a和節(jié)點b比其他節(jié)點活躍,隨著時間變化而不斷產(chǎn)生新的鏈接。
圖1 網(wǎng)絡(luò)節(jié)點在不同時刻的狀態(tài)示例
定義1.2 (動態(tài)網(wǎng)絡(luò)鏈接預(yù)測) 給定T時刻動態(tài)網(wǎng)絡(luò)圖{ GT, t=1, 2, …, T},鏈接預(yù)測的問題是推斷出下一時刻T+1的圖GT+1=(V,ET+1),其中ET+1是T+1時刻的邊集。
為了觀察鏈接關(guān)系在時間上的演化趨勢,動態(tài)網(wǎng)絡(luò)鏈接數(shù)據(jù)可以組織成一個三階張量。通過分析三維張量鏈接結(jié)構(gòu),把時間定義為單獨的一維,相應(yīng)時間t上Z的矩陣切片表示為Zt,通過分析Z的鏈接結(jié)構(gòu)來預(yù)測T+1時刻上的鏈接。定義一個M*N*T大小的張量如下:
張量分析首先出現(xiàn)在心理測驗學(xué)科和化學(xué)統(tǒng)計學(xué)中,近幾年被其他學(xué)科領(lǐng)域廣泛采用,包括數(shù)據(jù)挖掘和圖分析。張量作為高維數(shù)據(jù)( 多維數(shù)組) 的一種數(shù)學(xué)表示,一階和二階張量分別稱為向量和矩陣,張量的階為三或者更高則稱為高階張量,一個N階張量是n個矢量空間的乘積。比較典型的張量分解方法有Tucker分解方法、CP分解方法、HOSVD 分解方法等,CP模型在可解釋性、解的唯一性和參數(shù)的確定方面更有優(yōu)勢。
一個張量Z是由一系列切片組成,每個切片相當(dāng)于沿著時段T上的鄰接矩陣。一個三維CP張量Z可以表示秩1張量之和形式,如圖2所示,即向量ak,bk,ck間的外積與權(quán)重λk相乘之后的連加和:
(1)
圖2 三階張量的CP分解
其中° 表示外積,k為秩1要素的數(shù)量,k=1, …, K。λk∈R+,ak∈RM,bk∈RM,ck∈RM,每個被加數(shù)λk(ak° bk° ck)為一個要素,每個向量為一個因子,每個因子矩陣成為來自秩1要素的向量的組合。向量ak,bk,ck進行標(biāo)準(zhǔn)化,假定||ak||=||bk||=||ck||=1,則λk包含了第k個分量的權(quán)重。
(2)
3.1 三維張量轉(zhuǎn)化二維矩陣
首先把數(shù)據(jù)存入張量Z,則切片Zt(i, j)表示時間段[tD, (t+1)D]上頂點對i和j之間的鏈接狀態(tài),如果在時間D上鏈接存在,則為Zt(i, j)=1,否則為0。張量是由一系列Z1到ZT間的鄰接矩陣組成,其中下標(biāo)為時段。為了把數(shù)據(jù)轉(zhuǎn)換為矩陣X,引入權(quán)重θ∈(0, 1),鏈接結(jié)構(gòu)考慮時間越近的鄰接矩陣,權(quán)重越大,則得到公式:
(3)
本文鏈接預(yù)測方法考慮了具有時間因素矩陣中捕獲的時間趨勢的多重網(wǎng)絡(luò)快照,其中時間趨勢由張量分解獲取,采用Holt-Winters方法[10]用來獲取張量的時間序列數(shù)據(jù)。時間序列數(shù)據(jù)由xt表示,st為x的下一個輸出值。序列在時間t=0開始,指數(shù)平滑法的最簡單形式如下表達(dá)式:
s1=x0
st+1=axt+(1-a)st
(4)