陳 晨,劉 曙,王藝菲,宋亞飛,祝 彥
(1.空軍工程大學(xué)防空反導(dǎo)學(xué)院, 西安, 710051; 2.西安衛(wèi)星測控中心, 西安, 710043)
隨著信息和網(wǎng)絡(luò)技術(shù)的高速發(fā)展和日益普及,網(wǎng)絡(luò)安全已經(jīng)成為一個全球嚴(yán)重關(guān)切的問題。目前已有的安全防護方案有防火墻、數(shù)據(jù)加密、IDS等技術(shù)。其中,IDS是一種積極主動的安全防護技術(shù)[1],能夠自動警告和主動攔截網(wǎng)絡(luò)入侵,具有很高的實用價值。
為了區(qū)分攻擊和正常網(wǎng)絡(luò)訪問,IDS采用了不同的機器學(xué)習(xí)方法。SVM是一種基于統(tǒng)計學(xué)習(xí)的機器學(xué)習(xí)算法,能夠有效解決非線性、小樣本、高維度等問題,越來越多的研究人員將其應(yīng)用在入侵檢測領(lǐng)域。核函數(shù)選擇與參數(shù)調(diào)節(jié)直接影響了SVM算法的分類效果,傳統(tǒng)SVM往往是隨機選擇相關(guān)參數(shù),導(dǎo)致直接使用入侵檢測數(shù)據(jù)訓(xùn)練SVM算法難以實現(xiàn)參數(shù)的優(yōu)化,造成了多分類準(zhǔn)確率不高。相關(guān)研究人員針對這個問題開展了一系列研究:文獻[2~3]使用改進PSO算法對SVM的參數(shù)進行了優(yōu)化,但是實驗使用的KDD99數(shù)據(jù)集存在重復(fù)記錄等許多固有問題,會對算法效能評估結(jié)果造成干擾;文獻[4]設(shè)計了一種基于模糊SVM模型的入侵檢測方法,但未對多分類入侵檢測進行研究;文獻[5]提出了用改進遺傳算法優(yōu)化基于SVM的IDS,有效降低了入侵檢測中惡意流量的特征維度,但收斂速度過慢;文獻[6]中蟻群優(yōu)化算法被用于優(yōu)化SVM參數(shù),但由于蟻群算法容易陷入局部最優(yōu),導(dǎo)致SVM的檢測率下降。
基于此,本文提出一種具有更佳尋優(yōu)能力和收斂速度的基于PSOGWO-SVM的網(wǎng)絡(luò)入侵方法。
GWO算法是Mirjalili等提出的一種新型群體智能優(yōu)化算法,它模仿了自然界中灰狼群體的社會等級和捕食行為,灰狼群體的社會等級由高到低分別為α狼、β狼、δ狼和ω狼,通過對狼群跟蹤、包圍、追捕、攻擊獵物等過程進行模擬,重現(xiàn)灰狼群體捕食行為,從而實現(xiàn)優(yōu)化[8]。
1)包圍。狼群包圍獵物可以表示為:
(1)
式中:t為當(dāng)前迭代次數(shù);A=2ar1-a和C=2r2,為系數(shù)向量(a、r1和r2均為常數(shù));Xp(t)表示獵物的位置向量;X表示灰狼的位置向量。
2)追捕。狼群中α狼、β狼、δ狼距離獵物最近,據(jù)此可以先求出其他灰狼與這3只狼之間的距離,繼而確定攻擊獵物的最佳方向。
(2)
式中:k=α、β、δ,i=1,2,3,Xp(t+1)表示灰狼進化到第t+1代時獵物的位置向量。
3)攻擊。捕食行為的最后一步是攻擊,該階段狼群需要捕獲獵物,即GWO算法獲得最優(yōu)解。攻擊行為主要依據(jù)a從2遞減到0來實現(xiàn),即KA在[-2a,2a]中取任意值。若|A|≤1,灰狼群體對獵物集中攻擊,找到最優(yōu)解;若|A|>1,狼群在原位置散開,進行全局搜索。
為提高GWO算法的尋優(yōu)能力和收斂速度[9],引入PSO算法中對粒子自身運動最佳位置信息進行記憶的方法,用粒子位置更新替代灰狼個體位置更新,使其能夠記憶自身進化過程中的最佳位置信息。通過改變慣性常數(shù)ω來協(xié)調(diào)混合算法平衡全局搜索及局部開發(fā)的能力,ω的變化范圍為[0.5,1]。則速度和位置的更新為:
(3)
式(2)中的第1式變?yōu)椋?/p>
Dk=|CiXk(t)-ωX(t)|
(4)
SVM是Cortes和Vapnik提出的一種基于統(tǒng)計學(xué)習(xí)理論和結(jié)構(gòu)風(fēng)險最小化原理的監(jiān)督式機器學(xué)習(xí)算法,其基本思想是構(gòu)造一個最優(yōu)決策超平面,使得該平面兩側(cè)距離最近的兩類樣本之間的距離最大化[10-11]。在SVM無法分隔兩個類的情況下,通過使用核函數(shù)將輸入數(shù)據(jù)映射到高維特征空間中來解決此問題。在高維空間中,可以創(chuàng)建允許線性分離的超平面(對應(yīng)于低維輸入空間中的曲面)。此時,樣本數(shù)據(jù)在高維空間中線性可分的條件可等價為以下最小化問題:
(5)
(6)
核函數(shù)的選擇是影響分類模型效果的一個關(guān)鍵,在線性、多項式、高斯等眾多核函數(shù)中,高斯核函數(shù)能夠?qū)崿F(xiàn)非線性映射,同時僅有2個參數(shù)C和g可以適當(dāng)降低模型復(fù)雜度。通過調(diào)節(jié)核函數(shù)參數(shù)g,可實現(xiàn)線性與非線性兩種分類器,具有很好的靈活性,因而應(yīng)用最為廣泛[11]??紤]到網(wǎng)絡(luò)入侵特征向量與入侵行為類型之間存在一定的隨機性和非線性,為此本文將采用高斯核(RBF):
(7)
利用PSOGWO方法尋優(yōu)能力強、收斂速度快,不易陷入局部最優(yōu)的特點,對SVM中的參數(shù)C和g進行尋優(yōu),來確定SVM模型,進而提出一種基于PSOGWO算法優(yōu)化SVM(PSOGWO-SVM)的網(wǎng)絡(luò)入侵檢測模型。該模型的具體構(gòu)建過程如下:
圖1 PSOGWO-SVM網(wǎng)絡(luò)入侵檢測模型的工作流程
1)抽取NSL-KDD數(shù)據(jù)集中的部分?jǐn)?shù)據(jù),分別獲得訓(xùn)練數(shù)據(jù)集和測試數(shù)據(jù)集,并對數(shù)據(jù)集進行歸一化處理。
2)設(shè)定狼群規(guī)模與最大迭代次數(shù),將SVM中的參數(shù)C和g設(shè)定為狼群個體位置的二維坐標(biāo),隨機初始化C和g。
3)通過訓(xùn)練集樣本對SVM模型進行訓(xùn)練,以計算適應(yīng)度值。狼的等級(α狼、β狼、δ狼和ω狼)根據(jù)適應(yīng)度值進行分類。計算適應(yīng)度值為:
(8)
式中:yt是正確分類個數(shù);yf是錯誤分類個數(shù)。
4)根據(jù)公式(3)更新灰狼的位置。
5)計算更新后的個體的適應(yīng)度值,將當(dāng)前代數(shù)的最優(yōu)適應(yīng)度值記錄為Fbest。如果Fbest>Fα(α狼的適應(yīng)度),則Fα被更新為Fbest,并記錄相應(yīng)的位置;如果Fβ 6)判斷迭代次數(shù)是否達(dá)到最大迭代次數(shù)。如果達(dá)到,則循環(huán)終止,并得到最佳參數(shù)Cbest和gbest;否則返回到步驟4)繼續(xù)迭代。 7)使用Cbest和gbest建立PSOGWO-SVM模型。 8)使用PSOGWO-SVM模型在測試數(shù)據(jù)集上進行驗證,并對模型的預(yù)測結(jié)果進行性能評價。 硬件配置:CPU為AMD R5-4600H 3 GHz,內(nèi)存為16 GiB,硬盤為512 GB;操作系統(tǒng):Windows10;測試平臺:Matlab R2016b。 1)實驗1:選擇13個基準(zhǔn)函數(shù)做測試,其中F1~F7是單峰基準(zhǔn)函數(shù),F(xiàn)8~F13是多模態(tài)基準(zhǔn)函數(shù),見表1。 表1 13個基準(zhǔn)函數(shù) 續(xù)表1 2)實驗2:UCI數(shù)據(jù)集詳細(xì)信息見表2。wine數(shù)據(jù)集是UCI數(shù)據(jù)集中的一個標(biāo)準(zhǔn)測試數(shù)據(jù)集,能夠很好測試各算法的多分類效果。圖2展示了wine數(shù)據(jù)集中13個屬性特征的分布情況。 表2 UCI數(shù)據(jù)集 3)實驗3:NSL-KDD數(shù)據(jù)集中抽取部分?jǐn)?shù)據(jù),類型構(gòu)成如表3所示。 表3 NSL-KDD數(shù)據(jù)類型構(gòu)成 3.3.1 實驗1:PSOGWO尋優(yōu)效果實驗 圖3為13個基準(zhǔn)函數(shù)的圖像及其在30維度時各算法的收斂曲線。在PSOGWO與GWO算法中,種群數(shù)量為30,最大迭代次數(shù)為500次。從圖中可以看出,PSOGWO的尋優(yōu)效果均比GWO的尋優(yōu)效果好:①當(dāng)兩種算法都尋不到最優(yōu)值時,PSOGWO的值更接近最優(yōu)值;②當(dāng)二者都可以尋到最優(yōu)值時,例如F5函數(shù),PSOGWO的收斂速度更快。 圖3 基準(zhǔn)函數(shù)圖和收斂曲線圖 3.3.2 實驗2:UCI數(shù)據(jù)集實驗 為驗證所提算法在真實分類數(shù)據(jù)集上的有效性,在UCI數(shù)據(jù)集上將PSOGWO-SVM與SVM、GWO-SVM作對比。在SVM算法中,C=10、g=30;在PSOGWO-SVM與GWO-SVM算法中,種群數(shù)量為20,最大迭代次數(shù)為200次,C、g取值范圍為[0.01,100],得到的最優(yōu)參數(shù)C、g見表4。 表4 各算法準(zhǔn)確率 在表4中列出了各算法的準(zhǔn)確率,PSOGWO-SVM的準(zhǔn)確率最高,可以達(dá)到100%。 3.3.3 實驗3:NSL-KDD數(shù)據(jù)集實驗 將Normal、Probe、Dos、U2R、R2L等5類數(shù)據(jù)類型分別記為1、2、3、4、5,依次進行分類對比,分類結(jié)果對比見表5~10和圖4,并在圖5中給出了混淆矩陣。在SVM算法中,C=10,g=30;在PSOGWO-SVM與GWO-SVM算法中,種群數(shù)量為20,最大迭代次數(shù)為200次,C、g取值范圍為[0.01,100],得到的最優(yōu)參數(shù)C、g見表5。 表5 各算法的關(guān)鍵參數(shù)值和準(zhǔn)確率 表6 各算法在Normal上的性能評價指標(biāo) 表7 各算法在Probe上的性能評價指標(biāo) 表8 各算法在Dos上的性能評價指標(biāo) 表9 各算法在U2R上的性能評價指標(biāo) 表10 各算法在R2L上的性能評價指標(biāo) PSOGWO-SVM的準(zhǔn)確率為94.4%,與其他算法比較是最高的。由于NSL-KDD數(shù)據(jù)集為非平衡數(shù)據(jù)集,本文根據(jù)精確率、TPR、FPR、F值和AUC等5個評價指標(biāo)進一步衡量各算法的入侵檢測能力。 從表10中可以看出,3種算法對于R2L數(shù)據(jù)類型的檢測效果均不理想,是因為R2L數(shù)據(jù)類型屬于入侵行為的稀有類[12],KDD99競賽中的冠軍對于稀有類的入侵檢測效果也很不理想。故本文主要對Normal、Probe、Dos和U2R共4類數(shù)據(jù)類型的分類效果進行對比。 從圖4(a)中可以看出,PSOGWO-SVM的精確率均高于90%,而其他2種算法對于U2R數(shù)據(jù)類型的精確率均低于63%,說明PSOGWO-SVM較其他2種算法,在4類數(shù)據(jù)類型上都能夠保持很高的精確率,對數(shù)據(jù)集具有更廣泛的適用性。 從圖4(b)中可以看出,3種算法在Normal數(shù)據(jù)類型上的TPR基本持平,在Probe、Dos、U2R等3類數(shù)據(jù)類型上,PSOGWO-SVM的TPR均為最高,因此綜合表現(xiàn)更好。 從圖4(c)中可以看出,對于Normal、Probe、Dos等3類數(shù)據(jù)類型,PSOGWO-SVM與GWO-SVM的FPR基本持平,同時遠(yuǎn)遠(yuǎn)低于SVM的FPR;PSOGWO-SVM在U2R數(shù)據(jù)類型上面的FPR要高于GWO-SVM,說明PSOGWO-SVM在FPR指標(biāo)上的表現(xiàn)要略低于GWO-SVM。 從圖4(d)中可以看出,PSOGWO-SVM對于Normal、Probe、Dos和U2R等4類數(shù)據(jù)類型的F值均為最高值,說明PSOGWO-SVM的模型平衡性最優(yōu)。 從圖4(e)中可以看出,PSOGWO-SVM對于Probe、U2R等2類的AUC均為最高值,而對于Normal、Dos等2類數(shù)據(jù)類型的AUC與最高值相差無幾。將4類綜合起來看,PSOGWO-SVM的AUC總能保持最高或者近似最高的數(shù)值,而其他2種算法的AUC在不同數(shù)據(jù)類型上的表現(xiàn)有明顯起伏,故PSOGWO-SVM在多分類效能上具有最優(yōu)的表現(xiàn)。 圖4 分類結(jié)果對比 圖5 各算法混淆矩陣 從圖5(b)、5(c)中可以看出,GWO-SVM和PSOGWO-SVM算法的前3種分類的深色區(qū)域都集中在對角線上,但是PSOGWO-SVM算法對于第2類的檢測率明顯高于其他2種算法;對于第4、5種分類,3種算法的結(jié)果都不是很明顯,一是因為后2類屬于入侵行為的稀有類,二是與Dos和Probe相比較,U2R和R2L的數(shù)據(jù)記錄中不具有頻繁的序列模式[13]。故PSOGWO-SVM具有更好的分類檢測效果。 為了提高入侵檢測的準(zhǔn)確性,提出了基于PSOGWO-SVM算法的檢測模型。首先使用PSO算法提升GWO算法的尋優(yōu)能力和收斂速度,然后使用PSOGWO算法優(yōu)化SVM的相關(guān)參數(shù)。最后,本文將其與GWO-SVM和SVM在NSL-KDD數(shù)據(jù)集上進行多分類比較實驗。實驗結(jié)果證明,該方法顯著提高了入侵檢測的正確率。在準(zhǔn)確度、精確度、TPR、FPR、F值和AUC等方面的綜合表現(xiàn)要優(yōu)于原始SVM和GWO-SVM,具有更好的檢測性能。 由于PSOGWO-SVM算法中參數(shù)的初始值對尋優(yōu)能力和收斂速度有很大影響,因此后期工作將研究如何產(chǎn)生合適的參數(shù)初始值,從而提高PSOGWO-SVM的分類性能。3 實驗分析
3.1 實驗環(huán)境
3.2 實驗數(shù)據(jù)
3.3 結(jié)果與分析
4 結(jié)語