張 欣,朱 江
重慶郵電大學(xué)通信與信息工程學(xué)院,重慶 400065
隨著物聯(lián)網(wǎng)、第五代移動(dòng)通信系統(tǒng)的發(fā)展,網(wǎng)絡(luò)趨于復(fù)雜化和大型化,互聯(lián)網(wǎng)承載的信息更為豐富,未來將真正實(shí)現(xiàn)萬物互聯(lián)。隨之而來的數(shù)據(jù)泄露、網(wǎng)絡(luò)攻擊問題凸顯[1],數(shù)不勝數(shù)的網(wǎng)絡(luò)安全威脅和紛繁復(fù)雜的網(wǎng)絡(luò)攻擊手段使得傳統(tǒng)的殺毒軟件、防火墻等防護(hù)手段也難以主動(dòng)防御。為了應(yīng)對(duì)日益嚴(yán)峻的大規(guī)模網(wǎng)絡(luò)安全形式,網(wǎng)絡(luò)安全態(tài)勢(shì)要素獲取[2]分析各個(gè)安全要素,篩選出影響網(wǎng)絡(luò)安全的主要因素,對(duì)這些數(shù)據(jù)信息要素進(jìn)行理解、融合并剔除存在的冗余數(shù)據(jù),要素獲取對(duì)把握網(wǎng)絡(luò)安全態(tài)勢(shì)起到不可或缺的作用。
近幾年,機(jī)器學(xué)習(xí)被應(yīng)用在網(wǎng)絡(luò)安全態(tài)勢(shì)感知領(lǐng)域[3-8],例如,文獻(xiàn)[3]采用支持向量機(jī)(support vector machine,SVM)作為要素獲取模型,文獻(xiàn)[4]研究了基于極限學(xué)習(xí)機(jī)(extreme learning machine,ELM)的要素獲取模型,文獻(xiàn)[5]研究了基于反向傳播(back propagation,BP)的要素獲取模型。以上模型均可實(shí)現(xiàn)安全態(tài)勢(shì)要素獲取分類,且具有學(xué)習(xí)速度快、泛化性較好的優(yōu)點(diǎn),但都屬于淺層結(jié)構(gòu)且表征能力有限,面對(duì)高維、非線性的海量真實(shí)網(wǎng)絡(luò)數(shù)據(jù)時(shí),其要素分類精度不夠理想。因此,深度學(xué)習(xí)以其強(qiáng)大的擬合能力正逐漸成為機(jī)器學(xué)習(xí)領(lǐng)域的熱點(diǎn)[9]。例如,已有學(xué)者將卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)用在入侵檢測(cè)領(lǐng)域[10-11],該方法能更好地提取數(shù)據(jù)特征,有效提高分類精度并降低模型的復(fù)雜度,缺點(diǎn)是現(xiàn)有態(tài)勢(shì)要素獲取模型中,無法解決實(shí)際運(yùn)用(實(shí)際網(wǎng)絡(luò)流量數(shù)據(jù))存在部分樣本數(shù)據(jù)量相比于其他數(shù)據(jù)量過小,存在模型無法正確識(shí)別各個(gè)不同的攻擊類型的特征分布,以至于模型泛化能力不足,無法正確識(shí)別樣本,難以保證對(duì)要素的準(zhǔn)確獲取以及態(tài)勢(shì)預(yù)測(cè),使得管理員對(duì)未來的網(wǎng)絡(luò)狀態(tài)無法做出準(zhǔn)確判斷。
為了提高在數(shù)據(jù)集分布不平衡情況下小樣本的分類精度,本文擬設(shè)計(jì)一種基于樣本特征的態(tài)勢(shì)要素獲取模型。主要工作概括如下:
(1)通過設(shè)計(jì)一個(gè)改進(jìn)的CNN 基分類器對(duì)樣本進(jìn)行分類,得到理想的大樣本分類精度,并根據(jù)樣本量級(jí)特征和分類精度對(duì)樣本進(jìn)行分類。
(2)對(duì)數(shù)據(jù)過小的超小樣本,通過生成對(duì)抗網(wǎng)絡(luò)[12](generative adversarial network,GAN)來進(jìn)行數(shù)據(jù)增強(qiáng)。
(3)在擴(kuò)充后的小樣本的數(shù)據(jù)集,結(jié)合遷移學(xué)習(xí)這一方法微調(diào)基分類器,提高小樣本的分類精度。
網(wǎng)絡(luò)安全態(tài)勢(shì)要素獲取本質(zhì)上是對(duì)態(tài)勢(shì)要素進(jìn)行分類,模型框圖如圖1所示,通過改進(jìn)的CNN 基分類器模型對(duì)所有樣本進(jìn)行樣本特征學(xué)習(xí),然后根據(jù)樣本量級(jí)和基分類器得到的分類精度,將樣本分為大樣本(樣本數(shù)據(jù)量大,通常占比為總樣本的10%以上,基分類器指標(biāo)優(yōu)越)、較小樣本(樣本數(shù)量與大樣本數(shù)量差別較大,影響基分類器精度,通常占比為總樣本2%到5%之間,基分類器精度較為不理想)和超小樣本(樣本數(shù)據(jù)量極小,通常占比為總樣本1%左右,于基分類器中無法訓(xùn)練出有意義的分類,分類精度幾乎為0),由于CNN基分類器存在較強(qiáng)擬合能力[13],因此得到了較好的大樣本分類精度。但是由于樣本不平衡,小樣本的分類精度不夠理想,需要進(jìn)一步優(yōu)化。具體措施是:通過GAN與遷移學(xué)習(xí)相結(jié)合的方法,先使用樣本擴(kuò)充器深度卷積生成對(duì)抗網(wǎng)絡(luò)(deep convolutional generative adversarial network,DCGAN)來對(duì)超小樣本訓(xùn)練集進(jìn)行類內(nèi)擴(kuò)充,得到平衡的小樣本訓(xùn)練集,再結(jié)合遷移學(xué)習(xí)微調(diào)基分類器,達(dá)到在較短的迭代次數(shù)以及樣本不足的情況下,也能很好學(xué)習(xí)小樣本特征的目的,得到適應(yīng)小樣本的新CNN 分類器,提高小樣本的分類精度。該要素獲取模型主要分為以下4個(gè)步驟:
圖1 要素獲取模型框圖Fig.1 Block diagram of element acquisition mechanism
步驟1 數(shù)據(jù)集預(yù)處理,將原始的一維網(wǎng)絡(luò)流量數(shù)據(jù)集X=[x1,x2,…,xL]1×L∈RM×L處理成適合態(tài)勢(shì)要素獲取分類機(jī)制的K×K二維矩陣格式。
步驟2 有監(jiān)督學(xué)習(xí)訓(xùn)練CNN 基分類器,并篩選出小樣本。
步驟3 訓(xùn)練本文搭建樣本擴(kuò)充器,實(shí)現(xiàn)數(shù)據(jù)增強(qiáng)。
步驟4 在平衡后的小樣本訓(xùn)練集中,結(jié)合遷移學(xué)習(xí)微調(diào)基分類器,提高小樣本分類精度。
1.1.1 NSL-KDD數(shù)據(jù)集
本文的分析對(duì)象是NSL-KDD[13]數(shù)據(jù)集,此數(shù)據(jù)集是國際上廣泛應(yīng)用于網(wǎng)絡(luò)安全分析的網(wǎng)絡(luò)流量數(shù)據(jù),比起KDDCup99 數(shù)據(jù)集,該數(shù)據(jù)集剔除了重復(fù)多余的數(shù)據(jù),所以能夠更好地滿足本研究試驗(yàn)?zāi)P偷尿?yàn)證要求。選取數(shù)據(jù)集KDDTrain和KDDTest+共148 514個(gè)樣本作為實(shí)驗(yàn)數(shù)據(jù),本文的實(shí)驗(yàn)數(shù)據(jù)分布如表1所示。該數(shù)據(jù)集主要包括正常數(shù)據(jù)(normal)和4 種攻擊類型數(shù)據(jù)(Dos、Probe、R2L,U2R)。本文將R2L類設(shè)為較小樣本,U2R類為超小樣本,其他三類為大樣本。該數(shù)據(jù)集的每一個(gè)樣本共有42維,前41維為樣本的特征,最后一維為樣本的標(biāo)簽信息。采用留出法對(duì)小樣本U2R和R2L以及其他三類攻擊分別選取80%作為訓(xùn)練集,20%作為測(cè)試集。
表1 實(shí)驗(yàn)數(shù)據(jù)分布Table 1 Experimental data distribution
1.1.2 原始數(shù)據(jù)集預(yù)處理
由于提出的態(tài)勢(shì)要素獲取機(jī)制只能識(shí)別數(shù)值型特征且需要二維矩陣格式的數(shù)據(jù)集,故需要對(duì)數(shù)據(jù)集進(jìn)行預(yù)處理。由于數(shù)據(jù)集屬性間存在量綱問題,通常需要對(duì)數(shù)據(jù)集進(jìn)行歸一化操作。由于本文搭建的分類器網(wǎng)絡(luò)都使用了批量歸一化,為了更好地保留數(shù)據(jù)的原始特征以及不破壞數(shù)據(jù)集的分布,故在此不對(duì)數(shù)據(jù)集進(jìn)行歸一化處理。數(shù)據(jù)預(yù)處理如圖2,具體步驟如下所示。
圖2 原始數(shù)據(jù)集預(yù)處理Fig.2 Preprocessing of original data set
(2)模型輸入特征選擇刪除樣本中特征值全為0的一個(gè)冗余維度,故樣本的維度變?yōu)?21 維,即X=[x1x2…x122]1×121。
(3)樣本維度進(jìn)行重組本文提出的要素獲取機(jī)制,輸入需為二維K×K矩陣格式數(shù)據(jù),將一維數(shù)據(jù)集X構(gòu)造成11×11的二維數(shù)據(jù)集,如下式(1)所示:
最后,將標(biāo)簽normal、Probe、Dos、U2R、R2L 也進(jìn)行one-hot編碼,編碼后均為五維數(shù)據(jù)y→I5,I5∈?5×5,每一行代表一種標(biāo)簽類型。
首先利用卷積神經(jīng)網(wǎng)絡(luò)搭建要素基分類器,訓(xùn)練基分類器,實(shí)現(xiàn)大樣本的準(zhǔn)確分類,并為后續(xù)的遷移學(xué)習(xí)提供參數(shù)和權(quán)值,然后對(duì)小樣本分類精度進(jìn)行優(yōu)化。下一節(jié),將基于樣本量級(jí)的特征提出安全態(tài)勢(shì)要素獲取的模型。
1.2.1 大樣本分類
改進(jìn)的CNN網(wǎng)絡(luò)安全態(tài)勢(shì)要素獲取基分類器(network security situation element acquisition-improved CNN,N2SEA-ICNN)如圖3所示,CNN的基本模型包括了Conv2d 代表二維卷積層,Maxpooling 代表最大池化層,F(xiàn)latten 層,Dense 層代表全連接層,以及輸出層為softmax 層。此外,還包括了在每個(gè)卷積層后面引入的BatchNormation批量歸一化層,以及在全連接層前添加了dropout 層。圖中k表示卷積核,filter 表示過濾器個(gè)數(shù),stride表示步長。
圖3 N2SEA-ICNN基分類器模型Fig.3 Classifier model of N2SEA-ICNN base
BN 層修正數(shù)據(jù)的分布保證梯度存在,可以加快模型收斂,并提升模型的泛化性能。由于本文的實(shí)驗(yàn)數(shù)據(jù)集與CNN 擅長的圖像處理數(shù)據(jù)集相比更為簡(jiǎn)單,為了防止基分類器模型出現(xiàn)過擬合問題,在全連接層前添加了dropout層,在模型訓(xùn)練過程中,dropout概率性地將網(wǎng)絡(luò)的隱含層節(jié)點(diǎn)的權(quán)值臨時(shí)設(shè)置為0,不參與網(wǎng)絡(luò)的計(jì)算且反向傳播時(shí)權(quán)值不變,可以防止由于某個(gè)特征權(quán)重占比過大而導(dǎo)致模型過擬合。
CNN通常由卷積層和池化層組成,分別如下式所示:
式中,假設(shè)Mi(M0=X)為CNN 的第i層的輸入態(tài)勢(shì)要素特征圖,Wi為第i層的卷積核權(quán)重向量,運(yùn)算符號(hào)“?”表示卷積運(yùn)算,bi是第i層的偏移向量,f(x)是激活函數(shù)。卷積層根據(jù)多個(gè)卷積核及滑動(dòng)窗口值,提取態(tài)勢(shì)要素樣本Mi的多重特征信息。池化層根據(jù)不同的采樣規(guī)則對(duì)態(tài)勢(shì)要素特征圖進(jìn)行采樣,該過程可以對(duì)態(tài)勢(shì)要素進(jìn)行降維,減少網(wǎng)絡(luò)模型的參數(shù)個(gè)數(shù)。本文對(duì)轉(zhuǎn)化為K×K矩陣格式的安全要素?cái)?shù)據(jù)進(jìn)行態(tài)勢(shì)要素特征圖卷積運(yùn)算,通過多個(gè)過濾器在態(tài)勢(shì)要素特征圖矩陣滑動(dòng),提取網(wǎng)絡(luò)流量數(shù)據(jù)的多重空間特征。
N2SEA-ICNN 中BN 層,在每一個(gè)小批量數(shù)據(jù)輸入下一層神經(jīng)網(wǎng)絡(luò)之前修正數(shù)據(jù)的分布,突出數(shù)據(jù)間的相對(duì)差異而減小絕對(duì)差異,對(duì)于一個(gè)Batch,假設(shè)對(duì)應(yīng)x的集合為B={x1,x2,…,xm},于是其對(duì)應(yīng)的BN 層的輸出{yi}通過以下公式計(jì)算得出:
ε是mini-batch的樣本個(gè)數(shù),設(shè)為ε=10-8,修正所有輸入xi滿足均值為0且方差為1。計(jì)算均值和方差的任意值可采用上面的公式:
其中,γ和β用梯度下降法求出。
2.1.3 精密度考察 取高、中、低質(zhì)量濃度(30.00、15.00、0.03 μg/mL)的Lut對(duì)照品溶液,按照“2.1.1”項(xiàng)下色譜條件分別連續(xù)進(jìn)樣6次,計(jì)算各個(gè)質(zhì)量濃度對(duì)應(yīng)峰面積的RSD值。結(jié)果顯示,Lut峰面積RSD值分別為0.44%、0.39%、0.71%。
1.2.2 超小樣本分類
由于樣本分布不平衡的問題,導(dǎo)致傳統(tǒng)的要素獲取機(jī)制對(duì)超小樣本R2L類樣本學(xué)習(xí)不到特征,影響到超小樣本的分類精度。因此提出了基于DCGAN[18]的超小樣本擴(kuò)充器,同時(shí)利用隨機(jī)梯度下降法實(shí)現(xiàn)DCGAN的數(shù)據(jù)擴(kuò)充最優(yōu)求解。如前所述,在數(shù)據(jù)預(yù)處理過程中,數(shù)據(jù)集已經(jīng)處理成了K×K矩陣格式的數(shù)據(jù)集,更加便于DCGAN 實(shí)現(xiàn)卷積處理,同時(shí)DCGAN 可以生成無限逼近真實(shí)樣本的偽造樣本,避免由于訓(xùn)練樣本不足而導(dǎo)致的過擬合問題。因此DCGAN 能夠較好的實(shí)現(xiàn)預(yù)處理后的超小樣本類內(nèi)擴(kuò)充。判別模型D 和生成模型G 都使用卷積神經(jīng)網(wǎng)絡(luò),采取上文設(shè)計(jì)的N2SEA-ICNN分類器作為判別器,為了得到能夠提取更多的態(tài)勢(shì)要素特征的生成器,故去掉所有的池化層,由3個(gè)卷積層以及BN層構(gòu)成,最后一層激活函數(shù)使用tanh。DCGAN 的模型如圖4所示。
圖4 DCGAN模型Fig.4 DCGAN model
其中,G(z)表示生成網(wǎng)絡(luò)由噪聲z生成的樣本,而D(G(z))表示生成樣本通過判別網(wǎng)絡(luò)后,判斷其為真實(shí)樣本的概率。最終求得近似最優(yōu)解的生成式模型minG(z)。判別網(wǎng)絡(luò)輸出樣本是來自真實(shí)數(shù)據(jù)的概率,交叉損失熵為式(8)所示,其中φ和θ分別為判別網(wǎng)絡(luò)和生成網(wǎng)絡(luò)的參數(shù)。
生成網(wǎng)絡(luò)的損失函數(shù)如式(9):
綜上,生成對(duì)抗網(wǎng)絡(luò)的核心思想可用數(shù)學(xué)公式表示如下:
為了求解公式(10)的最優(yōu)解,提出了一種基于隨機(jī)梯度下降法的最優(yōu)解求解算法。
算法1 基于DCGAN的數(shù)據(jù)擴(kuò)充算法
通過訓(xùn)練得到生成器,對(duì)超小樣本進(jìn)行不同比例擴(kuò)充。
1.2.3 小樣本分類
針對(duì)上一節(jié)數(shù)據(jù)集擴(kuò)充后的小樣本(較小樣本和擴(kuò)充后的超小樣本)數(shù)據(jù)集,由于遷移學(xué)習(xí)[19]可以在樣本不足的情況下很好地學(xué)習(xí)樣本的內(nèi)部特征,同時(shí)前面訓(xùn)練好的N2SEA-ICNN 基分類器已經(jīng)學(xué)習(xí)到了大樣本的內(nèi)部特征,而且大小樣本具有相似的特征,故提出對(duì)N2SEA-ICNN 基分類器進(jìn)行遷移學(xué)習(xí)的小樣本分類方法。這種方法不僅能夠避免訓(xùn)練小樣本過擬合,還能夠有效地縮減模型的訓(xùn)練時(shí)間。遷移學(xué)習(xí)過程如圖5 所示,分為3個(gè)步驟。
圖5 遷移學(xué)習(xí)過程Fig.5 Transfer learning process
(1)特征學(xué)習(xí):在文中第1.2 節(jié),利用N2SEA-ICNN基分類器實(shí)現(xiàn)樣本特征學(xué)習(xí)。
(2)特征遷移:將N2SEA-ICNN 基分類器學(xué)習(xí)到的權(quán)重參數(shù),作為新分類器的初始權(quán)重。
(3)遷移后分類器學(xué)習(xí):先凍結(jié)N2SEA-ICNN 基分類器前面幾層網(wǎng)絡(luò)并移除最后一層,再添加兩層全連接層,通過反向傳播微調(diào)最后兩層,得到適應(yīng)于小樣本的新分類器模型。
由于實(shí)際運(yùn)用中,無法人為識(shí)別大小樣本。經(jīng)N2SEA-ICNN基分類器誤判為小樣本的大樣本,將在新的二級(jí)分類器分類器中再次誤判。因此對(duì)仿真得到的小樣本分類精度進(jìn)行損失懲罰,具體公式如下式所示:
本文的實(shí)驗(yàn)環(huán)境為:Windows 10操作系統(tǒng),python3.7環(huán)境下采用Keras 深度學(xué)習(xí)框架進(jìn)行模型訓(xùn)練和測(cè)試;硬件配置為:64 位操作系統(tǒng),處理器為Inter?Core?i5-8500 CPU 3.00 GHz。
模型評(píng)估標(biāo)準(zhǔn)的選擇至關(guān)重要,準(zhǔn)確率(Accuracy)、查準(zhǔn)率(Precision)、查全率(Recall)均為要素獲取分類問題常用的衡量指標(biāo)。通常將樣本分為正樣本和負(fù)樣本,正樣本指屬于所求類的樣本,反之,不屬于該類的樣本為負(fù)樣本。正負(fù)樣本的混淆矩陣如表2所示。
表2 正負(fù)樣本的混淆矩陣Table 2 Confusion matrix of positive and negative samples
其中,TP 為被預(yù)測(cè)為正樣本,真實(shí)同是正樣本;FP為被預(yù)測(cè)為正樣本,真實(shí)是負(fù)樣本;N 為被預(yù)測(cè)為負(fù)樣本,真實(shí)是正樣本;TN 為被預(yù)測(cè)為負(fù)樣本,真實(shí)同為負(fù)樣本。
通常選取Accuracy 作為衡量分類模型性能的指標(biāo),但當(dāng)樣本分布不平衡時(shí),它不能準(zhǔn)確地衡量模型的整體分類精度,僅能代表大樣本類的分類精度。在工程應(yīng)用中,Precision 和Recall 通常為負(fù)相關(guān),進(jìn)一步優(yōu)化時(shí)需要選擇優(yōu)化目標(biāo),選擇的標(biāo)準(zhǔn)是當(dāng)漏判帶來的損失較大時(shí),Recall優(yōu)先。反之當(dāng)誤判帶來的損失較大時(shí),則Precision 優(yōu)先。由于本文解決的是網(wǎng)絡(luò)安全態(tài)勢(shì)要素獲取問題,在安全領(lǐng)域方面漏掉任何一個(gè)攻擊都可能產(chǎn)生嚴(yán)重后果,為了能夠準(zhǔn)確地識(shí)別出所有的攻擊行為,在本文中更傾向于采用查全率對(duì)所提出的預(yù)測(cè)模型進(jìn)行評(píng)價(jià)。后面將提到每個(gè)類的分類精度,即為查全率。
2.2.1 N2SEA-ICNN基分類器的訓(xùn)練過程分析
在深度學(xué)習(xí)模型中,模型參數(shù)的選擇會(huì)對(duì)模型性能造成一定影響,通過手動(dòng)調(diào)參得到適應(yīng)于模型的超參數(shù)。模型各層參數(shù)如表3所示。
表3 模型各層參數(shù)Table 3 Parameters of each layer of model
由于設(shè)計(jì)的態(tài)勢(shì)要素獲取模型為多分類問題,故選取categorical_crossentrop[20]為損失函數(shù),運(yùn)用Adam[21]優(yōu)化算法對(duì)模型進(jìn)行反向傳播訓(xùn)練,根據(jù)損失函數(shù)調(diào)整模型訓(xùn)練的超參數(shù),設(shè)置bach_size為128,迭代次數(shù)為50。最后通過測(cè)試集檢測(cè)模型的泛化能力來評(píng)估模型。迭代次數(shù)與損失函數(shù)值、準(zhǔn)確率的關(guān)系曲線分別如圖6和圖7所示。
圖6 N2SEA-ICNN基分類器準(zhǔn)確率曲線Fig.6 Accuracy curve of N2SEA-ICNN base classifier
圖7 基分類器損失值曲線Fig.7 Loss curve of N2SEA-ICNN base classifier
通過分析兩組圖像可以看出,隨著迭代次數(shù)的增加,準(zhǔn)確率曲線也呈現(xiàn)逐步上升的趨勢(shì),當(dāng)?shù)螖?shù)達(dá)到40 時(shí),分類精度達(dá)到了0.979。同時(shí)損失函數(shù)值穩(wěn)定下降的趨勢(shì)并接近于0,模型趨于穩(wěn)定,得到了最優(yōu)的模型。為了更加準(zhǔn)確地識(shí)別網(wǎng)絡(luò)安全的各個(gè)因素,本文統(tǒng)計(jì)了每個(gè)類的分類精度,如圖8 所示,R2L 和U2R 兩類的分類精度明顯低于其他三類,因?yàn)樵谀P陀?xùn)練時(shí)這兩類的樣本很少,提取到的特征少,因此在測(cè)試的時(shí)候分類精度低。
圖8 N2SEA-ICNN基分類器分類精度Fig.8 Classification accuracy of N2SEA-ICNN base classifier
2.2.2 遷移學(xué)習(xí)對(duì)小樣本的效果
對(duì)于上述小樣本分類精度的問題,采取上文提到的遷移學(xué)習(xí)模型來重新得到小樣本的分類精度。隨機(jī)選取較小樣本R2L類以U2R類的80%作為訓(xùn)練集,其余的作為測(cè)試集,迭代次數(shù)與損失函數(shù)值、準(zhǔn)確率的關(guān)系曲線如圖9和圖10所示。
圖9 基于遷移學(xué)習(xí)模型的準(zhǔn)確率曲線Fig.9 Accuracy curve based on migration learning model
圖10 基于遷移學(xué)習(xí)模型的損失值率曲線Fig.10 Loss rate curve based on migration learning model
通過分析上圖的曲線,可以看出隨著迭代次數(shù)的增加,準(zhǔn)確率曲線呈現(xiàn)穩(wěn)定上升且準(zhǔn)確率較高,損失函數(shù)逐步趨于0,在訓(xùn)練到30 epoch 逐漸收斂。遷移學(xué)習(xí)將較小樣本的分類精度提高至少32%,達(dá)到98.8%,超小樣本分類精度提高了74%,遷移學(xué)習(xí)快速訓(xùn)練的特點(diǎn)使再分類所需的時(shí)間降低,因此不會(huì)成規(guī)模增加模型的時(shí)間復(fù)雜度。
2.2.3 超小樣本數(shù)據(jù)增強(qiáng)結(jié)合遷移學(xué)習(xí)的效果
為了進(jìn)一步地提高超小樣本U2R類的分類精度,采取數(shù)據(jù)增強(qiáng)來解決數(shù)據(jù)不平衡問題。本文采取訓(xùn)練DCGAN得到的生成器來進(jìn)行樣本擴(kuò)充,在擴(kuò)充后的數(shù)據(jù)集,結(jié)合遷移學(xué)習(xí)對(duì)N2SEA-ICNN 基分類器微調(diào),得到新的分類器。DCGAN 模型訓(xùn)練的迭代次數(shù)和損失值的關(guān)系曲線如圖11所示,其中d_loss代表判別器損失值,g_loss 代表生成器損失值。通過觀察圖11,可以看出兩個(gè)損失函數(shù)都在逐步下降,大約在迭代10 000次模型收斂,因此在本文的后續(xù)實(shí)驗(yàn)DCGAN的迭代次數(shù)選擇10 000次。
圖11 DCGAN模型訓(xùn)練損失Fig.11 Training loss of DCGAN model
本文通過DCGAN訓(xùn)練得到的生成器,生成不同比例的樣本個(gè)數(shù),對(duì)U2R類做樣本擴(kuò)充,并結(jié)合遷移學(xué)習(xí)訓(xùn)練得到新的小樣本的分類精度如圖12所示。
圖12 增強(qiáng)樣本后小樣本的分類精度Fig.12 Classification accuracy of small samples after enhancement
經(jīng)仿真驗(yàn)證,隨著U2R 類擴(kuò)充樣本個(gè)數(shù)的提高,DCGAN 樣本擴(kuò)充結(jié)合遷移學(xué)習(xí)的模型與超小樣本的分類精度呈正相關(guān)增加,當(dāng)擴(kuò)充樣本達(dá)到2 500時(shí),分類精度最佳。相比不擴(kuò)充時(shí)的原始訓(xùn)練集U2R的分類精度提高了13%以上。
為了進(jìn)一步證明本文方法的優(yōu)勢(shì),與淺層的神經(jīng)網(wǎng)絡(luò)及深度學(xué)習(xí)方法進(jìn)行了對(duì)比實(shí)驗(yàn),包括SVM、CNN(lenet-5)[14]、DBN[22]、SRU-DCGAN[23]和基于遷移學(xué)習(xí)的CNN,分類精度如表4所示。
由表4 可知,本文要素獲取模型相比文獻(xiàn)[23]的方法,較小樣本R2L精度提高了5個(gè)百分點(diǎn),超小樣本U2R提高了6個(gè)百分點(diǎn),對(duì)U2R的分類精度達(dá)到88.24%。雖然對(duì)Dos的分類精度低于部分傳統(tǒng)的方法,但整體的分類精度明顯高于其他方法?;谶w移學(xué)習(xí)的CNN方法對(duì)R2L 較小樣本的分類精度也高于SVM、PSO-DBN、SRU-DCGAN模型,說明遷移學(xué)習(xí)對(duì)于提高小樣本的分類精確度是有效的。最后在基于GAN數(shù)據(jù)類內(nèi)擴(kuò)充的模型中,超小樣本的分類精度也高于其他的要素分類模型,證明了GAN 對(duì)平衡樣本以及提高超小樣本的分類精度有明顯作用。
表4 不同要素獲取方法的精度Table 4 Accuracy of different factor acquisition methods%
表5 不同模型的復(fù)雜度對(duì)比Table 5 Complexity comparison of different models
可以看出本文提出的網(wǎng)絡(luò)安全要素獲取模型復(fù)雜度低于SVM 以及SRU-DCGAN[19]模型,略高于文獻(xiàn)DBN[18]和CNN[9],量級(jí)是相同的并沒有成規(guī)模增加,說明本文提出方法在提高分類精度的同時(shí)也沒有增加模型的復(fù)雜度。
本文針對(duì)樣本不平衡的網(wǎng)絡(luò)數(shù)據(jù)特征,提出了一種基于GAN生成對(duì)抗網(wǎng)絡(luò)的樣本擴(kuò)充和遷移學(xué)習(xí)模型分層的網(wǎng)絡(luò)安全態(tài)勢(shì)要素獲取模型。采用CNN作基分類器,根據(jù)樣本量級(jí)和基分類器的分類精度,將樣本分為大樣本、較小樣本和超小樣。該模型結(jié)合了通過生成式對(duì)抗網(wǎng)絡(luò)類內(nèi)擴(kuò)充方法來生成超小樣本數(shù)據(jù),結(jié)合遷移學(xué)習(xí)更快速而高效地學(xué)習(xí)小樣本的特征。運(yùn)用NSL-KDD 數(shù)據(jù)集對(duì)模型進(jìn)行了訓(xùn)練與測(cè)試,通過仿真結(jié)果表明,不僅保證了大樣本的分類精度,還提高了態(tài)勢(shì)要素小樣本的分類精度,從而改善了要素獲取模型的整體性能。