国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于特征選擇和支持向量機的異常檢測方法

2013-09-10 01:18張潤蓮蔣曉鴿
計算機工程與設(shè)計 2013年9期
關(guān)鍵詞:特征選擇準確率向量

張 昭,張潤蓮+,蔣曉鴿,曾 兵

(1.桂林電子科技大學(xué)信息與通信學(xué)院,廣西桂林541004;2.保密通信重點實驗室,四川成都610041)

0 引 言

入侵檢測作為一種主動防御技術(shù),可以有效地檢測和阻斷網(wǎng)絡(luò)攻擊。入侵檢測系統(tǒng)按技術(shù)實現(xiàn)可分為誤用檢測和異常檢測。異常檢測因為可以檢測新型的未知攻擊行為,成為了研究的熱點。

異常檢測常用的方法有神經(jīng)網(wǎng)絡(luò)、決策樹、聚類分析、貝 葉 斯 理 論、 支 持 向 量 機 (support vector machine,SVM)、K臨近值算法等。其中,支持向量機[1]將基于結(jié)構(gòu)風(fēng)險化最小原則運用到異常檢測中提高檢測性能,具有較高的泛化能力和分類準確率。支持向量機也存在一些不足,一方面,其所需要的參與模型訓(xùn)練的標(biāo)記數(shù)據(jù)較難獲得;另一方面,其分類時采用的核函數(shù)的選取以及核函數(shù)的參數(shù)優(yōu)化是一個較難解決的問題。針對上述問題,文獻 [2]通過對比分析幾種特征去除方法,提出逐步特征剔除方法,以獲得較高的檢測率。文獻 [3]提出一種自動標(biāo)記方法用于基于支持向量機的網(wǎng)絡(luò)流量異常檢測,通過剔除已知的入侵數(shù)據(jù),構(gòu)造不平衡數(shù)據(jù)集,提高對新型異常的檢測能力。文獻 [4]提出一種基于Fisher分的特征提取算法,在保持分類精度不變情況下,降低訓(xùn)練時間和測試時間。文獻 [5]采用一種基于數(shù)據(jù)不一致率的快速特征提取算法,有效消除數(shù)據(jù)冗余,提高檢測效率。

本文提出一種基于分類模型分類準確率計算的特征選擇和支持向量機相結(jié)合的異常檢測方法。該方法通過測試網(wǎng)絡(luò)數(shù)據(jù)的每個特征對支持向量機分類模型的分類準確率,選取出分類準確率高的最優(yōu)特征組合;并結(jié)合支持向量機分類方法進行異常檢測。

1 基于特征選擇和SVM的異常檢測系統(tǒng)結(jié)構(gòu)

異常檢測的關(guān)鍵是如何準確、高效地進行數(shù)據(jù)的分類,即將網(wǎng)絡(luò)中正常行為產(chǎn)生的數(shù)據(jù)視為正常類,將入侵行為產(chǎn)生的數(shù)據(jù)視為異常類。本文采用支持向量機建立數(shù)據(jù)分類模型,再通過分類模型進行數(shù)據(jù)分類。為提高檢測準確率,在數(shù)據(jù)分類檢測中采用了一種基于分類模型分類準確率計算篩選特征。基于特征選擇和支持向量機的異常檢測系統(tǒng)模型結(jié)構(gòu)如圖1所示。

圖1 基于SVM的異常檢測模型

在圖1中,網(wǎng)絡(luò)抓包模塊采用Sniffer工具實現(xiàn)從網(wǎng)絡(luò)中抓取數(shù)據(jù)包。

特征提取模塊提取網(wǎng)絡(luò)數(shù)據(jù)包的特征信息,構(gòu)成一組關(guān)鍵特征組合。通常,對網(wǎng)絡(luò)數(shù)據(jù)描述的特征有很多,但這些特征有主有次。在數(shù)據(jù)識別中,通過幾個主要特征的組合就可以準確地識別數(shù)據(jù)。而次要的特征,不僅會增加系統(tǒng)開銷,還可能混淆對數(shù)據(jù)的識別,降低檢測的準確性。針對該問題,本文提出一種基于分類模型分類準確率計算的特征選擇算法,通過計算每維特征進行數(shù)據(jù)識別的模型準確率,選取準確率最高的最優(yōu)特征組合。

