李貝貝,彭 力,戴菲菲
(1.江南大學(xué) 物聯(lián)網(wǎng)工程學(xué)院,江蘇 無錫 214122;2.臺(tái)州市產(chǎn)品質(zhì)量安全檢測(cè)研究院,浙江 臺(tái)州 318000)
隨著“互聯(lián)網(wǎng)+”時(shí)代的到來,網(wǎng)絡(luò)技術(shù)被廣泛應(yīng)用于金融、教育、軍事、治安等領(lǐng)域。但網(wǎng)絡(luò)技術(shù)是把雙刃劍,一些不法分子利用網(wǎng)絡(luò)技術(shù)中各種協(xié)議和應(yīng)用程序的漏洞違法犯罪,不僅影響了網(wǎng)絡(luò)基礎(chǔ)設(shè)施的穩(wěn)定運(yùn)行,還造成人民群眾的經(jīng)濟(jì)損失,甚至威脅到了國(guó)家安全[1]。互聯(lián)網(wǎng)中的信息交流和傳輸以網(wǎng)絡(luò)流量為載體,及時(shí)發(fā)現(xiàn)異常的網(wǎng)絡(luò)流量并采取針對(duì)性措施,對(duì)于抵御網(wǎng)絡(luò)攻擊、維護(hù)網(wǎng)絡(luò)安全、增強(qiáng)網(wǎng)絡(luò)穩(wěn)定性等均具有重要意義。
網(wǎng)絡(luò)流量異常檢測(cè)是一種有效的網(wǎng)絡(luò)防護(hù)手段,異常網(wǎng)絡(luò)流量是指對(duì)網(wǎng)絡(luò)的正常使用造成不良影響的流量,與正常流量差別較大[2]。異常網(wǎng)絡(luò)流量可分為兩類[3]:一是由于網(wǎng)絡(luò)結(jié)構(gòu)不合理或者網(wǎng)絡(luò)使用不當(dāng)造成的異常流量;二是由DDoS、蠕蟲病毒等網(wǎng)絡(luò)攻擊行為造成的異常流量。
傳統(tǒng)的網(wǎng)絡(luò)流量異常檢測(cè)方法包括基于端口、基于統(tǒng)計(jì)、基于聚類、基于信息論等方法[2]。其中基于端口的方法異常檢測(cè)準(zhǔn)確度較低,而基于統(tǒng)計(jì)、聚類、信息論的方法使許多機(jī)器學(xué)習(xí)算法能用于網(wǎng)絡(luò)流量異常檢測(cè),如K 近鄰算法(K-Nearest Neighbor,KNN)、孤立森林算法(Isolation Forest,iForest)、支持向量機(jī)(Support Vector Machine,SVM)等。如今,網(wǎng)絡(luò)流量規(guī)模越來越大,數(shù)據(jù)維度越來越高,對(duì)異常檢測(cè)的要求更高,但傳統(tǒng)的機(jī)器學(xué)習(xí)算法存在訓(xùn)練效率低、特征提取繁瑣、相關(guān)參數(shù)過多、檢測(cè)準(zhǔn)確度較低等問題。
深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)可自適應(yīng)地進(jìn)行數(shù)據(jù)特征提取,具有傳統(tǒng)機(jī)器學(xué)習(xí)無法比擬的優(yōu)越性,在圖像識(shí)別、故障診斷、數(shù)據(jù)分類等領(lǐng)域得到廣泛應(yīng)用[4]。自編碼器(AutoEncoder,AE)是一種用于無監(jiān)督學(xué)習(xí)的深度神經(jīng)網(wǎng)絡(luò),最早由RUMELHARD等[5]提出,BOURLARD 等[6]對(duì)其進(jìn)行了更加詳細(xì)的闡述。隨后,NG 等[7]提出具有更強(qiáng)特征提取能力的稀疏自編碼器。基于自編碼器的改進(jìn)模型被陸續(xù)提出,并應(yīng)用于各種研究領(lǐng)域。在網(wǎng)絡(luò)流量等數(shù)據(jù)異常檢測(cè)問題上,自編碼器因其優(yōu)越的重建數(shù)據(jù)和特征提取能力得到了廣泛的關(guān)注[8]。
目前網(wǎng)絡(luò)流量監(jiān)控和數(shù)據(jù)采集系統(tǒng)較為完善,但采集到的網(wǎng)絡(luò)流量數(shù)據(jù)往往規(guī)模較大,降低了自編碼器和神經(jīng)網(wǎng)絡(luò)的訓(xùn)練效率且無法有效提高網(wǎng)絡(luò)的訓(xùn)練效果[9]。由于網(wǎng)絡(luò)流量數(shù)據(jù)特征較多、維度較高,且計(jì)算機(jī)網(wǎng)絡(luò)的基本原理、網(wǎng)絡(luò)基礎(chǔ)設(shè)施、網(wǎng)絡(luò)流量數(shù)據(jù)特征之間的相關(guān)性不可忽視,因此考慮數(shù)據(jù)特征相關(guān)性的馬氏距離(Mahalanobis distance)[10]更適合用于網(wǎng)絡(luò)流量數(shù)據(jù)之間的距離表達(dá)。
本文提出一種結(jié)合馬氏距離和自編碼器的檢測(cè)方法,通過實(shí)驗(yàn)得到馬氏距離倒數(shù)的判別閾值,并根據(jù)馬氏距離及判別閾值快速檢測(cè)出部分正常網(wǎng)絡(luò)流量,以提高網(wǎng)絡(luò)流量異常檢測(cè)的效率。在此基礎(chǔ)上,將馬氏距離度量項(xiàng)加入自編碼器的代價(jià)函數(shù)中,提高自編碼器對(duì)網(wǎng)絡(luò)流量數(shù)據(jù)的特征學(xué)習(xí)能力。此外,將自編碼器和Sigmoid 分類器相結(jié)合,構(gòu)建用于網(wǎng)絡(luò)流量異常檢測(cè)的自編碼神經(jīng)網(wǎng)絡(luò),以避免網(wǎng)絡(luò)陷入局部最優(yōu)[9]。另外,調(diào)整自編碼神經(jīng)網(wǎng)絡(luò)交叉熵?fù)p失函數(shù)中各項(xiàng)的權(quán)重,從而增強(qiáng)自編碼神經(jīng)網(wǎng)絡(luò)對(duì)數(shù)據(jù)分布不均衡網(wǎng)絡(luò)流量數(shù)據(jù)集的訓(xùn)練效果,提高異常檢測(cè)的準(zhǔn)確性。
自編碼器的結(jié)構(gòu)模型如圖1 所示,主要包括編碼層、隱層和輸出層,分為編碼和解碼兩個(gè)階段。將輸入層數(shù)據(jù)編碼為隱層表達(dá),將隱層表達(dá)解碼為輸出層數(shù)據(jù),其目標(biāo)為重構(gòu)輸入數(shù)據(jù),最小化重構(gòu)誤差使輸出層數(shù)據(jù)盡可能等于相對(duì)應(yīng)的輸入數(shù)據(jù)以獲得最佳的隱層表達(dá)[13]。
圖1 自編碼器結(jié)構(gòu)Fig.1 Autoencoder structure
將輸入數(shù)據(jù)表示為X=(X1,X2,…,Xn),其中Xi∈Rm(i=1,2,…,n),數(shù)據(jù)個(gè)數(shù)為n,維度為m。輸出數(shù)據(jù)記為X′i。自編碼器的編碼和解碼過程如下:
其中:W為編碼階段權(quán)重;W′為解碼階段權(quán)重;b為編碼階段偏置;b′為解碼階段偏置;σe和σd為激活函數(shù),較為常用的激活函數(shù)有Relu、Tanh、Sigmoid 等[9]。
其中:L為單個(gè)數(shù)據(jù)的損失函數(shù),本文使用的是交叉熵?fù)p失函數(shù)。網(wǎng)絡(luò)流量的異常檢測(cè)任務(wù)為二分類任務(wù),對(duì)于最終分類網(wǎng)絡(luò)的激活函數(shù)選擇Sigmoid 函數(shù)較為合適。均方誤差損失函數(shù)存在權(quán)重更新過慢的問題,但交叉熵?fù)p失函數(shù)可以完美解決以上問題,其具有誤差大但權(quán)重更新快,誤差小但權(quán)重更新慢的優(yōu)勢(shì)[15]。所以,當(dāng)使用Sigmoid 函數(shù)作為激活函數(shù)時(shí),交叉熵?fù)p失函數(shù)更加適合。另外在常用代價(jià)函數(shù)中添加L2 正則化項(xiàng)[15]可避免過擬合,λ為L(zhǎng)2 正則化項(xiàng)的懲罰因子,常用代價(jià)函數(shù)如下:
馬氏距離由印度統(tǒng)計(jì)學(xué)家Mahalanobis 提出,其利用向量間的協(xié)方差矩陣表示距離,考慮了各變量之間的相關(guān)性,因此在諸多領(lǐng)域具有一定的優(yōu)越性[10]。
設(shè)有一均值為μ=(μ1,μ2,…,μm)T,協(xié)方差矩陣為Σ的數(shù)據(jù)集X=(X1,X2,…,Xn),n為數(shù)據(jù)個(gè)數(shù),m為數(shù)據(jù)維度,其中一個(gè)數(shù)據(jù)表示為x=(x1,x2,…,xm)T,則其馬氏距離表示為:
其中:Σ-1為Σ的逆矩陣。馬氏距離的計(jì)算公式使用了協(xié)方差矩陣,其最大優(yōu)勢(shì)在于考慮了數(shù)據(jù)特征之間的相關(guān)性[10]。
文獻(xiàn)[11]使用方差分析、方差閾值等方法提取網(wǎng)絡(luò)流量數(shù)據(jù)的特征,并結(jié)合多個(gè)聚類算法進(jìn)行聯(lián)合異常檢測(cè),在聚類算法中使用歐式距離進(jìn)行聚類,實(shí)驗(yàn)效果對(duì)特征的選擇依賴性較大,需要多種聚類算法融合才能提升效果,因此使用歐式距離進(jìn)行網(wǎng)絡(luò)流量數(shù)據(jù)的距離計(jì)算的效果一般,不具有優(yōu)越性。文獻(xiàn)[12]利用KL 距離進(jìn)行網(wǎng)絡(luò)流量異常檢測(cè),利用指數(shù)加權(quán)移動(dòng)平均模型建立滑動(dòng)窗口機(jī)制,獲取數(shù)據(jù)的KL 距離預(yù)測(cè)值并得到自適應(yīng)閾值范圍。此外,通過判斷數(shù)據(jù)的KL 距離是否在此范圍內(nèi)進(jìn)行網(wǎng)絡(luò)流量的異常檢測(cè)。該方法具有一定優(yōu)越性,然而更適用于動(dòng)態(tài)變化的網(wǎng)絡(luò)環(huán)境,需要不斷變換閾值,對(duì)于數(shù)據(jù)規(guī)模較大的網(wǎng)絡(luò)流量數(shù)據(jù)異常檢測(cè)時(shí),網(wǎng)絡(luò)流量數(shù)據(jù)的KL 距離并沒有明顯的不同。
綜上所述,本文選用馬氏距離進(jìn)行網(wǎng)絡(luò)流量數(shù)據(jù)間的距離表達(dá)。
由式(5)可知,在數(shù)據(jù)集中,數(shù)據(jù)的馬氏距離越小,說明其與數(shù)據(jù)集均值越接近。若一數(shù)據(jù)為正常數(shù)據(jù),則其通過式(5)計(jì)算得到的馬氏距離應(yīng)符合正常數(shù)據(jù)馬氏距離分布,否則該數(shù)據(jù)更可能為異常數(shù)據(jù),所以網(wǎng)絡(luò)流量數(shù)據(jù)的馬氏距離是其正常與否的一個(gè)重要判別依據(jù)。
將數(shù)據(jù)維度為m的網(wǎng)絡(luò)流量數(shù)據(jù)集記為X=(X1,X2,…,Xn),n為數(shù)據(jù)個(gè)數(shù)。利用其中一部分正常數(shù)據(jù)集,計(jì)算其均值并記為μN(yùn)=(μ1,μ2,…,μm)T,其協(xié)方差矩陣記為ΣN。由式(5)可知,馬氏距離的計(jì)算使用了數(shù)據(jù)集的均值,而均值受每個(gè)數(shù)據(jù)的影響,所以馬氏距離放大了少量數(shù)據(jù)的影響[10]。為避免此影響,本文在對(duì)所有數(shù)據(jù)計(jì)算其馬氏距離時(shí),采用不受數(shù)據(jù)變化影響的獨(dú)立正常數(shù)據(jù)集的均值μN(yùn)和協(xié)方差矩陣ΣN。所以數(shù)據(jù)Xi的馬氏距離表示為:
根據(jù)式(6)計(jì)算網(wǎng)絡(luò)流量數(shù)據(jù)集中數(shù)據(jù)的馬氏距離,將數(shù)據(jù)的馬氏距離集記為:
其中:Mq表示在數(shù)據(jù)集中第q個(gè)數(shù)據(jù)的馬氏距離。
如果某一數(shù)據(jù)為正常數(shù)據(jù),利用μN(yùn)和ΣN,通過式(6)計(jì)算得到的馬氏距離應(yīng)符合正常數(shù)據(jù)的馬氏距離分布;如果該數(shù)據(jù)為異常數(shù)據(jù),則通過式(6)計(jì)算得到的馬氏距離可能不符合正常數(shù)據(jù)的馬氏距離分布。在實(shí)驗(yàn)過程中發(fā)現(xiàn),正常與異常數(shù)據(jù)通過式(6)計(jì)算得到的馬氏距離分布不同,尤其正常與異常數(shù)據(jù)的馬氏距離倒數(shù)的分布相差較大,相關(guān)分布圖在4.1 節(jié)給出。將數(shù)據(jù)的馬氏距離倒數(shù)集記為:
通過實(shí)驗(yàn)觀察Mr的分布,發(fā)現(xiàn)正常與異常數(shù)據(jù)的馬氏距離倒數(shù)的分布之間存在一個(gè)閾值,記為T。在實(shí)驗(yàn)中,若網(wǎng)絡(luò)流量數(shù)據(jù)Xi的馬氏距離倒數(shù)≥T,則數(shù)據(jù)Xi為正常數(shù)據(jù),否則判定該數(shù)據(jù)為未確定數(shù)據(jù),并進(jìn)入自編碼神經(jīng)網(wǎng)絡(luò)進(jìn)行判斷。
此判別閾值T需要通過實(shí)驗(yàn)分析確定合適的數(shù)值以保證數(shù)據(jù)判別的正確性。通過實(shí)驗(yàn)可知,超過此閾值的均為正常數(shù)據(jù)。將未超過此判別閾值的數(shù)據(jù)判定為未確定數(shù)據(jù),將未確定數(shù)據(jù)集作為訓(xùn)練數(shù)據(jù)用于自編碼器和分類網(wǎng)絡(luò)的訓(xùn)練。如此可快速判別出部分正常數(shù)據(jù),將其余的未確定數(shù)據(jù)作為接下來網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù),大幅縮減了訓(xùn)練數(shù)據(jù)規(guī)模。在實(shí)際檢測(cè)時(shí),通過數(shù)據(jù)馬氏距離及判別閾值可快速判別是否為正常數(shù)據(jù),提高了檢測(cè)效率。
為使自編碼器獲得更好的隱層表達(dá)及進(jìn)一步提高其提取特征的能力,利用KL 散度對(duì)隱層神經(jīng)元輸出進(jìn)行約束并將其添加到代價(jià)函數(shù)中,從而抑制隱層神經(jīng)元的輸出,使網(wǎng)絡(luò)達(dá)到稀疏效果,并構(gòu)成稀疏自編碼器[7]。稀疏自編碼器代價(jià)函數(shù)表示如下:
其中:稀疏懲罰項(xiàng)為KL 散度即KL(ρ‖);k為隱層神經(jīng)元數(shù)量;β控制稀疏懲罰項(xiàng)的權(quán)重;ρ為稀疏常數(shù)為隱層神經(jīng)元上的平均激活量。
KL 散度[13]表示如下:
如上所述,數(shù)據(jù)的馬氏距離可以作為該數(shù)據(jù)是否為異常數(shù)據(jù)的判斷依據(jù),因此考慮在自編碼器的代價(jià)函數(shù)中添加一個(gè)馬氏距離度量項(xiàng),使自編碼器在訓(xùn)練過程中,輸出與輸入的馬氏距離盡量接近,從而使自編碼器更好地學(xué)習(xí)數(shù)據(jù)特征,提升異常檢測(cè)效果。本文提出的改進(jìn)自編碼器代價(jià)函數(shù)表示如下:
其中:γ為馬氏距離度量項(xiàng)權(quán)重;為馬氏距離度量項(xiàng)。
馬氏距離表示如下:
在式(12)中,計(jì)算輸入與輸出馬氏距離時(shí)仍然使用2.1 節(jié)中得到的正常數(shù)據(jù)集的均值μN(yùn)和協(xié)方差矩陣ΣN。本文構(gòu)建的改進(jìn)自編碼器如圖2 所示。
圖2 改進(jìn)自編碼器的結(jié)構(gòu)Fig.2 Structure of the improved autoencoder
由于本文主要關(guān)注馬氏距離度量項(xiàng)對(duì)自編碼器的影響,因此構(gòu)建了最簡(jiǎn)單的3 層自編碼器結(jié)構(gòu),其代價(jià)函數(shù)如式(11)所示,自編碼器訓(xùn)練時(shí)通過無監(jiān)督貪婪算法[15]最小化代價(jià)函數(shù),使用未確定數(shù)據(jù)集進(jìn)行自編碼器的訓(xùn)練,最終得到隱層表達(dá)hk。
上述自編碼器訓(xùn)練完成后,將隱層結(jié)合分類器構(gòu)建成自編碼神經(jīng)網(wǎng)絡(luò)。將得到的合適權(quán)值W和偏置b參數(shù)作為分類網(wǎng)絡(luò)的初始化參數(shù),避免了傳統(tǒng)網(wǎng)絡(luò)參數(shù)隨機(jī)初始化可能會(huì)使網(wǎng)絡(luò)陷入局部最優(yōu)的風(fēng)險(xiǎn),提高了分類網(wǎng)絡(luò)的穩(wěn)定性。如圖3 所示,將hk作為Sigmoid 分類層S的輸入,輸出分類結(jié)果Xo,同時(shí),輸入帶有標(biāo)簽的未確定數(shù)據(jù)以完成有監(jiān)督的訓(xùn)練及參數(shù)微調(diào)[16]。
圖3 參數(shù)微調(diào)Fig.3 Parameter fine-tuning
自編碼神經(jīng)網(wǎng)絡(luò)的代價(jià)函數(shù)為交叉熵?fù)p失函數(shù):
其 中:xο為神經(jīng)網(wǎng)絡(luò)輸出結(jié)果;yο為該數(shù)據(jù)真實(shí)標(biāo)簽,yο∈(0,1)。
在網(wǎng)絡(luò)流量的采集過程中,若不處理網(wǎng)絡(luò)流量數(shù)據(jù)集,則大多數(shù)數(shù)據(jù)為正常數(shù)據(jù),異常數(shù)據(jù)占比較小,數(shù)據(jù)分布不均衡。使用這種不均衡的數(shù)據(jù)集進(jìn)行神經(jīng)網(wǎng)絡(luò)訓(xùn)練時(shí),可能會(huì)讓神經(jīng)網(wǎng)絡(luò)傾向于將所有的樣本都預(yù)測(cè)為正常數(shù)據(jù),于是本文使用調(diào)整交叉熵?fù)p失函數(shù)中各項(xiàng)權(quán)重的方式來緩解此問題。
在進(jìn)行實(shí)驗(yàn)時(shí),將正常數(shù)據(jù)的標(biāo)簽標(biāo)記為0、異常數(shù)據(jù)的標(biāo)簽標(biāo)記為1。令W0表示用于訓(xùn)練的未確定數(shù)據(jù)集中正常數(shù)據(jù)占總數(shù)據(jù)量的比重,W1表示異常數(shù)據(jù)占總數(shù)據(jù)量的比重,改進(jìn)該自編碼神經(jīng)網(wǎng)絡(luò)的代價(jià)函數(shù)如式(14)所示:
由于W0>W(wǎng)1,因此當(dāng)占比較少的異常數(shù)據(jù)(標(biāo)簽為1)被錯(cuò)誤預(yù)判為正常數(shù)據(jù)(即預(yù)判為0)時(shí),代價(jià)就非常大。而一旦占比較多的正常數(shù)據(jù)(標(biāo)簽為0)被錯(cuò)誤預(yù)判為異常數(shù)據(jù)(即預(yù)判為1)時(shí),代價(jià)較小,對(duì)網(wǎng)絡(luò)訓(xùn)練的影響也較小。
因此,通過對(duì)自編碼神經(jīng)網(wǎng)絡(luò)代價(jià)函數(shù)改進(jìn),一定程度上解決了數(shù)據(jù)分布不均衡對(duì)網(wǎng)絡(luò)訓(xùn)練的影響,提高了自編碼神經(jīng)網(wǎng)絡(luò)的訓(xùn)練效果,有利于網(wǎng)絡(luò)流量的異常檢測(cè)。
實(shí)驗(yàn)使用Windows10 操作系統(tǒng),計(jì)算機(jī)CPU 為Intel Core i5-6500 3.20 GHz、8 GB RAM,基于Keras框架使用python3.6 實(shí)現(xiàn)。
本文使用的數(shù)據(jù)集為CICIDS2017 數(shù)據(jù)集[17]和NSL-KDD 數(shù)據(jù)集[18],這兩個(gè)數(shù)據(jù)集在網(wǎng)絡(luò)異常檢測(cè)研究中被廣泛應(yīng)用。
CICIDS2017 數(shù)據(jù)集是加拿大網(wǎng)絡(luò)安全研究所于2017 年采集并公開的網(wǎng)絡(luò)流量數(shù)據(jù)集,該數(shù)據(jù)集包含周一到周五采集的5 天網(wǎng)絡(luò)流量數(shù)據(jù),其中包含了正常流量與常見攻擊導(dǎo)致的異常流量。進(jìn)行的攻擊包括暴力文件傳輸協(xié)議(FTP)、暴力安全外殼協(xié)議(SSH)、拒絕服務(wù)(DoS)等,本文只進(jìn)行網(wǎng)絡(luò)流量的異常檢測(cè)研究,故將這些攻擊導(dǎo)致的網(wǎng)絡(luò)流量數(shù)據(jù)定義為異常網(wǎng)絡(luò)流量。該數(shù)據(jù)集共包含2 830 743 條數(shù)據(jù),其樣本分布如表1 所示。
表1 CICIDS2017 數(shù)據(jù)集樣本分布Table 1 CICIDS2017 data set sample distribution
NSL-KDD 是研究人員為解決KDDCup99 數(shù)據(jù)集的缺陷而開發(fā)的網(wǎng)絡(luò)流量數(shù)據(jù)集[18],該數(shù)據(jù)集由KDDCup99 數(shù)據(jù)集改進(jìn),其不包含冗余數(shù)據(jù)和重復(fù)數(shù)據(jù),數(shù)據(jù)分布更加平衡,更能體現(xiàn)異常檢測(cè)效果。該數(shù)據(jù)集包含正常數(shù)據(jù)及拒絕服務(wù)攻擊、監(jiān)視、探測(cè)、非法訪問等異常攻擊或操作造成的異常網(wǎng)絡(luò)流量數(shù)據(jù),共包含125 972 條數(shù)據(jù),該數(shù)據(jù)集樣本分布如表2 所示。
表2 NSL-KDD 數(shù)據(jù)集樣本分布Table 2 NSL-KDD data set sample distribution
實(shí)驗(yàn)主要使用CICIDS2017 數(shù)據(jù)集,然后使用NSL-KDD 進(jìn)行相關(guān)對(duì)比實(shí)驗(yàn),并進(jìn)一步觀察所提方法的異常檢測(cè)效果。實(shí)驗(yàn)步驟如下:
步驟1由于數(shù)據(jù)集中某些特征為離散型特征,因此需要對(duì)實(shí)驗(yàn)數(shù)據(jù)集進(jìn)行預(yù)處理,將這些特征值處理為數(shù)值型。為保證離散型特征值的無序性,本文采用One-Hot 編碼[19]處理離散型特征,隨后對(duì)數(shù)據(jù)進(jìn)行歸一化處理。
步驟2訓(xùn)練數(shù)據(jù)集為實(shí)驗(yàn)數(shù)據(jù)集隨機(jī)采樣的80%數(shù)據(jù),測(cè)試數(shù)據(jù)集為剩余的20%數(shù)據(jù)。
步驟3通過訓(xùn)練數(shù)據(jù)集中的正常數(shù)據(jù)集得到式(6)中的 均值μN(yùn)、協(xié) 方差矩 陣ΣN及,并 根據(jù)式(6)計(jì)算訓(xùn)練數(shù)據(jù)集中所有數(shù)據(jù)的馬氏距離,再計(jì)算數(shù)據(jù)的馬氏距離倒數(shù),得到訓(xùn)練數(shù)據(jù)的馬氏距離倒數(shù)集Mr。根據(jù)實(shí)驗(yàn)觀察Mr中正常數(shù)據(jù)與異常數(shù)據(jù)的馬氏距離倒數(shù)分布,確定判別閾值T的值。
步驟4將Mr中超過閾值T的數(shù)據(jù)判定為正常數(shù)據(jù),未超過閾值T的數(shù)據(jù)判定為未確定數(shù)據(jù),將未確定數(shù)據(jù)集作為自編碼器和分類網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù)。
步驟5構(gòu)建如圖2 所示的改進(jìn)自編碼器,代價(jià)函數(shù)為添加馬氏距離度量項(xiàng)的式(11),并通過未確定數(shù)據(jù)訓(xùn)練自編碼器,得到最佳隱層表達(dá)hk。
步驟6確定正常數(shù)據(jù)占未確定數(shù)據(jù)量的比重W0、異常數(shù)據(jù)占未確定數(shù)據(jù)量的比重W1,構(gòu)建如圖3 所示的以式(14)為代價(jià)函數(shù)的改進(jìn)自編碼神經(jīng)網(wǎng)絡(luò)。將hk作為Sigmoid 分類器的輸入,通過帶標(biāo)簽的未確定數(shù)據(jù)進(jìn)行有監(jiān)督地微調(diào)完成整個(gè)自編碼神經(jīng)網(wǎng)絡(luò)的訓(xùn)練。
步驟7使用測(cè)試數(shù)據(jù)集進(jìn)行測(cè)試實(shí)驗(yàn)。使用步驟3 中確定的μN(yùn)和計(jì)算得到測(cè)試數(shù)據(jù)的馬氏距離,并計(jì)算其馬氏距離倒數(shù)。若數(shù)據(jù)馬氏距離倒數(shù)超過閾值T,則將該數(shù)據(jù)判定為正常數(shù)據(jù);若數(shù)據(jù)馬氏距離倒數(shù)未超過閾值T,將其判定為未確定數(shù)據(jù)。隨后將該數(shù)據(jù)輸入進(jìn)訓(xùn)練完成的自編碼神經(jīng)網(wǎng)絡(luò)中并輸出其判定結(jié)果。通過測(cè)試實(shí)驗(yàn),觀察所提方法的異常檢測(cè)效果。本文提出的網(wǎng)絡(luò)流量異常檢測(cè)模型如圖4 所示。
圖4 異常檢測(cè)模型Fig.4 Anomaly detection model
本文實(shí)驗(yàn)的評(píng)價(jià)指標(biāo)混淆矩陣[20]如表3 所示。
表3 評(píng)價(jià)指標(biāo)混淆矩陣Table 3 Confusion matrix of evaluation indicators
本文使用如下指標(biāo)評(píng)價(jià)異常檢測(cè)效果:
準(zhǔn)確率(Accuracy)表示分類正確的樣本占全部樣本的比重,其表達(dá)如下:
精確率(Precision)表示正確分類為正樣本的數(shù)據(jù)量占全部分類為正樣本數(shù)據(jù)量的比重,其表達(dá)如下:
召回率(Recall)表示正確分類為正樣本的數(shù)據(jù)量占全部實(shí)際為正樣本的數(shù)據(jù)量的比重,其表達(dá)如下:
F1 值(F1)能有效地說明異常檢測(cè)效果,其為精確率和召回率的綜合考量,表達(dá)如下:
若實(shí)驗(yàn)異常檢測(cè)效果越好,則上述4 個(gè)指標(biāo)越接近1[19]。
本文首先使用CICIDS2017 數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),由于CICIDS2017 數(shù)據(jù)集的數(shù)據(jù)量較大,為提高實(shí)驗(yàn)效率,本實(shí)驗(yàn)隨機(jī)選取CICIDS2017 數(shù)據(jù)集的20%數(shù)據(jù)作為實(shí)驗(yàn)數(shù)據(jù)集,該實(shí)驗(yàn)數(shù)據(jù)集共包含566 149 條數(shù)據(jù)。CICIDS2017 實(shí)驗(yàn)數(shù)據(jù)集樣本分布如表4 所示,經(jīng)過預(yù)處理后,該實(shí)驗(yàn)數(shù)據(jù)集中網(wǎng)絡(luò)流量數(shù)據(jù)包含70個(gè)特征。
表4 CICIDS2017 實(shí)驗(yàn)數(shù)據(jù)集樣本分布Table 4 CICIDS2017 experimental data set sample distribution
本實(shí)驗(yàn)首先隨機(jī)選取CICIDS2017 實(shí)驗(yàn)數(shù)據(jù)集的80%數(shù)據(jù)作為訓(xùn)練數(shù)據(jù),剩余20%作為測(cè)試數(shù)據(jù)。訓(xùn)練數(shù)據(jù)集樣本分布如表5 所示,測(cè)試數(shù)據(jù)集樣本分布如表6 所示。
表5 CICIDS2017 訓(xùn)練數(shù)據(jù)集樣本分布Table 5 CICIDS2017 training data set sample distribution
表6 CICIDS2017 測(cè)試數(shù)據(jù)集樣本分布Table 6 CICIDS2017 test data set sample distribution
選取訓(xùn)練數(shù)據(jù)集中的正常數(shù)據(jù)集,從而計(jì)算得到正常數(shù)據(jù)集的均值μN(yùn)和協(xié)方差矩陣ΣN,根據(jù)式(6)計(jì)算所有訓(xùn)練數(shù)據(jù)的馬氏距離,訓(xùn)練數(shù)據(jù)的馬氏距離分布如圖5 所示。
圖5 訓(xùn)練數(shù)據(jù)集的馬氏距離分布Fig.5 Mahalanobis distance of training data set
由圖5 可知,在訓(xùn)練數(shù)據(jù)集中,正常與異常數(shù)據(jù)通過式(6)得出的馬氏距離分布不同,接下來計(jì)算得到訓(xùn)練數(shù)據(jù)集的馬氏距離倒數(shù),觀察其馬氏距離倒數(shù)的分布,如圖6 所示。
圖6 訓(xùn)練數(shù)據(jù)集的馬氏距離倒數(shù)分布及判別閾值Fig.6 Inverse distribution of Mahalanobis distance and discrimination threshold of training data set
由圖6 可知,訓(xùn)練數(shù)據(jù)集中數(shù)據(jù)的馬氏距離倒數(shù)分布差異較為明顯。根據(jù)圖6 可確定判別閾值T,為保證檢測(cè)準(zhǔn)確性,需確保超過判別閾值的均為正常數(shù)據(jù),異常數(shù)據(jù)均未超過判別閾值,本實(shí)驗(yàn)確定判別閾值T的值為0.4,已在圖6 中標(biāo)示。
如圖6 所示,將馬氏距離倒數(shù)超過判別閾值T的數(shù)據(jù)判定為正常數(shù)據(jù),未超過判別閾值T的判定為未確定數(shù)據(jù)。經(jīng)過實(shí)驗(yàn)證明,馬氏距離倒數(shù)超過判別閾值而被判定為正常數(shù)據(jù)的數(shù)據(jù)實(shí)際均為正常數(shù)據(jù),接下來將未超過判別閾值的未確定數(shù)據(jù)集作為訓(xùn)練數(shù)據(jù)用于自編碼器和分類網(wǎng)絡(luò)的訓(xùn)練,未確定數(shù)據(jù)集包含318 400 條數(shù)據(jù),其樣本分布如表7所示。
表7 未確定數(shù)據(jù)集樣本分布Table 7 Uncertain data set sample distribution
通過判別閾值共判別出134 519 條正常數(shù)據(jù),占訓(xùn)練數(shù)據(jù)集中正常數(shù)據(jù)量的37.0%,占訓(xùn)練數(shù)據(jù)集總數(shù)據(jù)量的29.7%,明顯減少了訓(xùn)練數(shù)據(jù)量。在實(shí)際網(wǎng)絡(luò)流量異常檢測(cè)中利用判別閾值可快速判別數(shù)據(jù)是否為正常數(shù)據(jù),提高了檢測(cè)效率。
本實(shí)驗(yàn)構(gòu)建的自編碼器在稀疏自編碼器的基礎(chǔ)上加入馬氏距離度量項(xiàng),其代價(jià)函數(shù)為式(11)。由于在隱層中加入了稀疏性限制,式(9)中的稀疏懲罰項(xiàng)的權(quán)重β和稀疏常數(shù)ρ需要通過實(shí)驗(yàn)確定合適的數(shù)值,同時(shí)隱層的維度k也需要通過實(shí)驗(yàn)確定。在這些參數(shù)的確定過程中,本實(shí)驗(yàn)將自編碼器訓(xùn)練次數(shù)設(shè)為50,單次訓(xùn)練選取樣本數(shù)為1 000,觀察這些參數(shù)的變化對(duì)自編碼器訓(xùn)練損失的影響,每個(gè)參數(shù)進(jìn)行5 次實(shí)驗(yàn)取平均訓(xùn)練損失。
圖7 所示為自編碼器訓(xùn)練損失隨隱層維度k的變化,可知維度設(shè)為28 時(shí)訓(xùn)練損失最低。圖8 所示為自編碼器訓(xùn)練損失隨β的變化,圖9 所示為自編碼器訓(xùn)練損失隨ρ的變化,由此可知β和ρ分別設(shè)為0.1和0.04 時(shí)訓(xùn)練損失最低。表8 所示為改進(jìn)自編碼器的參數(shù)設(shè)置。
圖7 自編碼器訓(xùn)練損失隨k 的變化Fig.7 Training loss of autoencoder changes with k
圖8 自編碼器訓(xùn)練損失隨權(quán)重β 的變化Fig.8 Training loss of autoencoder changes with weignt β
圖9 自編碼器訓(xùn)練損失隨稀疏常數(shù)ρ 的變化Fig.9 Training loss of autoencoder changes with sparse constanti ρ
表8 改進(jìn)自編碼器的參數(shù)設(shè)置Table 8 Parameters setting of improved autoencoder
構(gòu)建的改進(jìn)自編碼器在訓(xùn)練次數(shù)為100、單次訓(xùn)練選取樣本數(shù)為1 000 的情況下訓(xùn)練損失曲線如圖10 所示,可以看到改進(jìn)自編碼器具有良好的收斂性。
圖10 改進(jìn)自編碼器的訓(xùn)練損失Fig.10 Improved autoencoder training loss
將訓(xùn)練完成的自編碼器的隱層連接Sigmoid 分類層,構(gòu)建如圖3 所示的改進(jìn)自編碼神經(jīng)網(wǎng)絡(luò)。通過自編碼器訓(xùn)練獲得的最優(yōu)權(quán)值W和偏置b參數(shù)作為分類網(wǎng)絡(luò)的初始參數(shù)。該自編碼神經(jīng)網(wǎng)絡(luò)的代價(jià)函數(shù)為式(14),通過得到的用于訓(xùn)練的未確定數(shù)據(jù)集計(jì)算得知,其中正常數(shù)據(jù)占未確定數(shù)據(jù)量的比重W0為0.72、異常數(shù)據(jù)占未確定數(shù)據(jù)量的比重W1為0.28。
通過輸入帶標(biāo)簽的未確定數(shù)據(jù)集對(duì)改進(jìn)自編碼神經(jīng)網(wǎng)絡(luò)進(jìn)行有監(jiān)督的微調(diào),訓(xùn)練次數(shù)為100,單次訓(xùn)練選取樣本數(shù)為1 000,其訓(xùn)練損失曲線如圖11 所示??煽吹狡鋼p失曲線呈連續(xù)下降趨勢(shì),說明通過將自編碼器的W和b參數(shù)作為初始參數(shù)使網(wǎng)絡(luò)具有較好的收斂性,避免了網(wǎng)絡(luò)陷入局部最優(yōu)的風(fēng)險(xiǎn);并且通過調(diào)整交叉熵?fù)p失函數(shù)中兩項(xiàng)的權(quán)重,使自編碼神經(jīng)網(wǎng)絡(luò)的損失下降較快,有利于取得更好的訓(xùn)練效果。
圖11 改進(jìn)自編碼神經(jīng)網(wǎng)絡(luò)的訓(xùn)練損失Fig.11 Improved autoencoder neural network training loss
使用測(cè)試數(shù)據(jù)測(cè)試本文提出的結(jié)合馬氏距離和自編碼器的網(wǎng)絡(luò)流量異常檢測(cè)方法的異常檢測(cè)效果。通過式(6)計(jì)算測(cè)試數(shù)據(jù)的馬氏距離再得到其馬氏距離倒數(shù),經(jīng)過判別閾值T首先判別出一部分正常數(shù)據(jù),再將剩余數(shù)據(jù)放入訓(xùn)練完成的改進(jìn)自編碼神經(jīng)網(wǎng)絡(luò)中得到其預(yù)測(cè)結(jié)果。
為增強(qiáng)實(shí)驗(yàn)的可靠性和準(zhǔn)確性,采用5 折交叉驗(yàn)證方式[7]進(jìn)行實(shí)驗(yàn):將實(shí)驗(yàn)數(shù)據(jù)集隨機(jī)均勻分為5 份,輪流將其中1 份作為測(cè)試數(shù)據(jù),剩余4 份作為訓(xùn)練數(shù)據(jù),共進(jìn)行5 次實(shí)驗(yàn),將5 次實(shí)驗(yàn)結(jié)果取均值作為最終實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)結(jié)果如表9 所示,可見本文提出的網(wǎng)絡(luò)流量異常檢測(cè)方法具有較好的效果。
表9 測(cè)試實(shí)驗(yàn)結(jié)果Table 9 Results of the test experiment
為更進(jìn)一步考察本文所提方法的異常檢測(cè)效果,設(shè)計(jì)4 組不同對(duì)比實(shí)驗(yàn):1)一般自編碼器與加入馬氏距離度量項(xiàng)的改進(jìn)自編碼器的實(shí)驗(yàn)效果對(duì)比;2)一般自編碼神經(jīng)網(wǎng)絡(luò)與調(diào)整交叉熵?fù)p失函數(shù)的改進(jìn)自編碼神經(jīng)網(wǎng)絡(luò)的實(shí)驗(yàn)效果對(duì)比;3)本節(jié)提出的網(wǎng)絡(luò)流量異常檢測(cè)方法與其他網(wǎng)絡(luò)流量異常檢測(cè)方法的對(duì)比;4)使用NSL-KDD 數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),觀察其異常檢測(cè)效果。
為了觀察在自編碼器代價(jià)函數(shù)中加入馬氏距離度量項(xiàng)的影響,本實(shí)驗(yàn)構(gòu)建了一個(gè)未加入馬氏距離度量項(xiàng)的,以式(9)為代價(jià)函數(shù)的一般自編碼器,并與4.2 節(jié)構(gòu)建的加入馬氏距離度量項(xiàng)的改進(jìn)自編碼器進(jìn)行對(duì)比,兩個(gè)自編碼器除代價(jià)函數(shù)外,參數(shù)和結(jié)構(gòu)完全與4.2 節(jié)構(gòu)建的改進(jìn)自編碼器相同。
使用得到的未確定數(shù)據(jù)集分別對(duì)兩個(gè)自編碼器進(jìn)行訓(xùn)練,訓(xùn)練次數(shù)均為100,單次訓(xùn)練所選樣本數(shù)均為1 000,兩者的訓(xùn)練損失對(duì)比如圖12 所示。由圖12 可知,兩個(gè)自編碼器的訓(xùn)練損失相差較小,改進(jìn)自編碼器由于添加了馬氏距離度量項(xiàng),訓(xùn)練損失下降較慢,其最終訓(xùn)練損失值較一般自編碼器稍大。隨后,分別使用兩個(gè)自編碼器構(gòu)建如圖3 所示的自編碼神經(jīng)網(wǎng)絡(luò),通過未確定數(shù)據(jù)進(jìn)行有監(jiān)督的微調(diào)以完成整個(gè)自編碼神經(jīng)網(wǎng)絡(luò)的訓(xùn)練。仍然采用5 折交叉驗(yàn)證方式進(jìn)行4.4 節(jié)中描述的測(cè)試實(shí)驗(yàn),測(cè)試實(shí)驗(yàn)結(jié)果如表10 所示,可知改進(jìn)自編碼器組成的自編碼神經(jīng)網(wǎng)絡(luò)具有更好的異常檢測(cè)效果,說明改進(jìn)自編碼器對(duì)于網(wǎng)絡(luò)流量數(shù)據(jù)具有更好的特征學(xué)習(xí)能力,能夠獲得更佳的隱層,有利于自編碼神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量異常檢測(cè)。
圖12 自編碼器訓(xùn)練損失比較Fig.12 Comparison of autoencoder training loss
表10 兩個(gè)自編碼器測(cè)試實(shí)驗(yàn)結(jié)果對(duì)比Table 10 Comparison of test experiment results of two autoencoders
為觀察調(diào)整自編碼神經(jīng)網(wǎng)絡(luò)的交叉熵?fù)p失函數(shù)中各項(xiàng)權(quán)重對(duì)自編碼神經(jīng)網(wǎng)絡(luò)訓(xùn)練及異常檢測(cè)效果的影響,本實(shí)驗(yàn)使用4.2 節(jié)中訓(xùn)練完成的改進(jìn)自編碼器構(gòu)建如圖3 所示的自編碼神經(jīng)網(wǎng)絡(luò),其代價(jià)函數(shù)為普通交叉熵?fù)p失函數(shù)如式(13)所示,記為一般自編碼神經(jīng)網(wǎng)絡(luò)。使用帶標(biāo)簽的未確定數(shù)據(jù)對(duì)一般自編碼神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,與4.3 節(jié)中構(gòu)建并訓(xùn)練的改進(jìn)自編碼神經(jīng)網(wǎng)絡(luò)進(jìn)行對(duì)比,兩個(gè)自編碼神經(jīng)網(wǎng)絡(luò)除代價(jià)函數(shù)外,參數(shù)及結(jié)構(gòu)與4.3節(jié)中構(gòu)建的改進(jìn)自編碼神經(jīng)網(wǎng)絡(luò)完全相同。
兩個(gè)自編碼神經(jīng)網(wǎng)絡(luò)的訓(xùn)練次數(shù)均為100,單次訓(xùn)練所選樣本數(shù)均為1 000,兩個(gè)自編碼神經(jīng)網(wǎng)絡(luò)的訓(xùn)練損失對(duì)比如圖13 所示??芍倪M(jìn)自編碼神經(jīng)網(wǎng)絡(luò)收斂速度更快、訓(xùn)練損失更小,具有更好的收斂性。
圖13 自編碼神經(jīng)網(wǎng)絡(luò)訓(xùn)練損失比較Fig.13 Comparison of autoencoder neural network training loss
兩個(gè)自編碼神經(jīng)網(wǎng)絡(luò)完成訓(xùn)練后,按照5 折交叉驗(yàn)證方式進(jìn)行4.4節(jié)中描述的測(cè)試實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表11所示??芍ㄟ^調(diào)整交叉熵?fù)p失函數(shù)中各項(xiàng)權(quán)重,對(duì)于數(shù)據(jù)分布不均衡的CICIDS2017 數(shù)據(jù)集,改進(jìn)自編碼神經(jīng)網(wǎng)絡(luò)具有更好的訓(xùn)練效果,能夠提高其網(wǎng)絡(luò)異常檢測(cè)效果。
表11 兩個(gè)自編碼神經(jīng)網(wǎng)絡(luò)測(cè)試實(shí)驗(yàn)結(jié)果對(duì)比Table 11 Comparison of test experiment results of two AE neural networks
為進(jìn)一步驗(yàn)證本文所提網(wǎng)絡(luò)流量異常檢測(cè)方法的效果,在CICIDS2017 數(shù)據(jù)集上將本文所提方法與其他網(wǎng)絡(luò)流量異常檢測(cè)方法和成果進(jìn)行對(duì)比。同樣采用5 折交叉驗(yàn)證方式進(jìn)行實(shí)驗(yàn),對(duì)比的方法包括DNN[1]、LSTM[21]、C-LSTM[21]、CWGAN-CSSAE[22]、GA-CNN[23]、CVAE[22]、IPC[24]等。實(shí)驗(yàn)結(jié)果如表12所示。
表12 與其他網(wǎng)絡(luò)流量異常檢測(cè)方法的對(duì)比Table 12 Comparison with other network traffic anomally detection methods
由表12 可知,本文所提方法在對(duì)網(wǎng)絡(luò)流量異常檢測(cè)的效果上優(yōu)于其他方法。
文獻(xiàn)[24]同樣使用馬氏距離代替?zhèn)鹘y(tǒng)的歐式距離,提出了一種基于馬氏距離的增量可能聚類算法來檢測(cè)異常網(wǎng)絡(luò)流量,該算法逐漸選擇離群點(diǎn)作為新的聚類中心并合并重疊的聚類中心,將不屬于任何正常模型的數(shù)據(jù)視為異常數(shù)據(jù),也證明了馬氏距離較歐式距離的優(yōu)越性。其雖然取得了不錯(cuò)的異常檢測(cè)效果,但不適合實(shí)時(shí)的網(wǎng)絡(luò)流量數(shù)據(jù),是一種無監(jiān)督的算法,需要將整個(gè)數(shù)據(jù)集作為輸入,且分類效率較低,無法對(duì)單一網(wǎng)絡(luò)流量數(shù)據(jù)做出判別。
為觀察本文所提方法的泛化能力,使用同樣被廣泛應(yīng)用于網(wǎng)絡(luò)異常檢測(cè)和分類研究中的NSL-KDD數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)。本實(shí)驗(yàn)仍然采用5 折交叉驗(yàn)證方式進(jìn)行第4 節(jié)所述的實(shí)驗(yàn)過程。實(shí)驗(yàn)中訓(xùn)練數(shù)據(jù)的馬氏距離倒數(shù)及判別閾值T如圖14 所示,其中判別閾值T的值為0.6。訓(xùn)練數(shù)據(jù)共100 778 條數(shù)據(jù),通過馬氏距離倒數(shù)及判別閾值快速判別出15 509 條正常數(shù)據(jù),占總數(shù)據(jù)量的15.39%。
圖14 NSL-KDD 訓(xùn)練數(shù)據(jù)集的馬氏距離倒數(shù)分布及判別閾值Fig.14 Inverse Mahalanobis distrance distance and discrimination threshold of NSL-KDD training data set
構(gòu)建改進(jìn)自編碼器和改進(jìn)自編碼神經(jīng)網(wǎng)絡(luò),測(cè)試實(shí)驗(yàn)結(jié)果如表13 所示。由表13 可知,本文所提異常檢測(cè)方法在NSL-KDD 數(shù)據(jù)集上仍然具有優(yōu)秀的異常檢測(cè)效果,對(duì)網(wǎng)絡(luò)流量數(shù)據(jù)具有一定泛化能力。
表13 NSL-KDD 數(shù)據(jù)集測(cè)試實(shí)驗(yàn)結(jié)果Table 13 Results of the test experiment under NSL-KDD data set
本文從網(wǎng)絡(luò)流量數(shù)據(jù)特征間具有相關(guān)性及數(shù)據(jù)量大的特點(diǎn)出發(fā),提出一種結(jié)合馬氏距離和自編碼器的檢測(cè)方法。通過馬氏距離倒數(shù)及判別閾值快速檢測(cè)出部分正常數(shù)據(jù),減少自編碼器和分類網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù)量。將自編碼器和Sigmoid 分類器相結(jié)合,以避免網(wǎng)絡(luò)陷入局部最優(yōu)。在自編碼器代價(jià)函數(shù)中添加馬氏距離度量項(xiàng),增強(qiáng)自編碼器對(duì)網(wǎng)絡(luò)流量數(shù)據(jù)的特征學(xué)習(xí)能力。調(diào)整自編碼神經(jīng)網(wǎng)絡(luò)交叉熵?fù)p失函數(shù)中各項(xiàng)的權(quán)重,從而提高自編碼神經(jīng)網(wǎng)絡(luò)的訓(xùn)練效果。實(shí)驗(yàn)結(jié)果表明,本文方法具有一定泛化能力,且對(duì)網(wǎng)絡(luò)流量具有較好的異常檢測(cè)效果。