張全龍,王懷彬
(天津理工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,天津 300384)
(*通信作者h(yuǎn)bwang@tjut.edu.cn)
計(jì)算機(jī)技術(shù)飛速發(fā)展,它已經(jīng)滲透到人們的工作和日常生活中,給人們帶來(lái)了極大的便利;但同時(shí)網(wǎng)絡(luò)攻擊變得越來(lái)越頻繁,網(wǎng)絡(luò)安全已成為人們必須面對(duì)的挑戰(zhàn)[1-3]。入侵檢測(cè)技術(shù)是網(wǎng)絡(luò)安全的重要組成部分,而入侵檢測(cè)技術(shù)是分類問題,需要做的事情是建立入侵檢測(cè)模型,使其能夠有效地對(duì)各種網(wǎng)絡(luò)攻擊進(jìn)行分類識(shí)別,以便及時(shí)采取安全防范措施。
當(dāng)前,廣為人知的入侵檢測(cè)方法之一是使用不同的機(jī)器學(xué)習(xí)技術(shù)來(lái)降低錯(cuò)誤率,例如K 最近鄰(K-Nearest Neighbor,KNN)[4]、神經(jīng)網(wǎng)絡(luò)(NeuralNetwork,NN)[5]和支持向量機(jī)(Support Vector Machine,SVM)[6-8]已廣泛用于入侵檢測(cè)。文獻(xiàn)[9]中提出了一種基于KNN 回歸的動(dòng)態(tài)多間隔預(yù)測(cè)模型;文獻(xiàn)[10]中提出了一種混合的機(jī)器學(xué)習(xí)技術(shù),結(jié)合了K-means 和SVM 來(lái)檢測(cè)攻擊。集成分類器(例如Adaptive Boosting[11]、隨機(jī)森林(Random Forest,RF)[12-13])通常由多個(gè)弱分類器構(gòu)成,避免在訓(xùn)練過(guò)程中過(guò)擬合,可以實(shí)現(xiàn)更強(qiáng)大的分類功能。Al-Yaseen 等[14]使用SVM 和改進(jìn)的K-means 算法來(lái)構(gòu)建多層混合入侵檢測(cè)模型;但是,對(duì)于KDD CUP99 數(shù)據(jù)集中U2R(User to Root)和R2L(Remote to Local)的低頻攻擊樣本,此模型的檢測(cè)率非常低,遠(yuǎn)低于其他高頻樣本的檢測(cè)率。盡管基于機(jī)器學(xué)習(xí)的網(wǎng)絡(luò)入侵檢測(cè)模型具有強(qiáng)大的檢測(cè)能力和適應(yīng)網(wǎng)絡(luò)環(huán)境變化的自適應(yīng)能力,但是它們?nèi)匀皇艿讲黄胶鈹?shù)據(jù)的影響。卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)[15]是深度學(xué)習(xí)研究的重點(diǎn),在計(jì)算機(jī)視覺、語(yǔ)音識(shí)別和自然語(yǔ)言處理方面取得了出色的研究成果。與傳統(tǒng)的特征選擇算法相比,它可以自動(dòng)學(xué)習(xí)更好的特征。文獻(xiàn)[16]中首先使用不同的降維方法去除了多余的特征,然后將降維數(shù)據(jù)呈現(xiàn)給CNN。盡管獲得了很好的準(zhǔn)確性,但它掩蓋了CNN 的優(yōu)勢(shì)——自動(dòng)提取特征。門控循環(huán)單元(Gated Recurrent Unit,GRU)是遞歸模型,已用于如自然語(yǔ)言處理和情感分析等序列學(xué)習(xí)。文獻(xiàn)[17]中實(shí)現(xiàn)了網(wǎng)絡(luò)入侵檢測(cè)模型的GRU、MLP(Multi-Layer Perceptron)和Softmax 模塊,并在KDD CUP99和NSL-KDD訓(xùn)練數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn);文獻(xiàn)[18]中進(jìn)一步提出通過(guò)一維卷積來(lái)統(tǒng)一和共享多傳感器權(quán)重的問題;文獻(xiàn)[19]中設(shè)計(jì)結(jié)合了CNN 和長(zhǎng)期短期記憶(Long Short Term Memory,LSTM)網(wǎng)絡(luò)的模型;文獻(xiàn)[20]中構(gòu)建了一個(gè)新的深層神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)模型,該模型使用GRU 和MLP 提取數(shù)據(jù)信息,仿真結(jié)果表明,GRU 單元在入侵檢測(cè)方面比LSTM單元更有效。
為了提高檢測(cè)的分類準(zhǔn)確度,本文模型通過(guò)膨脹卷積來(lái)增強(qiáng)感受野的同時(shí)提取增強(qiáng)的特征,并且使用GRU 模型來(lái)挖掘數(shù)據(jù)樣本之間的時(shí)間序列信息。本文模型最大優(yōu)點(diǎn)是可以準(zhǔn)確提取數(shù)據(jù)的特征,并且檢測(cè)到以前從未見過(guò)的攻擊。
本文模型主要貢獻(xiàn)如下:
1)使用膨脹卷積來(lái)增大感受野,以此來(lái)提高模型對(duì)特征獲取的準(zhǔn)確度,對(duì)數(shù)據(jù)樣本進(jìn)行充分的學(xué)習(xí)。
2)使用GRU 神經(jīng)網(wǎng)絡(luò)來(lái)獲取數(shù)據(jù)之間的時(shí)間關(guān)系特征,以此來(lái)檢測(cè)未知的攻擊。
3)使用隨機(jī)梯度下降(Stochastic Gradient Descent,SGD)優(yōu)化算法用于協(xié)助訓(xùn)練模型,并且使用動(dòng)量法來(lái)增加SGD 更新的穩(wěn)定性。
在傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)中,會(huì)使用池化層來(lái)保持特征不變性并避免過(guò)度擬合,但是會(huì)大大降低空間分辨率,丟失特征圖的空間信息。當(dāng)加深卷積神經(jīng)網(wǎng)絡(luò)的層時(shí),網(wǎng)絡(luò)需要更多的參數(shù),并導(dǎo)致更多的計(jì)算資源消耗。Yu等[21]提出的膨脹卷積很好地解決了這一問題。膨脹卷積是一種卷積算子,它使用不同的膨脹因子在不同范圍使用相同的濾波器,膨脹卷積能夠更有效地?cái)U(kuò)展感受野。與傳統(tǒng)卷積相反,膨脹卷積的內(nèi)核中存在孔,孔的大小為膨脹率。一維卷積的公式如下:
其中:f為輸入,w為卷積核,t為卷積核的大小,p為卷積的下限值,q為卷積的上限值。如果是膨脹卷積,則一維膨脹卷積的公式如下:
其中l(wèi)是膨脹率。本文對(duì)輸入數(shù)據(jù)應(yīng)用膨脹卷積時(shí),與傳統(tǒng)卷積相比,感受野將得到擴(kuò)展,而不會(huì)降低分辨率,能夠在不增加參數(shù)數(shù)量或計(jì)算量的情況下增大感受野,換句話說(shuō),本文使用相同層數(shù)可以實(shí)現(xiàn)更大的感受野,而無(wú)需引入比普通卷積更多的操作。膨脹卷積是一個(gè)將步幅進(jìn)行卷積而元素分開的卷積過(guò)程,與傳統(tǒng)的卷積相比,膨脹卷積是到較寬區(qū)域的稀疏連接。本文堆疊3 個(gè)具有不同步幅的膨脹卷積層,盡管膨脹卷積具有與常規(guī)卷積相同的過(guò)濾器大小,但是通過(guò)堆疊它們,可以感知更大的范圍。
本文設(shè)計(jì)的膨脹卷積模型如圖1 所示。該模型具有3 個(gè)膨脹卷積層,每個(gè)卷積層的膨脹率分別為2、4、8:當(dāng)膨脹率為2 時(shí),膨脹卷積過(guò)后特征集中神經(jīng)元數(shù)量為32;當(dāng)膨脹率為4時(shí),膨脹卷積過(guò)后特征集中神經(jīng)元數(shù)量為64;當(dāng)膨脹率為8時(shí),膨脹卷積過(guò)后特征集中神經(jīng)元數(shù)量為128。這樣本文模型可以從原始數(shù)據(jù)中提取盡可能多的特征,并且可以得到神經(jīng)元數(shù)量分別為32、64、128 的特征集。經(jīng)過(guò)3 個(gè)膨脹卷積層后,特征集可以獲取原始數(shù)據(jù)包含的所有信息。在每個(gè)卷積層之后,都有一個(gè)ReLU(Rectified Linear Unit)激活層,用于為模型添加非線性特征。本文不在每個(gè)卷積層之后都使用maxpooling 層,而是在3 個(gè)膨脹卷積層之后加入max-pooling 層來(lái)防止過(guò)擬合。
圖1 膨脹卷積模型Fig.1 Dilated convolution model
本文使用多級(jí)膨脹卷積神經(jīng)網(wǎng)絡(luò)捕獲數(shù)據(jù)之間的局部相關(guān)性和長(zhǎng)期依賴性。具體來(lái)說(shuō),本文的卷積神經(jīng)網(wǎng)絡(luò)是三級(jí)膨脹卷積神經(jīng)網(wǎng)絡(luò),它能夠以指數(shù)形式擴(kuò)展接受域級(jí)別而不增加參數(shù)數(shù)量,因此,膨脹卷積捕獲長(zhǎng)期依賴性成為可能。本文使用具有不同膨脹率的多級(jí)膨脹卷積,這樣做避免了由膨脹導(dǎo)致的重要局部相關(guān)性缺失,也能使輸入的所有數(shù)據(jù)都能夠參與計(jì)算。
傳統(tǒng)的深層神經(jīng)網(wǎng)絡(luò)(DNN)在樣本分類和特征提取方面突破了淺層網(wǎng)絡(luò)的局限性,具有強(qiáng)大的非線性擬合能力。然而,DNN 沒有考慮分類樣本之間的時(shí)間關(guān)系,導(dǎo)致分類過(guò)程中一些信息的丟失。循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)[22]有效地解決了時(shí)序依賴性問題。RNN 引入了隱藏層單元之間的反饋連接,以便網(wǎng)絡(luò)可以將學(xué)習(xí)到的信息保留到當(dāng)前時(shí)刻,并確定網(wǎng)絡(luò)的最終輸出結(jié)果以及當(dāng)前時(shí)刻的輸入;但是,RNN 無(wú)法學(xué)習(xí)導(dǎo)致梯度消失的長(zhǎng)期依賴關(guān)系[23]。LSTM 是許多用于改善RNN 的網(wǎng)絡(luò)結(jié)構(gòu)中最廣泛使用和有效的結(jié)構(gòu)之一,但是LSTM 中有很多參數(shù),并且需要花費(fèi)更多的時(shí)間來(lái)將模型參數(shù)調(diào)整為最佳狀態(tài)。與LSTM 相比,GRU 的門更少,可以節(jié)省更多的訓(xùn)練時(shí)間和計(jì)算資源。圖2顯示了GRU的典型架構(gòu)。
圖2 GRU模型Fig.2 GRU model
GRU 中有兩個(gè)主門,即更新門和重置門。更新門用于控制將多少先前狀態(tài)信息帶入當(dāng)前狀態(tài);重置門用于控制GRU忽略前一時(shí)刻的狀態(tài)信息的程度。所有的關(guān)系定義如下:
1)重置門:
2)更新門:
門控循環(huán)單元中的重置門和更新門的輸入均為當(dāng)前時(shí)間步輸入Xt與上一時(shí)間步隱藏狀態(tài)Ht-1,輸出由激活函數(shù)為sigmoid 函數(shù)的全連接層計(jì)算得到。其中Wr、Wz是權(quán)重參數(shù),br、bz是偏差參數(shù)。
3)候選狀態(tài):
4)隱藏狀態(tài):
其中:Wh、W是權(quán)重參數(shù);bh是偏差參數(shù)。門控循環(huán)單元將計(jì)算候選狀態(tài)來(lái)輔助稍后的隱藏狀態(tài)的計(jì)算,將當(dāng)前時(shí)間步重置門的輸出與上一時(shí)間步隱藏狀態(tài)做按元素乘法。如果重置門中元素值接近0,那么意味著重置對(duì)應(yīng)隱藏狀態(tài)元素為0,即丟棄上一時(shí)間步的隱藏狀態(tài);如果元素值接近1,那么表示保留上一時(shí)間步的隱藏狀態(tài)。這個(gè)設(shè)計(jì)可以應(yīng)對(duì)循環(huán)神經(jīng)網(wǎng)絡(luò)中的梯度衰減問題,并更好地捕捉時(shí)間序列中時(shí)間步距離較大的依賴關(guān)系。
本文通過(guò)將膨脹卷積與GRU 模型結(jié)合在一起形成新模型來(lái)提取數(shù)據(jù)的特征,兩者的結(jié)合構(gòu)成了一個(gè)深層網(wǎng)絡(luò),可以實(shí)現(xiàn)更優(yōu)化的結(jié)果。其結(jié)構(gòu)如圖3所示。
圖3 基于膨脹卷積和GRU的組合模型Fig.3 Combined model based on dilated convolution and GRU
該模型由膨脹卷積部分、GRU 部分、全連接層部分和輸出部分組成。由于膨脹卷積和GRU 網(wǎng)絡(luò)結(jié)構(gòu)的輸入形式不同,因此提取的空間特征會(huì)在膨脹卷積部分的輸出處進(jìn)行調(diào)整,保證GRU 部分輸入的大小與膨脹卷積的輸出大小一致,以滿足GRU 模型的輸入格式。在GRU 模型的輸出層之后連接一個(gè)全連接層,對(duì)先前提取的特征進(jìn)行集成,最后一個(gè)全連接的層的輸出值傳遞給Softmax 進(jìn)行分類。模型各層參數(shù)如表1所示。
表1 模型中各層結(jié)構(gòu)參數(shù)Tab.1 Parameters of different layers of model
膨脹卷積部分提取的特征用于訓(xùn)練分類模型,考慮到特征在不同位置具有局部性,因此在三層膨脹卷積之后使用池化層,在一定程度上匯總不同位置的統(tǒng)計(jì)信息,將小鄰域中的特征點(diǎn)集成以獲得新特征,以減少數(shù)據(jù)量并避免過(guò)擬合。經(jīng)過(guò)膨脹卷積和合并后,使用reshape 函數(shù)重新整形為向量;然后,通過(guò)全連接層獲得輸出,這樣就可以得到膨脹卷積提取的空間特征。膨脹卷積可以準(zhǔn)確提取空間特征,但在學(xué)習(xí)序列相關(guān)信息時(shí)效果不佳,因此,為提高僅使用膨脹卷積的網(wǎng)絡(luò)入侵檢測(cè)的準(zhǔn)確性,本文加入了GRU模型。膨脹卷積和GRU模型都代表了深度學(xué)習(xí)算法,膨脹卷積可以提取空間維度中的數(shù)據(jù)特征,并且增大感受野,GRU 具有可以長(zhǎng)時(shí)間保存上下文歷史信息的特性,并且可以在時(shí)間級(jí)別上實(shí)現(xiàn)數(shù)據(jù)特征的提取。
本文實(shí)驗(yàn)的總體步驟如圖4 所示。首先使用所提出的模型提取數(shù)據(jù)的特征,以提高分類的準(zhǔn)確性;訓(xùn)練后,獲得了具有良好分類性能的模型,并使用該模型對(duì)測(cè)試集進(jìn)行分類,以獲得優(yōu)異的分類結(jié)果。本文實(shí)驗(yàn)使用的CPU 為Intel Core i7-7700、GPU 為GeForce GT 730、操作系統(tǒng)為Windows 10,內(nèi)存為16 GB。
圖4 實(shí)驗(yàn)總體步驟Fig.4 General steps of experiment
本文使用SGD 優(yōu)化算法,經(jīng)過(guò)多次和小范圍實(shí)驗(yàn)訓(xùn)練,實(shí)驗(yàn)參數(shù)設(shè)置如下:學(xué)習(xí)率設(shè)置為0.01,此時(shí)模型的學(xué)習(xí)狀態(tài)最佳;權(quán)值衰減系數(shù)為0.000 001,此時(shí)模型的復(fù)雜度對(duì)損失函數(shù)影響最??;動(dòng)量(momentum)設(shè)置為0.9,此時(shí)SGD的穩(wěn)定性最好;正則化方法Dropout失活率設(shè)置為0.2。
本文使用3 個(gè)公開可用的入侵檢測(cè)數(shù)據(jù)集KDD CUP99、NSL-KDD 和UNSW-NB15 數(shù)據(jù)集。在入侵檢測(cè)領(lǐng)域,KDD CUP99 和NSL-KDD 是著名的數(shù)據(jù)集[24],兩個(gè)數(shù)據(jù)集中每個(gè)入侵記錄都具有42 維特征,標(biāo)簽主要包含普通數(shù)據(jù)和4 種攻擊數(shù)據(jù):DoS(Denial of Service)、Probe、U2R、R2L。UNSW-NB15數(shù)據(jù)集包含許多現(xiàn)代網(wǎng)絡(luò)的新攻擊,可以將其分為1 個(gè)正常類和9 個(gè)攻擊類。在本文的實(shí)驗(yàn)中,KDD CUP99、NSL-KDD、UNSW-NB15數(shù)據(jù)集中樣本類別分布如表2所示。
表2 數(shù)據(jù)集樣本分布Tab.2 Dateset sample distribution
本文對(duì)數(shù)據(jù)集中的字符型特征屬性進(jìn)行數(shù)字化和標(biāo)準(zhǔn)化,得到一個(gè)標(biāo)準(zhǔn)化的數(shù)據(jù)集,然后將每個(gè)數(shù)據(jù)轉(zhuǎn)換為二維矩陣,使其符合膨脹卷積模型的輸入格式。處理后的數(shù)據(jù)集有訓(xùn)練數(shù)據(jù)集和測(cè)試數(shù)據(jù)集,訓(xùn)練數(shù)據(jù)集用來(lái)訓(xùn)練網(wǎng)絡(luò)模型,測(cè)試數(shù)據(jù)集用來(lái)驗(yàn)證模型的有效性。由于數(shù)據(jù)特征的復(fù)雜性,數(shù)據(jù)預(yù)處理包括以下3步:
1)數(shù)值化處理。
由于模型的輸入是數(shù)字矩陣,因此使用one-hot 編碼方法將數(shù)據(jù)集中具有符號(hào)特征的數(shù)據(jù)映射到數(shù)字特征向量。將KDD CUP99 和NSL-KDD 數(shù)據(jù)集中正常數(shù)據(jù)(Normal)和4 種攻擊類型(DoS、Probe、U2R、R2L)這5 種類標(biāo)簽進(jìn)行數(shù)值化處理,也對(duì)UNSW-NB15 數(shù)據(jù)集中正常數(shù)據(jù)(Normal)和9種攻擊類型(Reconnaissance、Backdoor、Worms、Analysis、Shellcode、Generic、Fuzzers、DoS、Exploits)這10 種類標(biāo)簽進(jìn)行數(shù)值化處理。
2)標(biāo)準(zhǔn)化處理。
在數(shù)據(jù)集中,不同類別的數(shù)據(jù)值大小明顯不同,最大值的范圍變化很大。為了便于算術(shù)處理和消除尺寸,采用歸一化處理方法,在[0,1]區(qū)間內(nèi)均勻且線性地映射每個(gè)特征的值范圍。用以下方程將數(shù)值數(shù)據(jù)歸一化為[0,1]:
其中:max為樣本數(shù)據(jù)的最大值,min為樣本數(shù)據(jù)的最小值,x為標(biāo)準(zhǔn)化后的數(shù)據(jù)。
3)將標(biāo)準(zhǔn)化數(shù)據(jù)轉(zhuǎn)換為矩陣。
讀取數(shù)據(jù)的每個(gè)網(wǎng)絡(luò)記錄都將進(jìn)行尺寸轉(zhuǎn)換以符合網(wǎng)絡(luò)模型的格式。為了輸入到膨脹卷積神經(jīng)網(wǎng)絡(luò)中,使用reshape轉(zhuǎn)換函數(shù)將網(wǎng)絡(luò)數(shù)據(jù)重塑為矩陣。
在本文中,準(zhǔn)確率(Accuracy)、精確率(Precision)、召回率(Recall)和F1-measure 被用作評(píng)估模型性能的關(guān)鍵指標(biāo)。這些指標(biāo)是從混淆矩陣的4 個(gè)基本屬性中得出的,如表3 所示,其中TP(True Positive)表示攻擊數(shù)據(jù)被正確地分類為攻擊,F(xiàn)P(False Positive)表示正常數(shù)據(jù)被錯(cuò)誤地分類為攻擊,TN(True Negative)表示正常數(shù)據(jù)被正確地分類為正常,F(xiàn)N(False Negative)表示攻擊數(shù)據(jù)被錯(cuò)誤地分類為正常。
表3 混淆矩陣Tab.3 Confusion matrix
本文將使用以下評(píng)估指標(biāo)來(lái)評(píng)估本文所提出模型的性能。
實(shí)驗(yàn)包括訓(xùn)練和測(cè)試兩個(gè)過(guò)程,使用KDD CUP99 數(shù)據(jù)集的訓(xùn)練集和測(cè)試集來(lái)進(jìn)行實(shí)驗(yàn)。本文模型使用訓(xùn)練集對(duì)模型進(jìn)行訓(xùn)練,最后使用測(cè)試集對(duì)模型進(jìn)行測(cè)試。
五個(gè)標(biāo)簽類的評(píng)估指標(biāo)值通過(guò)圖5 可以被更清楚地觀察到,低頻樣本U2R、R2L類在本文模型下,Precision、Recall、F1-measure三個(gè)評(píng)估指標(biāo)依然擁有較高的值。
圖5 KDD CUP99數(shù)據(jù)集的五個(gè)標(biāo)簽類的評(píng)估指標(biāo)值Fig.5 Evaluation index values of five label classes of KDD CUP99 dataset
為了評(píng)估所提模型對(duì)未知攻擊的檢測(cè)效果,使用了KDD CUP99數(shù)據(jù)集中17種未知攻擊類型,這17種未知攻擊類型存在于測(cè)試集中,而在訓(xùn)練集中不存在。這17 種未知攻擊的召回率如表4 所示。從檢測(cè)結(jié)果上可以看出,本文模型可以對(duì)未知攻擊進(jìn)行檢測(cè)。
表4 KDD CUP99數(shù)據(jù)集上未知攻擊類型的檢測(cè)結(jié)果Tab.4 Unknown attack type detection results on KDD CUP99 dataset
目前,許多機(jī)器學(xué)習(xí)和深度學(xué)習(xí)算法已應(yīng)用于網(wǎng)絡(luò)入侵檢測(cè)。支持向量機(jī)和經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)廣泛用于網(wǎng)絡(luò)入侵檢測(cè),因此,將入侵檢測(cè)中常用的經(jīng)典分類模型與本文中的模型進(jìn)行了比較。本文使用SVM[7]、S-NDAE(Stacked Nonsymmetric Deep AutoEncoder)[25]、MHCVF(Multilevel Hybrid Classfier with Variant Feature sets)[26]模型和本文模型在KDD CUP99 數(shù)據(jù)集上對(duì)分類性能進(jìn)行了比較,如表5所示。
從表5 可以看出,與傳統(tǒng)的SVM、S-NDAE、MNCVF 模型相比,本文模型測(cè)試結(jié)果最好,準(zhǔn)確率達(dá)到99.78%,召回率達(dá)到99.33%。當(dāng)面對(duì)復(fù)雜數(shù)據(jù)時(shí),從分類結(jié)果可以看出,本文模型仍然比其他模型獲得更高的準(zhǔn)確率。
表5 KDD CUP99數(shù)據(jù)集的上各模型實(shí)驗(yàn)結(jié)果對(duì)比 單位:%Tab.5 Comparison of experimental results of different models on KDD CUP99 dataset unit:%
為了進(jìn)一步驗(yàn)證本文模型,還對(duì)NSL-KDD 數(shù)據(jù)集進(jìn)行了實(shí)驗(yàn)。各指標(biāo)的分布通過(guò)圖6 可以被更清楚地看到,選取入侵檢測(cè)中常用的經(jīng)典分類模型與本文模型進(jìn)行了比較。本文使 用SCDNN(Spectral Clustering Deep Neural Network)[27]、DNN[28]、SMOTE+CANN(Synthetic Minority Oversampling Technique and Cluster center And Nearest Neighbor)模型[29]和本文模型在NSL-KDD 數(shù)據(jù)集上對(duì)分類性能進(jìn)行了比較,比較結(jié)果如表6所示。
圖6 NSL-KDD數(shù)據(jù)集的五個(gè)標(biāo)簽類的評(píng)估指標(biāo)值Fig.6 Evaluation index values of five label classes of NSL-KDD dataset
表6 NSL-KDD數(shù)據(jù)集上的各模型實(shí)驗(yàn)結(jié)果對(duì)比 單位:%Tab.6 Comparison of experimental results of different models on NSL-KDD dataset unit:%
從表6 可以看出,與SCDNN、SMOTE+CANN 和DNN 三種分類器相比,本文模型準(zhǔn)確率可以達(dá)到99.53%,召回率達(dá)到99.25%。從圖6 可以看出,本文模型在Precision、Recall 和F1-measure 幾個(gè)評(píng)價(jià)標(biāo)準(zhǔn)上得到的結(jié)果都很高。從分類結(jié)果可以看出,所提模型是有效的,當(dāng)面對(duì)復(fù)雜數(shù)據(jù)時(shí),本文模型仍然比其他模型獲得更好的結(jié)果。
UNSW-NB15 數(shù)據(jù)集中包含許多現(xiàn)代網(wǎng)絡(luò)的新攻擊,使用本文提出的模型用訓(xùn)練集數(shù)據(jù)進(jìn)行訓(xùn)練,最后使用測(cè)試集對(duì)模型進(jìn)行測(cè)試。各指標(biāo)的分布通過(guò)圖7可以被更清楚地看到。本文同樣選取入侵檢測(cè)中常用的經(jīng)典分類模型與本文模型進(jìn)行了比較。使用RF[13]、SVM[8]和MSCNN(MultiScale Convolutional Neural Network)模型[30]與本文模型在UNSW-NB15數(shù)據(jù)集上對(duì)分類性能進(jìn)行了比較,比較結(jié)果如表7所示。
表7 UNSW-NB15數(shù)據(jù)集上的各模型準(zhǔn)確率對(duì)比Tab.7 Accuracy comparison of different models on UNSW-NB15 dataset
從表7 可以看出,與RF、SVM、MSCNN 三個(gè)模型相比,本文模型有最高的準(zhǔn)確率,可以達(dá)到93.12%。與傳統(tǒng)的模型相比,在新型數(shù)據(jù)集UNSW-NB15 上進(jìn)行實(shí)驗(yàn)時(shí),從分類結(jié)果可以看出,本文模型仍然比其他模型獲得更高的準(zhǔn)確率。
本文提出了一種基于膨脹卷積和門控循環(huán)單元(GRU)相結(jié)合的入侵檢測(cè)新模型。首先,對(duì)數(shù)據(jù)集進(jìn)行數(shù)值化和標(biāo)準(zhǔn)化處理,這樣可以減少模型的訓(xùn)練時(shí)間;然后,通過(guò)膨脹卷積和GRU 構(gòu)建的網(wǎng)絡(luò)模型對(duì)輸入數(shù)據(jù)進(jìn)行分類。該模型利用深度學(xué)習(xí)的出色性能,通過(guò)重復(fù)的多級(jí)學(xué)習(xí)自動(dòng)提取特征。本文使用KDD CUP99、NSL-KDD 和UNSW-NB15 三個(gè)入侵?jǐn)?shù)據(jù)集來(lái)進(jìn)行實(shí)驗(yàn)。根據(jù)統(tǒng)計(jì)顯著性檢驗(yàn)可以得出結(jié)論,該模型優(yōu)于其他分類器。本文提出的模型在準(zhǔn)確率和召回率方面取得了優(yōu)異的結(jié)果,尤其是在多特征數(shù)據(jù)集中,發(fā)現(xiàn)訓(xùn)練數(shù)據(jù)規(guī)模越大,檢測(cè)性能越好。