數(shù)據(jù)預(yù)處理模塊將所提取的特征組合轉(zhuǎn)換為適合于支持向量機處理的特征向量數(shù)據(jù)。由于支持向量機只能處理數(shù)值型的數(shù)據(jù),因此,需要對所提取數(shù)據(jù)進行標(biāo)準化和歸一化處理,并完成數(shù)據(jù)類型的轉(zhuǎn)換等。對已標(biāo)記的正?;虍惓?shù)據(jù)經(jīng)預(yù)處理后,將組成訓(xùn)練集用于訓(xùn)練SVM分類模型,而未標(biāo)記的數(shù)據(jù)預(yù)處理后則用來進行分類檢測。

支持向量庫模塊用于存儲SVM訓(xùn)練后所產(chǎn)生的支持向量。

SVM模型訓(xùn)練主要是對輸入的訓(xùn)練集進行訓(xùn)練,產(chǎn)生數(shù)據(jù)分類模型。訓(xùn)練集是由特征向量和其相應(yīng)的類別標(biāo)號組成。其中,類別標(biāo)號是用于區(qū)分數(shù)據(jù)正?;虍惓5囊环N標(biāo)記,通常以 (1,-1)表示。當(dāng)訓(xùn)練完成后可以產(chǎn)生新的區(qū)分正?;虍惓5姆诸惸P?,并將得到的新的支持向量替代原有的支持向量。當(dāng)有新的訓(xùn)練數(shù)據(jù)并入時,將支持向量融入到訓(xùn)練數(shù)據(jù)中形成新的訓(xùn)練集進行訓(xùn)練。

SVM分類檢測利用訓(xùn)練產(chǎn)生的分類模型和支持向量庫對輸入的未標(biāo)記的數(shù)據(jù)進行分類檢測。這些未標(biāo)記的數(shù)據(jù)初始時標(biāo)注一種自定義的預(yù)測標(biāo)號,在分類檢測后將變更為新的類別標(biāo)號,標(biāo)識其正?;虍惓?。

輸出響應(yīng)模塊則對檢測出的異常數(shù)據(jù)做出報警響應(yīng)。

2 特征選擇算法

從實現(xiàn)網(wǎng)絡(luò)行為的數(shù)據(jù)包中提取數(shù)據(jù)的特征是一項費時和困難的工作。在數(shù)據(jù)處理前,去除冗余或者不重要的特征,只提取有效識別網(wǎng)絡(luò)行為的關(guān)鍵特征集,將有利于提高分類器的訓(xùn)練速度和檢測精度。針對該問題,本文構(gòu)造一種基于分類模型分類準確率計算的特征選擇算法。該算法通過逐一選取特征向量中的每一維特征,建立相應(yīng)的分類模型,以同一數(shù)據(jù)集分別作為訓(xùn)練集和測試集,分別測試各分類模型對不同類別數(shù)據(jù)的分類準確率;再根據(jù)分類準確率高低,選擇分類準確率高的特征集構(gòu)成最優(yōu)特征組合。

為更好地描述該算法,先對相關(guān)概念進行描述。

定義1 特征向量是指網(wǎng)絡(luò)數(shù)據(jù)中反映網(wǎng)絡(luò)行為的相關(guān)特征集合。以F={F1,F(xiàn)2,...,F(xiàn)i,...,F(xiàn)m}表示某種網(wǎng)絡(luò)行為的特征向量,其中,F(xiàn)i為該特征向量中的第i維特征,1≤i≤m。

