本發(fā)明屬于計(jì)算機(jī)軟件的技術(shù)領(lǐng)域,涉及一種網(wǎng)絡(luò)檢測(cè)方法。
背景技術(shù):
Barabási和Albert的無(wú)標(biāo)度網(wǎng)絡(luò)模型和Watts和Strogatz的小世界網(wǎng)絡(luò)模型揭示了網(wǎng)絡(luò)結(jié)構(gòu)的本質(zhì)規(guī)律,在過去的近20年里,推動(dòng)了復(fù)雜網(wǎng)絡(luò)研究的迅速發(fā)展。進(jìn)一步的研究發(fā)現(xiàn),多數(shù)現(xiàn)實(shí)網(wǎng)絡(luò)是不均勻的,由許多子網(wǎng)絡(luò)組成。子網(wǎng)絡(luò)內(nèi)節(jié)點(diǎn)之間的連接比較緊密,而子網(wǎng)之間節(jié)點(diǎn)的連接比較稀疏,這一現(xiàn)象在人工網(wǎng)絡(luò)和自然網(wǎng)絡(luò)中都比較常見,稱之為網(wǎng)絡(luò)中的社團(tuán)結(jié)構(gòu)(community structure)。社團(tuán)結(jié)構(gòu)成為了繼小世界和無(wú)標(biāo)度特性之后復(fù)雜網(wǎng)絡(luò)中最普遍和最重要的拓?fù)浣Y(jié)構(gòu)屬性之一。隨著復(fù)雜網(wǎng)絡(luò)理論的不斷成熟,研究者對(duì)很多復(fù)雜的互連系統(tǒng),包括社會(huì)網(wǎng)絡(luò)、Internet和World Wide Web(WWW)等各種網(wǎng)絡(luò),都從復(fù)雜網(wǎng)絡(luò)的視角去研究其統(tǒng)計(jì)特征和實(shí)際應(yīng)用?,F(xiàn)代社會(huì)處在一個(gè)大數(shù)據(jù)、大流量的時(shí)代,高度依賴于這些網(wǎng)絡(luò)系統(tǒng)的正常高效運(yùn)行。如何快速地檢測(cè)這些網(wǎng)絡(luò)在演變的過程中是否出現(xiàn)異常,引起了研究者們的廣泛關(guān)注,目前的方法主要是從網(wǎng)絡(luò)整體出發(fā),通過比較鄰近時(shí)隙的網(wǎng)絡(luò)變化量,設(shè)置相關(guān)閾值,判定網(wǎng)絡(luò)是否異常,這些方法的不足主要在于網(wǎng)絡(luò)太大,不能實(shí)時(shí)判斷,閾值設(shè)置難度大,檢測(cè)出異常后,定位異常范圍也非常困難。為此,本發(fā)明基于網(wǎng)絡(luò)具有社團(tuán)結(jié)構(gòu)的特性和絕大部分的通信都在社團(tuán)內(nèi)發(fā)生的思想,以社團(tuán)為單位,構(gòu)建隱馬爾科夫模型,提出了一種大型復(fù)雜網(wǎng)絡(luò)社團(tuán)異常檢測(cè)方法,首先,應(yīng)用復(fù)雜網(wǎng)絡(luò)社團(tuán)探測(cè)算法,將網(wǎng)絡(luò)劃分為不同的社團(tuán);然后以社團(tuán)為單位,構(gòu)建隱馬爾科夫模型并訓(xùn)練相關(guān)參數(shù);最后使用訓(xùn)練好的模型計(jì)算被監(jiān)測(cè)序列的熵,定位異常社團(tuán)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明基于網(wǎng)絡(luò)具有社團(tuán)結(jié)構(gòu)的特性和絕大部分的通信都在社團(tuán)內(nèi)發(fā)生的思想,以社團(tuán)為單位,構(gòu)建隱馬爾科夫模型,提出了一種大型復(fù)雜網(wǎng)絡(luò)社團(tuán)異常檢測(cè)方法。下面分別從社團(tuán)和隱馬爾科夫模型等方面來(lái)說(shuō)明本發(fā)明提出的技術(shù)方法。
一、社團(tuán):在同一社團(tuán)內(nèi)部,節(jié)點(diǎn)之間連接相對(duì)緊密,而在社團(tuán)之間的節(jié)點(diǎn)之間的連接相對(duì)稀疏,以網(wǎng)絡(luò)中模塊度最小為原則劃分將網(wǎng)絡(luò)劃分為不同社團(tuán),其中Nc表示網(wǎng)絡(luò)中社團(tuán)的數(shù)目,M表示網(wǎng)絡(luò)中連接的總數(shù),mc表示社團(tuán)c內(nèi)節(jié)點(diǎn)之間的連接數(shù),dc表示社團(tuán)c內(nèi)所有節(jié)點(diǎn)度數(shù)之和。
二、社團(tuán)通信模型的構(gòu)建方法
(1)基本定義:
觀測(cè)值為社團(tuán)c中發(fā)生通信量的節(jié)點(diǎn)序列,表示為其中表示在t時(shí)刻社團(tuán)c與其他社團(tuán)通信的節(jié)點(diǎn),特別地,如果通信的兩個(gè)節(jié)點(diǎn)都在社團(tuán)c中,則只考慮發(fā)送數(shù)據(jù)的節(jié)點(diǎn)。觀測(cè)值空間為:V={1,2,...,N}。
狀態(tài)值為與t時(shí)刻與社團(tuán)c連接的社團(tuán),表示為y=y(tǒng)1,y2,...yT,狀態(tài)值空間為S={1,2,...,M}。
社團(tuán)通信模型的參數(shù)模型表示為:θ={π,A,B},其中,π為初始模型的初始狀態(tài)概率,A為狀態(tài)轉(zhuǎn)移概率,B為觀測(cè)概率。
(2)基于前向后向算法的社團(tuán)通信模型的參數(shù)估計(jì)技術(shù)
社團(tuán)c的社團(tuán)通信模型參數(shù)估計(jì)任務(wù)是由采集到的觀測(cè)值序列估計(jì)出對(duì)應(yīng)的隱半馬爾可夫模型的參數(shù)。本發(fā)明采用著名的前向后向算法解決社團(tuán)通信模型的參數(shù)估計(jì)問題,具體如下所述。
1)定義前向后向變量:
αt(j)=P[St=j(luò),o1:t|θ]
βt(j)=P[ot+1:T|St=j(luò),θ]
2)前向后向算法的初始化:
α1(j)=πj,
βT(j)=1。
3)迭代推導(dǎo)過程:
4)計(jì)算中間變量:
ξt(i,j)=P[St=i,St+1=j(luò),o1:T|λ]=αt(i)aijbj(ot+1)βt+1(j)
5)參數(shù)更新公式
其中,當(dāng)ot=vk時(shí),I(ot=vk)=1,否則I(ot=vk)=0。
(3)網(wǎng)絡(luò)社團(tuán)異常檢測(cè)方法
計(jì)算觀測(cè)序列的熵:
計(jì)算正常狀態(tài)下的觀測(cè)序列的熵的標(biāo)準(zhǔn)方差為σ0,均值為μ0,
異常檢測(cè)時(shí),首先計(jì)算監(jiān)測(cè)序列的熵的均值為μ,再以|μ-μ0|為異常檢測(cè)量,如果|μ-μ0|≥3σ0,則為異常狀態(tài)。
附圖說(shuō)明
圖1為基于隱馬爾可夫模型的社團(tuán)網(wǎng)絡(luò)異常檢測(cè)模型示意圖。
具體的實(shí)施方式
流程如圖1所示,步驟如下:
步驟1:訓(xùn)練數(shù)據(jù)預(yù)處理,生成社團(tuán)通信序列序列的訓(xùn)練數(shù)據(jù)集;
步驟2:采用前向后向算法估計(jì)模型的參數(shù);
步驟3:采集實(shí)時(shí)網(wǎng)絡(luò)通信序列;
步驟4:使用訓(xùn)練好的模型計(jì)算被監(jiān)測(cè)序列的熵;
步驟5:計(jì)算異常檢測(cè)量|μ-μ0|;
步驟6:判斷|μ-μ0|≥3σ0是否成立,如果成立,則表示異常,否則未發(fā)現(xiàn)異常。