◆黎銀環(huán) 林凱升
自適應(yīng)差分進(jìn)化算法在入侵檢測(cè)中的應(yīng)用
◆黎銀環(huán) 林凱升
(江門職業(yè)技術(shù)學(xué)院 廣東 529020)
針對(duì)開(kāi)放式的網(wǎng)絡(luò)環(huán)境要求入侵檢測(cè)系統(tǒng)能夠?qū)崟r(shí)高效響應(yīng)的問(wèn)題,本文提出了一種自適應(yīng)的差分進(jìn)化算法ADE,用于入侵檢測(cè)的特征選擇。算法對(duì)網(wǎng)絡(luò)數(shù)據(jù)的混合屬性進(jìn)行預(yù)處理,引入進(jìn)化代數(shù)和個(gè)體適應(yīng)度函數(shù)作為自適應(yīng)算子動(dòng)態(tài)調(diào)整攝動(dòng)比例因子F和交叉概率CR,采用自適應(yīng)變異策略提高進(jìn)化的適應(yīng)性。在KDDCUP 99數(shù)據(jù)集的測(cè)試結(jié)果表明,改進(jìn)的ADE算法收斂能力較強(qiáng),穩(wěn)定性較好,提高了網(wǎng)絡(luò)入侵系統(tǒng)的檢測(cè)性能。
入侵檢測(cè);差分進(jìn)化算法;特征選擇;自適應(yīng);變異操作
隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展和開(kāi)放式網(wǎng)絡(luò)結(jié)構(gòu)的日趨復(fù)雜,開(kāi)放式網(wǎng)絡(luò)受到的攻擊日益頻繁。網(wǎng)絡(luò)入侵檢測(cè)是對(duì)網(wǎng)絡(luò)進(jìn)行實(shí)時(shí)監(jiān)測(cè),識(shí)別和發(fā)現(xiàn)入侵行為并發(fā)出預(yù)警。近年來(lái),許多研究人員改進(jìn)智能算法或與其他算法結(jié)合應(yīng)用到網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)[1-6]。在智能算法中,差分進(jìn)化算法在處理數(shù)值優(yōu)化問(wèn)題方面具有較高的精確度和穩(wěn)定性。文獻(xiàn)[7-8]提出純參數(shù)自適應(yīng)差分進(jìn)化算法,種群的處理策略能隨著迭代次數(shù)的增加而變化。文獻(xiàn)[9]為降低早熟概率,提出反向?qū)W習(xí)法的差分算法。文獻(xiàn)[10-14]分別提出改進(jìn)參數(shù)和變異策略的自適應(yīng)差分進(jìn)化算法。文獻(xiàn)[15-16]通過(guò)改進(jìn)子種群的重構(gòu)方法提高了尋優(yōu)精度及穩(wěn)定性。上述文獻(xiàn)主要是針對(duì)算法搜索停滯或早熟收斂等問(wèn)題,對(duì)進(jìn)化策略和進(jìn)化適應(yīng)性進(jìn)行改進(jìn),在一定程度上提高了差分算法的性能和緩解存在問(wèn)題。但部分算法的參數(shù)設(shè)置過(guò)于煩瑣,算法復(fù)雜,導(dǎo)致算法復(fù)雜度的提高或運(yùn)行時(shí)間的增加。另外,網(wǎng)絡(luò)入侵檢測(cè)要求實(shí)時(shí)響應(yīng),網(wǎng)絡(luò)數(shù)據(jù)具有隨機(jī)性強(qiáng)、數(shù)據(jù)量大、標(biāo)識(shí)困難等特點(diǎn);數(shù)據(jù)包含數(shù)據(jù)型和符號(hào)型屬性,事先難以確定攻擊的種類和數(shù)目。為此,本文提出了一種改進(jìn)的自適應(yīng)差分進(jìn)化算法(ADE)應(yīng)用于入侵檢測(cè)的特征選擇。算法采用混合屬性的相似度距離作為測(cè)量函數(shù),增強(qiáng)算法對(duì)網(wǎng)絡(luò)數(shù)據(jù)特征的處理能力;利用進(jìn)化代數(shù)和個(gè)體適應(yīng)度函數(shù)優(yōu)化交叉概率與攝動(dòng)比例因子,通過(guò)變異閾值自適應(yīng)選擇較優(yōu)的變異策略,增強(qiáng)進(jìn)化初始階段的全局搜索能力和后階段的局部搜索能力,平衡收斂速度與早熟收斂的矛盾。通過(guò)仿真實(shí)驗(yàn)對(duì)比,結(jié)果表明本文算法能有效篩選出網(wǎng)絡(luò)數(shù)據(jù)的最優(yōu)特征,具有較強(qiáng)的收斂能力和較好的穩(wěn)定性,能有效提高入侵檢測(cè)的準(zhǔn)確性。
網(wǎng)絡(luò)數(shù)據(jù)樣本包含數(shù)值型和符號(hào)型屬性,數(shù)值型屬性的數(shù)值波動(dòng)范圍較大,本文先對(duì)原始數(shù)據(jù)的數(shù)值屬性進(jìn)行標(biāo)準(zhǔn)化處理,采用混合屬性的相似度距離定義樣本的相似度距離和聚類中心。
標(biāo)準(zhǔn)偏差定義:
對(duì)樣本作標(biāo)準(zhǔn)化處理如式(3):
(4)
定義3 任意兩個(gè)樣本之間的相似度距離定義如下:
定義4C為包含個(gè)樣本的第個(gè)聚類,其聚類中心m定義如公式(8):
其中,數(shù)值屬性的聚類中心值取該聚類中數(shù)值屬性的平均值:
字符屬性的聚類中心值取聚類中字符屬性值的最大值:
差分進(jìn)化算法(Differential Evolution,DE)是Storn R和Price K提出的進(jìn)化算法[18],具有較好的穩(wěn)定性和全局收斂性,主要思想是基于種群內(nèi)的個(gè)體差異度生成臨時(shí)個(gè)體,經(jīng)過(guò)變異、交叉、選擇等操作進(jìn)化為新的下一代,直到滿足算法的結(jié)束條件。每代種群受種群規(guī)模、攝動(dòng)比例因子和交叉概率等參數(shù)的控制。
變異操作是DE算法中最關(guān)鍵的步驟,變異策略對(duì)算法的收斂性能有較大影響。標(biāo)準(zhǔn)DE/rand/1/bin策略是一種自由搜索進(jìn)化模式,有利于保持種群的多樣性,但收斂速度較慢。標(biāo)準(zhǔn)DE/best/1/bin策略使用最優(yōu)個(gè)體參與變異,收斂速度較快,但比其他策略更易早熟收斂。進(jìn)化搜索過(guò)程中,隨機(jī)選取的個(gè)體難以指導(dǎo)優(yōu)化方向,在最優(yōu)個(gè)體鄰域附近搜索有利于提高搜索效率。文獻(xiàn)[12]在DE/best/1/bin策略加入隨機(jī)參數(shù),使變異以一定的概率向最優(yōu)方向進(jìn)化。文獻(xiàn)[13]利用線性退火因子選擇策略進(jìn)化。為提高算法的搜索能力,減輕早熟問(wèn)題,參考已有的研究成果,本文提出由變異閾值選擇差分進(jìn)化策略的變異方法,如式(12):
選擇操作是對(duì)新產(chǎn)生個(gè)體求適應(yīng)度函數(shù)值,實(shí)驗(yàn)個(gè)體和目標(biāo)向量的適應(yīng)度函數(shù)值按競(jìng)爭(zhēng)機(jī)制方式選擇下一代,如式(15):
基于自適應(yīng)差分進(jìn)化的入侵檢測(cè)擇算法包括選擇特征子集和性能評(píng)估兩個(gè)階段。選擇特征子集階段對(duì)原始樣本數(shù)據(jù)標(biāo)準(zhǔn)化預(yù)處理,計(jì)算混合屬性的相似度距離,生成初始種群;用改進(jìn)的自適應(yīng)差分算法對(duì)種群進(jìn)化操作,求得最優(yōu)特征子集。在性能評(píng)估階段,基于最優(yōu)特征子集組成新的測(cè)試數(shù)據(jù)樣本,利用K-means算法進(jìn)行聚類,統(tǒng)計(jì)檢測(cè)率、誤檢率和漏檢率等檢測(cè)結(jié)果。算法流程如下:
選擇特征子集階段:
步驟1:對(duì)訓(xùn)練樣本集預(yù)處理,去除錯(cuò)誤數(shù)據(jù),按式(4)和(5)對(duì)數(shù)據(jù)集的數(shù)值型屬性和字符型屬性標(biāo)準(zhǔn)化預(yù)處理,按式(7)和(8)計(jì)算相似度距離和聚類中心。
步驟3:第代進(jìn)化
對(duì)于當(dāng)前種群執(zhí)行以下操作:
性能評(píng)估階段:
步驟6:利用K-mean算法對(duì)新特征測(cè)試樣本集進(jìn)行聚類;
步驟7:求得聚類結(jié)果,并統(tǒng)計(jì)檢測(cè)率、誤檢率和漏檢率等檢測(cè)結(jié)果。
本實(shí)驗(yàn)軟件平臺(tái)為Windows 7系統(tǒng),數(shù)據(jù)庫(kù)為MS SQL Server 2008,在VC++6.0環(huán)境下實(shí)現(xiàn)程序設(shè)計(jì)進(jìn)行仿真實(shí)驗(yàn)。驗(yàn)證數(shù)據(jù)源采用10%KDDCUP99入侵檢測(cè)數(shù)據(jù)集,共有494 015條樣本,包括22種攻擊,主要為四大類網(wǎng)絡(luò)攻擊類型:DoS,Probe,U2R和R2L。每一條記錄由34個(gè)數(shù)值屬性和7個(gè)字符屬性構(gòu)成。其中正常數(shù)據(jù)記錄占19.68%,異常數(shù)據(jù)記錄占80.32%。從10%KDDCUP99的數(shù)據(jù)集上分別抽取40%、60%的訓(xùn)練樣本和80%測(cè)試樣本作實(shí)驗(yàn)樣本,其中入侵行為樣本約占8%。
為了驗(yàn)證算法的收斂能力,將上述四種DE算法均在60%訓(xùn)練樣本集上進(jìn)行特征選擇測(cè)試,算法的參數(shù)設(shè)置相同,篩選出的最優(yōu)特征子集如表1所示。其收斂性能如圖1所示。
從圖1中看出,傳統(tǒng)DE算法在58代附近收斂,三種改進(jìn)算法與傳統(tǒng)DE算法相比,收斂效果都有所提高。DMDE算法和EVSDE算法的收斂效果比較接近,EVSDE算法開(kāi)始的收斂效果較明顯,后期在49代附近能較快速收斂;DMDE算法的收斂速度相對(duì)穩(wěn)定,在48代附近平穩(wěn)收斂;ADE算法收斂速度平穩(wěn),在41代附近收斂。本文改進(jìn)的ADE差分進(jìn)化算法在收斂實(shí)驗(yàn)中表現(xiàn)出較好的收斂效果。
表1 最優(yōu)特征子集
算法最優(yōu)特征子集編號(hào)特征數(shù) DE3,4,5,22,24,31,32,33,34,3610 EVSDE3,4,5,22,23,27,31,32,33,3410 DMDE2,4,5,23,28,31,32,33,34,3610 ADE3,4,5,11,23,24,31,32,33,34,3511
圖1 四種算法的收斂對(duì)比
在40%訓(xùn)練樣本集上運(yùn)行四種DE算法各10次,其適應(yīng)度函數(shù)值變化如圖2所示。與傳統(tǒng)DE算法相比,三種改進(jìn)的DE算法的適應(yīng)度函數(shù)值變動(dòng)較小,本文算法適應(yīng)度函數(shù)值跳躍變動(dòng)最小,曲線變化比較平緩,說(shuō)明本文ADE算法相對(duì)穩(wěn)定。
圖2 10次實(shí)驗(yàn)的適應(yīng)度函數(shù)值對(duì)比
本文用檢測(cè)率、誤檢率和漏檢率三項(xiàng)指標(biāo)評(píng)價(jià)入侵檢測(cè)性能?;诒?的最優(yōu)特征子集,在80%的測(cè)試數(shù)據(jù)集上進(jìn)行入侵檢測(cè)性能測(cè)試,結(jié)果如表2所示。
表2 入侵檢測(cè)性能測(cè)試結(jié)果
算法DEEVSDEDMDEADE 檢測(cè)率(%)90.1291.2191.3691.93 誤檢率(%)3.292.152.282.10 漏檢率(%)8.847.987.737.21
從表2中的實(shí)驗(yàn)數(shù)據(jù)可以看出,本文算法與其他三種算法相比,檢測(cè)率有所提高,誤檢率和漏檢率有所降低,這說(shuō)明改進(jìn)的ADE算法所篩選出的特征子集對(duì)于提高入侵檢測(cè)的性能是有效的。
在開(kāi)放式的復(fù)雜網(wǎng)絡(luò)環(huán)境中,攻擊方式層出不窮,攻擊手段的隱蔽性和復(fù)雜性日漸提高,入侵檢測(cè)技術(shù)在網(wǎng)絡(luò)安全中的地位越顯重要。本文采用混合屬性作為樣本特征的相似度距離函數(shù),優(yōu)化差分算法的參數(shù)和改進(jìn)變異策略,并將改進(jìn)的差分算法應(yīng)用到入侵檢測(cè),改進(jìn)算法在仿真實(shí)驗(yàn)中顯示出較好的收斂性和穩(wěn)定性?;诓罘诌M(jìn)化的入侵檢測(cè)算法既要保證收斂速度,又要提高抗早熟收斂的能力,兩者需要達(dá)到平衡,本文算法仍需不斷改進(jìn),以進(jìn)一步提高算法在開(kāi)放式網(wǎng)絡(luò)環(huán)境中的入侵檢測(cè)性能。
[1]劉永忠,李欣娣,李楊,等. 一種基于FRS-FCM算法的集成入侵檢測(cè)方法的研究[J]. 計(jì)算機(jī)科學(xué),2012,39(4):106-108.
[2]邊根慶,趙宏,張維琪,等. 基于免疫克隆與差分進(jìn)化的入侵檢測(cè)方法[J].微電子學(xué)與計(jì)算機(jī),2012,29(5):124-128
[3]傅濤,孫亞民. 基于POS的K-means算法及其在網(wǎng)絡(luò)入侵檢測(cè)中的應(yīng)用[J]. 計(jì)算機(jī)科學(xué),2011,8(5):54-55.
[4]朱紅萍,鞏青歌,雷戰(zhàn)波. 基于遺傳算法的入侵檢測(cè)特征選擇[J].計(jì)算機(jī)應(yīng)用研究,2012,29(4):1417-1419.
[5]代紅,劉磊. 基于數(shù)據(jù)篩選策略的入侵檢測(cè)研究[J]. 計(jì)算機(jī)工程與設(shè)計(jì),2012,33(2):488-492.
[6]CHOU T S,YEN K K,LUO J. Network intrusion detection design using feature selection of soft computing paradigms[J].International Journal of Computational Intelligence,2008,4(3):196-208.
[7]BREST J,GREINER S,BOSKOVIC B,et a1.Self-adapting control parameters in differential evolution:A comparative study on numerical benchmark problems [J]. IEEE Trans on Evolutionary Computation,2006,10(6):646-657.
[8]BREST J,SEPESY MAU EC M. Population size reduction for the differential evolution algorithm [J].Applied Intelligence,2008,29(3):228-247.
[9]SHAHRYAR R,HAMID R TIZHOOSH,MAGDY M A SALAMA. Opposition-based differential evolution [J]. IEEE Trans on Evolutionary Computation,2008,12(1):64 -79.
[10]BI XIAOJUN,XIAO JING. Classification-based self-adaptive differential evolution and its application in multi-lateral multi-issue negotiation [J]. Front. Comput. Sci.,2012,6(4):442-461.
[11]ZHANG J Q,SANDERSON A C. Adaptive differential evolution with optional external archive [J]. IEEE Transact ions on Evolutionary Computation,2009,13(5):945-958.
[12]李若平,馮達(dá),歐陽(yáng)海濱,等.改進(jìn)差分進(jìn)化算法在系統(tǒng)可靠性問(wèn)題中的應(yīng)用[J].東北大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,33(2):182-186.
[13]高岳林,劉俊梅.一種帶有隨機(jī)變異的動(dòng)態(tài)差分進(jìn)化算法[J].計(jì)算機(jī)應(yīng)用,2009,29(10):2719-2722.
[14]姜立強(qiáng),劉光斌,郭錚.分工差分進(jìn)化算法[J]. 小型微型計(jì)算機(jī)系統(tǒng),2009(7):1302-1304.
[15]姚峰,楊衛(wèi)東,張明.改進(jìn)自適應(yīng)變空間差分進(jìn)化算法[J]. 控制理論與應(yīng)用,2010,27(1):31-38.
[16]徐松金,龍文.動(dòng)態(tài)調(diào)整子種群個(gè)體的差分進(jìn)化算法[J]. 計(jì)算機(jī)應(yīng)用,2011,31(11):3102-3105.
[17]RALAMBONDRAINY H. A conceptual version of the k-means algorithm,Pattern recognition Letters,1995,16(11):1147-1157.
[18]STORN R,PRICE K. Differential evolution for multi-objective optimization[J].Evolutionary Computation,2003(4):8-12.
2020年“攀登計(jì)劃”廣東大學(xué)科技創(chuàng)新培育專項(xiàng)資金(編號(hào):Pdjh2020b1292);2021年度江門市基礎(chǔ)與理論科學(xué)類項(xiàng)目
網(wǎng)絡(luò)安全技術(shù)與應(yīng)用2022年4期