謝偉增
(河南司法警官職業學院信息技術系, 鄭州 450046)
人工蜂群算法優化支持向量機的網絡入侵檢測
謝偉增
(河南司法警官職業學院信息技術系, 鄭州 450046)
支持向量機參數直接影響網絡入侵檢測效果,為了提高入侵檢測的正確率,提出了基于人工蜂群算法優化支持向量機的網絡入侵檢測模型。將支持向量機參數組合在一起,編碼成為人工蜂群算法的蜜源,并將最高網絡入侵檢測率作為蜂群的搜索方向,不斷模擬蜂群尋找最優蜜源的過程實現參數優化,并根據最優參數設計網絡入侵檢測的分類器,選擇KDD CUP 99數據集作為實驗對象,結果表明,模型可以提高網絡入侵檢測的正確率,降低誤報率,獲得較優的網絡入侵檢測效果。
網絡安全; 入侵行為; 支持向量機參數; 人工蜂群算法; 分類器
隨著信息技術的不斷發展,網絡已經進了人們生活和工作的各個領域,由于網絡攻擊手段的增多和惡意軟件的增加,傳統網絡防范技術如防火墻,數據加密等已經不能滿足現代網絡安全的要求[1]。網絡入侵檢測作為一種主動網絡安全防范技術,引起了人們的高度重視[2]。
當前網絡入侵檢測技術分為:簽名檢測和異常檢測兩種,簽名檢測只能檢測已知的網絡入侵行為,不能發現新型、變異的入侵行為,實際應用價值低,而異常檢測可以發現新型的入侵行為,實際應用范圍更廣[3]。網絡入侵檢測本質是一種分類問題,當前主要基于統計學,機器學習算法設計網絡入侵檢測模型,其中統計學方法如模式匹配算法等[3],誤報率高,難以適應動態環境下的網絡入侵檢測;機器學習算法如神經網絡、支持向量機(support vector machine,SVM)具有較強的魯棒性及容錯性[4-6],尤其是SVM可以在有限樣本條件下得到問題最優解,在網絡入侵檢測得到了成功的應用。然而SVM的入侵檢測效果受懲罰參數以及核函數的參數影響,如何選擇最優參數以獲取最優入侵檢測結果,成為基于SVM的入侵檢測研究領域必須解決的難題,當前參數優算法主要有遺傳算法(GA)、蟻群優化 (ACO)算法、粒子群優化(PSO)算法等[7-9]。相關研究表明,SVM的分類效果與懲罰因子以及核函數參數間存在多峰值函數關系,這些算法尋優過程中會不同程度陷入局部最優解,難以得到最優分類效果[10]。
人工蜂群優化(artificial bee colony algorithm,ABC)算法[11]是一種模擬蜂群采蜜的智能優化算法,控制參數少、收斂速度快,很大程度上避免了陷人局部最優解難題,為了進一步提高網絡入侵檢測正確率,提出ABC算法優化SVM的網絡入侵檢測模型(ABC-SVM),并采用KDD CUP 99數據集對其性能進行測試和分析。
1.1 支持向量機
對于訓練集{(xi,yi)},SVM通過非線性函數φ(x)將其映射到高維特征空間進行分類,即有式(1)。
(1)
式中,ω和b為權值和偏置向量。
s.t.
(2)
式中,C表示懲罰參數。
引入拉格朗日乘子(αi)將式(2)變成為對偶優化問題,得到式(3)。
(3)

(4)
采用K(xi,xj)=φ(xi)Tφ(xj)得到SVM的非線性分類函數為式(5)。
(5)
本文選擇徑向基函數,定義如式(6)。
(6)
式中,σ為徑向基核的寬度。1.2 人工蜂群算法
設第i個蜜源為:xi=(xi1,xi2,…,xiD),i=1,2,…N,N表示蜜源數,蜜蜂工作方式如下。
(1) 雇傭蜂根據局部信息找到新蜜源位置,并估計蜜量,若蜜量更多,雇傭蜂記憶新蜜源的位置。
(2) 雇傭蜂將蜜源信息傳遞給觀察蜂,觀察蜜源搜索鄰域內的蜜源,并估計新蜜源的蜜量,若蜜量更多,記憶新蜜源的位置,觀察蜂選擇蜜源的概率為式(7)。
(7)
式中,fiti為第i個解的適應度值;SN為蜜蜂的個數。
設vij是候選蜜源,雇傭蜂和觀察蜂搜索新蜜源的方式為式(8)。
(8)
式中,xij為位置向量;j為隨機數;φij是[-1,1]間的隨機數。
(3) 若經過多N次循環后,蜜源沒有發生改變,則該雇傭蜂成為偵察蜂,并尋找新的蜜源,具體為公式(9):
(9)

