肖韻婷,張立臣
(廣東工業(yè)大學(xué) 計算機學(xué)院,廣東 廣州 510006)
信息物理融合系統(tǒng)(cyber physical system,CPS)以網(wǎng)絡(luò)作為信息核心承載,將信息與物理系統(tǒng)緊密聯(lián)系,有效提升自動化水平與運行效率。但一旦其安全性被破壞,對應(yīng)的物理系統(tǒng)會受到嚴重影響。入侵檢測作為一種主動的防御技術(shù),能通過收集分析相關(guān)網(wǎng)絡(luò)數(shù)據(jù)及時發(fā)現(xiàn)攻擊行為,降低網(wǎng)絡(luò)威脅,因此,研究CPS的入侵檢測顯得尤為重要[1]。傳統(tǒng)網(wǎng)絡(luò)中基于機器學(xué)習(xí)算法及神經(jīng)網(wǎng)絡(luò)的單一和混合模型的入侵檢測方法已有許多研究。作為一種新型神經(jīng)網(wǎng)絡(luò),極限學(xué)習(xí)機(extreme learning machine,ELM)與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)相比學(xué)習(xí)速度更快,精度更高,參數(shù)設(shè)置更簡單,與支持向量機相比,可通過擴展類標簽矩陣的方法直接實現(xiàn)多分類,無需分解為多個二進制子問題,在許多領(lǐng)域包括入侵檢測領(lǐng)域應(yīng)用中都取得成功。文獻[2-9]均使用基于ELM的入侵檢測模型,分別與聯(lián)合熵、K均值聚類、卷積神經(jīng)網(wǎng)絡(luò)、自編碼器、深度信念網(wǎng)絡(luò)等相結(jié)合,并獲得較好的效果。但以上算法均未解決ELM性能受權(quán)重閾值隨機性與不平衡數(shù)據(jù)和離群點影響的問題。隨機權(quán)重閾值容易導(dǎo)致隱含層不具有稀疏性和調(diào)和能力,無法得到精確的解析解[10]。對此,文獻[11]對量子粒子群優(yōu)化算法改進并用于ELM的參數(shù)優(yōu)化,構(gòu)建工控系統(tǒng)入侵檢測模型,取得了較好的效果。針對ELM在不平衡數(shù)據(jù)集的性能,文獻[12]中歸納的兩種樣本權(quán)重計算方法均未對樣本離散程度進行考慮。
本文對WRELM權(quán)重賦值方式進行改進,提出基于局部距離的加權(quán)正則化極限學(xué)習(xí)機(local distance-based weighted regularized extreme learning machine,LDWRELM)減輕數(shù)據(jù)不平衡及離群點對模型性能的影響。并提出一種自適應(yīng)性和動態(tài)變異的改進頭腦風暴算法(modified brainstorm optimization,MBSO)用于LDWRELM初始輸入權(quán)重閾值優(yōu)化,提高其穩(wěn)定性及檢測能力,構(gòu)建用于CPS系統(tǒng)的MBSO-LDWRELM入侵檢測模型,在NSL-KDD數(shù)據(jù)集對比實驗驗證模型的性能與改進的有效性。
ELM是一種新型單隱層前饋神經(jīng)網(wǎng)絡(luò),結(jié)構(gòu)可分為輸入層、隱含層與輸出層3部分。對一個具有L個隱層節(jié)點的單隱層神經(jīng)網(wǎng)絡(luò),設(shè)輸入N個訓(xùn)練樣本 (xi,yi),i=1,2,…,N。 其中xi=[xi1,xi2…,xin]T,yj=[yj1,yj2,…yjm]T。 則網(wǎng)絡(luò)的輸出可表示為
(1)
其中,g()為激活函數(shù),對于第i個隱層節(jié)點,wi為與各輸入節(jié)點的權(quán)重,bi為偏置,βi為該隱層輸出權(quán)重。tj為實際輸出。網(wǎng)絡(luò)的實際輸出越接近Yi越好,為得到在訓(xùn)練樣本上具有良好效果的參數(shù),可使用訓(xùn)練誤差作為目標函數(shù),如下所示
(2)
即問題轉(zhuǎn)化為求解存在βi,wi與bi使
(3)
簡化為矩陣形式
Hβ=Y
(4)


