999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

結(jié)合馬氏距離與自編碼器的網(wǎng)絡(luò)流量異常檢測(cè)方法

2022-04-18 10:56:32李貝貝戴菲菲
計(jì)算機(jī)工程 2022年4期
關(guān)鍵詞:實(shí)驗(yàn)檢測(cè)

李貝貝,彭 力,戴菲菲

(1.江南大學(xué) 物聯(lián)網(wǎng)工程學(xué)院,江蘇 無(wú)錫 214122;2.臺(tái)州市產(chǎn)品質(zhì)量安全檢測(cè)研究院,浙江 臺(tái)州 318000)

0 概述

隨著“互聯(lián)網(wǎng)+”時(shí)代的到來(lái),網(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ò)流量可分為兩類(lèi)[3]:一是由于網(wǎng)絡(luò)結(jié)構(gòu)不合理或者網(wǎng)絡(luò)使用不當(dāng)造成的異常流量;二是由DDoS、蠕蟲(chóng)病毒等網(wǎng)絡(luò)攻擊行為造成的異常流量。

傳統(tǒng)的網(wǎng)絡(luò)流量異常檢測(cè)方法包括基于端口、基于統(tǒng)計(jì)、基于聚類(lèi)、基于信息論等方法[2]。其中基于端口的方法異常檢測(cè)準(zhǔn)確度較低,而基于統(tǒng)計(jì)、聚類(lèi)、信息論的方法使許多機(jī)器學(xué)習(xí)算法能用于網(wǎng)絡(luò)流量異常檢測(cè),如K 近鄰算法(K-Nearest Neighbor,KNN)、孤立森林算法(Isolation Forest,iForest)、支持向量機(jī)(Support Vector Machine,SVM)等。如今,網(wǎng)絡(luò)流量規(guī)模越來(lái)越大,數(shù)據(jù)維度越來(lái)越高,對(duì)異常檢測(cè)的要求更高,但傳統(tǒng)的機(jī)器學(xué)習(xí)算法存在訓(xùn)練效率低、特征提取繁瑣、相關(guān)參數(shù)過(guò)多、檢測(cè)準(zhǔn)確度較低等問(wèn)題。

深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)可自適應(yīng)地進(jìn)行數(shù)據(jù)特征提取,具有傳統(tǒng)機(jī)器學(xué)習(xí)無(wú)法比擬的優(yōu)越性,在圖像識(shí)別、故障診斷、數(shù)據(jù)分類(lèi)等領(lǐng)域得到廣泛應(yīng)用[4]。自編碼器(AutoEncoder,AE)是一種用于無(wú)監(jiān)督學(xué)習(xí)的深度神經(jīng)網(wǎng)絡(luò),最早由RUMELHARD等[5]提出,BOURLARD 等[6]對(duì)其進(jìn)行了更加詳細(xì)的闡述。隨后,NG 等[7]提出具有更強(qiáng)特征提取能力的稀疏自編碼器?;谧跃幋a器的改進(jìn)模型被陸續(xù)提出,并應(yīng)用于各種研究領(lǐng)域。在網(wǎng)絡(luò)流量等數(shù)據(jù)異常檢測(cè)問(wèn)題上,自編碼器因其優(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ú)法有效提高網(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è)方法,通過(guò)實(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 分類(lèi)器相結(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)確性。

1 相關(guān)概念

1.1 自編碼器

自編碼器的結(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。自編碼器的編碼和解碼過(guò)程如下:

其中: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ù)為二分類(lèi)任務(wù),對(duì)于最終分類(lèi)網(wǎng)絡(luò)的激活函數(shù)選擇Sigmoid 函數(shù)較為合適。均方誤差損失函數(shù)存在權(quán)重更新過(guò)慢的問(wèn)題,但交叉熵?fù)p失函數(shù)可以完美解決以上問(wèn)題,其具有誤差大但權(quán)重更新快,誤差小但權(quán)重更新慢的優(yōu)勢(shì)[15]。所以,當(dāng)使用Sigmoid 函數(shù)作為激活函數(shù)時(shí),交叉熵?fù)p失函數(shù)更加適合。另外在常用代價(jià)函數(shù)中添加L2 正則化項(xiàng)[15]可避免過(guò)擬合,λ為L(zhǎng)2 正則化項(xiàng)的懲罰因子,常用代價(jià)函數(shù)如下:

1.2 馬氏距離