定義2 數(shù)據(jù)類別是指根據(jù)網(wǎng)絡(luò)攻擊行為的不同,將數(shù)據(jù)劃分為相應(yīng)的類別,如Normal、Probe、Dos、R2l、U2r等網(wǎng)絡(luò)行為數(shù)據(jù)類別。以C={C1,C2,...,Cj,...,Cn}表示所劃分的數(shù)據(jù)類別,其中,Cj表示所劃分的第j種數(shù)據(jù)類別,1≤j≤n。

為評估所選特征對數(shù)據(jù)分類的影響,本文針對所選特征,采用支持向量機作為分類器建立分類模型,并分別測試各特征在分類模型中對不同類別數(shù)據(jù)的分類準確率。

定義3 分類準確率矩陣是在進行分類模型訓(xùn)練中通過測試、評估不同向量特征對不同類別數(shù)據(jù)進行分類的準確率構(gòu)成的矩陣。以M (i,j)表示分類準確率矩陣,1≤i≤m,1≤j≤n;其中,矩陣的每一行代表以某特征建立分類模型后對不同類別數(shù)據(jù)進行分類而產(chǎn)生的準確率;每一列表示各特征建立分類模型后針對某類數(shù)據(jù)的分類準確率。

特征選擇算法描述如下:

(1)設(shè)有 m 個特征F={F1,F(xiàn)2,...,F(xiàn)i,...,F(xiàn)m},n個數(shù)據(jù)類別 {C1,C2,...,Cj,...,Cn};并初始化分類準確率矩陣M (i,j),其中,1≤i≤m,1≤j≤n;

(2)從F中選取特征Fi作為測試特征,利用Fi建立分類模型并測試各個類別數(shù)據(jù)的分類準確率;

(3)將各個類別數(shù)據(jù)的分類準確率{A(Fi,C1),A(Fi,C2),...,A (Fi,Cj),...,A(Fi,Cm)}存入 M(i,j)中,其中A(Fi,Cj)表示以特征Fi建立分類模型后對Cj的分類準確率;

(4)重復(fù)執(zhí)行 (2)和 (3),直到k個特征測試結(jié)束;

(5)構(gòu)造特征矩陣。在分類準確率矩陣M(i,j)的每一列中,若對Cj的分類準確率最高為A(Fi,Cj),則表明Fi對Cj分類影響最大。對M(i,j)中的每一列分別進行非遞增排序,按照排序后的分類準確率,構(gòu)造一個對應(yīng)于準確率順序的特征序列;通過對所有列排序并構(gòu)造特征序列,形成一個特征矩陣M’(i,j);

(6)在特征矩陣M’(i,j)中,選取第一行中對應(yīng)的特征組合F’建立分類模型并測試其分類準確率A(F’,C’);

(7)順序選取矩陣M’(i,j)的下一行中對應(yīng)的特征集,并將其并入到特征組合F’中,形成新特征組合F’’,利用F’’建立分類模型并測試其分類準確率A(F’’,C’’);

(8)比較上述兩組分類準確率A(F’,C’)和A(F’’,C’’),若分類準確率降低,即 A (F’’,C’’)≤A (F’,C’),則結(jié)束特征選擇過程,并確定分類準確率最高的特征組合F’為最優(yōu)特征組合。否則,重復(fù)執(zhí)行步驟 (7)和(8),每次將矩陣M’(i,j)下一行的特征組合并入到前面建立的特征組合中,重新測試并比較其與前一次的分類準確率,直到循環(huán)結(jié)束或獲得最優(yōu)特征組合。

基于分類模型分類準確率計算的特征選擇算法通過選取對分類影響最大的特征組合,降低了參與訓(xùn)練的特征維數(shù),避免了冗余特征對分類檢測的影響,提高了檢測準確率,并降低了SVM模型在分類檢測時的檢測時間。

3 支持向量機分類方法

