丁宣宣 郭淵博
(解放軍信息工程大學 河南 鄭州 450001) (數(shù)學工程與先進計算國家重點實驗室 江蘇 無錫 214000)
基于隨機最小冗余條件互信息和支持向量機的混合入侵檢測特征選擇
丁宣宣 郭淵博
(解放軍信息工程大學 河南 鄭州 450001) (數(shù)學工程與先進計算國家重點實驗室 江蘇 無錫 214000)
針對入侵檢測日志中存在著大量的不相關和冗余特征屬性,嚴重影響檢測的實時性,而大多數(shù)特征選擇算法不能兼顧相關性和信息量,且容易陷入局部最優(yōu)解,提出一種基于隨機最小冗余條件互信息和支持向量機的混合入侵檢測特征選擇方法。首先利用互信息和相關性去除沒有分類信息量和特征間高度相關的冗余特征,然后利用隨機最小冗余條件互信息準則以及支持向量機選擇出具有最多分類信息量的最優(yōu)特征子集,一定程度地避免了局部最優(yōu)解。實驗結果表明,該方法能在確保入侵檢測正確率的情況下以更高的效率選擇出最小最優(yōu)的入侵檢測特征子集。
信息熵 互信息 支持向量機 特征選擇 入侵檢測
入侵檢測技術是網(wǎng)絡安全主動防御中的核心技術之一,主要通過收集和分析來自系統(tǒng)和應用程序的審計日志以及網(wǎng)絡中數(shù)據(jù)包發(fā)現(xiàn)入侵行為或者企圖,并及時給出警報[1]??梢詫⑷肭謾z測看成檢測系統(tǒng)狀態(tài)為“正?!边€是“異常”的二分類問題。隨著云計算時代的來臨,計算機網(wǎng)絡越來越普及,產(chǎn)生了大量的網(wǎng)絡流量數(shù)據(jù),如果不能及時檢測到這些網(wǎng)絡數(shù)據(jù)中隱藏的安全問題或者攻擊行為,容易造成漏報警,嚴重者可能會給企業(yè)和個人帶來巨大的損失。只有及時地從網(wǎng)絡傳輸數(shù)據(jù)中發(fā)現(xiàn)威脅并做出響應,才能將入侵帶來的損失降到最低。如何能準確并快速地從海量傳輸數(shù)據(jù)中發(fā)現(xiàn)潛在威脅一直是入侵檢測技術面臨的一個主要問題。因此,對入侵檢測系統(tǒng)的要求不僅包括準確性,還要有實時檢測能力。如何在保證準確性的前提下提高入侵檢測系統(tǒng)的反應能力成為當前研究的熱點之一。通過分析可以發(fā)現(xiàn),檢測日志和數(shù)據(jù)包中包含了大量的不相關和冗余特征,它們并非或者極少是反映系統(tǒng)安全狀態(tài)信息的特征,對檢測結果幾乎沒有影響。一條網(wǎng)絡連接行為通常利用多個屬性加以描述,例如KDD-Cup99數(shù)據(jù)集中采用41種特征屬性來描述每條連接。過多的維數(shù)包含的不相關和冗余特征會增加檢測算法的運行時間,不能及時發(fā)現(xiàn)入侵威脅。如果不對這些數(shù)據(jù)源進行處理,將包含冗余和噪聲的數(shù)據(jù)直接用于檢測算法,會使運算效率大幅度降低。大多數(shù)檢測算法的運行時間會隨著數(shù)據(jù)維數(shù)的增加迅速增長,當數(shù)據(jù)維數(shù)很大時會產(chǎn)生維數(shù)爆炸,嚴重影響檢測的實時性。其次,面對大規(guī)模數(shù)據(jù)集的特征挖掘,通過特征選擇方法找出準確刻畫多結構、多類型的網(wǎng)絡連接行為的特征,保留能夠反映系統(tǒng)狀態(tài)的重要特征對于提高入侵檢測系統(tǒng)檢測效率至關重要[2]。因此,很多研究者通過特征選擇技術解決這個問題。目前,已有不少研究者提出在搜索策略和評估算法等不同階段優(yōu)化特征選擇算法。Yu 等[3]通過分析特征之間的相關性和冗余性來有效選取特征,但選出的特征不能確保分類能力。Sung等[4]提出使用支持向量機和神經(jīng)網(wǎng)絡進行入侵檢測特征的選擇,該算法雖然能選擇與分類信息相關的所有特征,卻忽略了特征之間存在的相關性,且實現(xiàn)起來相對復雜。Park[5]利用特征與目標類的相關矩陣進行輕量級入侵檢測系統(tǒng)的特征選擇,但當特征維度較高時,其運算效率迅速降低。朱等[6]提出使用遺傳算法選擇檢測特征,該算法比啟發(fā)式算法更有優(yōu)勢,具有較好的選擇效果,可時間復雜度達到了O(m3)。Sun[7]提出一種基于信息熵的并行特征選擇方案,可處理大規(guī)模數(shù)據(jù)的特征選擇,但其沒有考慮特征之間可能存在冗余。Peng[8]提出的算法較全面地分析了特征選擇過程中的相關性和冗余性。Yu[9]提出一種通過支持向量機概率靈敏度分析的特征選擇算法,選出那些最具有分類信息的特征集,但效率不高。
結合以上分析,本文提出一種結合隨機最小冗余條件互信息和支持向量機的混合入侵檢測特征選擇方法。該方法首先使用互信息和線性相關性對所有特征進行初選,去除了特征之間具有強相關性的冗余特征以及不具有分類信息量的不相關特征,再使用提出的LRCI-SVM算法保留具有最多分類信息的最優(yōu)特征子集,其可以在保證原始特征分類精度的情況下選擇出最小的特征子集。由于該入侵檢測特征選擇方法的運算過程容易實現(xiàn),且效率較高,具有很好的可擴展性,能用于高維度的特征選擇。
針對入侵檢測收集的網(wǎng)絡連接數(shù)據(jù),包括連續(xù)數(shù)據(jù)與離散數(shù)據(jù),本文研究的主要方法是針對離散數(shù)據(jù)的特征選擇。因此,首先是將所有收集到的數(shù)據(jù)集進行預處理,這個處理過程包括連續(xù)屬性離散化以及波動范圍較大的特征屬性正則化等。然后將預處理過的所有數(shù)據(jù)按照原來的數(shù)據(jù)分布分成三份,即訓練集、驗證集,以及測試集。所有的入侵檢測訓練數(shù)據(jù)通過基于最小冗余條件互信息和支持向量機的混合特征選擇方法進行子集的選擇,其結果就是所選的最優(yōu)特征子集。測試數(shù)據(jù)集去除不相干特征之后利用5折交叉驗證的方法訓練分類器,驗證該特征子集最終的入侵檢測性能等。本文提出的混合特征選取方法的整體結構如圖1所示。
圖1 本文特征選擇方法的整體結構
2.1 最小冗余條件互信息準則
信息熵可以量化隨機變量{Xi}的不確定性,基于信息熵的互信息能夠衡量任意兩個變量之間的統(tǒng)計依賴性,互信息的值越大,表明這兩個變量之間的相關性越高。利用信息熵和互信息來選擇特征子集,可以理解為選擇一個與目標類具有最大依賴性的最小特征子集,假設該特征子集S具有m個特征{Xi},k為分類的類別數(shù),則最優(yōu)的特征子集S應該與目標類C具有最大的依賴性,該準則叫做最大依賴準則,可用公式表達:
(1)
盡管最大依賴性的理論能夠找到一個最優(yōu)的特征子集S,但每選出一個特征都需要估算多變量概率p(X1,X2,…,Xm)和p(X1,X2,…,Xm,Cl)的值。由于缺少足夠的樣本數(shù)目,難以得到精確的估計,且對于高維特征的選擇,多變量的概率計算效率太低。雖然最大依賴準則能夠尋到最小的特征子集,卻不適合投入應用。
由于最大依賴準則難以實現(xiàn),則需要尋找一個可替代的方案近似地實現(xiàn)最大依賴性。特征選擇的衡量標準是基于這樣的假設:子集中特征應該與目標類具有高度相關性,即強相關性;且特征之間沒有關聯(lián),即低冗余性[10]。這個假設給了我們兩個定義特征好壞的標準,一個就是特征與類的關聯(lián),另一個就是特征與特征之間的關聯(lián)。就互信息而言,可以理解為特征-類之間應該具有最大的互信息,即該特征或者特征子集應該包含盡可能多的與類相關的信息量,具有很高的類辨識度。特征-特征之間的互信息應盡可能小,即子集內任意兩個特征Xi與Xj應該包含不同的關于分類的信息量,這樣才能確保特征子集中的冗余信息最小。條件互信息能夠衡量在某個變量已知時,另外兩個變量之間的互信息量,通過改變選擇策略,可以很好地權衡高相關性和低冗余性,適合用于特征子集的選擇。條件信息熵H(Xj|Xi)衡量了當Xi已知時,Xj中剩余的不確定性[11]。當Xi已知時,Xj與目標類C的條件互信息可用公式表示:
I(C;Xj|Xi)=H(C|Xi)-H(C|Xi,Xj)
(2)
式(2)描述了當Xi已知時,估計Xj與C共享的信息量是多少。此時,如果Xi是Xj的一個決定函數(shù),則當Xi已知時這個條件互信息的值為0,不需要Xj中的任何信息來描述C了。如果他們是獨立的,Xi沒有包含Xj帶來的關于C的信息,條件互信息的值就等于該特征與目標類的互信息。特征選擇的主要目的是找到一個包含盡可能多的關于分類信息的最小特征子集,而條件互信息能夠判斷在已有信息的基礎上新選擇特征包含的分類信息量。
為使選取的特征之間具有最小的冗余信息和最大的分類信息量,本文使用增量搜索的策略,當且僅當特征Xj與所有已選特征Xi具有最大條件互信息時,該特征才能被選取。這就意味著新選擇的特征包含了所有已選特征都沒有的信息量。但現(xiàn)實中,特征與特征之間經(jīng)常存在著或大或小的弱依賴性,難以找到與所有已選特征都具有最大條件互信息的待選特征。所以,本文使用最小冗余條件互信息準則LRCMI(Least Redundant Conditional Mutual Information criteria)來衡量待選特征具有的額外信息量:每次從待選特征集中搜索特征Xj,選擇使得Xj與所有已選特征Xi的最小條件互信息最大的特征變量,這樣就確保了每次迭代都能夠選取更多已選子集中沒有的關于C的分類信息量,使得已選特征與待選特征的冗余最低。假設第m(1 (3) 可以看出:LRCMI準則可以在已選特征集的基礎上選擇一個與所有已選特征具有最小冗余分類信息的特征變量,確保每次選取的特征能夠帶來更多“純凈”的分類信息量。 2.2 隨機最小冗余條件互信息算法 由于增量搜索策略是貪心算法的一種,其結果容易陷入局部最優(yōu)解,而結合隨機化算法可以一定程度地避免局部最優(yōu)解,雖然不是最優(yōu),但仍比單純的隨機化算法更接近最優(yōu)[12]。文獻[13-15]提出了將Filter算法結合隨機算法的特征選擇,比如遺傳算法、模擬退火算法以及蟻群算法等。由于最終的優(yōu)化結果跟初始值的選取有很大關系[16],為了盡可能避免出現(xiàn)局部最優(yōu)解,使用隨機搜索初始值的方法。假設最終需要選擇包含K個特征的最優(yōu)特征子集,則當k=1時,隨機獲取待選特征集中的某一特征作為初始已選特征,再使用增量搜索策略按照最大條件互信息準則選取剩余的K-1個。使用這種隨機初始值結合增量搜索的方法,選出T個符合條件的次優(yōu)特征子集,最后判斷保留分類精度最優(yōu)的一個。該算法的核心是按照LRCMI準則選擇特征子集的過程,則第t(1≤t≤T)次迭代時,算法1給出了最小冗余條件互信息特征選擇算法的偽代碼,具體描述如下: 算法1最小冗余條件互信息特征選擇算法 form=1…Mdo min_inf[m]←inf(m) 當k=1時, s[k]=random(1,M) form=1…M do min_inf[m]←min(min_inf[m],cond_inf(m,s[k])) fork=2…K do s[k]=arg maxm{min_inf[m]} for m=1…M do min_inf[m]←min(min_inf[m],cond_inf(m,s[k])) end 上述算法在每次迭代都會挑選剩余特征與所有已選特征的最小條件互信息值最大的特征s[k],min_inf[m]存放了第m個特征與已選子集中的特征具有的最小條件互信息。cond_inf(m,s[k])表示在已知特征s[k]的條件下,特征m與目標類C的互信息,這也是該算法最核心的部分,所有互信息中概率的計算都是基于統(tǒng)計每種狀態(tài)值出現(xiàn)的次數(shù)。從實現(xiàn)過程可以看出,該算法的時間復雜度為O(M×K)。為了排除隨機性選擇初始值帶來的不確定性,需要將該算法執(zhí)行T次,假設每次迭代輸出的特征子集為St,若maxt[K]表示第t次選擇的子集中第K個條件互信息的最大值,我們認為maxt[K]的值越大,該子集包含的最終信息量越多,則St為最優(yōu)特征子集。綜上所述,經(jīng)過T次迭代后,總的算法時間復雜度為O(M×K×T)。 3.1 基于LRCMI和SVM的混合特征選擇方法 按照采用的評價準則類別的不同,特征選擇可分為兩種模式:Filter和Wrapper。Filter模式的特征選擇利用數(shù)據(jù)本身的概率關系或者相關性等作為子集的評價函數(shù),而Wrapper則利用機器學習算法的正確率作為特征選擇的標準。通常情況下Filter特征選擇的速度比較快,但所選特征子集的分類精度不高。Wrapper特征選擇用到的分類算法復雜度高,選擇速度慢,其結果依賴于所用的分類算法,選取的特征子集通常有較高的分類精度。本文提出的隨機最小冗余條件互信息特征選擇算法屬于Filter模式,雖能選擇出具有更多分類信息的特征子集,但分類信息的多少與其分類能力并不是嚴格線性相關的[11]。為了選擇出具有較高分類精度的入侵檢測特征子集,我們設計了一種結合了隨機最小冗余條件互信息和支持向量機的混合入侵檢測特征選擇模型。由于支持向量機算法是一種高精度的分類算法,在入侵檢測問題上具有很好的識別性能,結合提出的最小冗余條件互信息進行特征選擇,不僅能保留最大的分類信息量,還能選擇出精度較高的特征子集。具體的混合特征選擇算法流程如圖2所示。 圖2 基于LRCMI與SVM的混合入侵檢測特征選擇算法流程圖 我們用max[K]表示當前最大的maxt[K]的值,Sbest表示迭代后篩選的最優(yōu)特征子集。從圖2可以看出,本文將入侵檢測特征選擇的過程主要分為三個模塊,1) 入侵檢測特征的初選,將選出的特征子集記為F;2) 利用基于最小冗余互信息的特征選擇算法構建候選特征子集St;3) 將最優(yōu)選特征子集交給SVM分類器評估,選出具有最佳分類能力的特征子集Sbest。 3.2 基于LRCMI和SVM的混合入侵檢測特征選擇 (1) 入侵檢測特征初選 特征選擇是數(shù)據(jù)預處理的一個階段,用于選取一個訓練學習機器的有效屬性子集,原始數(shù)據(jù)集通常包含了各種與檢測結果不相關的和冗余的屬性。為了能在允許的時間和計算代價之內找出最優(yōu)的特征子集,先對原始特征進行一次初選,去除與檢測結果相關性很小或者包含較少分類信息量的屬性,使特征集中的每一個特征都與檢測結果具有不同程度的相關性。因此,我們首先使用互信息作為入侵檢測特征初選的依據(jù)。 定義2對于特征Xi與入侵檢測目標類C,其互信息可用下式表示: (4) 互信息越大則表示該特征變量與類變量的互信息越高,其包含的分類信息就越多。設定閾值ε2,若I(Xi;C)≥ε2,則保留入侵檢測特征Xi。 定義3相關性分析能夠分析特征變量與類變量以及任意兩特征變量之間的相關性,特征變量Xi與Xk的線性相關系數(shù)可用下式表示: (5) 這里的cov(Xi,Xk)是兩個變量的協(xié)方差,σXi,σXk是Xi與Xk的標準差。ρXi,Xk越大表明這兩變量之間的相關性就越大。設定閾值ε3,若ρXi,Xk≥ε3,則保留入侵檢測特征Xi。 相關性分析可以分析特征與類以及特征之間的線性相關性,本文在利用相關性分析時每一輪只比較當前特征與剩余未選特征之間的線性相關性,滿足所有條件時,則該特征為可選特征。另外,為了保證在初選時不丟失可用信息,閾值設置時通常要求保留大部分數(shù)據(jù),因此,其閾值要求可盡量放寬松。綜上,按照定義1-定義3,逐一排查原始入侵檢測數(shù)據(jù)集中的特征變量,保留滿足條件的所有特征組成初始候選子集F,包含M個特征。 (2) 基于LRCMI和SVM的混合入侵檢測特征選擇算法描述 由于特征初選只是排除原始特征集中不具有分類信息以及特征之間存在近乎完全相關的冗余特征。現(xiàn)實數(shù)據(jù)中,大部分特征之間都存在著一定程度的弱依賴性,且他們之間的分類信息也都有著或大或小的交集,幾乎很少有兩個完全獨立且都與目標類相關度較高的特征,所以經(jīng)過初選的特征中也必然存在著大量冗余。本文給出的隨機最小冗余條件互信息特征選擇算法,可以在所有已選特征的分類信息已知的情況下,加入與目標類有最大互信息的待選特征。同時為了避免陷入局部最優(yōu)解,使用隨機初始值的策略,這樣既保證了選擇結果可以擇優(yōu)而取,還能避免隨機性帶來的缺陷。入侵檢測選擇特征最終的目的是用于分類,使用支持向量機分類正確率評價特征子集,可以在保證分類精度的情況下,選擇出具有最多分類信息的最小特征子集。 由于入侵檢測數(shù)據(jù)中存在著連續(xù)數(shù)據(jù),在將原始數(shù)據(jù)集進行特征選擇之前,需要先對數(shù)據(jù)集預處理,將所有連續(xù)屬性的數(shù)據(jù)值離散化。去除比較嚴重的不完全數(shù)據(jù)記錄,對于缺少一兩個值的數(shù)據(jù)樣本采用平均值填補法,補全缺失的數(shù)據(jù)?;バ畔⒗昧烁怕式y(tǒng)計的基礎,為使所有狀態(tài)值的概率分布值更加精確,要保證有足夠的訓練樣本。將所有的數(shù)據(jù)按照原始的統(tǒng)計規(guī)律分成三份,即訓練集D0、測試集Dt、評估驗證集Dv。具體的入侵檢測混合特征選擇算法描述如下: 1) 輸入預處理過的入侵檢測數(shù)據(jù)集D0、Dt、Dv,記初始入侵檢測特征向量為X,設置參數(shù)ε1、ε2、ε3、max[K]、T以及K的值。 2) 從第一個入侵檢測特征開始,計算H(X1)值,若H(X1)>ε1,則判斷I(X1,C),若I(X1,C)>ε2,再計算X1與所有剩余特征的線性相關性,若它們的相關性ρ(X1,Xi)>ε3且I(X1,C)>I(Xi,C) ,則將特征X1保留到待選子集F,否則將其去除。 3) 依次按照第2)步,篩選出所有符合條件的入侵檢測特征,最終的待選子集F作為下一步的輸入,剩余特征總數(shù)為M。 4) 取部分Dt使用候選入侵檢測特征子集訓練SVM,并用Dv測試該候選子集分類精度,記為γbest。Fort=1,2,…,T。 5) 隨機選取一個特征作為已選初始特征,加入St。 6) 按照最小冗余條件互信息準則,即算法1,選取St的剩余K-1個特征,完成構建入侵檢測特征子集St,第K次選取的最小條件互信息的值為maxt[K],若maxt[K]大于max[K],則更新max[K]的值并轉到第6步,否則轉到第4步。 8) 輸出Sbest以及γbest,結束。 為了驗證算法的有效性,本文進行了如下仿真實驗,實驗數(shù)據(jù)采用KDD Cup 1999的IDS數(shù)據(jù)庫[17],并在開源數(shù)據(jù)分析軟件RStudio上完成。該數(shù)據(jù)庫的數(shù)據(jù)分布能很好地模擬真實環(huán)境,廣泛地用于對IDS日志數(shù)據(jù)進行分析研究。KDD99共包含三種數(shù)據(jù)集:1) 全部數(shù)據(jù)集;2) 10%數(shù)據(jù)集;3) 帶攻擊標記的數(shù)據(jù)集,常用于異常檢測分析。本次實驗使用10%數(shù)據(jù)集,該數(shù)據(jù)集中每個樣本有41個輸入變量,包括9個基本連接特征、13個鏈接內容特征和19個網(wǎng)絡流量特征。還包括1個響應變量,響應變量有Dos(拒絕服務供給)、Probe(端口監(jiān)視或掃描)、U2R(未授權的本地超級用戶特權訪問)、R2L(來自遠程主機的未授權訪問)和Normal五種,共有494 020條記錄。為了更好地關注特征選擇的效果,本文對每個連接只取它是“Normal”還是“Attack”,即所有的入侵類型都歸為“Attack”,這樣就變成了二分類問題。按原始數(shù)據(jù)分布的特征,將所有數(shù)據(jù)集分成3份,其中一個數(shù)據(jù)集進行特征選擇訓練,把該數(shù)據(jù)集上訓練得到的次優(yōu)特征子集在驗證集上進行驗證,然后將測試集分成5份,交叉測試檢測準確率、誤檢率及漏檢率。實驗硬件環(huán)境是AMD Phenom(tm) Ⅱ Processor 2.20 GHz,3.49 GB內存,軟件環(huán)境是Win7,Java1.7,Matlab7.1,R3.2.1,實驗中用到了R語言entropy.ChaoShen包、kernlab包以及RSNNS包,分別用于計算信息熵的值和訓練SVM以及神經(jīng)網(wǎng)絡。為了達到最佳效果,實驗中參數(shù)ε1、ε2、ε3、max[K]以及K均是通過前期不斷調整得到,根據(jù)最終的實驗效果,設置ε1=9.27,ε2=9.05,ε3=0.96,max[K]=0,K=8。為了評估基于近似最小冗余互信息的入侵檢測特征選擇算法的性能,本文選用四個入侵檢測特征選擇常用的評價指標:平均建模時間、平均分類精度、檢測率、誤報率。其中,檢測率TPR(true positive rate)=正確檢測的攻擊樣本數(shù)/總攻擊樣本數(shù);誤檢率FPR(false positive rate)=被判攻擊樣本的正常數(shù)/總的正常樣本數(shù);漏檢率MR(missing rate)=未被檢測到的攻擊樣本/總的攻擊樣本。 該實驗共分為三部分,第一部分實驗分析了本文所提算法及其他算法所選的特征子集,主要評價指標為特征數(shù)和包含的重要特征,第二部分實驗分析了LRCMI-SVM算法所選特征子集的入侵檢測性能,主要的評價指標為誤檢率、漏檢率、檢測時間。第三部分實驗分析了不同算法所選特征的入侵檢測性能以及運行效率。 實驗1針對入侵檢測數(shù)據(jù)集進行特征選擇的算法有很多,如mRAR(最大相關最小冗余特征選擇)、NN(基于神經(jīng)網(wǎng)絡)、IG-J48(基于信息熵和決策樹)、CFS-SVM(基于關聯(lián)規(guī)則和支持向量機)等,結合以上四種算法以及本文的LRCMI-SVM(隨機最小冗余條件互信息與支持向量機)五個特征選擇算法在KDD CUP-99中10%數(shù)據(jù)集上進行篩選的結果如表1所示。在保證檢測準確率的同時選擇的有用特征數(shù)越少,說明該特征選擇算法越有效。 表1 各種特征選擇算法選擇的特征子集 從表1的結果可以看出,入侵檢測日志數(shù)據(jù)中有幾個特征在以上算法的選擇結果中出現(xiàn)次數(shù)比較多,主要包括:src_bytes(源主機到目標主機的數(shù)據(jù)字節(jié)數(shù))、count(過去兩秒內與當前連接具有相同目標主機的連接數(shù))、service(目標主機的網(wǎng)絡服務類型)等,說明他們對于甄別入侵行為有很重要的作用,特征選擇的目的就是發(fā)現(xiàn)像他們一樣的特征。本文提出的LRCMI-SVM算法選擇的特征子集也包含了這些,且該算法所選的子集數(shù)目也相對少。相比其他算法,說明本文提出的針對入侵檢測的特征選擇算法能夠有效去除特征中存在的冗余信息,去除相關性較高的特征屬性,選出包含信息量較高的最小的特征子集。 實驗2該實驗將10%數(shù)據(jù)集中的測試集隨機分成5×2份,分別使用R語言自帶的C4.5決策樹算法訓練5×2個分類器,進行5折交叉驗證,得出特征選擇前后的平均誤檢率、平均漏檢率以及平均檢測時間。針對本文算法選出的特征子集與原始數(shù)據(jù)集全部特征的入侵檢測性能進行的對比。實驗結果如表2所示。 表2 特征選擇前后入侵檢測的檢測率、誤檢率與檢測時間 從表2中可以看出,使用本文提出的LRCMI-SVM算法進行測試時,相比原始特征集具有更低的誤檢率和漏檢率,其分類精度得到了保證,可見在特征選擇過程中去除了影響檢測率的部分特征。該算法的檢測時間縮減了將近一半,有效地提高了入侵檢測的實時性,對于實時性要求較高的系統(tǒng),該算法的性能更優(yōu)。 實驗3在R語言中使用C4.5決策樹算法以及KDD CUP-99數(shù)據(jù)集中的測試集驗證五種(mRAR(最大相關最小冗余特征選擇)、NN(基于神經(jīng)網(wǎng)絡)、IG-J48(基于信息熵和決策樹)、CFS-SVM(基于關聯(lián)規(guī)則和支持向量機)以及本文提出的LRCMI-SVM(最小冗余信息熵與支持向量機))算法所選特征子集進行入侵檢測時的檢測率,并統(tǒng)計各個特征選擇算法的平均訓練時間。見表3。 表3 不同特征選擇算法的檢測率和建模時間 從表3中可以看出,基于神經(jīng)網(wǎng)絡的特征選擇算法的訓練效果最好,但其訓練時間太久,難以應對高維數(shù)據(jù)集的選擇過程。CFS-SVM的訓練結果雖不如神經(jīng)網(wǎng)絡,但其訓練時間明顯縮短。本文提出的算法的訓練精度最接近神經(jīng)網(wǎng)絡,其訓練所用時間也比CFS-SVM更短,在同時保證檢測率和算法運行效率上,本文算法具有更優(yōu)的綜合性能。綜上,本文提出的算法不僅可以提高特征選擇的速度,所選特征還能比其他兩種wrapper算法保持更高的檢測率。 特征選擇是一種常用的選取有效屬性子集的方法,一個好的算法可以在較短的時間內找到與目標類較相關且冗余較小的特征子集。本文提出的基于隨機最小冗余條件互信息和SVM的混合特征選擇算法在保證特征中包含的攻擊信息最多的情況下,通過使用隨機初始值策略的最小冗余條件互信息準則,選擇出包含信息量最多的特征子集。相比其他的混合特征選擇算法不僅提高了入侵檢測的檢測效率,還能保證所選特征子集具有較高的分類精度,較低的漏檢率以及誤檢率,能很好地應用于構建輕量級的入侵檢測系統(tǒng)。后期的工作重點主要放在了優(yōu)化評價函數(shù)以及搜索策略上,進一步提高特征選擇的效率,通過設計一種并行化的特征選擇方案,使其可以處理大規(guī)模的入侵檢測數(shù)據(jù)。 [1] Mukheijee B,Heberlein L T,Levitt K N.Network intrusion detection[J].IEEE Network,1994,8(3):26-41. [2] 陳友,程學旗,李洋,等.基于特征選擇的輕量級入侵檢測系統(tǒng)[J].軟件學報,2007,18(7):1639-1651. [3] Yu L,Liu H.Efficient Feature Selection via Analysis of Relevance and Redundancy[J].Journal of Machine Learning Research,2004,5(12):1205-1224. [4] Sung A H,Mukkamala S.Identifying important features for intrusion detection using support vector machines and neural networks[C]//Applications and the Internet,2003.Proceedings.2003 Symposium on,2003:22-25. [5] Park J S,Shazzad K M,Dong S K.Toward Modeling Lightweight Intrusion Detection System Through Correlation-Based Hybrid Feature Selection[J].Lecture Notes in Computer Science,2005,3822:279-289. [6] 朱紅萍,鞏青歌,雷戰(zhàn)波.基于遺傳算法的入侵檢測特征選擇[J].計算機應用研究,2012,29(4):1417-1419. [7] Sun Z.Parallel Feature Selection Based on MapReduce[J].IEEE Transactions on Pattern Analysis & Machine Intelligence,2014,13(3):252-264. [8] Peng H,Long F,Ding C.Feature Selection Based on Mutual Information:Criteria of Max-Dependency,Max-Relevance,and Min-Redundancy[J].IEEE Transactions on Pattern Analysis & Machine Intelligence,2005,27(8):1226-1238. [9] Shen Kaiquan,Ong Chongjin,Li Xiaoping,et al.Feature selection via sensitivity analysis of SVM probabilistic outputs[J].Machine Learning,2008,70(1):1-20. [10] Hall M A.Correlation-based Feature Selection for Discrete and Numeric Class Machine Learning[C].Seventeenth International Conference on Machine Learning,2000:359-366. [11] Fleuret F.Fast Binary Feature Selection with Conditional Mutual Information[J].Journal of Machine Learning Research,2004,5(3):1531-1555. [12] The Greedy Algorithm[M]//Graphs,Networks and Algorithms.Springer Berlin Heidelberg,2005. [13] 裘國永,王娜,汪萬紫.基于互信息和遺傳算法的兩階段特征選擇方法[J].計算機應用研究,2012,29(8):2903-2905. [14] 劉素華,侯惠芳,李小霞.基于遺傳算法和模擬退火算法的特征選擇方法[J].計算機工程,2005,31(16):157-159. [15] 王璐,邱桃榮,何妞,等.基于粗糙集和蟻群優(yōu)化算法的特征選擇方法[J].南京大學學報(自然科學),2010,46(5):487-493. [16] Niu G.Feature Selection Optimization[M]//Data-Driven Technology for Engineering Systems Health Management.Springer Singapore,2016. [17] KDD cup 1999 dataset[DB/OL].http://kdd.ics.uci.edu/ databases/kddcup99/kdd cup99. html. FEATURESELECTIONOFINTRUSIONDETECTIONBASEDONRANDOMLEASTREDUNDANTCONDITIONALMUTUALINFORMATIONANDSVM Ding Xuanxuan Guo Yuanbo (PLAInformationEngineeringUniversity,Zhengzhou450001,Henan,China) (StateKeyLaboratoryofMathematicalEngineeringandAdvancedComputing,Wuxi214000,Jiangsu,China) There are a lot of irrelevant and redundant attributes in intrusion detection logs, which seriously affect the detection of real-time. Most feature selection algorithms cannot take into account the correlation and the amount of information, and are easy to fall into the local optimal solution. To solve this problem, a hybrid intrusion detection feature selection method based on random minimum redundancy conditional mutual information and support vector machines (SVM) is proposed. Firstly, mutual information and correlation were used to eliminate redundant features without classification information and a high degree of correlation between features. Then, the random minimum redundancy condition mutual information criterion and SVM were used to select the optimal feature subset with the maximum classification information quantity, avoiding the local optimal solution to a certain extent. Our results show that it can get an optimal minimum feature subset effectively on condition of ensuring the intrusion detection classification accuracy. Information entropy Mutual information SVM Feature selection Intrusion detection 2016-12-22。國家自然科學基金項目(61501515)。丁宣宣,碩士生,主研領域:數(shù)據(jù)挖掘與態(tài)勢感知。郭淵博,教授。 TP391 A 10.3969/j.issn.1000-386x.2017.11.0543 基于LRCMI和SVM的混合入侵檢測特征選擇模型
4 實驗及結論
5 結 語