其中,H為隱層輸出矩陣。與傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)等通過梯度下降法反向傳播迭代調(diào)整權(quán)重閾值的學(xué)習(xí)方法不同,ELM固定輸入權(quán)重wi與偏置bi,把問題轉(zhuǎn)換為僅需要求解隱含層輸出權(quán)重矩陣β。可使用最小二乘法求解線性系統(tǒng)式(4)的解為β*=H+T, 其中H+為H的廣義逆矩陣。
ELM算法是一種基于經(jīng)驗風險最小化原則的學(xué)習(xí)算法,但是真實的數(shù)據(jù)集往往包含噪音、離群點,僅考慮經(jīng)驗風險容易帶來過擬合與魯棒性低等問題。經(jīng)研究結(jié)果表明,通過結(jié)合正則化理論,使用權(quán)值系數(shù)權(quán)衡經(jīng)驗風險與模型復(fù)雜度,能有效緩解此問題。使用加權(quán)與正則化可以使ELM的求解達到更小的訓(xùn)練誤差,提高對離群點的抗干擾能力。則優(yōu)化問題變?yōu)?/p>
(5)
(6)

由式(5)、式(6)建立拉格朗日方程得

(7)
其中,α=[α1,α2,…,αN] 為拉格朗日算子,解式(7)得
(8)
其中,I為單位矩陣。當數(shù)據(jù)集中離群點少時,可以令矩陣W為單位對角矩陣,即每個樣本的樣本權(quán)值相等。對于帶權(quán)的RELM,文獻[13]對兩種常用加權(quán)方式進行了闡述,其兩種權(quán)重賦值方法的核心都是根據(jù)各個類的數(shù)據(jù)量進行賦值,提高少數(shù)類的權(quán)重,從而達到平衡數(shù)據(jù)集的目的。但僅從數(shù)據(jù)量層面考慮而未考慮到類內(nèi)數(shù)據(jù)間的稀疏程度和離群點的影響。文獻[14]提出一種基于數(shù)據(jù)離散度的加權(quán)極限學(xué)習(xí)機,把每類樣本均值作為樣本中心,以每個樣本到類中心與到其它類中心的最小值的比值作為權(quán)重。但其以類均值為中心點的方法在一定程度上已經(jīng)受離群點的影響,可能會使離群點的權(quán)重偏大,從而影響模型性能。因此本文針對樣本的加權(quán)方式進行了改進,具體定義如下
(9)
(10)