支持向量機分類方法是一種基于小樣本的學(xué)習(xí)方法,它可將由網(wǎng)絡(luò)連接提取并生成的特征向量映射到更高維空間里,并在此空間中尋求一個能夠?qū)崿F(xiàn)數(shù)據(jù)分類的最大間隔超平面。將數(shù)據(jù)分開的最大間隔越大,獲得的數(shù)據(jù)分類誤差越小。支持向量機的分類結(jié)果可由少數(shù)支持向量決定,其計算的復(fù)雜性取決于支持向量的數(shù)目,而不是樣本的維數(shù),從而避免了維數(shù)災(zāi)難。支持向量機分類算法是一種機器學(xué)習(xí)方法,需要利用訓(xùn)練集先訓(xùn)練出分類模型,然后才能利用分類模型對測試集進行預(yù)測分析。

設(shè)已 標(biāo) 記 訓(xùn) 練 集 樣 本 集 合 為: (y1,x1),(y2,x2),…,(yi,xi),…, (yl,xl);其中,yi= {-1,1}l為類別標(biāo)號,1表示正常類,-1表示異常類;xi∈Rn,i=1,……,l表示n維特征向量。

若要使樣本在輸入空間可分,則需要在特征空間中尋求如式 (1)所示的廣義最優(yōu)分類超平面,使兩類樣本到超平面的距離為最大

式中:ω——權(quán)重向量,b——偏移值。尋找最優(yōu)分類超平面的過程實際上是個機器學(xué)習(xí)問題,其學(xué)習(xí)問題的核心是最小化求解下列問題

其中,懲罰因子C>0,ξi為松弛變量,函數(shù)(x)用于將輸入向量映射到高維特征空間。利用KTT(Karush-Kuhn-Tucker)最優(yōu)化條件理論和用拉格朗日乘子法可將式 (2)變成其對偶形式

其中,K(xi,xi)=(xi)T(xj)為核函數(shù),用于將高維空間中的內(nèi)積運算轉(zhuǎn)換為低維空間的核函數(shù)計算,避免了維數(shù)災(zāi)難。αi和αj為拉格朗日乘子。

根據(jù)式 (3)的結(jié)果,利用式 (1)和其對偶式 (3)間的關(guān)系可得最優(yōu)ω滿足下式

對于未知屬類的向量x,采用如下最終分類決策函數(shù)

在式 (5)中,可以選用不同的核函數(shù)構(gòu)造不同的支持向量機。常用的核函數(shù)有多項式核函數(shù)、RBF核函數(shù)和Sigmoid核函數(shù)。本文采用綜合性能最優(yōu)的RBF[6-7]核函數(shù)。

由式 (1)可知,支持向量機分類超平面中含有大量未知參數(shù),通過選取已標(biāo)記數(shù)據(jù)參與訓(xùn)練,逐步獲取最優(yōu)參數(shù),從而得到分類模型即分類決策函數(shù)。在分類檢測時,利用已獲得的分類模型,可將輸入的待檢測未知數(shù)據(jù)進行分類,輸出數(shù)據(jù)的類別標(biāo)號。根據(jù)類別標(biāo)號,可判斷其為正常或異常數(shù)據(jù)。

4 仿真實驗分析

本文采用Kddcup99[8]數(shù)據(jù)集進行仿真實驗。Kddcup99提供了一個10%的訓(xùn)練子集,其訓(xùn)練集給出了類別標(biāo)號,本文在訓(xùn)練子集上進行實驗。為了便于模型的訓(xùn)練,需要對Kddcup99數(shù)據(jù)集進行預(yù)處理,包括對字符類型數(shù)據(jù)的量化,以及數(shù)據(jù)的標(biāo)準化和歸一化處理。

在實驗中,采用LibSVM[9-10]作為訓(xùn)練和測試工具,采用C-SVM、RBF核函數(shù),參數(shù)c、g、h設(shè)為1.2、2.8和0。在Matlab R2011b下實現(xiàn)本文的特征選擇算法和支持向量分類方法,并進行測試和仿真。實驗測試機器操作系統(tǒng)為 Windows 7,處理器為Intel Core(TM)i3 2.13GHz,內(nèi)存為2GB。

