譚 繼 安
(東莞職業(yè)技術(shù)學(xué)院 廣東 東莞 523808)
隨著5G時(shí)代的到來,信息網(wǎng)絡(luò)已深入國民經(jīng)濟(jì)的各個(gè)環(huán)節(jié),物聯(lián)網(wǎng)技術(shù)的發(fā)展也將人、物及商業(yè)進(jìn)行了互聯(lián)。隨著物聯(lián)網(wǎng)技術(shù)在醫(yī)療、智能家居、智能穿戴等領(lǐng)域的普及,物聯(lián)網(wǎng)每日采集海量的數(shù)據(jù),傳統(tǒng)的網(wǎng)絡(luò)安全機(jī)制則難以負(fù)擔(dān)海量的數(shù)據(jù)分析[1]。近年來深度學(xué)習(xí)技術(shù)在網(wǎng)絡(luò)安全領(lǐng)域取得了卓越的成果,但大數(shù)據(jù)的攻擊檢測問題是一種典型的不平衡數(shù)據(jù)分類問題,傳統(tǒng)的深度學(xué)習(xí)技術(shù)在此類場景下容易發(fā)生過擬合[2]。另外,大數(shù)據(jù)每天流入大量的新數(shù)據(jù),而深度神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練效率較低,許多模型需要一天以上的訓(xùn)練時(shí)間[3],難以滿足大數(shù)據(jù)實(shí)時(shí)攻擊檢測的需求。
近期許多研究者通過深度學(xué)習(xí)技術(shù)檢測網(wǎng)絡(luò)的攻擊,文獻(xiàn)[4]提出深度學(xué)習(xí)模型下多分類器的入侵檢測方法,該方法利用深度信念網(wǎng)絡(luò)提取低維的特征數(shù)據(jù),在任意兩類特征數(shù)據(jù)之間構(gòu)建一個(gè)梯度提升樹分類器,基于NSL-KDD數(shù)據(jù)集的仿真實(shí)驗(yàn)表明其實(shí)現(xiàn)了較好的性能。而NSL-KDD數(shù)據(jù)集的數(shù)據(jù)量依然較小,且僅包含DoS、Probe、R2L和U2R等攻擊類型。與之相似,文獻(xiàn)[5-7]等深度學(xué)習(xí)技術(shù)也在部分公開的小規(guī)模數(shù)據(jù)集上進(jìn)行了驗(yàn)證實(shí)驗(yàn),但難以判斷其對于大數(shù)據(jù)的效果。
UNSW-NB15數(shù)據(jù)集[8]是近期一個(gè)測試入侵檢測的數(shù)據(jù)集,該數(shù)據(jù)集包含了100 GB以上的真實(shí)網(wǎng)絡(luò)流量數(shù)據(jù)。文獻(xiàn)[9]將自編碼器和前饋神經(jīng)網(wǎng)絡(luò)結(jié)合,用于UNSW-NB15數(shù)據(jù)集的入侵檢測研究,該研究實(shí)現(xiàn)了較高的檢測準(zhǔn)確率,但是網(wǎng)絡(luò)的訓(xùn)練時(shí)間較長。文獻(xiàn)[10]將多層前饋神經(jīng)網(wǎng)絡(luò)在UNSW-NB15數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn)驗(yàn)證,該網(wǎng)絡(luò)出現(xiàn)了明顯的過擬合現(xiàn)象,且計(jì)算效率較低。
綜上所述,傳統(tǒng)的深度學(xué)習(xí)技術(shù)在特征提取過程中容易出現(xiàn)過擬合的情況,并且計(jì)算時(shí)間較長。為了解決該問題,本文提出了新的深度神經(jīng)網(wǎng)絡(luò)模型,利用卷積神經(jīng)網(wǎng)絡(luò)提取流量數(shù)據(jù)的特征,利用長短期記憶網(wǎng)絡(luò)(LSTM)學(xué)習(xí)特征之間的依賴關(guān)系,避免CNN發(fā)生梯度消失問題。對LSTM的連接設(shè)計(jì)了Dropout設(shè)計(jì),一方面減少了特征關(guān)系學(xué)習(xí)過程的過擬合情況,另一方面也提高了網(wǎng)絡(luò)的計(jì)算效率。為了支持大數(shù)據(jù)動態(tài)演化的特點(diǎn),本文設(shè)計(jì)了基于決策樹的增量學(xué)習(xí)模型,能夠動態(tài)地對新流入的數(shù)據(jù)進(jìn)行學(xué)習(xí)和預(yù)測。
LSTM[11]是一種循環(huán)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),網(wǎng)絡(luò)包含一個(gè)記憶單元和輸入門、輸出門和遺忘門三個(gè)控制門。輸入門的數(shù)學(xué)式為:
it=σ(Wixt+Uiht-1)
(1)
遺忘門的數(shù)學(xué)式為:
ft=σ(Wfxt+Ufht-1)
(2)
輸出門的數(shù)學(xué)式為:
ot=σ(Woxt+Uoht-1)
(3)
式中:σ為激活函數(shù);W和U為權(quán)重矩陣;xt是在時(shí)間步t的輸入向量。
在時(shí)間步t的記憶單元狀態(tài)ct為:
(4)
(5)
式中:“×”表示矩陣按元素相乘。
在時(shí)間步t的隱層狀態(tài)ht為:
ht=ot×tanh(ct)
(6)
LSTM通過記憶單元維護(hù)輸入特征之間的依賴關(guān)系,輸入門向記憶單元輸入一個(gè)新元素,遺忘門控制刪除記憶單元內(nèi)的元素,輸出門基于記憶單元的內(nèi)容計(jì)算網(wǎng)絡(luò)的輸出。正切函數(shù)和Sigmoid函數(shù)是兩個(gè)常用的激活函數(shù)。
設(shè)計(jì)了權(quán)重正則化的LSTM結(jié)構(gòu)(Weight Regularization-LSTM,WRLSTM),提高網(wǎng)絡(luò)的計(jì)算效率,并且防止過擬合。WRLSTM對LSTM的連接進(jìn)行Dropout正則化處理,并未采用傳統(tǒng)方案對輸出單元進(jìn)行Dropout處理,通過該方式可增加激活和輸出向量的稀疏性。WRLSTM在訓(xùn)練階段對LSTM的隱層權(quán)重進(jìn)行隨機(jī)Dropout處理,防止發(fā)生過擬合的情況。LSTM的輸出可以總結(jié)如下:
yt=σ(Wxt+(M×U)ht-1)
(7)
式中:M是網(wǎng)絡(luò)連接的二值矩陣掩碼形式。在訓(xùn)練階段通過修改M中的元素來更新每次迭代的網(wǎng)絡(luò)連接Dropout狀態(tài)。
CNN每個(gè)神經(jīng)元的輸出是一個(gè)關(guān)于輸入、權(quán)重和偏置的函數(shù),每一層權(quán)重的更新計(jì)算式為:
(8)
式中:wi為神經(jīng)元i的權(quán)重;α和r分別為正則參數(shù)和學(xué)習(xí)率;n為訓(xùn)練樣本總量;m為動量;t為迭代次數(shù);C為成本函數(shù)。
每一層偏置的更新計(jì)算式為:
(9)
式中:bi為神經(jīng)元i的偏置;α為正則參數(shù);n為訓(xùn)練樣本總量;m為動量;t為迭代次數(shù);C為成本函數(shù)。
CNN卷積運(yùn)算的計(jì)算式為:
(10)
式中:xi為輸入向量;N為xi的元素?cái)?shù)量;h為卷積層的filter;yi為輸出向量;n為yi的元素?cái)?shù)量。
CNN的池化層可降低卷積層的維度,從而減少計(jì)算成本且防止過擬合,本文采用最大池化機(jī)制。
為了同時(shí)利用深度CNN的特征學(xué)習(xí)能力及WRLSTM的記憶能力,將兩個(gè)網(wǎng)絡(luò)融合成一個(gè)高效的入侵檢測模型。圖1所示為混合深度神經(jīng)網(wǎng)絡(luò)(Hybrid Deep Neural Networks,HDNN)的結(jié)構(gòu)。
圖1 混合深度神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)
HDNN由兩個(gè)卷積層、一個(gè)最大池化層、一個(gè)WRLSTM及一個(gè)全連接層構(gòu)成,兩個(gè)卷積層的激活函數(shù)均為ReLU,其計(jì)算式為:
σ(x)=max(0,x)
(11)
式中:x為神經(jīng)元的輸入。
最大池化層的輸出傳入WRLSTM層,WRLSTM學(xué)習(xí)所提取特征之間的依賴關(guān)系,隨機(jī)失活部分的權(quán)重。最終WRLSTM的輸出傳入全連接層,全連接層通過Softmax激活函數(shù)將流量數(shù)據(jù)分類。Softmax激活函數(shù)計(jì)算了每個(gè)流量類別的概率分布,其計(jì)算式為:
(12)
式中:n為流量的類別數(shù)量;x為輸入數(shù)據(jù)。
圖2所示為HDNN-tree的結(jié)構(gòu)示意圖,每個(gè)節(jié)點(diǎn)為一個(gè)HDNN。根節(jié)點(diǎn)將流量數(shù)據(jù)分類為正?;虍惓?,然后再傳入到下一層的節(jié)點(diǎn),對數(shù)據(jù)類型進(jìn)行深入的識別,最終在葉節(jié)點(diǎn)輸出流量數(shù)據(jù)的類型。HDNN-tree的每個(gè)葉節(jié)點(diǎn)與一個(gè)唯一類別相關(guān)聯(lián)。
圖2 HDNN-tree的結(jié)構(gòu)
(13)
似然矩陣的計(jì)算式為:
(14)
然后將LK×M排序產(chǎn)生一個(gè)列表S,S的數(shù)據(jù)結(jié)構(gòu)具有三點(diǎn)性質(zhì)。性質(zhì)1:S共有M個(gè)對象,每個(gè)對象和一個(gè)新類相關(guān)聯(lián)。性質(zhì)2:每個(gè)對象S[i]具有3個(gè)屬性值:(1)S[i].label:新類的標(biāo)簽;(2)S[i].value:Softmax輸出值的Top-3;(3)S[i].nodes:Top-3值對應(yīng)的3個(gè)輸出節(jié)點(diǎn)。性質(zhì)3:列表S按S[i].value值降序排列。
列表S的排序處理保證了相似性最高的新類優(yōu)先加入HDNN-tree,通過Softmax計(jì)算樣本和類標(biāo)簽之間的似然,能夠更好地識別新樣本和已有類標(biāo)簽之間的相似度。然后對S的第1個(gè)元素S[1](相似性最高的新類)進(jìn)行以下三個(gè)判斷和操作:
假設(shè)v2是新類,v1和v3為已有類。
第1個(gè)判斷:如果v1-v2>α,那么新類和子節(jié)點(diǎn)n1關(guān)聯(lián)性較強(qiáng),將新類加入n1中。
第2個(gè)判斷:如果新類和多個(gè)子節(jié)點(diǎn)具有高相似度,那么將幾個(gè)相似的節(jié)點(diǎn)組成一個(gè)新的子節(jié)點(diǎn)。數(shù)學(xué)模型為:如果v1-v2<α且v2-v3>β,那么將n2和n1合并,并將新類也將入n1中。
第3個(gè)判斷:如果新類和所有子節(jié)點(diǎn)相似度均較低,那么網(wǎng)絡(luò)為新類增加一個(gè)新的子節(jié)點(diǎn)。數(shù)學(xué)模型為:如果v1-v2<α且v2-v3<β,那么為新類創(chuàng)建一個(gè)新子節(jié)點(diǎn)。
算法1是增量學(xué)習(xí)算法的偽代碼。圖3所示為增量學(xué)習(xí)的一個(gè)實(shí)例,假設(shè)α=β=0.3,Chi4、Chi5和Chi6是三個(gè)新加入的節(jié)點(diǎn)。Chi4的v1-v2=0.95-0.26=0.69>0.3,因此Chi4加入Chi1;Chi5的v1-v2=0.2<α,且v2-v3=0.01<β,因此Chi5建立新節(jié)點(diǎn);Chi6的v1-v2=0.93-0.18<α,因此Chi6加入Chi2。
算法1增量學(xué)習(xí)算法。
輸入:似然矩陣L,每個(gè)分支的最大子節(jié)點(diǎn)數(shù)量maxchi,根節(jié)點(diǎn)Rnode,新節(jié)點(diǎn)node。
1.S←createS(L,node,maxchi);
//創(chuàng)建S列表
2.whileS!=NULL do {
3.[classlabel,value,node]←S[1];
//提取S[1]屬性
/*第1個(gè)判斷*/
4.if (value[1]-value[2]>α) {
5.Rnode=inserttonode(Rnode,classlabel,node[1]);
//將新類加入node[1]
/*第2個(gè)判斷*/
6.} else if (value[2]-value[3]>β){
7.mergenode(Rnode,node[1],node[2]);
/*第3個(gè)判斷*/
8.} else {
9.Rnode←addnewnode(Rnode,classlabel);
10.}
/*重新創(chuàng)建S*/
11.S←createS(L,node,maxchi);
10.}
圖3 增量學(xué)習(xí)的實(shí)例
在創(chuàng)建HDNN-tree的過程中,如果根節(jié)點(diǎn)的分類數(shù)量達(dá)到了最大子節(jié)點(diǎn)數(shù)量,那么增加HDNN-tree的深度,每個(gè)深度所支持的最大子節(jié)點(diǎn)數(shù)量和tree的最大深度由用戶根據(jù)實(shí)際應(yīng)用場景所設(shè)定,在本文系統(tǒng)中,根節(jié)點(diǎn)最大子節(jié)點(diǎn)數(shù)量為2(正常用戶類和異常用戶類),其他層的最大子節(jié)點(diǎn)數(shù)量為15,樹的最大深度為2。
當(dāng)系統(tǒng)為新類分配了一個(gè)節(jié)點(diǎn)位置時(shí),通過梯度下降法訓(xùn)練受影響的節(jié)點(diǎn),該機(jī)制避免了重新訓(xùn)練全部的網(wǎng)絡(luò),并且這部分的訓(xùn)練處理可以離線完成,并不影響樹中其他HDNN的工作。在初始化階段,首先利用可用的數(shù)據(jù)訓(xùn)練根節(jié)點(diǎn),在之后的增量學(xué)習(xí)過程中,僅在根節(jié)點(diǎn)將輸入數(shù)據(jù)分配到特定分支的時(shí)候,該分支才被激活,因此不僅提高了流量檢測的精度,同時(shí)也保持了較低的處理時(shí)間。如果某個(gè)節(jié)點(diǎn)發(fā)生分類錯誤,那么該分支會為該類分配一個(gè)新節(jié)點(diǎn),因此并不會影響已有節(jié)點(diǎn)中神經(jīng)網(wǎng)絡(luò)的訓(xùn)練。
UNSW-NB15數(shù)據(jù)集是Moustafa研究小組收集的一個(gè)大規(guī)模IDS實(shí)驗(yàn)數(shù)據(jù)集,該數(shù)據(jù)集包含了100 GB以上的真實(shí)網(wǎng)絡(luò)流量數(shù)據(jù)。該研究小組使用自動攻擊生成工具Perfect Storm[12]對幾個(gè)目標(biāo)服務(wù)器進(jìn)行真實(shí)的攻擊。數(shù)據(jù)集共包含2 540 044個(gè)標(biāo)記樣本,共有九種攻擊類型,分別為:漏洞攻擊、DoS攻擊、后門攻擊、分析攻擊、滲透攻擊、通用攻擊、偵察攻擊、Shellcode注入攻擊、蠕蟲病毒。
將UNSW-NB15數(shù)據(jù)集中空記錄刪除,最終篩選出2 273 332個(gè)樣本,按照7 ∶3的比例將數(shù)據(jù)集分為訓(xùn)練集和測試集。表1所示為實(shí)驗(yàn)數(shù)據(jù)集的統(tǒng)計(jì)信息,表中顯示網(wǎng)絡(luò)流量的數(shù)據(jù)為不平衡分類,正常流量遠(yuǎn)多于攻擊流量,因此傳統(tǒng)的機(jī)器學(xué)習(xí)分類器極易發(fā)生過擬合的情況,本文設(shè)計(jì)了HDNN結(jié)構(gòu)來緩解過擬合,并且提高計(jì)算效率。
表1 實(shí)驗(yàn)數(shù)據(jù)集劃分情況
續(xù)表1
為了兼容本文的神經(jīng)網(wǎng)絡(luò)模型,將流量的特征由名詞轉(zhuǎn)化成獨(dú)立的編號數(shù)值,然后對數(shù)值進(jìn)行歸一化處理,歸一化的計(jì)算式為:
(15)
式中:fi,j表示數(shù)據(jù)矩陣在(i,j)位置的值。
通過以下4個(gè)廣泛應(yīng)用的性能指標(biāo)評價(jià)HDNN-tree的性能。
準(zhǔn)確率A的計(jì)算式為:
(16)
式中:TP表示將正類預(yù)測為正類的數(shù)量;TN表示將負(fù)類預(yù)測為負(fù)類的數(shù)量;FP表示將負(fù)類預(yù)測為正類的數(shù)量;FN表示將正類預(yù)測為負(fù)類的數(shù)量。
精度P的計(jì)算式為:
(17)
召回率R的計(jì)算式為:
(18)
F1-score的計(jì)算式為:
(19)
因?yàn)楸疚尼槍Υ髷?shù)據(jù)攻擊檢測問題提出了新的深度神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)HDNN,所以通過第1組實(shí)驗(yàn)評價(jià)HDNN的性能,然后設(shè)計(jì)了第2組實(shí)驗(yàn)評價(jià)增量學(xué)習(xí)方法HDNN-tree的有效性。
1) HDNN的參數(shù)設(shè)置。HDNN的參數(shù)包括filter數(shù)量、epoch數(shù)量、學(xué)習(xí)率、WRLSTM隱層單元數(shù)量、dropout率p,批大小和最大池化長度。首先通過試錯法訓(xùn)練HDNN,最終的網(wǎng)絡(luò)參數(shù)確定如下:epoch數(shù)量為40,學(xué)習(xí)率為0.004,輸出層大小為30,LSTM的dropout率p為0.2。第1個(gè)和第2個(gè)卷積層的filter數(shù)量分別為32和64,核大小為3,最大池化長度為2。
2) HDNN的性能結(jié)果。首先測試了本文模型對于異常流量的檢測能力,圖4(a)所示為模型所檢測正常流量和異常流量的ROC曲線,正常流量的ROC區(qū)域?yàn)?.92,異常流量的ROC區(qū)域?yàn)?.91,可以看出本文模型對于大規(guī)模數(shù)據(jù)依然實(shí)現(xiàn)了較高的檢測效果。圖4(b)所示為模型所檢測正常流量和異常流量精度、召回率和F1-score的性能,對正常流量、異常流量的檢測精度均高于0.95,對正常流量的召回率較高,但對異常流量的召回率略低??傮w而言,本文模型對于大數(shù)據(jù)集實(shí)現(xiàn)了較高的異常流量檢測性能。
(a) ROC曲線
然后分析了本文模型對于異常流量的細(xì)粒度識別能力,圖5(a)所示為模型所檢測的不同異常流量類別的ROC曲線,后門攻擊、蠕蟲病毒和分析攻擊的ROC區(qū)域分別為0.54、0.56和0.57,這三種攻擊類型的特征顯著性較低,隱蔽性較強(qiáng),因此對于這三種攻擊的識別效果不足。本文系統(tǒng)對于漏洞攻擊、滲透攻擊、通用攻擊、偵察攻擊及Shellcode注入攻擊均實(shí)現(xiàn)了較好的識別效果,ROC區(qū)域均超過了0.8。圖5(b)、(c)、(d)分別為模型所檢測的不同異常流量類別的精度、召回率及F1-score的性能。和ROC曲線的結(jié)果相似,后門攻擊、蠕蟲病毒和分析攻擊的識別效果較差,另外對于DoS攻擊的識別精度也較低。但本文系統(tǒng)對于漏洞攻擊、滲透攻擊、通用攻擊、偵察攻擊及Shellcode注入攻擊均實(shí)現(xiàn)了較好的識別效果,精度、召回率及F1-score均超過了0.6。
(a) ROC曲線
3) 對比實(shí)驗(yàn)分析。選擇了5個(gè)近年來性能較好的大數(shù)據(jù)異常流量檢測算法與本文模型對比,分別為基礎(chǔ)CNN[13]、GoogLeNetInceptionCNN[14]、LSTM[15]、GRU[16]、AL模型[17]。因?yàn)楸疚哪P褪荂NN和LSTM的混合網(wǎng)絡(luò),所以通過基礎(chǔ)CNN和LSTM可以判斷本文模型是否有效。GoogLeNetInceptionCNN和GRU是兩個(gè)不同類型的深度學(xué)習(xí)模型。AL是一種自學(xué)習(xí)的非神經(jīng)網(wǎng)絡(luò)模型,該模型的優(yōu)勢是計(jì)算速度較快。
因?yàn)樯鲜?個(gè)對比方法中主要提供了對于UNSW-NB15數(shù)據(jù)集的準(zhǔn)確率結(jié)果,所以在此也主要比較了6個(gè)檢測算法的準(zhǔn)確率指標(biāo),如圖6所示??梢钥闯鯣oogLeNetInceptionCNN和GRU均實(shí)現(xiàn)了較高的檢測準(zhǔn)確率,且5種深度神經(jīng)網(wǎng)絡(luò)模型的準(zhǔn)確率均高于90%,僅AL模型的準(zhǔn)確率略低于90%,由此可見深度神經(jīng)網(wǎng)絡(luò)對于大規(guī)模不平衡數(shù)據(jù)的檢測性能較好。此外,本文模型的檢測準(zhǔn)確率高于基礎(chǔ)CNN和LSTM,本文模型通過對神經(jīng)網(wǎng)絡(luò)連接的dropout處理,緩解了深度神經(jīng)網(wǎng)絡(luò)的過擬合,從而提高了對不平衡數(shù)據(jù)的分析效果。
圖6 異常檢測算法的準(zhǔn)確率指標(biāo)
本文的實(shí)驗(yàn)環(huán)境為PC機(jī):Intel i7- 9700 6核心處理器,16 GB內(nèi)存,操作系統(tǒng)為64位 Windows 10。本文模型通過對神經(jīng)網(wǎng)絡(luò)連接的dropout處理,緩解了深度神經(jīng)網(wǎng)絡(luò)對大規(guī)模不平衡數(shù)據(jù)的過擬合問題,也提高了模型的計(jì)算效率。圖7所示是6個(gè)檢測算法對每個(gè)流量樣本的平均分類時(shí)間,GoogLeNetInceptionCNN采用GoogLeNet模型實(shí)現(xiàn)了多級CNN的深度網(wǎng)絡(luò)結(jié)構(gòu),因此計(jì)算效率較低。AL模型則是一種基于核函數(shù)的自動學(xué)習(xí)模型,該模型的計(jì)算效率較高,平均處理時(shí)間達(dá)到了0.003 ms左右,而本文模型的處理時(shí)間略低于AL模型,實(shí)現(xiàn)了最快的檢測速度。
圖7 每個(gè)樣本的平均處理時(shí)間
實(shí)驗(yàn)數(shù)據(jù)集的2 273 332個(gè)樣本篩選出一半數(shù)據(jù)作為初始化數(shù)據(jù)集,并且初始化數(shù)據(jù)集中僅包含一部分漏洞攻擊、DoS攻擊和后門攻擊的數(shù)據(jù),其他均為正常數(shù)據(jù)。剩余的一半樣本隨機(jī)分成6個(gè)大小相等的子數(shù)據(jù)集,將子數(shù)據(jù)集依次輸入HDNN-tree進(jìn)行識別,統(tǒng)計(jì)每個(gè)子數(shù)據(jù)集的識別準(zhǔn)確率。圖8所示是增量學(xué)習(xí)的HDNN-tree演化示意圖。
圖8 增量學(xué)習(xí)的HDNN-tree演化示意圖
圖9所示為每次輸入子數(shù)據(jù)集的平均識別準(zhǔn)確率結(jié)果,可以看出50%數(shù)據(jù)集的識別準(zhǔn)確率約為78%,隨著增量加入新的子數(shù)據(jù)集,模型的識別準(zhǔn)確率得以提升,最終達(dá)到約95%。增量學(xué)習(xí)的模型性能始終低于靜態(tài)訓(xùn)練的模型。主要原因在于增量學(xué)習(xí)過程中僅受到影響的分支被重新訓(xùn)練,未受影響的分支保持固定,所以影響了整體模型的識別性能,但是實(shí)現(xiàn)了增量學(xué)習(xí)的目標(biāo)。
圖9 增量學(xué)習(xí)的平均識別準(zhǔn)確率
為了提高大數(shù)據(jù)攻擊檢測的準(zhǔn)確率和效率,通過卷積神經(jīng)網(wǎng)絡(luò)提取數(shù)據(jù)的特征,然后基于長短期記憶網(wǎng)絡(luò)學(xué)習(xí)所提取特征之間的依賴關(guān)系,防止出現(xiàn)梯度消失問題。針對LSTM的連接設(shè)計(jì)了dropout設(shè)計(jì),一方面減少特征關(guān)系學(xué)習(xí)過程的過擬合情況,另一方面也提高了網(wǎng)絡(luò)的計(jì)算效率。最終,設(shè)計(jì)了基于決策樹的神經(jīng)網(wǎng)絡(luò)增量學(xué)習(xí)算法,能夠識別出數(shù)據(jù)的細(xì)粒度類標(biāo)簽。實(shí)驗(yàn)結(jié)果表明,混合神經(jīng)網(wǎng)絡(luò)有效地緩解了過擬合問題,并提高了模型的計(jì)算效率,同時(shí)也驗(yàn)證了增量學(xué)習(xí)的有效性。增量學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)模型準(zhǔn)確率隨著數(shù)據(jù)集的增加而提升,最終達(dá)到約95%,并且本文模型處理每個(gè)樣本的時(shí)間約為0.002 3 ms,有利于大數(shù)據(jù)的實(shí)時(shí)攻擊檢測。