2.1 ABC優化SVM參數的過程
參數C和σ影響SVM的網絡入侵檢測效果,采用網絡入侵檢測正確率作為C、σ尋優的目標,那么SVM參數優化數學模型為式(10)。
maxP(C,σ)
(10)
ABC算法的優化SVM參數如下:
(1) 隨機產生SN人工蜂和食物源,每一個解為:Xi=[xi1,xi2,…,xiD]T,i=1, 2, …,n,其中D表示參數的個數。
(2) 將每個解Xi的反編碼得到SVM的參數C、σ值,并計算其適應度值。
(3) 雇傭蜂以一定概率對記憶中的食物源位置進行改變,找到一個新的食物源,并估計新食物源的蜜量,即計算新解的適應度,若新解更優,則雇傭蜂將記憶新解。
(4) 當雇傭蜂回到蜂巢后,將食物源信息與觀察蜂共享,觀察蜂根據概率選擇一個食物源位置,并改變記憶位置和估計新食物源的花蜜量,若新食物源的適應度高于記憶值,則用新解替代原始解。
(5) 連續N次循環后,解仍然沒有得到改善,此時雇傭蜂變為偵察蜂。
(6) 達到終止條件后,得到參數C和σ的最優解。
(7) SVM根據最優C和σ值對訓練集重新學習,建立最優的網絡入侵檢測模型。
2.2 ABC-SVM的網絡入侵檢測
網絡入侵檢測實質上一個多分類問題,但SVM只能求解兩分類問題,必須通過組合策略構建網絡入侵檢測器,本文采用構造網絡入侵檢測器,如圖1所示。

圖1 網絡入侵檢測的多分類器
基于ABC-SVM的網絡入侵檢測步驟為:
Step1:選擇實驗數據集,對網絡狀態特征進行歸一化處理,即式(11)。
(11)
式中,xi為原始值特征,min()和max()為取最大值和最小值。
Step2:采用ABC算法對SVM參數{C,σ}進行優化和選擇。
Step3:根據最優參數{C,σ}建立網絡入侵檢測模型,并對模型的性能進行分析。
3.1 源數據
采用KDD CUP 99的數據集作為實驗對象,將網絡狀態分為4種入侵行為:Probe,DOS,U2R,R2L,每一個數據集包含41個特征屬性。選擇遺傳算法優化SVM(GA-SVM)和粒子群算法優化SVM(PSO-SVM)作為對比模型,對網絡入侵的檢測正確率、誤報率和執行速度進行分析。
3.2 結果與分析
3.2.1 檢測結果對比
采用GA、PSO、ABC算法對SVM參數C和σ進行優化,結果,如表1所示。

表1 SVM的參數
根據表1參數建立的網絡入侵檢測模型,GA-SVM、PSO-SVM和ABC-SVM的網絡入侵檢測正確率和誤報率,如圖2和圖3所示。

圖2 檢測率對比

圖3 誤報率對比
從表3可知,與GA-SVM、PSO-SVM的入侵檢測結果相比,ABC-SVM的網絡入侵檢測率更高,有效降低了網絡入侵檢測的誤報率,這是由于ABC找到了比GA、PSO更優參數C,σ,建立了更加理想的網絡入侵檢測模型。
3.2.2 執行速度對比
采用平均檢測時間(秒,s)對網絡入侵檢測模型的速度進行衡量,結果,如圖4所示。