4.1 數(shù)據(jù)預(yù)處理

在實驗中,從Kddcup99的10%訓(xùn)練子集中隨機選取一部分作為訓(xùn)練集,從剩余的數(shù)據(jù)中再隨機選取一部分作為測試集。

針對選取的數(shù)據(jù)集,先進行數(shù)據(jù)的量化,將數(shù)據(jù)集中的字符型數(shù)據(jù)轉(zhuǎn)換為數(shù)值型數(shù)據(jù),如設(shè)置協(xié)議類型中的tcp為1,服務(wù)類型中的http為1,標(biāo)志位中的sf為1,等。

其次,針對量化的數(shù)據(jù),為避免量化取值的不同而對分類產(chǎn)生影響,進行數(shù)據(jù)標(biāo)準化處理。以Zij表示第i條數(shù)據(jù)記錄第j個屬性的標(biāo)準化結(jié)果,則Zij的計算方法如下

式中:xij——第i數(shù)據(jù)記錄的第j個屬性值;mj——所有數(shù)據(jù)記錄第j個屬性的平均值;Sj——所有數(shù)據(jù)記錄第j個屬性的平均絕對偏移。

第三,進一步對標(biāo)準化的數(shù)據(jù)集采用線性函數(shù)轉(zhuǎn)換方法進行歸一化處理。以Yij表示數(shù)據(jù)歸一化后的結(jié)果,則

式中:zij——第i數(shù)據(jù)記錄的第j個屬性的標(biāo)準化值,

zmax——所有數(shù)據(jù)記錄中第j個屬性標(biāo)準化后的最大值,

zmin——所有數(shù)據(jù)記錄中第j個屬性標(biāo)準化后的最小值。

4.2 實驗測試及結(jié)果分析

首先采用本文基于分類模型分類準確率計算的特征選擇算法對數(shù)據(jù)集的41維特征進行特征篩選。在測試中,從Kddcup99的10%訓(xùn)練子集中以正常與異常數(shù)據(jù)比為4∶1的比率隨機選取約1萬條記錄作為測試集,并按照上述的數(shù)據(jù)預(yù)處理方法進行處理。在此基礎(chǔ)上,采用本文提出特征選擇算法建立分類模型并進行特征篩選,構(gòu)成最優(yōu)特征組合。本實驗通過計算、比較,測得由矩陣中前三行特征組合構(gòu)成的最優(yōu)特征組合具有最高的分類準確率,其包括了8個特征,分別為第1、2、3、5、6、23、33、36維特征。

其次,從Kddcup99的10%訓(xùn)練子集中隨機選取約3萬條記錄作為訓(xùn)練集,從剩余的數(shù)據(jù)中再隨機選取約1萬條記錄作為測試集,通過數(shù)據(jù)預(yù)處理,采用篩選出的最優(yōu)特征組合,測試了其檢測準確率、誤報率、建模時間及測試時間,并與不進行特征選擇的原始41維特征集測試結(jié)果進行對比,結(jié)果見表1。

表1 不同特征集的測試結(jié)果對比

通過表1可以看出,特征選擇后誤報率有所增加,但其檢測率有所提高,且大幅度降低了測試時間,提高了檢測效率。

第三,在上一組所選擇并進行了數(shù)據(jù)預(yù)處理的訓(xùn)練集和測試集上,進一步對比測試了本文方法、文獻 [2]中的GFA方法、文獻 [5]中的數(shù)據(jù)不一致率算法和文獻 [6]中的KPCA算法,篩選的特征向量根據(jù)相關(guān)文獻的方法獲得。測試結(jié)果見表2。

表2 本文方法和其它方法的對比測試結(jié)果

表3的結(jié)果顯示,本文方法的誤報率和建模時間略高于其它的方法,測試時間與其它方法相近,但其具有最高的檢測準確率。且本文方法在數(shù)據(jù)檢測時提取的特征維數(shù)少,也有效降低了系統(tǒng)的數(shù)據(jù)處理難度。