(11)
其中, dist(xi,xp) 表示樣本xi與xp間的歐氏距離,Ni為樣本xi所屬類別的集合, |Ni| 為每個類別中的樣本數(shù)量,Dxi的含義為樣本xi所在類的內(nèi)部平均距離,dxi為樣本xi與類內(nèi)其它樣本的平均距離。二者之比可反映當前樣本與其它樣本間的局部距離關(guān)系,當Wii≥1時,說明當前樣本與其它樣本距離較近,xi處于樣本相對稠密的區(qū)域;反之,則說明xi處于稀疏區(qū)域,樣本離群程度高,分類器若受這類樣本干擾,會使分類邊界模糊,因此應(yīng)降低其權(quán)重。
BSO算法是在2011年在國際智能團體會議中提出的一種新型的、有前途的群體智能優(yōu)化算法[15],該方法通過模仿人類通過頭腦風暴會議集思廣益產(chǎn)生問題解決方案,其參數(shù)設(shè)置簡單、進化過程易于理解、求解時間相對短,適合解決高維多峰值問題,并成功應(yīng)用于多個領(lǐng)域[16]。算法主要由初始化與評估、聚類、變異與更新4個模塊組成,通過實現(xiàn)在搜索空間遞歸解的發(fā)散與收斂,以得到“足夠好的”最優(yōu)解。其中最核心的為變異與更新模塊,其具體步驟如下:
選取一個或兩個個體后通過下式產(chǎn)生新個體
Xnew=Xselected+ζ×N(μ,δ)d
(12)
ζ=logsig((T/2-t)/k)×rand(0,1)
(13)
其中,Xselected為選擇的一個個體或由兩個個體融合生成的個體,N(μ,σ)d為d維的服從期望為μ、方差為σ的高斯隨機函數(shù),T為最大迭代次數(shù),t為當前迭代次數(shù),rand()為[0,1]間隨機實數(shù),logsig()函數(shù)為對數(shù)S形傳遞函數(shù),k為logsig函數(shù)的斜率。
若選取的是兩個個體,通過下式進行融合
Xselected=ω×Xselected_1+(1-ω)×Xselected_2
(14)
式中:Xselected為融合生成的個體,Xselected_1與Xselected_2為分別從兩個類中選取的個體,ω為[0,1]之間的隨機實數(shù)。
頭腦風暴優(yōu)化算法與其它優(yōu)化算法都有容易陷入局部極小而導(dǎo)致算法的優(yōu)化性能達不到理想效果的問題,本文提出一種針對更新策略與變異方式進行優(yōu)化的MBSO算法。
1.2.1 對更新策略的改進
個體更新策略是頭腦風暴優(yōu)化算法的關(guān)鍵之一。基于同一類個體的候選個體生成方式可看作組內(nèi)交流,基于不同類個體的候選個體生成方式可看作組間交流。組內(nèi)交流經(jīng)過擾動產(chǎn)生的新個體較大概率落在候選個體的周圍,更適合在后期進行局部細致的搜索以更好地接近極值點;組間交流進行隨機擾動后生成的新個體較大概率落在兩個類的中間,更適合用于前期的全局搜索,更快將搜索范圍縮小至更可能存在潛在解決方案的區(qū)域。
針對算法搜索過程的推進,考慮了控制調(diào)節(jié)組內(nèi)交流與組間交流的概率大小對搜索性能的影響,我們期望算法在迭代早期具有較強的全局搜索能力,進行充分搜索,以跳出局部極小值,在迭代后期能以當前局部最優(yōu)區(qū)域為中心進行局部搜索。因此可以令

(15)
(16)
其中,t為當前迭代次數(shù),T為最大迭代次數(shù),Pone(t)表示第t次迭代中概率Pone的取值,Pth為Pone的最小取值,u,v為調(diào)節(jié)系數(shù)。式(15)中上式為單調(diào)遞減函數(shù),隨著迭代的進行Pone逐漸減小,減小到小于Pth時下一代概率等于Pth,這一設(shè)定保證了算法在后期不完全喪失全局搜索的能力。
1.2.2 對變異策略的改進
影響算法效果的另一個關(guān)鍵在于個體的更新方式。傳統(tǒng)BSO在選定個體加上高斯隨機擾動實現(xiàn)新個體的產(chǎn)生。式(13)中系數(shù)ζ通過對數(shù)S形傳遞函數(shù)logsig()與[0,1] 間的隨機向量相乘實現(xiàn),logsig函數(shù)值域為(0,1),因此系數(shù)ζ的值域也為(0,1)。且根據(jù)高斯分布的“3σ”原則,高斯隨機函數(shù)產(chǎn)生的值落在橫軸區(qū)間(μ-2.58σ,μ+2.58σ)的概率約為99.73%。圖1為當μ=0,σ=1時,令式(13)中T=1000,隨機擾動的取值情況,可見迭代的前期隨機擾動的取值范圍固定,大部分位于區(qū)間[-2.5,2.5]之間,以0為中心向正負極分散,越靠近0處取值越密集。在迭代次數(shù)550后,擾動大小數(shù)量級基本小于1e-01??梢?,傳統(tǒng)BSO隨機擾動范圍集中在以μ為中心的局部區(qū)域,最大步長固定,每次的隨機擾動大小與迭代所處的階段并不匹配,造成迭代前期算法尋優(yōu)速度慢,后期在最優(yōu)值附近反復(fù)震蕩,無法快速收斂,且容易出現(xiàn)早熟現(xiàn)象。

