梁本來 朱 磊
1(中山職業(yè)技術(shù)學(xué)院信息工程學(xué)院 廣東 中山 528404) 2(西安理工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院 陜西 西安 710048)
網(wǎng)絡(luò)流量的激增,對(duì)入侵檢測系統(tǒng)(Intrusion Detection System,IDS)的性能提出了更高的要求[1],為解決這一問題,機(jī)器學(xué)習(xí)在IDS的應(yīng)用研究是當(dāng)今的一個(gè)趨勢[2]。網(wǎng)絡(luò)流量包含大量的特征信息,其中包含與檢測目標(biāo)關(guān)聯(lián)度較低的特征,以及與其他特征相關(guān)性較高的特征,這兩類特征可以統(tǒng)稱為冗余特征[3]。冗余特征過多,會(huì)導(dǎo)致IDS檢測算法的時(shí)空復(fù)雜度增加,降低IDS的檢測性能。因此,在原始的特征點(diǎn)中篩選出最優(yōu)特征子集,保留數(shù)據(jù)中貢獻(xiàn)度較大的特征,去掉一些冗余特征甚至噪聲特征[4],以提高IDS分類器性能,是當(dāng)今IDS領(lǐng)域的一個(gè)研究熱點(diǎn)和難點(diǎn)[5]。
隨機(jī)搜索算法及啟發(fā)搜索算法是目前選擇網(wǎng)絡(luò)特征子集的兩大方法,其中隨機(jī)搜索算法采用窮舉法,策略簡單,但計(jì)算機(jī)量大,對(duì)于海量數(shù)據(jù)的處理效率過低,難以滿足IDS的實(shí)時(shí)性要求[6]。啟發(fā)式搜索速度快,目前的研究文獻(xiàn)主要集中在蟻群算法(Ant Colony Optimization,ACO)、粒子群算法(Particle Swarm Optimization,PSO)等生物智能算法。Mehdi等[7]提出了利用ACO求解特征子集的方法,較為完整地介紹了ACO在特征向量圖中搜索特征子集的過程。但該方法并未對(duì)ACO進(jìn)行改進(jìn),容易陷入局部最優(yōu)且不穩(wěn)定。王峰[8]提供了改進(jìn)傳統(tǒng)ACO的思路,引入同數(shù)量級(jí)參數(shù)優(yōu)化轉(zhuǎn)移概率,設(shè)置優(yōu)先級(jí)優(yōu)化信息素?fù)]發(fā)系數(shù)。但該文獻(xiàn)對(duì)網(wǎng)絡(luò)流量特征分析較少,沒有描述特征拓?fù)涞臉?gòu)建過程,對(duì)螞蟻的起始位置和搜索過程介紹較為籠統(tǒng),實(shí)驗(yàn)數(shù)據(jù)樣本的構(gòu)造也較為簡單。肖國榮[9]提出一種改進(jìn)ACO和支持向量機(jī)(SVM)網(wǎng)絡(luò)入侵檢測方法ACO-SVM,采用動(dòng)態(tài)隨機(jī)抽取的方法來確定目標(biāo)個(gè)體引導(dǎo)螞蟻進(jìn)行全局搜索,優(yōu)化SVM模型參數(shù)。但該算法重在SVM分類器參數(shù)的確定,并未求解網(wǎng)絡(luò)特征子集。朱麗[10]提出了一種基于蟻群分類規(guī)則挖掘算法的網(wǎng)絡(luò)入侵檢測方法(ADM-ACCRMA),用改進(jìn)ACO挖掘網(wǎng)絡(luò)攻擊的分類規(guī)則,再對(duì)網(wǎng)絡(luò)流量進(jìn)行分類規(guī)則的檢測,提供了一個(gè)較好的IDS檢測思路。但該文獻(xiàn)對(duì)于網(wǎng)絡(luò)流量的分類較為籠統(tǒng),實(shí)驗(yàn)較為理想化,實(shí)際上網(wǎng)絡(luò)流量特征復(fù)雜,分類規(guī)則的設(shè)計(jì)是一個(gè)難點(diǎn)。袁琴琴等[11]提出一種基于改進(jìn)ACO和遺傳算法(Genetic Algorithm,GA)組合的網(wǎng)絡(luò)入侵檢測方法IACO-GA,采用遺傳算法對(duì)網(wǎng)絡(luò)入侵的特征進(jìn)行快速選取,再利用改進(jìn)ACO選取特征子集?;旌纤惴榍蠼馓卣髯蛹峁┝吮容^好的思路,但該文獻(xiàn)并未對(duì)改進(jìn)ACO及GA的關(guān)鍵參數(shù)做具體分析,事實(shí)上算法參數(shù)對(duì)IDS分類器性能的影響很大,如何確定算法參數(shù)是研究難點(diǎn)。Nguyen等[12]提出了利用遺傳算子優(yōu)化PSO的特征選擇方法(CMPSO),利用遺傳算子提高PSO的搜索性能,但因遺傳算子中交叉、變異概率是固定的,容易陷入局部最優(yōu)。張震等[13]提出改進(jìn)粒子群聯(lián)合禁忌搜索的特征選擇算法IPSO-TS,采用遺傳算子求得特征選擇初始最優(yōu)解,然后進(jìn)行禁忌搜索得到特征子集全局優(yōu)化解,思路較好,但該方法采用KNN作為分類器,KNN不能處理特征維度太高的數(shù)據(jù),另外該方法的復(fù)雜度較高,導(dǎo)致求解特征子集的時(shí)間較長。
綜合分析以上文獻(xiàn)的優(yōu)缺點(diǎn),本文提出一種基于改進(jìn)ACO求解特征子集的入侵檢測方法(IDM-FS-IACO),該方法可以在初步提取的特征點(diǎn)中進(jìn)一步求解特征子集,并在訓(xùn)練階段優(yōu)化改進(jìn)ACO及SVM的參數(shù)。實(shí)驗(yàn)證明,相比其他方法,IDM-FS-IACO的F-Measure值有一定提升,測試時(shí)間顯著減少。
(1) 對(duì)KDD CUP 99數(shù)據(jù)集特征屬性做預(yù)處理,通過信息熵理論求得初步提取的特征點(diǎn),并構(gòu)造特征拓?fù)洹?/p>
(2) 由改進(jìn)ACO進(jìn)一步求解特征子集。在改進(jìn)ACO中,螞蟻的初始位置、啟發(fā)函數(shù)、信息素更新策略及狀態(tài)轉(zhuǎn)移概率函數(shù)均做了優(yōu)化。
(3) 采用KDD CUP 99數(shù)據(jù)集[14],通過十折交叉驗(yàn)證法訓(xùn)練及優(yōu)化改進(jìn)ACO及SVM的參數(shù),并測試該入侵檢測方法的性能。
IDM-FS-IACO方法的流程如圖1所示。
圖1 IDM-FS-IACO流程
采用KDD CUP 99的10%,按照原始比例分別選出四類入侵樣本和正常樣本,混合構(gòu)成四個(gè)數(shù)據(jù)子集:DoS+Normal,Probe+Normal,U2R+Normal,R2L+Normal,再分別將這些數(shù)據(jù)集十等分,十等分后各數(shù)據(jù)子集的樣本類別及平均數(shù)量如表1所示。
表1 各數(shù)據(jù)子集的樣本類別及平均數(shù)量
不同特征屬性的取值范圍差異較大,對(duì)數(shù)據(jù)分析結(jié)果有較明顯的影響,因此應(yīng)先進(jìn)行數(shù)據(jù)的歸一化處理,具體公式如下:
(1)
式中:x′i表示歸一化后的特征值;xi表示原始特征值;max(xi)和min(xi)分別為該特征屬性的最大取值和最小取值。歸一化處理后,所有的特征屬性取值范圍為[0,1]。
因KDD CUP 99數(shù)據(jù)集中,既有離散化數(shù)據(jù),也有連續(xù)型數(shù)據(jù),因此采用信息熵的離散化方法,將連續(xù)型數(shù)據(jù)進(jìn)行離散化。
假設(shè)I為一個(gè)連續(xù)實(shí)數(shù)區(qū)間,L(I)為該區(qū)間長度,A為該區(qū)間內(nèi)所有的樣本集合,|A|為集合A的樣本總數(shù),D(I)為集合A在區(qū)間B上的密度,公式如下:
(2)
假設(shè)特征F在區(qū)間A上所有的取值升序排列后為f1,f2,…,fn,則有如下分割點(diǎn)bi:
(3)
以分割點(diǎn)bi為例,可以將集合A劃分為兩個(gè)子集A1i和A2i,對(duì)應(yīng)的兩個(gè)子區(qū)間為I1i和I2i。
A1i={a∈A|AF (4) A2i={a∈A|AF≥bi} (5) 式中:AF表示特征F在集合A上的取值。 計(jì)算以上兩個(gè)子集的信息熵,公式如下: (6) (7) 式中:Pkj為類別j的樣本個(gè)數(shù)在Ak中所占的比例。記bi為b,則劃分后的兩個(gè)子集為A1和A2,對(duì)應(yīng)的兩個(gè)區(qū)間為I1和I2,信息熵閾值計(jì)算如下: ?i=D(Ii)·E(A)i=1,2 (8) 如果E(A,bi)>?i,對(duì)區(qū)間Ii按照如上方法遞歸地進(jìn)行劃分。 根據(jù)信息熵理論對(duì)特征屬性進(jìn)行初步提取分析,信息熵的取值可以反映不同特征屬性間的差別。 pxy表示第x個(gè)特征屬性取第y個(gè)值的概率,nxy表示第x個(gè)特征取第y個(gè)值的樣本個(gè)數(shù),nx表示第x個(gè)特征的全部取值個(gè)數(shù)(相同取值個(gè)數(shù)也累加),mx表示第x個(gè)特征的不同取值個(gè)數(shù),Ex表示第x個(gè)特征的信息熵,CVx表示第x個(gè)特征的差異系數(shù),則有如下公式: (9) (10) CVx=1-Ex (11) 得出第x個(gè)特征屬性的權(quán)重系數(shù)Wx如下: (12) 式中:N表示數(shù)據(jù)對(duì)應(yīng)的全部特征個(gè)數(shù)。 將所有特征屬性按其權(quán)重系數(shù)按降序排列,按式(13)選取權(quán)重較大的特征屬性。 (13) 式中:δ=0.80;m取最小值,將前m個(gè)特征屬性提取出,其余特征屬性刪除。按照此方法對(duì)實(shí)驗(yàn)所用的表1中的數(shù)據(jù)樣本特征進(jìn)行初步提取分析,得出各類入侵類型樣本對(duì)應(yīng)的主要特征個(gè)數(shù)、權(quán)重、對(duì)應(yīng)的特征屬性如表2所示。 表2 初步提取后的特征屬性及權(quán)重比例 分析表2,經(jīng)過初步提取,僅保留了13~15個(gè)特征,但這些特征權(quán)重比例超過了80%,保留了絕大部分的有效信息,同時(shí)大幅度減少了后續(xù)的數(shù)據(jù)處理量。 根據(jù)圖論知識(shí),系統(tǒng)中多個(gè)元素之間的關(guān)系可由圖來表示,令圖G={V,E,W},其中:V表示點(diǎn)集;E表示邊集;W表示每條邊的權(quán)重集合,此處邊的權(quán)重描述兩個(gè)節(jié)點(diǎn)的選擇期望,在后面啟發(fā)函數(shù)的改進(jìn)中有詳細(xì)分析。 因此,以m個(gè)特征屬性對(duì)應(yīng)構(gòu)造m個(gè)特征點(diǎn),其中m的取值見表2。m個(gè)特征點(diǎn)之間兩兩相連,構(gòu)造鄰接拓?fù)?。四種不同的入侵類型,對(duì)應(yīng)四個(gè)不同的特征鄰接拓?fù)?。特征點(diǎn)m較多時(shí),特征拓?fù)湎鄬?duì)復(fù)雜,下面是以5個(gè)特征點(diǎn)為例構(gòu)造的特征鄰接拓?fù)?,如圖2所示。 圖2 特征鄰接拓?fù)?/p> 傳統(tǒng)ACO通常用來求解最短路徑,而本文提出的改進(jìn)ACO用來求解特征子集,兩者類比分析如表3所示。 表3 改進(jìn)ACO與傳統(tǒng)ACO的類比分析 在改進(jìn)ACO求解特征子集的過程中,第1次迭代時(shí),n只螞蟻被平均分配到m個(gè)特征點(diǎn)上,以免漏掉重要的特征點(diǎn)。在第i(i=2,3,…,t*)次迭代時(shí),按照以下方法初始分配螞蟻。 假設(shè)每只螞蟻求解的特征子集中特征點(diǎn)的數(shù)量為u,n只螞蟻第i-1次迭代后求解得到的n個(gè)特征子集中,特征點(diǎn)vj(j=1,2,…,m)總共出現(xiàn)的次數(shù)記為Ci-1(vj)。第i次迭代時(shí),按照Ci-1(vj)的降序?qū)μ卣鼽c(diǎn)vj進(jìn)行排列后,依次為特征點(diǎn)vj初始分配的螞蟻數(shù)量計(jì)算如下: (14) 按照式(14),將nj只螞蟻分配到特征點(diǎn)vj上,如果剩余的螞蟻數(shù)量小于nj時(shí),則將剩余的螞蟻全部分配到特征點(diǎn)vj上。 啟發(fā)函數(shù)ηij(t)用來描述t時(shí)刻,螞蟻從特征點(diǎn)vi到vj的選擇期望。ηij(t)的數(shù)值大小取決于特征點(diǎn)vi和vj的相似性,相似性越低,則兩個(gè)特征之間具有互補(bǔ)性,兩個(gè)特征全部被選中的概率也就越大,ηij(t)也就越大;反之,兩個(gè)特征點(diǎn)的相似性越高,則ηij(t)也就越小,ηij(t)計(jì)算公式如下: ηij(t) = 1 -prij (15) (16) 第t+1次時(shí)刻,特征點(diǎn)vi到特征點(diǎn)vj的信息素更新函數(shù)如下: τij(t+1)=(1-ρ)·τij(t)+ρ·Δτij(t) (17) (18) (19) 在傳統(tǒng)蟻群算法中,t時(shí)刻第k只螞蟻從特征點(diǎn)vi轉(zhuǎn)移到vj的狀態(tài)轉(zhuǎn)移概率函數(shù)公式如下: (20) 式中:α和β表示兩個(gè)權(quán)重參數(shù),分別反映螞蟻在運(yùn)動(dòng)中所積累的信息素和啟發(fā)函數(shù)值對(duì)螞蟻選擇下一跳時(shí)的影響;Aki表示允許螞蟻k從節(jié)點(diǎn)i跳到的下一特征點(diǎn)的集合。式(20)容易導(dǎo)致螞蟻過早收斂至局部最優(yōu)解,為解決此問題,將狀態(tài)轉(zhuǎn)移概率函數(shù)改進(jìn)如下: (21) (22) 式中:Random表示返回在該區(qū)間內(nèi)隨機(jī)生成的一個(gè)實(shí)數(shù)。 (23) 改進(jìn)的狀態(tài)轉(zhuǎn)移概率函數(shù)不僅有φ的概率按照Pk(ij)(t)搜索下一跳,同時(shí)還有γ的概率隨機(jī)進(jìn)行搜索,目的是防止過早收斂至局部最優(yōu)。特別是在早期迭代時(shí),t數(shù)值較小,Pk(ij)(t)相對(duì)不夠科學(xué),因此γ取值不可忽略,可以凸顯出隨機(jī)搜索的相對(duì)重要性。但隨著螞蟻迭代次數(shù)累加,t數(shù)值逐漸增大時(shí),Pk(ij)(t)相對(duì)更具科學(xué)指導(dǎo)意義,因此γ取值逐漸趨近于0,螞蟻搜索下一跳更依賴于Pk(ij)(t),以便可以最終收斂至最優(yōu)解。 算法1改進(jìn)算法 輸入:G,m,n,m*,α,β,λ,t*,τij(0)等。 輸出:S*(t*)。 1. Lett=1,Sk(t)={} //開始迭代,初始化特征子集為空 2. while(t≤t*) 3. {Place ants with formula(15); //確定螞蟻位置 4. For each antk(k=1,2,…,n) 5. {Updateηijandτijby formula(15)and(17); //更新參數(shù) 6. From current feature nodevi,select the next feature nodevjby formula(21); //尋找下一特征點(diǎn) 7. Add feature nodevjtoSk(t);} //添加特征點(diǎn)到特征子集 8.t=t+1;} 9. End while 10. Return the best subsetS*(t*) //返回最佳特征子集 (1) 改進(jìn)蟻群收斂性分析。因傳統(tǒng)ACO的收斂性已經(jīng)得到證明,可參見文獻(xiàn)[16],本文只需證明,式(21)隨著t的增加,收斂于傳統(tǒng)ACO的狀態(tài)轉(zhuǎn)移概率函數(shù)即可。 根據(jù)式(22)和式(23),可以得出: (24) (25) 由式(24)、式(25),可以得出: (26) 因此,隨著迭代次數(shù)的遞增,改進(jìn)的狀態(tài)轉(zhuǎn)移概率函數(shù)收斂于傳統(tǒng)ACO的轉(zhuǎn)移函數(shù),證畢。 (2) 時(shí)空復(fù)雜度分析。分析算法1可以得出,時(shí)間復(fù)雜度最高的語句應(yīng)為6,即螞蟻k執(zhí)行式(21)的復(fù)雜度,這與集合Sk(t)及Aki都直接相關(guān),也就是取決于鄰接拓?fù)銰的特征點(diǎn)個(gè)數(shù)m,因此,算法1中語句6的時(shí)間復(fù)雜度應(yīng)為O(m2)。 因螞蟻數(shù)量為n,所以n個(gè)螞蟻執(zhí)行完一次全局搜索,時(shí)間復(fù)雜度為O(m2·n)。假設(shè)改進(jìn)蟻群算法收斂完畢需總共執(zhí)行t*次,則改進(jìn)ACO的完整時(shí)間復(fù)雜度應(yīng)為O(t*·m2·n),并沒有增加原ACO的時(shí)間復(fù)雜度。 因特征節(jié)點(diǎn)數(shù)量為m,則鄰接拓?fù)銰及信息素變量各需要一個(gè)m(m-1)/2的二維數(shù)組來存儲(chǔ)數(shù)據(jù),此處空間復(fù)雜度為O(m2);兩個(gè)集合Sk(t)及Aki中的元素均為G中的節(jié)點(diǎn),因此空間復(fù)雜度為O(m),考慮到螞蟻數(shù)量為n,此處空間復(fù)雜度為O(n·m)。因此,ACO的空間復(fù)雜度應(yīng)為O(m2)+O(n·m)。 但考慮到本文的改進(jìn)蟻群算法,在每次迭代前要按照式(14)重新分配螞蟻,此處的空間復(fù)雜度為O(m)。綜合以上分析,改進(jìn)蟻群算法的空間復(fù)雜度為O(m2)+O((n+1)·m),基本等同于原ACO的空間復(fù)雜度O(m2)+O(n·m)。 定義1實(shí)例類別。TP(True Positive):真正類,實(shí)際為入侵樣本并且被成功檢測為入侵的樣本數(shù)量;FN(False Negative):假負(fù)類,實(shí)際為入侵樣本但沒有被成功檢測出,即漏報(bào)的樣本數(shù)量;FP(False Positive):假正類,實(shí)際為正常樣本但被檢測為入侵,即誤報(bào)的樣本數(shù)量;TN(True Positive):真負(fù)類,實(shí)際為正常樣本并且沒有被誤報(bào)的樣本數(shù)量。 定義2召回率指標(biāo)Recall和查準(zhǔn)率指標(biāo)Precision: (27) (28) 定義3F-Measure評(píng)價(jià)指標(biāo)。僅考慮召回率及查準(zhǔn)率,并不能準(zhǔn)確評(píng)估入侵檢測方法性能,因此采用調(diào)和函數(shù)F-Measure進(jìn)行評(píng)價(jià),公式如下: (29) 在本文中,θ=1,均衡考慮召回率及精確率。 本文采用徑向基RBF函數(shù)作為SVM核函數(shù),將IDM-FS-IACO的參數(shù)優(yōu)化數(shù)學(xué)模型描述如下: maxF(S,P) (30) 式中:(S,P)是一個(gè)混合向量,S表示改進(jìn)ACO求解特征子集的參數(shù),包括初始時(shí)刻信息素τij(0)、信息素?fù)]發(fā)系數(shù)ρ、信息素更新權(quán)重參數(shù)α、啟發(fā)函數(shù)權(quán)重參數(shù)β、螞蟻數(shù)量n、最大迭代次數(shù)t*、特征子集中特征的個(gè)數(shù)m*,P表示SVM參數(shù),包括誤差懲罰參數(shù)C和RBF核參數(shù)σ;F表示IDS模型的F-Measure值。 參考文獻(xiàn)[17-18],確定改進(jìn)ACO的參數(shù)取值或取值范圍,其中m的取值見表2;參考文獻(xiàn)[19-20]確定SVM的參數(shù)取值范圍,詳見表4。 表4 IDM-FS-IACO的參數(shù)取值或取值范圍 續(xù)表4 服務(wù)器采用HP ProLiant ML10,內(nèi)存16 GB,Xeon四核3.1 GHz主頻CPU,Windows 10 64 bit操作系統(tǒng),采用林智仁教授的Libsvm-3.23實(shí)現(xiàn)仿真實(shí)驗(yàn)。采用表1中十等分后混合的數(shù)據(jù)子集,通過循環(huán)十折交叉驗(yàn)證求取平均值的方法進(jìn)行訓(xùn)練并優(yōu)化參數(shù)。具體參數(shù)取值計(jì)算公式如下: (31) 將四個(gè)數(shù)據(jù)子集訓(xùn)練及測試獲得最佳F-Measure值時(shí),對(duì)應(yīng)的參數(shù)列入表5。 表5 IDM-FS-IACO的參數(shù)優(yōu)化結(jié)果 表6 改進(jìn)ACO求解的特征子集 分析表6,改進(jìn)ACO對(duì)初步提取的特征(見表2)進(jìn)行了進(jìn)一步精簡,僅保留了4~6個(gè)有效特征,大幅度減少了冗余特征。 采用與4.3節(jié)相同的實(shí)驗(yàn)環(huán)境,采用林智仁教授的Libsvm-3.23實(shí)現(xiàn)仿真實(shí)驗(yàn)。通過十折交叉驗(yàn)證求取平均值的方法對(duì)表1中十等分后的數(shù)據(jù)子集進(jìn)行測試實(shí)驗(yàn),綜合對(duì)比文獻(xiàn)[9]方法ACO-SVM、文獻(xiàn)[10]方法ADM-ACCRMA、文獻(xiàn)[11]方法IACO-GA、文獻(xiàn)[12]方法CMPSO、文獻(xiàn)[13]方法IPSO-TS,以及本文方法IDM-FS-IACO,將測試實(shí)驗(yàn)的Recall平均值及Precision平均值結(jié)果列入表7。 表7 不同方法的Recall和 Precision平均值 分析表7,對(duì)于DoS、Probe入侵類型樣本,以上6種方法的實(shí)驗(yàn)結(jié)果表現(xiàn)都較好,Recall平均值及Precision平均值均達(dá)到90%以上,其中IDM-FS-IACO的Recall平均值相比IPSO-TS分別提升1.87百分點(diǎn)、2.19百分點(diǎn)。 對(duì)于R2L入侵類型樣本,IDM-FS-IACO的實(shí)驗(yàn)結(jié)果表現(xiàn)更好,相比IPSO-TS,Recall平均值及Precision平均值分別提升4.43百分點(diǎn)和2.09百分點(diǎn)。 對(duì)于U2R入侵類型樣本,因?qū)嶒?yàn)所用數(shù)據(jù)集中該入侵類型的樣本很少,實(shí)驗(yàn)結(jié)果表現(xiàn)均不好,但I(xiàn)DM-FS-IACO的Recall平均值仍達(dá)到了80%,Precision平均值相比IPSO-TS提升10百分點(diǎn)。 僅考慮Recall平均值及Precision平均值并不能科學(xué)地評(píng)價(jià)以上方法的性能,根據(jù)式(29)計(jì)算F-Measure平均值,該結(jié)果對(duì)召回率及查準(zhǔn)率進(jìn)行了調(diào)和平均,可以全面科學(xué)地反映算法模型的性能,對(duì)比結(jié)果見圖3。 圖3 不同方法的F-Measure平均值 分析圖3,對(duì)于DoS、Probe、U2R、R2L四種不同入侵類型樣本,本文方法IDM-FS-IACO的F-Measure平均值相比其他5種方法均有一定程度的提升,特別是對(duì)于U2R及R2L入侵類型樣本,性能提升明顯。另外,IPSO-TS的性能表現(xiàn)也較為優(yōu)秀,現(xiàn)具體對(duì)比分析IDM-FS-IACO及IPSO-TS的F-Measure值,結(jié)果如表8所示。 表8 IDM-FS-IACO及IPSO-TS的F-Measure平均值% 定義如下公式: 提升值= IDM-FS-IACO的F-Measure平均值- IPSO-TS的F-Measure平均值 提升百分比=(提升值/IPSO-TS的F-Measure平均值)×100% 分析表8,盡管IPSO-TS方法的F-Measure值比較優(yōu)秀,但相比本文方法IDM-FS-IACO仍有一定差距,特別是對(duì)U2R和R2L入侵樣本,IDM-FS-IACO的F-Measure值提升較為顯著。 不同方法的訓(xùn)練時(shí)間平均值如圖4所示,可以看出,ACO-SVM的訓(xùn)練時(shí)間最長,原因是該方法重在SVM分類器參數(shù)的確定,并未去除冗余特征;而IACO-GA、IPSO-TS、IDM-FS-IACO的訓(xùn)練時(shí)間則相差不大,因IDM-FS-IACO在訓(xùn)練實(shí)驗(yàn)時(shí)需對(duì)算法參數(shù)進(jìn)行優(yōu)化,因此訓(xùn)練時(shí)間上沒有明顯優(yōu)勢。但訓(xùn)練時(shí)間處于離線階段,不會(huì)增加系統(tǒng)的在線檢測時(shí)間[21]。 圖4 不同方法的訓(xùn)練時(shí)間平均值 不同方法的測試時(shí)間平均值如圖5所示,可以看出,因未去除冗余特征,ACO-SVM的測試時(shí)間最長;IDM-FS-IACO的測試時(shí)間相比其他方法均有所減少。另外,IPSO-TS方法在測試時(shí)間的表現(xiàn)上也較為優(yōu)秀,現(xiàn)具體對(duì)比分析IDM-FS-IACO及IPSO-TS的測試時(shí)間,結(jié)果如表9所示。 圖5 不同方法的測試時(shí)間平均值 表9 IDM-FS-IACO及IPSO-TS的測試時(shí)間詳細(xì)對(duì)比 定義如下公式: 縮短時(shí)間= IDM-FS-IACO的測試時(shí)間平均值- IPSO-TS的測試時(shí)間平均值 提升比=(縮短時(shí)間/IPSO-TS的測試時(shí)間平均值)×100% 分析表9,盡管IPSO-TS的測試時(shí)間表現(xiàn)優(yōu)秀,但相比IDM-FS-IACO仍有一定差距,實(shí)驗(yàn)證明IDM-FS-IACO的測試時(shí)間顯著減少,表現(xiàn)優(yōu)秀。 本文方法可以在對(duì)數(shù)據(jù)特征初步提取的基礎(chǔ)上,由改進(jìn)ACO進(jìn)一步求解特征子集,從而減少冗余特征。采用KDD CUP 99數(shù)據(jù)集,通過十折交叉驗(yàn)證法進(jìn)行訓(xùn)練及測試實(shí)驗(yàn),結(jié)果表明,相比其他方法,IDM-FS-IACO方法的性能較優(yōu),F(xiàn)-Measure值有一定提升,測試時(shí)間顯著減少,為提升IDS性能提供了一條新的思路。但I(xiàn)DM-FS-IACO的訓(xùn)練時(shí)間并未顯著減少,如何優(yōu)化智能入侵檢測方法的訓(xùn)練時(shí)間是今后的研究重點(diǎn)。2.4 特征的初步提取
2.5 構(gòu)造特征鄰接拓?fù)?/h3>
3 改進(jìn)ACO求解特征子集
3.1 改進(jìn)ACO與傳統(tǒng)ACO的類比
3.2 螞蟻初始位置的改進(jìn)
3.3 啟發(fā)函數(shù)的改進(jìn)
3.4 信息素更新策略的改進(jìn)
3.5 狀態(tài)轉(zhuǎn)移概率函數(shù)的改進(jìn)
3.6 改進(jìn)ACO偽代碼
3.7 改進(jìn)ACO的收斂性及復(fù)雜度分析
4 評(píng)估指標(biāo)及參數(shù)的訓(xùn)練優(yōu)化
4.1 評(píng)估指標(biāo)
4.2 IDM-FS-IACO參數(shù)優(yōu)化模型
4.3 IDM-FS-IACO的訓(xùn)練優(yōu)化
5 測試實(shí)驗(yàn)結(jié)果對(duì)比分析
5.1 Recall和Precision結(jié)果的對(duì)比分析
5.2 F-Measure結(jié)果的對(duì)比分析
5.3 訓(xùn)練時(shí)間及測試時(shí)間的對(duì)比分析
6 結(jié) 語