5 結(jié)束語

針對入侵檢測中的特征提取和檢測準確率問題,本文提出一種基于特征選擇和SVM相結(jié)合的異常檢測方法。該方法采用基于分類模型分類準確率計算的特征選擇算法,篩選出盡量少但能夠準確識別數(shù)據(jù)的最優(yōu)特征組合,并將其與支持向量機分類算法相結(jié)合,以獲得好的檢測效果。實驗測試結(jié)果表明,本文方法有效提高了檢測準確率,降低了檢測時間,并降低了系統(tǒng)的數(shù)據(jù)處理難度。在將來的工作中,將進一步分析不同的核函數(shù)對分類準確率的影響并進行優(yōu)化,降低誤報率。

[1]WANG Yanhua,TIAN Shengfeng,HUANG Houkuan.Feature weighted support vector machine [J].Journal of Electronics &Information Technology,2009,31 (3):514-518 (in Chinese).[汪延華,田盛豐,黃厚寬.特征加權(quán)支持向量機[J],電子與信息學(xué)報,2009,31 (3):514-518.]

[2]Li Y.An efficient intrusion detection system based on support vector machines and gradually feature removal method [J].Expert System with Applications,2012,39 (1):424-430.

[3]Carlos A Catania,F(xiàn)acundo Bromberg.An autonomous labeling approach to support vector machines algorithms for network traffic anomaly detection [J].Expert Systems with Applications,2012,39 (2):1822-1829.

[4]ZHANG Xueqin,GU Chunhua.A method of feture extraction[J].Journal of South China University of Technology(Natural Science Edition),2010,38 (1):81-86 (in Chinese). [張雪芹,顧春華.一種網(wǎng)絡(luò)特征提取方法 [J].華南理工大學(xué)學(xué)報(自然科學(xué)版),2010,38 (1):81-86.]

[5]CHEN Tieming,MA Jixia,XUAN Yiguang.Fast feature selection method and its application in intrusion detection [J].Journal of Communications,2010,31 (9A):233-238 (in Chinese).[陳鐵明,馬繼霞,宣以廣.快速特征選擇方法及其在入侵檢測中的應(yīng)用 [J].通信學(xué)報,2010,31 (9A):233-238.]

[6]BAO Panqing,YANG Mingfu.Network intrusion detection based on KPCA and SVM [J].Computer Application and Software,2006,23 (2):125-127 (in Chinese). [包潘晴,楊明福.基于KPCA和SVM的網(wǎng)絡(luò)入侵檢測 [J].計算機應(yīng)用與軟件,2006,23 (2):125-127.]

[7]Hsu C W,Chang C C,Lin C J.A practical guide to support vector classification [EB/OL].[2010-04-15].http://www.csie.ntu.edu.tw/~cjlin/papers/guide/guide.pdf.

[8]KDD Cup 99KDD dataset [EB/OL].[2011-06-16].http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html.

[9]LibSVM [EB/OL].[2011-04-01].http://www.csie.ntu.edu.tw/~cjlin/libsvm/index.html.

[10]Chang ChihChung,Lin ChihJen.LIBSVM:A library for support vector machines [J].ACM Transactions on Intelligent Systems and Technology,2011,2 (3):1-27.

猜你喜歡
特征選擇準確率向量
向量的分解
乳腺超聲檢查診斷乳腺腫瘤的特異度及準確率分析
不同序列磁共振成像診斷脊柱損傷的臨床準確率比較探討
2015—2017 年寧夏各天氣預(yù)報參考產(chǎn)品質(zhì)量檢驗分析
聚焦“向量與三角”創(chuàng)新題
高速公路車牌識別標(biāo)識站準確率驗證法
基于最大信息系數(shù)和近似馬爾科夫毯的特征選擇方法
Kmeans 應(yīng)用與特征選擇
向量垂直在解析幾何中的應(yīng)用
基于特征選擇聚類方法的稀疏TSK模糊系統(tǒng)