賀佳星, 王曉丹, 宋亞飛, 來 杰
(空軍工程大學(xué)防空反導(dǎo)學(xué)院,西安,710051)
近年來,多種基于機器學(xué)習(xí)的入侵檢測系統(tǒng)(intrusion detection system, IDS)得到了廣泛的研究,這些入侵檢測方法具備良好的檢測性能。但是實際的網(wǎng)絡(luò)活動中,正常的流量和行為中占絕對主導(dǎo)地位,異常行為的數(shù)量較少。正常行為和攻擊行為、不同攻擊行為之間的類不平衡問題在入侵檢測的數(shù)據(jù)集中普遍存在,極大影響了IDS的檢測性能[1]。
針對入侵檢測中的數(shù)據(jù)集類不平衡問題,文獻[2]和[3]分別使用隨機欠采樣(random under-sampling,RUS)和隨機過采樣(random over-sampling,ROS)來解決IDS中的類不平衡問題。文獻[4]更進一步將RUS和ROS技術(shù)結(jié)合起來應(yīng)用。合成少數(shù)過度采樣技術(shù)(synthetic minority over-sampling technique, SMOTE)[5-6]在數(shù)據(jù)生成領(lǐng)域中表現(xiàn)良好,文獻[7~9]將SMOTE技術(shù)應(yīng)用在IDS模型中,平衡數(shù)據(jù)集,提升訓(xùn)練效果。但SMOTE本身依賴于插值進行過采樣,生成樣本的擬合度比較低。
生成對抗網(wǎng)絡(luò)(generative adversarial networks,GAN)[10]技術(shù),能夠從給定數(shù)據(jù)中學(xué)習(xí)其分布,并根據(jù)學(xué)習(xí)到的分布生成新的樣本數(shù)據(jù)。利用生成對抗網(wǎng)絡(luò)技術(shù),文獻[11]提出了一種將GAN、粒子群算法和極限學(xué)習(xí)機結(jié)合的入侵檢測方法,用GAN生成少數(shù)類樣本。文獻[12]提出一種基于CGAN的入侵檢測技術(shù),利用CGAN生成少數(shù)類樣本,均衡訓(xùn)練數(shù)據(jù)集。
除類不平衡問題外,入侵檢測數(shù)據(jù)集還存在著連續(xù)特征的混合模型問題。普通的GAN無法模擬一個2D數(shù)據(jù)集上的高斯混合分布的所有混合分量,學(xué)習(xí)到的數(shù)據(jù)分布存在失真[13]。例如,在入侵檢測領(lǐng)域的常見數(shù)據(jù)集NSL-KDD數(shù)據(jù)集[14]包含3個離散特征和38個連續(xù)特征,共41維特征向量。本文利用核密度估計法對所有的連續(xù)特征進行估計后發(fā)現(xiàn),38個連續(xù)特征中的22個都存在高斯混合分布的情況。文獻[11]提出的基于GAN的入侵檢測方法均未考慮連續(xù)特征的混合分布問題。
為解決上面提到的入侵檢測數(shù)據(jù)集中的類不平衡問題和連續(xù)特征的混合分布問題,本文提出了一種基于條件Wasserstein生成對抗網(wǎng)絡(luò)(conditional Wasserstein generative adversarial network,CWGAN)和DNN的方法。首先,CWGAN-DNN對原始數(shù)據(jù)集進行過濾,選擇少數(shù)類樣本,在訓(xùn)練的過程中使用條件向量控制生成樣本的類別,保證只生成少數(shù)類樣本;其次,對數(shù)據(jù)集中的連續(xù)特征利用變分高斯混合模型(variational Gaussian mixture model,VGM)[15]進行分解;最后,利用CWGAN學(xué)習(xí)處理后的數(shù)據(jù)集并生成新的少數(shù)類數(shù)據(jù)。達到平衡訓(xùn)練數(shù)據(jù)集,改善入侵檢測系統(tǒng)性能的目的。
入侵檢測數(shù)據(jù)集,如NSL-KDD[10]通常組織為一個二維的表格T,表格中的每一行代表一條流量,每一列代表一維特征。T中包含Nc個連續(xù)特征列{C1,C2,…,CNc}和Nd個離散特征列{D1,D2,…,DNd}。T中的每一列都可以看作是一個隨機變量,所有隨機變量遵循一個未知的聯(lián)合分布:
P{C1,C2,…,CNc,D1,D2,…,DNd}
(1)
其中的任意一行可以表示為:
rj={c1,j,c2,j,…,cNc,j,d1,j,d2,j,…,dNdj},
j∈{1,2,…,n}
(2)
式中:rj是來自聯(lián)合分布的一個觀測樣本。
在數(shù)據(jù)的生成領(lǐng)域,合成數(shù)據(jù)的通常做法是通過將表中的每一列視為隨機變量,建模一個聯(lián)合多元概率分布,然后從中取樣進行生成[16]。定義輸入原始數(shù)據(jù)集為s=(r,y),生成器輸出合成樣本為sG=[G(z,y′),y′],其中:y、z和y′分別表示原始類標(biāo)簽、高斯噪聲和少數(shù)類標(biāo)簽。
條件生成對抗網(wǎng)絡(luò)(conditional generative adversarial networks,CGAN)在原始GAN[10]的基礎(chǔ)上引入類別信息,以生成指定類的樣本。生成器同時將噪聲和類別信息作為輸入,鑒別器在接收樣本的時候也會收到對應(yīng)類別信息。CGAN的目標(biāo)函數(shù)可以表示為:
Ez~pz[log(1-D(G(z|y)))]
(3)
式中:z為隨機噪聲;x為原始樣本;y為類別信息;pz為z的分布;G為生成器;D為鑒別器;pr為真實數(shù)據(jù)x的分布;G(z)為G生成的偽數(shù)據(jù);D(x)為D給樣本打出的分?jǐn)?shù);E(·)為期望值。
GAN和CGAN中采用的Jensen-Shannon散度會導(dǎo)致模式崩潰和梯度消失問題[17]。針對該問題WGAN-GP[18](Wasserstein GAN-gradient penalty)將計算損失函數(shù)的JS數(shù)度改為泥土移動(earth mover, EM)距離,并增加了梯度懲罰項,來滿足Lipschitz約束,避免訓(xùn)練過程中判別器無法收斂的情況出現(xiàn),解決了GAN和CGAN中的梯度消失和模式崩潰問題。WGAN-GP的目標(biāo)函數(shù)為:
V(G,D)=maxD∈1-lipschitz{Ex~pr[D(x)]-
Ex~pg[D(x)]-λEx~ppenaty[‖?xD(x)‖-1]2}
(4)
式中:λ是人為指定的參數(shù);‖?xD(x)‖表示對D(x)中x的計算范式;x~ppenaty表示從pr上的一個點和pg的一個點的連線上取中間位置的x。
CWGAN-DNN的框架由數(shù)據(jù)預(yù)處理模塊、CWGAN模塊和深度神經(jīng)網(wǎng)絡(luò)(DNN)3個部分組成,如圖1所示。第1步,將原始數(shù)據(jù)集進行處理;第2步,利用CWGAN模塊生成均衡訓(xùn)練集;第3步,DNN模塊使用均衡數(shù)據(jù)集進行訓(xùn)練,并在測試數(shù)據(jù)集上執(zhí)行入侵檢測。
圖1 CWGAN-DNN入侵檢測方法的結(jié)構(gòu)
數(shù)據(jù)預(yù)處理部分提取少數(shù)類信息,并對混合分布的連續(xù)特征進行分解。以原始樣本s=(r,y)為輸入,首先篩選出需要進行增強的少數(shù)類數(shù)據(jù)(r,y′),而后進行VGM分解得到少數(shù)類樣本數(shù)據(jù)s′=(r′,y′)。
對于高斯混合分布的連續(xù)特征列,利用VGM來進行處理。入侵檢測數(shù)據(jù)集中,離散特征可以表示為one-hot向量[19],而高斯混合分布的連續(xù)特征難以全面地表示,本文選擇將其利用VGM分解。
連續(xù)特征列中的每個值,通過VGM都將其轉(zhuǎn)換為一個指示所在分量的one-hot向量v*和一個指示在分量下值大小的標(biāo)量a*的并聯(lián)。
利用VGM分解連續(xù)特征的混合分布,首先對于每一個連續(xù)列,使用VGM估計其分量的個數(shù),并訓(xùn)練高斯混合模型;其次,對于Ci中的每個值ci,j,計算其在每個分量下的概率;最后在所求得的概率最大的子分布上采樣并進行歸一化。
vNc,j⊕aNc,j⊕d1,j⊕…⊕dNd
(5)
CWGAN的整個訓(xùn)練過程見表1,其中θG、ηθG、θD、ηθD分別為生成器的網(wǎng)絡(luò)參數(shù)、梯度和鑒別器的網(wǎng)絡(luò)參數(shù)、梯度。
表1 CWGAN訓(xùn)練過程
訓(xùn)練CWGAN過程中,依次交替訓(xùn)練生成器和鑒別器,訓(xùn)練主要的步驟如下:
1)首先將隨機噪聲向量z與類別標(biāo)簽y′輸入G,訓(xùn)練并得到生成樣本sG;
2)固定生成器G,對D進行訓(xùn)練,更新θD;
3)固定鑒別器D,對G進行訓(xùn)練,更新θG;
4)在鑒別器的損失值未達到0.5之前,循環(huán)執(zhí)行步驟1)~3),G和D交替訓(xùn)練,使得生成的樣本不斷接近真實樣本。
2.2.1 鑒別器D
鑒別器D由一個3層的全連接網(wǎng)絡(luò)組成。在訓(xùn)練的過程中,將s′和sG混合作為判別器D的輸入,輸出為樣本屬于真實樣本s′和偽樣本sG的分類概率值,然后通過激活函數(shù)將概率值轉(zhuǎn)換為預(yù)測標(biāo)簽。對于一個特定的輸入(r,y),需要判斷它來自s′而不是sG的概率D(r,y),見表1中第7、8行。
在WGAN模型當(dāng)中,不再對鑒別器的值取對數(shù)。得到損失值后,可以計算梯度ηθD,通過Adam算法更新鑒別器的網(wǎng)絡(luò)參數(shù)θD。
2.2.2 生成器G
生成器G同樣采用一個全連接網(wǎng)絡(luò),將少數(shù)類標(biāo)簽y′和高斯噪聲z作為輸入,訓(xùn)練過程中將類別信息y′與噪聲z連接為(z,y′),G生成樣本為sG=[G(z,y′),y′]。表1中第11、12行給出了公式。
深度神經(jīng)網(wǎng)絡(luò)模塊(DNN)被用來執(zhí)行入侵檢測。在CWGAN-DNN當(dāng)中,DNN被設(shè)計為一個包含2個隱藏層的全連接網(wǎng)絡(luò)。
在訓(xùn)練階段,DNN模型以均衡訓(xùn)練集作為輸入。最終給出它們在不同入侵類別上的概率分布p(y|r)。在測試階段,DNN模塊以測試數(shù)據(jù)集上未曾出現(xiàn)過的樣本作為輸入,檢測CWGAN對于DNN網(wǎng)絡(luò)的提升效果。
本文過實驗來評估CWGAN-DNN的性能。將CWGAN-DNN與傳統(tǒng)的入侵檢測方法、基于類均衡的方法和一些先進的入侵檢測方法進行了比較。
采用NSL-KDD數(shù)據(jù)集對CWGAN-DNN進行評估。NSL-KDD是評估入侵檢測領(lǐng)域的經(jīng)典基準(zhǔn)數(shù)據(jù)集,剔除了KDDCUP99中的冗余數(shù)據(jù),并對訓(xùn)練集和測試集的構(gòu)成進行了調(diào)整,更適用于網(wǎng)絡(luò)入侵檢測的研究。NSL-KDD中的每條數(shù)據(jù)包括41個特征。將NSL-KDD預(yù)先劃分為訓(xùn)練集和測試集,分別為KDDTrain+_20和KDDTest+。NSL-KDD數(shù)據(jù)集的詳細信息如表2所示。
表2 NSL-KDD數(shù)據(jù)集樣本類型的分布
從表1中可以看出,訓(xùn)練集KDDTrain+_20存在嚴(yán)重的類別不平衡現(xiàn)象,U2R和R2L攻擊樣本的數(shù)量嚴(yán)重偏少。
為了定量評價CWGAN-DNN的性能,本文采用準(zhǔn)確率(accuracy)、精確率(precision)、召回率(recall)和F1分?jǐn)?shù)(F1 score)作為主要指標(biāo)來衡量本模型的多分類性能:
(6)
(7)
(8)
(9)
式中:TP、TN、FP和FN分別表示真陽性、真陰性、假陽性和假陰性。
此外,文中采用AUC(area under the ROC curve,AUC)來反映綜合能力。ROC (receiver operating characteristic curve,ROC)是研究學(xué)習(xí)器泛化性能的有效工具[20]。AUC是ROC曲線下的面積,可以更進一步的比較分類器的性能。
3.3.1 實驗設(shè)置
為了測試基于CWGAN-DNN的網(wǎng)絡(luò)入侵檢測方法的性能,本文設(shè)計了以下實驗:
實驗1:CWGAN-DNN模型的訓(xùn)練實驗。
實驗2:CWGAN-DNN與傳統(tǒng)入侵檢測方法的性能對比實驗。
選擇一些常見的機器學(xué)習(xí)方法進行比較。樸素貝葉斯和決策樹是經(jīng)典的機器學(xué)習(xí)方法,它們能以較低的開銷提供較好的性能。隨機森林[21]是一種由多個決策樹構(gòu)成的集成學(xué)習(xí)方法,但比決策樹具有更強的泛化能力。支持向量機是一種經(jīng)典而高效的分類方法,但不適用于大數(shù)據(jù)[22-23]。多層感知器(MLP)[24]是一種最簡單的深度學(xué)習(xí)模型,具有穩(wěn)定的分類能力。
實驗3:CWGAN-DNN與不同數(shù)據(jù)類均衡方法的性能對比實驗。
在類平衡方法方面,選用了隨機過采樣(ROS)、SMOTE和自適應(yīng)綜合過采樣(adaptive synthetic,ADASYN)[25]技術(shù)進行對比,并將其與第2.3節(jié)中敘述的DNN結(jié)合。利用類平衡方法生成樣本,然后將平衡后的樣本輸入DNN進行入侵檢測,將這些方法分別記做ROS+DNN、SMOTE+DNN和ADASYN+DNN。這些方法中的DNN參數(shù)都保持一致,參考表2進行設(shè)置。
表2 DNN的網(wǎng)絡(luò)結(jié)構(gòu)
實驗4:CWGAN-DNN與現(xiàn)有的入侵檢測模型的性能對比實驗。
將CWGAN-DNN與幾種較為先進的入侵檢測方法進行比較?;谀:纳窠?jīng)網(wǎng)絡(luò)(fuzziness-based neural network, NN)是一種半監(jiān)督學(xué)習(xí)方法,它可以提高通過模糊分類進行入侵檢測的泛化能力;文獻[26]在最小二乘支持向量機(LSSVM)之前引入了一種基于互信息的特征選擇(MIFS),它對特征進行貪婪選擇,提升入侵檢測的效果; 基于LSSVM+MIFS,文獻[27]進一步提出了一種靈活的MIFS(FMIFS)方法,是一種無需經(jīng)驗參數(shù)的自適應(yīng)特征選擇方法;文獻[28]將一維的入侵檢測數(shù)據(jù)集轉(zhuǎn)化為二維灰度圖,并利用一個2層的卷積神經(jīng)網(wǎng)絡(luò)(CNN)進行入侵檢測。這4種方法,均是在標(biāo)準(zhǔn)的KDDTrain+20%數(shù)據(jù)集上進行訓(xùn)練,并在KDDTest+數(shù)據(jù)集上進行了測試,這一點上與本文方法相同。本文采用參考文獻中給出的性能數(shù)據(jù)進行對比,與CWGAN-DNN進行比較。
實驗5:不同數(shù)據(jù)生成率對CWGAN-DNN性能影響對比實驗。
為了驗證生成樣本的效果,本文還對數(shù)據(jù)的生成率對于CWGAN-DNN入侵檢測性能的影響,通過一系列不同生成率的實驗來評估CWGAN-DNN。
3.3.2 實驗環(huán)境及參數(shù)設(shè)置
本文實驗基于Windows10操作系統(tǒng)下Pytorch和sklearn框架進行實現(xiàn)。CWGAN模塊中,鑒別器D和生成器G的體系結(jié)構(gòu)相對靈活,可以根據(jù)具體情況進行設(shè)置。本文根據(jù)文獻[16]確定了CWGAN的結(jié)構(gòu),并在驗證集上通過網(wǎng)格搜索調(diào)整CWGAN的參數(shù)。生成器和鑒別器的各層的網(wǎng)絡(luò)大小分別設(shè)置為100-256-256-63和63-256-256-5。
CWGAN的學(xué)習(xí)率(在算法1中表示為αD和αG)都設(shè)置為0.001。批大小(用m表示)為500,在每次迭代時優(yōu)化D和G一次。生成樣本個數(shù)的數(shù)量設(shè)置為原始樣本的數(shù)量的1.5倍,即數(shù)據(jù)的生成比(生成樣本數(shù)量:原始樣本數(shù)量)為1.5∶1。對CWGAN模塊進行訓(xùn)練,直到所有類的D收斂到0.5,此時鑒別器已經(jīng)無法分辨生成樣本和真實樣本,即生成器具備了生成高質(zhì)量樣本的能力,這意味著CWGAN已經(jīng)完成優(yōu)化。
DNN使用具有100個神經(jīng)元的全連接層作為輸入層。之后采用2個大小分別為100和40的全連接層作為隱藏層。輸出層的大小等于類數(shù)5。學(xué)習(xí)率設(shè)置為0.000 1。最后使用Softmax函數(shù),將輸出向量轉(zhuǎn)換為概率分布p(y|r)。表2描述了DNN模塊的詳細結(jié)構(gòu)。
作為對比試驗,傳統(tǒng)入侵檢測方法和類均衡方法均使用sklearn框架進行實現(xiàn),參數(shù)選擇上使用網(wǎng)格搜索法進行優(yōu)化;在與其它的先進入侵檢測方法進行對比時,參考對應(yīng)文獻中的數(shù)據(jù)。
3.4.1 實驗1:CWGAN和DNN的訓(xùn)練
利用CWGAN為Probe、R2L和U2R等3個少數(shù)類生成樣本,訓(xùn)練過程中鑒別器D的損失曲線見圖2。
圖2 NSL-KDD上少數(shù)類樣本訓(xùn)練鑒別器的損失曲線
圖2(a)、(b)和(c)分別對應(yīng)Probe、U2R和R2L類,可以看到CWGAN在Probe、U2R和R2L類上分別在3 000、5 000和3 500次訓(xùn)練后鑒別器損失收斂。
3個類的損失函數(shù)曲線在收斂之后均存在不同程度的震蕩,其中U2R類的震蕩最為明顯,R2L次之,Probe的震蕩幅度最小。這是因為KDD Train+數(shù)據(jù)集當(dāng)中U2R類的僅有11個樣本,較難收斂。
以圖2(b)中Probe類的損失曲線為例進行分析。在0~1 000次迭代時,G無法生成有效的數(shù)據(jù),D可以很輕易的區(qū)分出生成樣本,損失值較大;在1 000~3 000次迭代過程中,G的生成能力不斷提高,D給出生成樣本的得分越來越接近原始樣本的得分,損失值不斷降低,并在4 000次后達到動態(tài)穩(wěn)定。
在DNN模塊訓(xùn)練過程中,將平衡后的數(shù)據(jù)集作為輸入。DNN模塊在訓(xùn)練后,在測試數(shù)據(jù)集上進行入侵檢測。以交叉熵函數(shù)為損失,采用Adam算法進行優(yōu)化,將學(xué)習(xí)率設(shè)置為0.000 1。DNN的損失曲線如圖3所示,分類器已經(jīng)收斂。
圖3 DNN分類器訓(xùn)練過程中的損失曲線
3.4.2 實驗2:CWGAN-DNN與傳統(tǒng)入侵檢測方法的性能對比實驗
如表3所示,與傳統(tǒng)的機器學(xué)習(xí)方法相比,CWGAN-DNN的準(zhǔn)確度、和F1分?jǐn)?shù)分別提升了最少3%,而AUC比MLP有2%的下降。在傳統(tǒng)的方法中,MLP的準(zhǔn)確率較好,在準(zhǔn)確度和F1分?jǐn)?shù)相比其他機器學(xué)習(xí)方法有1%~2%下降的情況下,AUC提升至少9%。MLP作為一種深度學(xué)習(xí)模型,具有良好的分類能力,但在處理類不平衡數(shù)據(jù)方面仍然存在一定的困難。樸素貝葉斯在NSL-KDD上取得了所有機器學(xué)習(xí)算法中最高的AUC(83%),因為它是一個生成模型,受數(shù)據(jù)類不均衡的影響較小,但它表達能力的不足導(dǎo)致它的分類性能較差。隨機森林在2個數(shù)據(jù)集上取得了不錯的成績,顯示了其作為集成模型的優(yōu)秀泛化能力。然而,上述結(jié)果均反映出傳統(tǒng)方法對數(shù)據(jù)的表達能力不足和對類不平衡數(shù)據(jù)的處理能力較弱的缺陷。
表3 CWGAN與傳統(tǒng)機器學(xué)習(xí)方法比較單位:%
3.4.3 實驗3:CWGAN-DNN與不同數(shù)據(jù)類均衡方法的性能對比實驗
如表4所示,對類均衡方法,CWGAN-DNN與常見的類均衡方法相比,CWGAN-DNN的準(zhǔn)確度、F1分?jǐn)?shù)和AUC分別提升了最少3%、1%和1%。采用均衡樣本訓(xùn)練的DNN的表現(xiàn)都比僅使用原始訓(xùn)練集更好,因為類均衡方法有助于解決類不平衡問題。SMOTE和ADASYN方法可以較好地從生成的樣本中學(xué)習(xí)少數(shù)類,其準(zhǔn)確度與RF等機器學(xué)習(xí)算法相同,F(xiàn)1分?jǐn)?shù)和AUC均有一定的提升。然而相比于僅使用原始數(shù)據(jù)集進行訓(xùn)練的DNN,類均衡方法在提升準(zhǔn)確度和F1分?jǐn)?shù)的同時,AUC有至少2%的下降,體現(xiàn)了分類能力和泛化能力的取舍。
表4 CWGAN與其他類均衡方法的比較 單位:%
如圖4所示,所有的類均衡方法對少數(shù)類的檢測能力均有一定的提升。
在圖4(a)中可以看到,ADASYN方法對Probe和R2L兩類的精確度提升明顯,在U2R類上表現(xiàn)一般。而CWGAN可以大幅度提升U2R和R2L兩個少數(shù)類的檢測精確度,和本文選擇的方法相比均有不同程度的提升。在U2R和R2L類上,CWGAN-DNN對比DNN分別提升了55%和61%,對比其他類均衡方法,分別了15%~40%和1%~58%的提升。
圖4(b)中,CWGAN在Probe和R2L兩個少數(shù)類上的召回率提升幅度與其他性能較好的類均衡方法相近。但在U2R類上,CWGAN-DNN的召回率僅為6%。根據(jù)式(16)的描述,recall較低,說明FP的值較大,有大量的其他類的樣本被檢測為U2R類。這是因為訓(xùn)練集當(dāng)中U2R類僅有11個樣本,導(dǎo)致CWGAN在U2R樣本上的進行訓(xùn)練時無法學(xué)習(xí)到U2R類樣本的特征,生成的樣本質(zhì)量較低。
圖4 類均衡方法在各類別上的性能比較
3.4.4 實驗4:CWGAN-DNN與現(xiàn)有的入侵檢測模型的性能對比實驗
如表5所示,在與其他的先進的入侵檢測算法進行比較時,CWGAN-DNN在準(zhǔn)確率、召回率和F1分?jǐn)?shù)3項指標(biāo)上都追平或超過其他的方法,而在精確度和AUC指標(biāo)上,CWGAN-DNN僅落后CNN 4%和2%。CWGAN-DNN性能的提高得益于CWGAN對少數(shù)類的高代表性合成樣本,緩解類不平衡問題,模擬了未知異常。
表5 CWGAN與其他先進方法的對比
3.4.5 實驗5:不同數(shù)據(jù)生成率對CWGAN-DNN性能影響對比實驗。
具有不同生成比率的IGAN-IDS的精度如表4所示。與沒有合成樣本的結(jié)果(r=0)相比,可以觀察到CWGAN-DNN在訓(xùn)練過程中生成樣本時表現(xiàn)出更高的性能(精確度提高4%),說明了CWGAN的積極作用。進一步比較了不同生成比率的IGAN-IDS的細節(jié)性能,如圖5所示。從圖5可以看出,CWGAN在生成率為1.5時獲得最高的準(zhǔn)確度、召回率和F1分?jǐn)?shù)。而在生成率為0.5和1時,AUC的值最低。在實驗中,建議生成率應(yīng)控制在1.5。
綜上所述,CWGAN-DNN確實可以通過生成樣本來提高入侵檢測的性能,而且生成的比率應(yīng)該受到嚴(yán)格的控制。
圖7 CWGAN-DNN在不同生成率下的表現(xiàn)
為解決入侵檢測系統(tǒng)中由訓(xùn)練樣本類不均衡導(dǎo)致的檢測識別率和泛化能力較差的問題,本文通過VGM和CWGAN技術(shù)生成少數(shù)類新的訓(xùn)練樣本,改善訓(xùn)練集中的類不平衡問題,并在均衡訓(xùn)練集上訓(xùn)練一個全連接DNN網(wǎng)絡(luò)進行入侵檢測。將本文提出的CWGAN-DNN入侵檢測技術(shù)進行性能評估,并與傳統(tǒng)入侵檢測方法、類均衡方法和主流入侵檢測技術(shù)進行了比較。同時對于CWGAN在少數(shù)類的檢測性能和CWGAN數(shù)據(jù)生成率對檢測性能的影響。實驗結(jié)果表明,CWGAN-DNN相比于傳統(tǒng)的基于機器學(xué)習(xí)和類均衡技術(shù)的入侵檢測方法,能夠有效提升少數(shù)類的檢測性能,從而提高總體分類能力和泛化能力。