馬氏距離由印度統(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è)聚類(lèi)算法進(jìn)行聯(lián)合異常檢測(cè),在聚類(lèi)算法中使用歐式距離進(jìn)行聚類(lèi),實(shí)驗(yàn)效果對(duì)特征的選擇依賴(lài)性較大,需要多種聚類(lèi)算法融合才能提升效果,因此使用歐式距離進(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)閾值范圍。此外,通過(guò)判斷數(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 距離并沒(méi)有明顯的不同。

綜上所述,本文選用馬氏距離進(jìn)行網(wǎng)絡(luò)流量數(shù)據(jù)間的距離表達(dá)。

由式(5)可知,在數(shù)據(jù)集中,數(shù)據(jù)的馬氏距離越小,說(shuō)明其與數(shù)據(jù)集均值越接近。若一數(shù)據(jù)為正常數(shù)據(jù),則其通過(guò)式(5)計(jì)算得到的馬氏距離應(yīng)符合正常數(shù)據(jù)馬氏距離分布,否則該數(shù)據(jù)更可能為異常數(shù)據(jù),所以網(wǎng)絡(luò)流量數(shù)據(jù)的馬氏距離是其正常與否的一個(gè)重要判別依據(jù)。

2 網(wǎng)絡(luò)流量異常檢測(cè)方法

2.1 數(shù)據(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,通過(guò)式(6)計(jì)算得到的馬氏距離應(yīng)符合正常數(shù)據(jù)的馬氏距離分布;如果該數(shù)據(jù)為異常數(shù)據(jù),則通過(guò)式(6)計(jì)算得到的馬氏距離可能不符合正常數(shù)據(jù)的馬氏距離分布。在實(shí)驗(yàn)過(guò)程中發(fā)現(xiàn),正常與異常數(shù)據(jù)通過(guò)式(6)計(jì)算得到的馬氏距離分布不同,尤其正常與異常數(shù)據(jù)的馬氏距離倒數(shù)的分布相差較大,相關(guān)分布圖在4.1 節(jié)給出。將數(shù)據(jù)的馬氏距離倒數(shù)集記為:

通過(guò)實(shí)驗(yàn)觀察Mr的分布,發(fā)現(xiàn)正常與異常數(shù)據(jù)的馬氏距離倒數(shù)的分布之間存在一個(gè)閾值,記為T(mén)。在實(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需要通過(guò)實(shí)驗(yàn)分析確定合適的數(shù)值以保證數(shù)據(jù)判別的正確性。通過(guò)實(shí)驗(yàn)可知,超過(guò)此閾值的均為正常數(shù)據(jù)。將未超過(guò)此判別閾值的數(shù)據(jù)判定為未確定數(shù)據(jù),將未確定數(shù)據(jù)集作為訓(xùn)練數(shù)據(jù)用于自編碼器和分類(lèi)網(wǎng)絡(luò)的訓(xùn)練。如此可快速判別出部分正常數(shù)據(jù),將其余的未確定數(shù)據(jù)作為接下來(lái)網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù),大幅縮減了訓(xùn)練數(shù)據(jù)規(guī)模。在實(shí)際檢測(cè)時(shí),通過(guò)數(shù)據(jù)馬氏距離及判別閾值可快速判別是否為正常數(shù)據(jù),提高了檢測(cè)效率。

2.2 改進(jìn)自編碼器的構(gòu)建

為使自編碼器獲得更好的隱層表達(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)練過(guò)程中,輸出與輸入的馬氏距離盡量接近,從而使自編碼器更好地學(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í)通過(guò)無(wú)監(jiān)督貪婪算法[15]最小化代價(jià)函數(shù),使用未確定數(shù)據(jù)集進(jìn)行自編碼器的訓(xùn)練,最終得到隱層表達(dá)hk。

2.3 自編碼器與分類(lèi)器的結(jié)合

上述自編碼器訓(xùn)練完成后,將隱層結(jié)合分類(lèi)器構(gòu)建成自編碼神經(jīng)網(wǎng)絡(luò)。將得到的合適權(quán)值W和偏置b參數(shù)作為分類(lèi)網(wǎng)絡(luò)的初始化參數(shù),避免了傳統(tǒng)網(wǎng)絡(luò)參數(shù)隨機(jī)初始化可能會(huì)使網(wǎng)絡(luò)陷入局部最優(yōu)的風(fēng)險(xiǎn),提高了分類(lèi)網(wǎng)絡(luò)的穩(wěn)定性。如圖3 所示,將hk作為Sigmoid 分類(lèi)層S的輸入,輸出分類(lèi)結(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ò)流量的采集過(guò)程中,若不處理網(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)重的方式來(lái)緩解此問(wè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)練的影響也較小。

因此,通過(guò)對(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è)。

3 實(shí)驗(yàn)準(zhǔn)備

實(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)。

3.1 實(shí)驗(yàn)數(shù)據(jù)

本文使用的數(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 年采集并公開(kāi)的網(wǎng)絡(luò)流量數(shù)據(jù)集,該數(shù)據(jù)集包含周一到周五采集的5 天網(wǎng)絡(luò)流量數(shù)據(jù),其中包含了正常流量與常見(jiàn)攻擊導(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ù)集的缺陷而開(kāi)發(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è)、非法訪(fǎng)問(wèn)等異常攻擊或操作造成的異常網(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

3.2 實(shí)驗(yàn)流程

實(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ù)值型。為保證離散型特征值的無(wú)序性,本文采用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通過(guò)訓(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中超過(guò)閾值T的數(shù)據(jù)判定為正常數(shù)據(jù),未超過(guò)閾值T的數(shù)據(jù)判定為未確定數(shù)據(jù),將未確定數(shù)據(jù)集作為自編碼器和分類(lèi)網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù)。

步驟5構(gòu)建如圖2 所示的改進(jìn)自編碼器,代價(jià)函數(shù)為添加馬氏距離度量項(xiàng)的式(11),并通過(guò)未確定數(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 分類(lèi)器的輸入,通過(guò)帶標(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ù)超過(guò)閾值T,則將該數(shù)據(jù)判定為正常數(shù)據(jù);若數(shù)據(jù)馬氏距離倒數(shù)未超過(guò)閾值T,將其判定為未確定數(shù)據(jù)。隨后將該數(shù)據(jù)輸入進(jìn)訓(xùn)練完成的自編碼神經(jīng)網(wǎng)絡(luò)中并輸出其判定結(jié)果。通過(guò)測(cè)試實(shí)驗(yàn),觀察所提方法的異常檢測(cè)效果。本文提出的網(wǎng)絡(luò)流量異常檢測(cè)模型如圖4 所示。

圖4 異常檢測(cè)模型Fig.4 Anomaly detection model

3.3 評(píng)價(jià)標(biāo)準(zhǔn)

本文實(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)表示分類(lèi)正確的樣本占全部樣本的比重,其表達(dá)如下:

精確率(Precision)表示正確分類(lèi)為正樣本的數(shù)據(jù)量占全部分類(lèi)為正樣本數(shù)據(jù)量的比重,其表達(dá)如下:

召回率(Recall)表示正確分類(lèi)為正樣本的數(shù)據(jù)量占全部實(shí)際為正樣本的數(shù)據(jù)量的比重,其表達(dá)如下:

F1 值(F1)能有效地說(shuō)明異常檢測(cè)效果,其為精確率和召回率的綜合考量,表達(dá)如下:

若實(shí)驗(yàn)異常檢測(cè)效果越好,則上述4 個(gè)指標(biāo)越接近1[19]。

4 實(shí)驗(yàn)過(guò)程

本文首先使用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)過(guò)預(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

4.1 數(shù)據(jù)判別

選取訓(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ù)通過(guò)式(6)得出的馬氏距離分布不同,接下來(lái)計(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)確性,需確保超過(guò)判別閾值的均為正常數(shù)據(jù),異常數(shù)據(jù)均未超過(guò)判別閾值,本實(shí)驗(yàn)確定判別閾值T的值為0.4,已在圖6 中標(biāo)示。

如圖6 所示,將馬氏距離倒數(shù)超過(guò)判別閾值T的數(shù)據(jù)判定為正常數(shù)據(jù),未超過(guò)判別閾值T的判定為未確定數(shù)據(jù)。經(jīng)過(guò)實(shí)驗(yàn)證明,馬氏距離倒數(shù)超過(guò)判別閾值而被判定為正常數(shù)據(jù)的數(shù)據(jù)實(shí)際均為正常數(shù)據(jù),接下來(lái)將未超過(guò)判別閾值的未確定數(shù)據(jù)集作為訓(xùn)練數(shù)據(jù)用于自編碼器和分類(lèi)網(wǎng)絡(luò)的訓(xùn)練,未確定數(shù)據(jù)集包含318 400 條數(shù)據(jù),其樣本分布如表7所示。

表7 未確定數(shù)據(jù)集樣本分布Table 7 Uncertain data set sample distribution

通過(guò)判別閾值共判別出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è)效率。

4.2 改進(jìn)自編碼器的構(gòu)建

本實(shí)驗(yàn)構(gòu)建的自編碼器在稀疏自編碼器的基礎(chǔ)上加入馬氏距離度量項(xiàng),其代價(jià)函數(shù)為式(11)。由于在隱層中加入了稀疏性限制,式(9)中的稀疏懲罰項(xiàng)的權(quán)重β和稀疏常數(shù)ρ需要通過(guò)實(shí)驗(yàn)確定合適的數(shù)值,同時(shí)隱層的維度k也需要通過(guò)實(shí)驗(yàn)確定。在這些參數(shù)的確定過(guò)程中,本實(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)練損失曲線(xiàn)如圖10 所示,可以看到改進(jìn)自編碼器具有良好的收斂性。

圖10 改進(jìn)自編碼器的訓(xùn)練損失Fig.10 Improved autoencoder training loss

4.3 改進(jìn)自編碼神經(jīng)網(wǎng)絡(luò)的構(gòu)建

將訓(xùn)練完成的自編碼器的隱層連接Sigmoid 分類(lèi)層,構(gòu)建如圖3 所示的改進(jìn)自編碼神經(jīng)網(wǎng)絡(luò)。通過(guò)自編碼器訓(xùn)練獲得的最優(yōu)權(quán)值W和偏置b參數(shù)作為分類(lèi)網(wǎng)絡(luò)的初始參數(shù)。該自編碼神經(jīng)網(wǎng)絡(luò)的代價(jià)函數(shù)為式(14),通過(guò)得到的用于訓(xùn)練的未確定數(shù)據(jù)集計(jì)算得知,其中正常數(shù)據(jù)占未確定數(shù)據(jù)量的比重W0為0.72、異常數(shù)據(jù)占未確定數(shù)據(jù)量的比重W1為0.28。

通過(guò)輸入帶標(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)練損失曲線(xiàn)如圖11 所示??煽吹狡鋼p失曲線(xiàn)呈連續(xù)下降趨勢(shì),說(shuō)明通過(guò)將自編碼器的W和b參數(shù)作為初始參數(shù)使網(wǎng)絡(luò)具有較好的收斂性,避免了網(wǎng)絡(luò)陷入局部最優(yōu)的風(fēng)險(xiǎn);并且通過(guò)調(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

4.4 測(cè)試實(shí)驗(yàn)

使用測(cè)試數(shù)據(jù)測(cè)試本文提出的結(jié)合馬氏距離和自編碼器的網(wǎng)絡(luò)流量異常檢測(cè)方法的異常檢測(cè)效果。通過(guò)式(6)計(jì)算測(cè)試數(shù)據(jù)的馬氏距離再得到其馬氏距離倒數(shù),經(jīng)過(guò)判別閾值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 所示,可見(jiàn)本文提出的網(wǎng)絡(luò)流量異常檢測(cè)方法具有較好的效果。

表9 測(cè)試實(shí)驗(yàn)結(jié)果Table 9 Results of the test experiment

5 實(shí)驗(yàn)結(jié)果

為更進(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è)效果。

5.1 一般自編碼器與改進(jìn)自編碼器的對(duì)比

為了觀察在自編碼器代價(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ò),通過(guò)未確定數(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è)效果,說(shuō)明改進(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

5.2 一般自編碼神經(jīng)網(wǎng)絡(luò)與改進(jìn)自編碼神經(jīng)網(wǎng)絡(luò)的對(duì)比

為觀察調(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所示。可知通過(guò)調(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

5.3 與其他網(wǎng)絡(luò)流量異常檢測(cè)方法的對(duì)比

為進(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)的歐式距離,提出了一種基于馬氏距離的增量可能聚類(lèi)算法來(lái)檢測(cè)異常網(wǎng)絡(luò)流量,該算法逐漸選擇離群點(diǎn)作為新的聚類(lèi)中心并合并重疊的聚類(lèi)中心,將不屬于任何正常模型的數(shù)據(jù)視為異常數(shù)據(jù),也證明了馬氏距離較歐式距離的優(yōu)越性。其雖然取得了不錯(cuò)的異常檢測(cè)效果,但不適合實(shí)時(shí)的網(wǎng)絡(luò)流量數(shù)據(jù),是一種無(wú)監(jiān)督的算法,需要將整個(gè)數(shù)據(jù)集作為輸入,且分類(lèi)效率較低,無(wú)法對(duì)單一網(wǎng)絡(luò)流量數(shù)據(jù)做出判別。

5.4 NSL-KDD 數(shù)據(jù)集上的實(shí)驗(yàn)

為觀察本文所提方法的泛化能力,使用同樣被廣泛應(yīng)用于網(wǎng)絡(luò)異常檢測(cè)和分類(lèi)研究中的NSL-KDD數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)。本實(shí)驗(yàn)仍然采用5 折交叉驗(yàn)證方式進(jìn)行第4 節(jié)所述的實(shí)驗(yàn)過(guò)程。實(shí)驗(yàn)中訓(xùn)練數(shù)據(jù)的馬氏距離倒數(shù)及判別閾值T如圖14 所示,其中判別閾值T的值為0.6。訓(xùn)練數(shù)據(jù)共100 778 條數(shù)據(jù),通過(guò)馬氏距離倒數(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

6 結(jié)束語(yǔ)

本文從網(wǎng)絡(luò)流量數(shù)據(jù)特征間具有相關(guān)性及數(shù)據(jù)量大的特點(diǎn)出發(fā),提出一種結(jié)合馬氏距離和自編碼器的檢測(cè)方法。通過(guò)馬氏距離倒數(shù)及判別閾值快速檢測(cè)出部分正常數(shù)據(jù),減少自編碼器和分類(lèi)網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù)量。將自編碼器和Sigmoid 分類(lèi)器相結(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è)效果。

猜你喜歡
實(shí)驗(yàn)檢測(cè)
記一次有趣的實(shí)驗(yàn)
微型實(shí)驗(yàn)里看“燃燒”
“不等式”檢測(cè)題
“一元一次不等式”檢測(cè)題
“一元一次不等式組”檢測(cè)題
“幾何圖形”檢測(cè)題
“角”檢測(cè)題
做個(gè)怪怪長(zhǎng)實(shí)驗(yàn)
NO與NO2相互轉(zhuǎn)化實(shí)驗(yàn)的改進(jìn)
實(shí)踐十號(hào)上的19項(xiàng)實(shí)驗(yàn)
太空探索(2016年5期)2016-07-12 15:17:55
主站蜘蛛池模板: 国产尤物视频网址导航| 国产视频一二三区| 国产精品自在在线午夜| 亚瑟天堂久久一区二区影院| 久久视精品| 99re视频在线| 色135综合网| 色婷婷狠狠干| 国产高清不卡| 色天天综合| 人与鲁专区| 国产精品三级专区| 麻豆国产在线不卡一区二区| 四虎成人在线视频| 精品亚洲国产成人AV| 久久亚洲美女精品国产精品| 国产幂在线无码精品| 亚洲最大看欧美片网站地址| 国产成人无码播放| 国产精品刺激对白在线| 久操线在视频在线观看| 中字无码精油按摩中出视频| 好久久免费视频高清| 国产精品不卡片视频免费观看| 91蜜芽尤物福利在线观看| 人妻91无码色偷偷色噜噜噜| 国产乱人伦精品一区二区| 欧美色99| 久久综合九九亚洲一区| 午夜高清国产拍精品| 亚洲全网成人资源在线观看| 在线国产综合一区二区三区| 国产在线视频自拍| 欧美精品v欧洲精品| 又黄又爽视频好爽视频| 免费一级无码在线网站| 91精品国产91久无码网站| 亚洲一区二区日韩欧美gif| 欧美不卡在线视频| 她的性爱视频| 黄色片中文字幕| 永久成人无码激情视频免费| 日本人妻丰满熟妇区| 老司机精品久久| 久久大香伊蕉在人线观看热2| 人妻丰满熟妇av五码区| 中文字幕永久视频| 国产成人免费视频精品一区二区| 国产精品一区在线麻豆| 在线观看欧美国产| 日韩无码白| 亚洲另类色| 欧美色99| 国产精品女熟高潮视频| 亚洲Va中文字幕久久一区| 国产特一级毛片| 在线观看亚洲人成网站| 亚洲有无码中文网| AV在线天堂进入| 国产精女同一区二区三区久| 国产成人永久免费视频| 亚洲中文字幕手机在线第一页| 国产高清在线精品一区二区三区| 又大又硬又爽免费视频| 粉嫩国产白浆在线观看| 亚洲一区国色天香| 国产精品入口麻豆| 免费看av在线网站网址| 人妻少妇乱子伦精品无码专区毛片| 在线五月婷婷| 久久精品人人做人人爽电影蜜月 | 欧美不卡视频在线| 久久不卡国产精品无码| 欧美三级视频在线播放| 老色鬼欧美精品| 亚洲午夜18| 精品国产乱码久久久久久一区二区| 亚洲天堂网在线观看视频| 国产毛片高清一级国语 | 日韩最新中文字幕| 青草精品视频| 五月六月伊人狠狠丁香网|