圖1 高斯變異下的隨機擾動
由此可見,傳統(tǒng)BSO采用的高斯變異的局部搜索能力較強,但是引導(dǎo)個體跳出局部最優(yōu)的能力較弱,容易出現(xiàn)“超級個體”導(dǎo)致早熟,不利于全局收斂。且這種變異方式?jīng)]有充分利用當前種群的信息。本文對算法中的變異策略進行改進,引進自適應(yīng)的差分變異思想,設(shè)計與搜索階段相匹配的新個體產(chǎn)生策略。具體如式(17)、式(18)所示
(17)
ζ=ζmax-(ζmax-ζmin)×t/T
(18)
其中,i∈[1,2,…,n],Xselected為選中個體,X1、X2為種群中隨機選擇的兩個個體,t為當前迭代次數(shù),T為算法最大迭代次數(shù),ζmax表示變異系數(shù)ζ的最大值,ζmin表示變異系數(shù)ζ的最小值。Pc為交叉概率。Li、Hi為第d維搜索范圍上下界。

1.2.3 算法流程
根據(jù)上述介紹,MBSO算法的算法具體執(zhí)行流程如下所示:
步驟1 初始化種群Xi(i=1,2,…N), 問題維度d,最大迭代次數(shù)T,分類個數(shù)m,變異系數(shù)最大最小值ζmax、ζmin,概率Preplace,Pone,Pone_center,Ptwo_center,Pth,Pc,所優(yōu)化問題的適應(yīng)度函數(shù)f(x);
步驟2 將個體聚類為m類,計算各個體適應(yīng)度值,并以每個類中的最優(yōu)解為各類的中心。
步驟3 產(chǎn)生隨機數(shù),若小于Preplace,隨機生成個體替代選中類的中心個體;
步驟4 使用式(15)更新Pone,產(chǎn)生隨機數(shù)r1;
(1)r1 1)若小于Pone_center,選類中心個體為Xselected; 2)若大于Pone_center,選類內(nèi)個體為Xselected。 (2)r1>Pone,隨機選擇兩個類的個體通過式(14)融合作為Xselected,產(chǎn)生隨機數(shù); 1)若小于Ptwo_center,選擇兩個類的中心個體; 2)分別選擇兩個類的非中心個體。 步驟5 根據(jù)式(17)對個體進行變異,計算生成個體適應(yīng)度值,保留更優(yōu)個體; 步驟6 完成N個個體更新,則執(zhí)行步驟7;否則轉(zhuǎn)到步驟3; 步驟7 若達到最大迭代次數(shù),則終止循環(huán),輸出最優(yōu)個體;否則轉(zhuǎn)到步驟2。 1.2.4 性能測試 為驗證本文提出的改進后的算法性能,將MBSO與傳統(tǒng)差分進化算法(differential evolution algorithm,DE)、傳統(tǒng)PSO算法、傳統(tǒng)BSO算法進行對比。采用4個具有代表性的經(jīng)典標準測試函數(shù)對算法效果進行評估比較,包括單峰函數(shù)Sphere與Rosenbrok,多峰函數(shù)Rastrigin與Griewank。各函數(shù)表達式與尋優(yōu)范圍見表1。 表1 標準測試函數(shù) 實驗中,4種算法的種群個體數(shù)量N均為100,問題維度d為30,最大迭代次數(shù)T為1000,種群均采用均勻初始化。DE算法中交叉概率CR為0.3,變異率F為0.5。傳統(tǒng)PSO算法學(xué)習(xí)因子c1=c2=1.49,慣性權(quán)重ω為0.8。為保證對比公平,BSO對應(yīng)參數(shù)與MBSO一致,MBSO算法參數(shù)設(shè)置見表2。 為驗證改進的有效性,本文使用Matlab2014a對4種算法進行編程實現(xiàn),并分別對各測試函數(shù)進行尋優(yōu),每種算法均獨立運行50次,記錄每次尋優(yōu)的結(jié)果進行分析。圖2為各算法在優(yōu)化不同測試函數(shù)時的收斂特性曲線圖。 表2 MBSO參數(shù)設(shè)置 圖2 各算法對標準測試函數(shù)進行優(yōu)化的收斂特性 由圖2可以看出,進行優(yōu)化后的MBSO在收斂速度與尋優(yōu)所達到的精度均優(yōu)于其它3種算法。Sphere函數(shù)與Rosenbrok函數(shù)均為單峰函數(shù),主要目的在于考察算法跳出局部最優(yōu)后的收斂效果與尋優(yōu)前進方向的正確性。Sphere函數(shù)的三維圖是一個凹型碗狀平面,有唯一的一個全局最優(yōu)值,PSO算法陷入了局部最優(yōu),DE算法收斂速度較慢且尋優(yōu)結(jié)果不理想,BSO與MBSO多次跳出局部最優(yōu),且MBSO的收斂速度和尋優(yōu)結(jié)果較BSO更優(yōu)。Rosenbrok函數(shù)全局最小值位于拋物線型山谷中,越靠近山谷越平坦,因此即時找到山谷所在的位置也很難收斂的全局最小值。MBSO在迭代200次后也陷入了局部最優(yōu),但此時的適應(yīng)度值已經(jīng)優(yōu)于其它算法迭代1000次后的適應(yīng)度值。 Rastrigin函數(shù)與Griewank均為多峰函數(shù),存在眾多的局部最小值,主要考察算法是否能克服早熟現(xiàn)象與全局尋優(yōu)的效果。Rastrigin函數(shù)優(yōu)化中,PSO、BSO與MBSO在前50次迭代中表現(xiàn)相近,MBSO在100次迭代后開始跳出局部最優(yōu),在250次迭代后無限接近于全局最優(yōu)值。Griewank函數(shù)優(yōu)化過程中,MBSO在前200次迭代尋優(yōu)結(jié)果與PSO相近,在200后不斷跳出局部最優(yōu)值,在第350次迭代達到了理論最優(yōu)值,而PSO與BSO優(yōu)化均出現(xiàn)了停滯現(xiàn)象。 由圖2還可發(fā)現(xiàn),MBSO在對Rosenbrok、Rastrigin與Griewank的優(yōu)化過程中,在迭代前200次適應(yīng)度值優(yōu)勢不大,甚至高于其它算法,但是經(jīng)過一小段平臺期后,適應(yīng)度值迅速下降,表明算法在達到局部最優(yōu)點后能迅速調(diào)整尋優(yōu)方向,搜索到新的最優(yōu)點,在迭200次迭代后展現(xiàn)出優(yōu)勢。 表3對各算法運行結(jié)果的最優(yōu)值與平均值進行了統(tǒng)計,對于較簡單的Sphere函數(shù)尋優(yōu)問題,各算法均能達到較好的精度,MBSO的尋優(yōu)結(jié)果最優(yōu)。對Rosenbrok函數(shù)PSO尋優(yōu)結(jié)果波動較大,MBSO尋優(yōu)結(jié)果的穩(wěn)定性較好,每次運行均能達到相似的效果。對于多峰函數(shù),MBSO的克服早熟現(xiàn)象的能力在尋優(yōu)過程中展現(xiàn)出更大的優(yōu)勢。在對Rastrigins的尋優(yōu)中,各算法每次運行所求得的最小適應(yīng)度與均值相近,但只有MBSO尋找到全局最優(yōu)點;對Griewank函數(shù),BSO與MBSO均成功命中全局最優(yōu)點,但MBSO的尋優(yōu)結(jié)果更穩(wěn)定。表明了MBSO在每次優(yōu)化中都能帶領(lǐng)種群找到正確的優(yōu)化方向。 表3 實驗結(jié)果對比 實驗結(jié)果表明,MBSO采取的策略能有效抑制算法陷入局部最優(yōu),充分結(jié)合種群內(nèi)個體的信息,更好地平衡算法的全局搜索與局部搜索能力,加快算法尋優(yōu)速度,同時提高了算法的穩(wěn)定性,驗證了算法改進的有效性與必要性。 適應(yīng)度函數(shù)是衡量個體優(yōu)劣的指標,指引著算法迭代進化的方向,因此適應(yīng)度函數(shù)的選擇直接關(guān)系到算法尋優(yōu)是否能找到最優(yōu)解以及算法收斂的精度。本文采用均方誤差函數(shù)作為預(yù)測值與真實值之間偏差的度量,其計算公式如下 (19) 式中:N為輸入樣本數(shù),xn為真實值,tn為預(yù)測值,mse值越小,表明預(yù)測效果越好。 如上文所述,ELM作為一種快速、泛化能力好、參數(shù)設(shè)置簡單的新型神經(jīng)網(wǎng)絡(luò),ELM采用隨機選擇輸入權(quán)重值及其隱含層偏置,其隨機性可能導(dǎo)致某些權(quán)重閾值賦值接近0等情況,使某些隱含層節(jié)點失效,令算法泛化能力與求解精度達不到理想效果。 而MBSO具有良好的尋優(yōu)能力,可以對LDWRELM隨機確定的參數(shù)進行優(yōu)化,尋找更優(yōu)的初始權(quán)重閾值。 因此,考慮到CPS對入侵檢算法輕量、快速、簡單、穩(wěn)定等要求及入侵檢測數(shù)據(jù)的海量和不平衡等特點,本文將MBSO算法與LDWRELM相結(jié)合,構(gòu)建基于MBSO-LDWRELM的入侵檢測分類模型,將LDWRELM初始權(quán)重閾值設(shè)置問題映射為MBSO尋優(yōu)問題,尋找更好的LDWRELM 初始權(quán)重閾值,進而得到最優(yōu)輸出權(quán)重值。參照文獻[17]分析總結(jié)的典型CPS體系結(jié)構(gòu),檢測模塊將部署于CPS系統(tǒng)的應(yīng)用層。 基于MBSO-LDWRELM入侵檢測模型流程如下: 步驟1 數(shù)據(jù)收集預(yù)處理。截取網(wǎng)絡(luò)數(shù)據(jù)包并進行解析,將所得數(shù)據(jù)劃分為訓(xùn)練集與測試集,對數(shù)據(jù)進行預(yù)處理; 步驟2 使用MBSO算法優(yōu)化LDWRELM; (1)初始化LDWRELM參數(shù):輸入層節(jié)點數(shù)inputnum,隱含層節(jié)點數(shù)hiddennum及輸出層節(jié)點數(shù)outputnum進行賦值,對權(quán)重閾值進行初始化; (2)確定MBSO種群個體數(shù)N,所求問題維度計算公式為hiddennum*(inputnum+1),最大迭代次數(shù)T,及個體初始值; (3)根據(jù)適應(yīng)度函數(shù)計算各個體的適應(yīng)度值并排序,直到達到最大迭代次數(shù)或滿足終止迭代條件; (4)輸出最優(yōu)個體的值,即為模型的最優(yōu)參數(shù),從而建立入侵檢測模型。 步驟3 測試模型。將測試數(shù)據(jù)集作為模型輸入,得到樣本分類結(jié)果。 MBSO-LDWRELM的入侵檢測模型構(gòu)建流程如圖3所示。 圖3 MBSO-LDWRELM的CPS入侵檢測流程 本文實驗選取了NSL-KDD是對KDD99流量數(shù)據(jù)集進行去冗余及調(diào)整比例產(chǎn)生的。NSL-KDD數(shù)據(jù)集中每一數(shù)據(jù)包括41維連接特征與1維類型標簽。其中連接特征中有32維為連續(xù)型數(shù)據(jù),3維為字符型數(shù)據(jù),6維為二值型。類型標簽為字符型,包括攻擊類型標簽共40小類,可分為5大類:Normal,Dos,Probe,R2L與U2R。實驗訓(xùn)練集使用“KDDTrain+”,測試集為“KDDTest+”,實驗數(shù)據(jù)集構(gòu)成見表4。由于測試集中有17小類為訓(xùn)練集中未知的攻擊類型,因此要求模型不僅檢測已知攻擊類型,還應(yīng)具有檢測未知類型攻擊的泛化能力。 表4 數(shù)據(jù)集描述 由于連接特征中的字符型數(shù)據(jù)不能直接用于入侵檢測算法的輸入,因此將其進行標簽編碼。如“protocol_type”中包含tcp,udp與icmp這3種不同字符類型,將其分標注為1,2,3。同理,“service”與”flag”特征按其字符類型分別標注為1~67與1~11。將數(shù)據(jù)類型標簽按其攻擊類型分為Normal,Dos,Probe,R2L與U2R這5類,分別標注為1~5。 為消除各屬性間度量差異帶來的影響,對數(shù)據(jù)進行歸一化處理,將樣本各特征都映射到0~1之間的數(shù)值,歸一化公式如下 a=(a-min)/(max-min) (20) 數(shù)據(jù)集中冗余特征將增長訓(xùn)練時間,且特征越具有代表性,模型越能達到較好的效果。因此歸一化處理后使用粗糙集工具箱Rosetta對特征屬性進行約簡,約簡后得到特征屬性共23項。 為驗證MSBO-LDWRELM算法在入侵檢測中的性能,本文基于NSL-KDD數(shù)據(jù)集進行了仿真測試實驗,所使用實驗環(huán)境為:Inter Core i5 2.9 GHz,8 GB內(nèi)存,Windows 10操作系統(tǒng),Matlab2014a。RELM與LDWRELM通過Matlab編程實現(xiàn),并使用1.2.4中實現(xiàn)的PSO、BSO、MBSO進行初始參數(shù)尋優(yōu)。 RELM與LDWRELM輸出層神經(jīng)元數(shù)為5,因為本文需要進行五分類。隱含層數(shù)通過選擇不同的激活函數(shù)并逐漸增加層數(shù)的檢測準確率進行選擇。所得結(jié)果如圖4所示,可見Sigmoid性能優(yōu)于Sine與Hardlim,且在迭代120次后趨于平穩(wěn),因此本文選取隱含層節(jié)點數(shù)為120,激活函數(shù)為Sigmoid。 圖4 不同激活函數(shù)與隱層數(shù)的準確率 PSO學(xué)習(xí)因子為1.3,慣性權(quán)重為0.8。MBSO參數(shù)設(shè)置見表5,BSO對應(yīng)參數(shù)與MBSO相同。算法種群大小為50,最大優(yōu)化迭代次數(shù)均為80。 表5 參數(shù)設(shè)置 實驗結(jié)果采用準確率(accuracy,AC)、檢測率(detection rate,DR)、召回率(recall,Rec)、誤報率(false positive rate,FPR)、訓(xùn)練時間Ttr及檢測時間Tte為性能評價指標,并將本文模型與傳統(tǒng)RELM、LDWRELM、PSO-LDWRELM、BSO-LDWRELM進行對比。結(jié)果均獨立運行10次后取均值。 表6列舉出各算法的AC值的對比。文獻[1]與文獻[18,19]均使用KDDtest+數(shù)據(jù)集對算法性能進行比較。其中文獻[17]使用PSO算法對堆疊降噪自編碼器(stacked enoising autoencoder,SDA)進行隱層數(shù)及每層節(jié)點數(shù)結(jié)構(gòu)尋優(yōu)。文獻[19]對幾種常見機器學(xué)習(xí)在NSL-KDD數(shù)據(jù)集上的準確率進行了比較。由表可見,MBSO-LDWRELM的AC值最高為87.92%,優(yōu)于其它對比算法,但由于NSL-KDD為不平衡數(shù)據(jù)集,僅使用準確率作為評價標準具有局限性,因此從各分類的DR、REC與FPR進行進一步比較分析。 表6 五分類下不同模型AC值/% 圖5、圖6對各算法分類的DR與Rec值進行了比較,由圖可見,LDWRELM相較于RELM對少數(shù)類R2L與U2R的性能有所提升,反映了LDWRELM的正則化與權(quán)重選擇策略對分類效果的提升。MBSO-LDWRELM在對Normal、Dos與Probe的檢測效果基本持平或略有提升。相比之下,R2L與U2R的DR值與Rec值在數(shù)值上相對偏低,是由于R2L與U2R在訓(xùn)練集中的占比低,屬于少數(shù)類,且這兩類攻擊類型中有新型未知攻擊,尤其是R2L類型中的部分攻擊條目特征與Normal類型數(shù)據(jù)十分相似,導(dǎo)致許多攻擊條目容易被誤判其它樣本數(shù)量多的類。通過對U2R與R2L這兩種攻擊檢測結(jié)果分析比較可知,RELM的檢出率最低,MBSO-LDWRELM的AC值比PSO-SDA高2.2%與3.61%。并且其對這兩種攻擊的REC值最優(yōu),與RELM相比有很大幅度的提升,與PSO-SDA相比高14.87%與10.5%。說明MBSO對LDWRELM初始權(quán)重矩陣優(yōu)化結(jié)果更好,所求的初始權(quán)重閾值能更好地提取訓(xùn)練集中的數(shù)據(jù)規(guī)律,尤其是對于少數(shù)類攻擊。 圖5 各模型DR值對比 圖6 各模型Rec值對比 表7對算法誤報率進行了對比。對Normal類型,MBSO-LDWRELM誤報率分別比RELM、LDWRELM、PSO-LDWRELM、BSO-LDWRELM與PSO-SDA低1.92%、1.99%、0.85%、2.89%與6.21%,說明進行改進后,模型將其它攻擊類型錯判為Normal類型的概率更小,能更好地保證系統(tǒng)的安全性。同時,可觀察到LDWRELM相比RELM在對少數(shù)類的誤報率有所下降,但對多數(shù)類的誤報率上升了,是由于基于局部距離的策略將與Normal相似的樣本權(quán)重降低,造成誤判為Normal的樣本略有上升,但經(jīng)過MBSO進行優(yōu)化后,Normal誤報率有所下降。而對于攻擊類型Probe、Dos與R2L誤報率均有所下降,對于U2R類型差異不大,原因在于U2R樣本數(shù)量少,難以捕獲到其特征,因此將其它樣本錯分到該類的情況更少。 表7 各算法FPR值對比/% 入侵檢測算法的性能對檢測的實時性有較強的要求,因此本文對各方法的訓(xùn)練時間與檢測時間進行對比,結(jié)果見表8。經(jīng)過MBSO算法優(yōu)化后的LDWRELM在訓(xùn)練時間與檢測時間相較RELM算法有所上升,原因在于增加的權(quán)重矩陣計算與MBSO的迭代尋優(yōu)增加了對時間的消耗,但使用BSO算法優(yōu)化后檢測時間優(yōu)于其它優(yōu)化算法的時間消耗。 表8 各模型訓(xùn)練時間與檢測時間對比 本文提出的LDWRELM通過優(yōu)化樣本權(quán)重設(shè)置減輕了數(shù)據(jù)不平衡和離群點對算法性能的影響,提高了對少數(shù)類的識別準確率。并對MBSO進行改進提高了種群的多樣性,增強其跳出局部最優(yōu)的能力,用于對LDWRELM的初始輸入權(quán)重閾值尋優(yōu),提升LDWRELM的穩(wěn)定性與泛化能力。實驗結(jié)果表明,MBSO-LDWRELM相比傳統(tǒng)的RELM有更好的性能,在保證高準確率與低誤報率的同時對少數(shù)類樣本的準確率有所提升,并有較好的實時性,為CPS在入侵檢測方面提供新的可行方案,下一步考慮搭建實時入侵檢測環(huán)境,進一步探索和解決模型在實際應(yīng)用中遇到的問題。



2 基于MBSO-LDWRELM入侵檢測模型
2.1 適應(yīng)度函數(shù)
2.2 MBSO-LDWRELM模型描述

3 實驗結(jié)果與分析
3.1 數(shù)據(jù)集

3.2 預(yù)處理
3.3 參數(shù)設(shè)置


3.4 實驗結(jié)果





4 結(jié)束語