圖4 檢測時間對比
從圖4可知,ABC-SVM的網絡入侵檢測速度要快于對比模型,這主要是因為ABC-SVM找到的支持向量更少,減少了計算的復雜度,加快了算法執行速度,更加適合于網絡入侵的實時性要求。
為了解決SVM在網絡入侵檢測中的參數優化難題,提出了基于ABC-SVM的網絡入侵檢測模型,首先將SVM參數編碼成為一個蜜源,將網絡入侵檢測率作為參數優化目標,然后模擬蜂群搜索最優蜜源過程找SVM的最優參數,并根據最優參數建立網絡入侵檢測模型,最后采用KDD CUP 99數據集進行仿真測試,結果表明,ABC-SVM加快網絡入侵檢測速度,提高了網絡入侵的檢測正確率,大幅度降低了入侵檢測的誤報率,具有一定的實際應用價值。
[1] Denning D.E. An Intrusion Detection Model [J]. IEEE Transaction on Software Engineering, 2010,13(2): 222-232
[2] 田志宏,王佰玲,張偉哲,等. 基于上下文驗證的網絡入侵檢測模型[J]. 計算機研究與發展,2013, 50(3): 498-508.
[3] 李晶皎,許哲萬,王愛俠,等. 基于移動模糊推理的DoS攻擊檢測方法[J]. 東北大學學報(自然科學版),2012, 33(10):1394-1398.
[4] 馬勇.遺傳模糊系統結合迭代規則學習的網絡入侵檢測方案[J]. 微型電腦應用, 2016, 32(6): 25-28.
[5] 陶琳, 郭春璐. 改進粒子群算法和支持向量機的網絡入侵檢測[J]. 計算機系統應用, 2016, 25(6): 269-273.
[6] 姜春茂,張國印,李志聰. 基于遺傳算法優化SVM的嵌入式網絡系統異常入侵檢測[J]. 計算機應用與軟件, 2011, 28(2): 287-289.
[7] 李振剛,甘泉. 改進蟻群算法優化 SVM 參數的網絡入侵檢測模型研究[J]. 重慶郵電大學學報(自然科學版), 2014, 26(6): 785-789.
[8] 張拓,王建平. 基于CQPSO-SVM 的網絡入侵檢測模型[J]. 計算機工程與應用, 2015,51(2): 113-116.
[9] 劉春波,王鮮芳,潘豐. 基于蟻群優化算法的支持向量機參數選擇及仿真[J]. 中南大學學報(自然科學版),2008, 39(6):1309-1313.
[10] 劉霞, 張姍姍, 胡銘鑒, 龐永貴. 基于混沌機制的人工蜂群算法優化的支持向量機分類器[J]. 計算技術與自動化, 2015, 34(2): 11-14.
[11] 張新有,曾華燊,賈磊. 入侵檢測數據集KDD CUP99研究[J]. 計算機工程與設計, 2010,31(22): 4809-4816.
Network Intrusion Detection Based on Support Vector Machine Optimized by Artificial Bee Colony Algorithm
Xie Weizeng
(Department of Information Technology,Henan Judicial Police Vocational College,Zhengzhou 450046,China)
Parameters of support vector machine directly affect the effect of network intrusion detection. In order to improve correct rate of network intrusion detection, a network intrusion detection model based on support vector machine optimized by artificial bee colony algorithm is proposed. Firstly, the parameters of support vector machine are combined together and encoded to be a source of artificial bee colony algorithm. Secondly the highest network intrusion detection rate is taken as search direction of bee colony, and optimum parameters are obtained by simulating bee colony searching nectar source. Network intrusion detection classifier is designed according to the optimal parameters. Finally, KDD CUP 99 data set is used as research object and the simulation experiment is carried out. The results show that the proposed model can improve the correct rate of network intrusion detection and reduce false detection rate, so it can obtain better network intrusion detection effect.
Network security; Intrusion behavior; Support vector machine parameters; Artificial bee colony algorithm; Classifier
謝偉增(1975-),男,河南鄢陵人,學士,講師,研究方向:信息安全,網絡技術。鄭州 450046
1007-757X(2017)01-0071-03
TP391
A
2016.05.10)