陳維鵬,敖志剛,屠義強(qiáng),郭 杰,葉春雷,童 俊
(1.陸軍工程大學(xué) 野戰(zhàn)工程學(xué)院,江蘇 南京 210007;2.中國(guó)人民解放軍73233部隊(duì),浙江 舟山 316014)
對(duì)于非線性模型標(biāo)定,文獻(xiàn)[1-3]采取的方法主要有神經(jīng)網(wǎng)絡(luò)方法和遺傳算法。神經(jīng)網(wǎng)絡(luò)方法雖然能夠以任意精度逼近任何非線性關(guān)系,但它基于經(jīng)驗(yàn)風(fēng)險(xiǎn)最小化原則,泛化能力有限,容易得到局部極小值。遺傳算法是一種高度并行性全局搜索算法,但非線性標(biāo)定參數(shù)較多,使得交叉、變異等遺傳操作復(fù)雜,運(yùn)行時(shí)間較長(zhǎng),且在接近最優(yōu)解時(shí)收斂緩慢甚至停滯。支持向量機(jī)的概念最初由貝爾實(shí)驗(yàn)室提出,利用多維統(tǒng)計(jì)預(yù)測(cè)理論[4]解決機(jī)器學(xué)習(xí)問題。SVM是神經(jīng)網(wǎng)絡(luò)領(lǐng)域最重要的研究方向之一,在手寫識(shí)別、人臉檢測(cè)、生物信息和數(shù)據(jù)挖掘[5]等領(lǐng)域有著廣泛應(yīng)用。它基于結(jié)構(gòu)風(fēng)險(xiǎn)最小化原則,泛化能力強(qiáng),且能得到唯一全局最優(yōu)解[6]。根據(jù)SVM的優(yōu)點(diǎn),結(jié)合網(wǎng)絡(luò)空間態(tài)勢(shì)變化表現(xiàn)出的高度非線性[7]、時(shí)變和不確定性的特點(diǎn),可以發(fā)現(xiàn),在SVM中也很適合預(yù)測(cè)網(wǎng)絡(luò)空間的作戰(zhàn)態(tài)勢(shì)。所以,提出了一種基于SVM的態(tài)勢(shì)預(yù)測(cè)方法。LS-SVM是標(biāo)準(zhǔn)SVM的一種改進(jìn),能夠大大提高求解速度。為了預(yù)測(cè)數(shù)據(jù)的準(zhǔn)確性,PSO用于優(yōu)化SVM。
LS-SVM是一種二次損失函數(shù)下的SVM[8]。LS-SVM將不等式約束轉(zhuǎn)化為等式約束,求解原始SVM算法線性方程組的解,降低了難度。因此,選取分類器LS-SVM用來(lái)估計(jì)未知函數(shù):
其中,∈Rn,y∈Rn,非線性函數(shù)φ(?)將輸入k值轉(zhuǎn)換為特征值 Rn→Rnh,權(quán)重向量wT和常值偏差b為帶求解的量。
給定訓(xùn)練集{xk,yk},LS-SVM定義如下:
其中 γ ∈ Rn,ξ為分類器校正后的精度誤差,滿足以下條件:
相應(yīng)的拉格朗日函數(shù)為:
Karush-Kuhn-Tucker(KKT)優(yōu)化條件為:
消去w和ξ,得到如下方程:
其中,y = [y1, y2,…,yl]T,A = [1,1,… ,1 ]T(l個(gè)1),α= [ α1, α2,… αl]T,方陣 Ω 的元素是 Ωij=K(xi,yi)核函數(shù)。RBF函數(shù)為核函數(shù),即:
LS-SVM的預(yù)測(cè)模型為:
N維空間中,假定有種群 x ={x1,x2,…,xm}[9]。某i粒子包含2個(gè)n維向量:一個(gè)是粒子位置屬性;一個(gè)是粒子速度屬性。首先,粒子群數(shù)據(jù)初始化為隨機(jī)解,通過(guò)共享最優(yōu)數(shù)據(jù)進(jìn)行搜索,迭代后得到最優(yōu)解。PSO算法研究發(fā)現(xiàn),如果參數(shù)存在誤差,粒子群可能會(huì)錯(cuò)過(guò)最優(yōu)解;而在收斂的情況下,最優(yōu)解精度不高。針對(duì)以上不足,本文采用改變慣性、主導(dǎo)、收斂和調(diào)整參數(shù)等措施,得到了改進(jìn)的粒子群優(yōu)化模型式(9)和式(10)。迭代中,粒子會(huì)比較狀態(tài)最優(yōu)解 pbest和全局最優(yōu)解 gbest。具體地,根據(jù)下列方程調(diào)整粒子i在迭代時(shí)的狀態(tài):
方程參數(shù)設(shè)置見表2。其中, c1和 r1是取值為[1,2]的加速因子; r1和 r2是均勻分布在[0,1]區(qū)間上的2個(gè)獨(dú)立的偽隨機(jī)數(shù); vi∈[- vmax,vmax](vmax是設(shè)定常數(shù));β是收斂因子;ω是慣性因子,其值為[0,1],有 ω =ωmax-(ωmax-ωmin)t/Tmax(t和 Tmax分別當(dāng)前和最大迭代次數(shù)),可在迭代過(guò)程中自適應(yīng)調(diào)整大小。當(dāng)增加迭代次數(shù)時(shí),ω值減少,則優(yōu)化快速精準(zhǔn);α是引導(dǎo)因子,有 α = k +rand(?),0.1≤k≤1.0,而rand(?)是[0,1]上的隨機(jī)數(shù),用來(lái)逼近最優(yōu)解;微調(diào)因子ε=10-4rand(·),可為避免出現(xiàn)粒子趨同加以調(diào)節(jié)。
LS-SVM模型的懲罰因子c對(duì)實(shí)驗(yàn)誤差和泛化能力[10]有很大影響。不同的核函數(shù)可以構(gòu)造不同的支持向量機(jī)。核函數(shù)分為多項(xiàng)式核函數(shù)、Sigmoid核函數(shù)和徑向基核函數(shù)[11]。其中,徑向基核函數(shù)是應(yīng)用最廣泛的核函數(shù),而核函數(shù)參數(shù)σ的選擇直接影響SVM算法的復(fù)雜度[12]??傊瑧土P因子c和核函數(shù)參數(shù)σ影響LS-SVM模型的性能,所以是否選擇最優(yōu),對(duì)模型的精度有很大影響[13]。PSO算法優(yōu)化懲罰因子c和核函數(shù)參數(shù)σ。
算法實(shí)現(xiàn),如圖1所示。
圖1 LS-SVM算法的PSO優(yōu)化過(guò)程
步驟1:粒子群參數(shù)初始化,包括設(shè)定粒子群數(shù)n、群體規(guī)模n、迭代次數(shù)T、粒子矢量參數(shù)x = (γ , δ2)、粒子位置屬性γ和粒子速度屬性 δ2。
步驟2:粒子當(dāng)前速度比其經(jīng)歷過(guò)的最好位置pbest所對(duì)應(yīng)的適應(yīng)度小,則將阿奇作為當(dāng)前最好的位置 pbest。
步驟3:粒子經(jīng)歷過(guò)的最好位置 pbest對(duì)應(yīng)的適應(yīng)度比全局最優(yōu)位置 gbest對(duì)應(yīng)的適應(yīng)度小,則粒子當(dāng)前最優(yōu)位置為 gbest。
步驟4:根據(jù)式(9)和式(10)變化粒子的速度vi+1和 xi+1,產(chǎn)生新種群 x ( t+1)。
步驟5:判斷是否滿足終止條件(if t > Tmax),如滿足,則輸出當(dāng)前值;否則,t = t+1,跳到步驟2,繼續(xù)新一輪優(yōu)化。
步驟6:獲得最優(yōu)粒子信息,賦予LS-SVM模型。
首先,構(gòu)建網(wǎng)絡(luò)空間態(tài)勢(shì)樣本,網(wǎng)絡(luò)空間態(tài)勢(shì)值如同時(shí)間序列[14]。網(wǎng)絡(luò)空間狀態(tài)值是一個(gè)非線性時(shí)間序列{xi}={x1, x2,…,xn},非線性預(yù)測(cè)時(shí)間序列的安全形勢(shì)主要是看安全態(tài)勢(shì)值 i + p和p時(shí)刻安全態(tài)勢(shì)值 xi, xi+1, … ,xi+p-1之間的關(guān)系,即:
其中f是表示時(shí)間序列非線性關(guān)系的函數(shù)。根據(jù)SVM理論,上述非線性對(duì)應(yīng)關(guān)系可以學(xué)習(xí)已知安全態(tài)勢(shì)時(shí)間序列樣本[15]。
PSO算法和LS-SVM算法是基于滑動(dòng)窗口動(dòng)態(tài)生成的。假設(shè)已知時(shí)間監(jiān)測(cè)點(diǎn)1,2,…n對(duì)應(yīng)的網(wǎng)絡(luò)態(tài)勢(shì)值分別為 a1, a2,… ,an,設(shè)定窗口大小為m,則第1條樣本記錄為 a1, a2,… ,am。因此,預(yù)測(cè) m +1次監(jiān)測(cè)點(diǎn)的網(wǎng)絡(luò)態(tài)勢(shì)值 am+1,然后構(gòu)造樣本記錄a2,a3,… ,am+1,并預(yù)測(cè) m + 2時(shí)間監(jiān)測(cè)點(diǎn)的網(wǎng)絡(luò)態(tài)勢(shì)值 am+2等。m為3,即滑動(dòng)窗口大小為3。為了防止預(yù)測(cè)誤差的累積,假設(shè)當(dāng)前的安全態(tài)勢(shì)預(yù)測(cè)模型預(yù)測(cè)時(shí)間點(diǎn)t態(tài)勢(shì)值。如果根據(jù)實(shí)際情況計(jì)算之前的時(shí)間點(diǎn) t - k 態(tài)勢(shì)值,則時(shí)間點(diǎn)t的預(yù)測(cè)值為實(shí)際態(tài)勢(shì)值。
基于PSO優(yōu)化的LS-SVM算法網(wǎng)絡(luò)空間態(tài)勢(shì)預(yù)測(cè)模型,如圖2所示。
圖2 基于PSO優(yōu)化LS-SVM算法的預(yù)測(cè)模型流程
步驟1:通過(guò)模型評(píng)估得到態(tài)勢(shì)值。
步驟2:根據(jù)時(shí)間序列法生成數(shù)據(jù)集,將樣本集劃分為訓(xùn)練樣本集和測(cè)試樣本集。訓(xùn)練樣本集通過(guò)SVM訓(xùn)練得到初始預(yù)測(cè)模型,預(yù)測(cè)樣本集用于檢測(cè)初始預(yù)測(cè)模型的準(zhǔn)確性。以開放式測(cè)試的形式作為訓(xùn)練集和測(cè)試集,盡可能保證兩者的獨(dú)立性。
步驟3:訓(xùn)練樣本被輸入到PSO優(yōu)化LS-SVM算法模型,并使用優(yōu)化算法搜索SVM的最佳訓(xùn)練參數(shù)。
步驟4:輸入測(cè)試樣本到模型進(jìn)行預(yù)測(cè)。
步驟5:預(yù)測(cè)模型精確度分析比較。
本實(shí)驗(yàn)利用VMware Worlstation for Win64軟件構(gòu)建虛擬蜜網(wǎng)Honeynet仿真真實(shí)環(huán)境、提取數(shù)據(jù),并應(yīng)用Matlab軟件實(shí)現(xiàn)標(biāo)準(zhǔn)BP和改進(jìn)后的算法,仿真實(shí)驗(yàn)環(huán)境如圖3所示。
圖3 Honeynet網(wǎng)絡(luò)拓?fù)?/p>
具體如下:
操作系統(tǒng):Windows(Matlab)+RedHat Linux 9.0
Matlab版本:Matlab R2012a
CPU及內(nèi)存:2.40 GHz×2,4 GB
軟件配置包括:VMware Worlstation for Win64,VMware-worlstation-full-7.0.0-203739;蜜網(wǎng)網(wǎng)關(guān)虛擬機(jī)Roo Honeywall CDROM v1.4。
具體步驟包括:蜜罐機(jī)(honeypot)的安裝與配置;虛擬蜜網(wǎng)網(wǎng)關(guān)機(jī)(Honeywall)的搭建與配置;sebel安裝;登陸Honeywall(My SQL)數(shù)據(jù)庫(kù);收集信息。圖4為虛擬蜜網(wǎng)安裝的主界面。
圖4 Honeynet安裝界面
數(shù)據(jù)采集并經(jīng)過(guò)事件校準(zhǔn)后得到事件。時(shí)間校準(zhǔn)后每個(gè)事件都有屬性,部分屬性說(shuō)明如表1所示。其中,對(duì)于非數(shù)值型屬性,在實(shí)驗(yàn)仿真中采用不同方法轉(zhuǎn)換成數(shù)值型,其他屬性還有訪問文件、注冊(cè)和服務(wù)配置信息等。
表1 事件屬性及對(duì)應(yīng)表示形式
本章的實(shí)驗(yàn)數(shù)據(jù)來(lái)源于Honeynet技術(shù)測(cè)試結(jié)果,并進(jìn)行相關(guān)數(shù)據(jù)提取,得到100組數(shù)據(jù)(見圖5、圖6)。以其中80個(gè)數(shù)據(jù)作為學(xué)習(xí)樣本,20個(gè)數(shù)據(jù)作為訓(xùn)練樣本。用Matlab編寫實(shí)驗(yàn)程序,采用LS-SVM lab 1.5版分類器。
圖5 nmap掃描測(cè)試實(shí)驗(yàn)
圖6 漏洞掃描實(shí)驗(yàn)
3.3.1 實(shí)驗(yàn)過(guò)程
(1)樣本特征選取與歸一化處理。由于參數(shù)大小、量級(jí)不同,需將數(shù)據(jù)進(jìn)行[0,1]歸一化:
其中,樣本輸入輸出值x、y;樣本最大值、最小值為maxx 、minx 。
(2)仿真計(jì)算與分析。首先逐漸增加階數(shù)為5(輸入變量4、輸出變量1),重構(gòu)網(wǎng)絡(luò)空間態(tài)勢(shì)序列,生成SVM的訓(xùn)練和測(cè)試樣本,并改進(jìn)PSO算法進(jìn)行迭代尋優(yōu)。設(shè)置粒子群搜索參數(shù)初始值,如表2所示。
表2 粒子群參數(shù)初始值
根據(jù)PSO優(yōu)化LS-SVM算法預(yù)測(cè)模型對(duì)數(shù)據(jù)集中的20個(gè)態(tài)勢(shì)值進(jìn)行預(yù)測(cè),得到如圖7所示的結(jié)果。
圖7 網(wǎng)絡(luò)空間態(tài)勢(shì)感知部分?jǐn)?shù)據(jù)集的PSO優(yōu)化LS-SVM算法預(yù)測(cè)值與實(shí)際值比較
3.3.2 結(jié)果分析
為了驗(yàn)證改進(jìn)算法的預(yù)測(cè)精度,利用現(xiàn)有網(wǎng)絡(luò)空間態(tài)勢(shì)預(yù)測(cè)的PSO優(yōu)化LS-SVM算法、GA-SVM以及SVM進(jìn)行同樣的實(shí)驗(yàn)比較,得到如圖8所示的結(jié)果。
圖8 三種算法態(tài)勢(shì)預(yù)測(cè)曲值對(duì)比
為了驗(yàn)證PSO算法和LS-SVM模型的優(yōu)勢(shì),以均方根誤差(RMSE)和平均絕對(duì)誤差率(MAPE)作為評(píng)價(jià)指標(biāo)[16]:
傳統(tǒng)的SVM模型容易陷入局部最優(yōu);GA-SVM結(jié)果接近粒子群優(yōu)化的LS-SVM算法,但遺傳算法比粒子群算法收斂復(fù)雜,計(jì)算誤差也相對(duì)較大。從圖8的實(shí)驗(yàn)結(jié)果可以看出,采用粒子群優(yōu)化的LS-SVM預(yù)測(cè)方法的真實(shí)值偏差最小,更接近實(shí)際,見圖9。
圖9 三種算法態(tài)勢(shì)預(yù)測(cè)曲值絕對(duì)誤差對(duì)比
表2中SVM算法均方根誤差為3.402 1,絕對(duì)誤差率為13.45%;GA優(yōu)化SVM算法均方根誤差為2.473 8,絕對(duì)誤差率為3.93%;PSO-LSSVM算法均方根誤差為1.1,絕對(duì)誤差率為0.66%。因此,我們可以得出PSO優(yōu)化LS-SVM算法精度最高,效果最好。
考慮到網(wǎng)絡(luò)空間態(tài)勢(shì)值呈線性,而BP神經(jīng)網(wǎng)絡(luò)算法存在解決小樣本局限、容易陷入局部極小值、收斂速度慢等缺點(diǎn),利用SVM非線性處理小樣本數(shù)據(jù),建立了非線性擬合模型,提出了一種將LS-SVM和PSO算法相結(jié)合的新的快速全局優(yōu)化和非線性擬合,即基于網(wǎng)絡(luò)空間態(tài)勢(shì)感知的PSO優(yōu)化LS-SVM算法。與傳統(tǒng)方法比較,基于粒子群優(yōu)化的LS-SVM算法較傳統(tǒng)SVM算法、遺傳算法優(yōu)化的SVM算法,在預(yù)測(cè)精度上更好,滿足了實(shí)驗(yàn)要求。
參考文獻(xiàn):
[1] Bopche G S,Mehtre B M.Attack Graph Generation,Visualization and Analysis:Issues and Challenges[C].Proc. of Second International Symposium,2014:379-390.[2] Snidaro L,Visentini I,Bryan K.Fusing Uncertain Knowledge and Evidence for Maritime Situational Awareness Via Markov Logic Networks[J].Information Fusion,2015(21):159-172.
[3] Endsley M R.Final Reflections:Situation Awareness Models and Measure[J].Journal of Cognitive Engineering and Decision Making,2015,9(01):101-111.
[4] Aleroud A,Karabatis G,Sharma P,et al.Context and Semantics for Detection of Cyber Attacks[J].Int’l Journal of Information & Computer Security,2014,6(01):63-92.
[5] Alan N S,Christopher L B,Franklin E W.Revisions to the JDL Data Fusion Model[C].Proc Third NATO/IRIS Conferenee,1998:430-44l.
[6] Soleimani M,Ghorbani A A.Multi-Layer Episode Filtering for the Multi-step Attack Detection[J].Computer Communications,2012,35(11):1368-1379.
[7] Liu X W,Wang H Q,Lü H W,et al.Fusion-Based Cognitive Awareness-control Model for Network Security Situation[J].Journal of Software,2016,27(08):2099-2114.
[8] Sadighian A,Fernandez J M,Lemay A,et al.ONTIDS a Highly Flexible Context-aware and Ontology-based Alert Correlation Framework[C].Proc. of the Revised Selected Papers of Int’l Symp.on Foundations & Practice of Security,2013:161-177.
[9] Sadighian A,Zargar S T,Fernandez J M,Lemay A.Semantic-Based Context-aware Alert Fusion for Distributed Intrusion Detection Systems[C].Proc. of the 2013 Int’l Conf.on Risks and Security of Internet and Systems,2013:1-6.
[10] Yan G,Lee R,Kent A,et al.Towards a Bayesian Network Game Framework for Evaluating DDoS Attacks and Defense[C].Proc. of the ACM Conf. on Computer &Communications Security,2012:553-566.
[11] 飛思科技.神經(jīng)網(wǎng)絡(luò)理論和matlab7實(shí)現(xiàn)[M].北京:電子工業(yè)出版社,2016:15-30.FECIT Technological.Neural Network Theory and MATLAB7 Implementation[M].Beijing:Electronic Industry Press,2016:15-30.
[12] 李捷,劉瑞新,劉先省等.一種基于混合模型的實(shí)時(shí)網(wǎng)絡(luò)流量預(yù)測(cè)算法[J].計(jì)算機(jī)研究與發(fā)展 ,2006,43(05):806-812.LI Jie,LIU Rui-xin,LIU Xian-sheng,et al.A Realtime Network Traffic Prediction Algorithm Based on Hybrid Model[J].Computer Research and Developme nt,2006,43(05):806-812.
[13] 謝麗霞,王亞超,于巾博.基于神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)安全態(tài)勢(shì)感知[J].清華大學(xué)學(xué)報(bào),2013,53(12):1750-1760.XIE Li-xia,WANG Ya-chao,YU Jin-bo.Network Security Situational Awareness Based on Neural Network[J].Journal of Tsinghua University,2013,53(12):1750-1760.
[14] 任帥,慕德俊,張弢等.信息安全風(fēng)險(xiǎn)評(píng)估方法研究[J].信息安全與通信保密,2009(02):54-56.REN Shuai,MU De-jun,ZHANG Tao,et al.Research on Risk Assessment Method of Information Security[J].Information Security and Communication Secrecy,2009(02):54-56.
[15] 宣蕾.網(wǎng)絡(luò)安全定量風(fēng)險(xiǎn)評(píng)估及預(yù)測(cè)技術(shù)研究[D].長(zhǎng)沙:國(guó)防科學(xué)技術(shù)大學(xué),2007.XUAN Lei.Research on Quantitative Risk Assessment and Prediction Technology of Network Security[D].Changsha:National University of Defense Science and Technology,2007.
[16] 王宇飛,沈紅巖.基于改進(jìn)廣義回歸神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)[J].華北電力大學(xué)學(xué)報(bào),2011,38(03):91-95.WANG Yu-fei,SHEN Hong-yan.Network Security Situation Prediction Based on Improved Generalized Regression Neural Network[J].Journal of North China Electric Power University,2011,38(03):91-95.