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

?

主成分分析法改進(jìn)貝葉斯網(wǎng)絡(luò)入侵檢測(cè)

2012-11-09 06:41李靜馮祖洪
中國教育網(wǎng)絡(luò) 2012年4期
關(guān)鍵詞:貝葉斯分類節(jié)點(diǎn)

文/李靜 馮祖洪

主成分分析法改進(jìn)貝葉斯網(wǎng)絡(luò)入侵檢測(cè)

文/李靜 馮祖洪

使用主成分分析的方法對(duì)數(shù)據(jù)集進(jìn)行降維,將滑動(dòng)窗口引入到貝葉斯網(wǎng)絡(luò)分類算法中,從而得到改進(jìn)的貝葉斯網(wǎng)絡(luò)分類算法。實(shí)驗(yàn)證明,改進(jìn)的算法能夠有效地降低分類數(shù)據(jù)的維數(shù),同時(shí)該算法建立的入侵檢測(cè)模型能夠更好地檢測(cè)出已知的入侵攻擊類型。

當(dāng)今在全球范圍內(nèi),對(duì)計(jì)算機(jī)及網(wǎng)絡(luò)基礎(chǔ)設(shè)施的攻擊已經(jīng)成為一個(gè)越來越嚴(yán)重的問題,與此同時(shí),入侵檢測(cè)技術(shù)也成為人們?nèi)找骊P(guān)注的研究課題之一[1]。從當(dāng)前的一些研究成果來看,已有的一些檢測(cè)技術(shù)對(duì)于已知的入侵行為檢測(cè)精度高,誤報(bào)率較低,但對(duì)于未知攻擊的入侵模式的檢測(cè)率和誤報(bào)率的結(jié)果均不太理想,而且在時(shí)效性方面也不能令人滿意。因此如何建立具有較強(qiáng)的有效性、自適應(yīng)性和可擴(kuò)展性的入侵檢測(cè)模型成為入侵檢測(cè)領(lǐng)域中重要的研究課題[2]。

由于貝葉斯網(wǎng)絡(luò)具有堅(jiān)實(shí)的數(shù)學(xué)理論基礎(chǔ)以及綜合先驗(yàn)信息和樣本信息的能力,近年來已成為入侵檢測(cè)模式分類的研究熱點(diǎn)之一。但是,基于貝葉斯網(wǎng)絡(luò)的入侵檢測(cè)技術(shù)在對(duì)數(shù)據(jù)進(jìn)行檢測(cè)時(shí)存在兩個(gè)問題:其一[3]是貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)節(jié)點(diǎn)太多,分類過程中的計(jì)算量呈指數(shù)增長,導(dǎo)致分類效率較低;其二是在檢測(cè)的過程中沒有考慮到當(dāng)前的攻擊行為和安全狀態(tài),僅僅是根據(jù)原始訓(xùn)練數(shù)據(jù)集生成的固定不變的貝葉斯網(wǎng)絡(luò)來進(jìn)行測(cè)試,對(duì)檢測(cè)的精度造成一定的影響。

對(duì)于上述第一個(gè)問題,本文提出基于主成分分析的特征提取方法。利用主成分分析的降維思想,減少訓(xùn)練數(shù)據(jù)的變量,進(jìn)而簡化貝葉斯網(wǎng)絡(luò)。對(duì)于第二個(gè)問題,本文提出滑動(dòng)窗口機(jī)制。該機(jī)制將窗口中的數(shù)據(jù)設(shè)為訓(xùn)練數(shù)據(jù)集,具體解釋如下:首先將測(cè)試數(shù)據(jù)集追加到訓(xùn)練數(shù)據(jù)集的尾部,初始窗口為原始訓(xùn)練數(shù)據(jù)集,每當(dāng)檢測(cè)完N條測(cè)試數(shù)據(jù)時(shí),將滑動(dòng)窗口向下移動(dòng)N條數(shù)據(jù)(窗口大小保持不變),這樣就可以得到一個(gè)不斷更新的訓(xùn)練數(shù)據(jù)集。由此,訓(xùn)練得到的貝葉斯網(wǎng)絡(luò)就包含系統(tǒng)當(dāng)前的安全信息。實(shí)驗(yàn)證明,本文提出的方法可以有效地提高分類效率和檢測(cè)精度。

主成分分析

主成分分析也稱主分量分析,利用降維的思想,把多指標(biāo)轉(zhuǎn)化為少數(shù)幾個(gè)綜合指標(biāo)[4]。

主成分算法的實(shí)現(xiàn)如下[5]:

1. 對(duì)訓(xùn)練集矩陣進(jìn)行標(biāo)準(zhǔn)化處理,

得到矩陣

其中,

2. 求相關(guān)矩陣

3. 求R矩陣的特征值和特征向量

由于R是一個(gè)對(duì)稱矩陣,所以在計(jì)算中只要對(duì)R的上三角矩陣求特征值和特征向量即可。

4. 求出主成分

將求出的特征值按大小依次排列,便得,

原則確定m,并依次排列特征向量,

就可得到我們所需的主成分。

貝葉斯網(wǎng)絡(luò)

貝葉斯網(wǎng)絡(luò)是一個(gè)功能強(qiáng)大的知識(shí)表示和不確定條件下的推理工具,由一個(gè)有向無環(huán)圖及圖中各個(gè)節(jié)點(diǎn)所附加的一張概率表組成[6]。其中,有向無環(huán)圖的各個(gè)節(jié)點(diǎn)表示領(lǐng)域中不同的變量,節(jié)點(diǎn)之間的弧表示變量之間的依賴關(guān)系。根節(jié)點(diǎn)X所附的是它的邊緣分布P(X),而非根節(jié)點(diǎn)X所附的是條件概率分布P(X|π(X)),其中π(X)代表X的父節(jié)點(diǎn)。簡單地講,有向無環(huán)圖從定性的層面描述變量之間的依賴獨(dú)立關(guān)系,而概率分布從定量的層面刻畫變量對(duì)其父節(jié)點(diǎn)的依賴關(guān)系。為方便描述,文章中將有向無環(huán)圖稱作貝葉斯網(wǎng)絡(luò)結(jié)構(gòu),將各個(gè)節(jié)點(diǎn)的概率表稱作節(jié)點(diǎn)參數(shù)。

改進(jìn)貝葉斯網(wǎng)絡(luò)入侵檢測(cè)

利用主成分分析改進(jìn)貝葉斯分類算法

從理論上分析,由于貝葉斯網(wǎng)絡(luò)具有堅(jiān)實(shí)的數(shù)學(xué)理論基礎(chǔ)以及綜合先驗(yàn)信息和樣本信息的能力,因此比其他分類算法,如樸素貝葉斯、支持向量機(jī)等,具有更好的分類精度。但是,已有的貝葉斯網(wǎng)絡(luò)算法在對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行訓(xùn)練時(shí),并沒有考慮到大量冗余的數(shù)據(jù)屬性會(huì)提高數(shù)據(jù)的維數(shù),增加分類計(jì)算量,造成分類效率的下降?;谶@樣的情況,本文提出在利用訓(xùn)練數(shù)據(jù)集進(jìn)行訓(xùn)練之前,首先對(duì)訓(xùn)練數(shù)據(jù)集進(jìn)行特征選擇或者特征提取。常用的特征選擇方法主要有信息增益、信息增益比、距離度量等。雖然采用這些特征選擇算法會(huì)大幅度減少計(jì)算量,但是由于忽略一部分屬性對(duì)分類所起的作用,導(dǎo)致分類精確度不夠理想。文本采用主成分分析的方法對(duì)特征屬性進(jìn)行特征提取,這樣不僅可以大大地減少數(shù)據(jù)維數(shù),減少計(jì)算量,同時(shí)也可以最大限度地利用原數(shù)據(jù)的分類信息,使得分類精度相對(duì)較高。

例如,某數(shù)據(jù)集有特征屬性A1、A2、A3、A4、A5、A6、A7,對(duì)分類所起的作用分別為:0.2324、0.208、0.1753、0.1052、0.1038、0.08931、0.0859在通過特征選擇后得到對(duì)分類所起作用較大的前四個(gè)屬性A1、A2、A3、A4對(duì)分類所起的作用之和為0.7209。而在用主成分分析之后得到的結(jié)果可能是X1、X2、X3、X4,而根據(jù)主成分分析算法,得到的這四個(gè)主成分對(duì)分類所起的作用之和一定大于0.85。相比之下,本文選擇主成分分析的方法對(duì)訓(xùn)練數(shù)據(jù)集進(jìn)行特征提取來減少特征屬性,從而減少計(jì)算量,提高檢測(cè)效率。

改進(jìn)貝葉斯分類算法的步驟

設(shè)訓(xùn)練數(shù)據(jù)集為M0,改進(jìn)貝葉斯分類算法的步驟分別是:

1. 對(duì)訓(xùn)練數(shù)據(jù)集M0進(jìn)行預(yù)處理(如:數(shù)值化處理和離散化處理)得到訓(xùn)練數(shù)據(jù)集M1。

2. 采用之前提到的主成分分析方法對(duì)M1進(jìn)行主成分分析,得到包含較少屬性的新數(shù)據(jù)集M2。

3. 對(duì)數(shù)據(jù)集M2進(jìn)行離散化處理得到新的數(shù)據(jù)集M 3。

4. 參照基于互信息的貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)生成算法[7],對(duì)M3進(jìn)行訓(xùn)練得到貝葉斯網(wǎng)絡(luò)的結(jié)構(gòu)。

5. 利用滑動(dòng)窗口機(jī)制,對(duì)測(cè)試集中的數(shù)據(jù)進(jìn)行測(cè)試。具體步驟如下:

(1)對(duì)訓(xùn)練數(shù)據(jù)集設(shè)置兩個(gè)指針,分別為頭指針P1(指向訓(xùn)練數(shù)據(jù)集的首部)和尾指針P2(指向訓(xùn)練數(shù)據(jù)集的尾部);同時(shí),對(duì)測(cè)試數(shù)據(jù)集設(shè)置兩個(gè)指針,分別為頭指針Q1(指向測(cè)試數(shù)據(jù)集的首部)和尾指針 Q2(指向訓(xùn)練數(shù)據(jù)集的尾部),即P=P1,Q=Q1;

(2)把指針P所指向的數(shù)據(jù)存入數(shù)據(jù)集M中,P=P+1;

(3)重復(fù)(1),直到P>P2;

(4)通過數(shù)據(jù)集M計(jì)算貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)各個(gè)節(jié)點(diǎn)的參數(shù)C(即概率表);

(5)用貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)C對(duì)訓(xùn)練數(shù)據(jù)集中指針Q所指向的數(shù)據(jù)進(jìn)行測(cè)試,并將該條數(shù)據(jù)追加到訓(xùn)練數(shù)據(jù)集M的尾部,P2=P2+1,Q=Q+1;

(6)重復(fù)(4)的操作,直到Q=Q1+N或者Q>Q2;

(7)如果Q>Q2,繼續(xù)執(zhí)行下一步;否則,P 1=P 1+N,P=P 1,轉(zhuǎn)到(1);

(8)測(cè)試完畢,計(jì)算正確率。

試驗(yàn)及分析

評(píng)估指標(biāo)

本實(shí)驗(yàn)采用F1測(cè)試值作為試驗(yàn)評(píng)估指標(biāo)。F1測(cè)試值的具體計(jì)算公式如下[8]:

其中,

實(shí)驗(yàn)設(shè)計(jì)及結(jié)果

本實(shí)驗(yàn)采用的數(shù)據(jù)來自KDDCUP1999數(shù)據(jù)集。該數(shù)據(jù)集作為入侵檢測(cè)領(lǐng)域中的權(quán)威數(shù)據(jù),是在軍事網(wǎng)絡(luò)環(huán)境中運(yùn)用非常廣泛的模擬入侵攻擊試驗(yàn)得到的。該數(shù)據(jù)集包含490萬條數(shù)據(jù),每條數(shù)據(jù)就是一個(gè)網(wǎng)絡(luò)連接記錄。其中,每條記錄由41個(gè)特征屬性和第42個(gè)用來標(biāo)記該記錄是正常數(shù)據(jù)還是某種攻擊類別的屬性組成[9]。該數(shù)據(jù)集包含的四大攻擊類[10]分別是:DoS(Denial-of-service),拒絕服務(wù)攻擊;R2L(Unauthorized access from a remote machine to a local machine),是來自于遠(yuǎn)程主機(jī)的未授權(quán)訪問;U2R(Unauthorized access to local super user privileges by a local unprivileged us未er)授權(quán)的本地超級(jí)用戶特權(quán)訪問;Probing(surveillance and probing)端口監(jiān)視或掃描。本文從該數(shù)據(jù)集中抽取12萬條記錄,其中50%作為訓(xùn)練集,剩余50%作為測(cè)試集。

通過對(duì)6萬條訓(xùn)練數(shù)據(jù)進(jìn)行分析,得知41個(gè)特征屬性中的8個(gè)屬性(is_hot_login,num_outbound_cmd,root_shell,land,su_attempted,urgent,num_shells,num_failed_logins)對(duì)分類幾乎不起作用(其99%以上的屬性值是相同的)。本實(shí)驗(yàn)對(duì)剩余的33個(gè)屬性進(jìn)行主成分分析,得到12個(gè)主成分,并對(duì)其離散化。

數(shù)據(jù)離散化后,將這12個(gè)主成分作為前12個(gè)變量,并將原訓(xùn)練數(shù)據(jù)集中的第42個(gè)屬性(標(biāo)記類別的屬性)作為第13個(gè)變量組成新的訓(xùn)練數(shù)據(jù)。運(yùn)用參考文獻(xiàn)中的算法對(duì)新訓(xùn)練數(shù)據(jù)進(jìn)行訓(xùn)練得到如圖1所示的貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)。計(jì)算得到網(wǎng)絡(luò)節(jié)點(diǎn)參數(shù),即變量的先驗(yàn)概率表或條件概率表。由于各個(gè)變量的取值較多,導(dǎo)致概率表龐大,文章中僅截取節(jié)點(diǎn)3和節(jié)點(diǎn)6的概率表,如表1、表2所示。

表1 結(jié)點(diǎn)3的概率表X3 X3P(X3)0.03%1.68%0.48%44 45 46 40 41 42 43 P(X3)0.06%0.31%78.23%19.21%

表2 結(jié)點(diǎn)6的條件概率表X6 X6 33 34 54 33 34 30 34 X50001122 P(X6|X5)88.89%5.55%5.56%44.44%55.56%1.82%94.54%X6 48 49 34 35 43 37 38 X52233466 P(X6|X5)1.82%1.82%92.98%7.02%100.00%25.00%25.00%39 35 36 37 35 0 X5677785 4 P(X6|X5)50.00%92.02%7.89%0.09%100.00%100.00%

表3 F1值對(duì)比算法記錄類型(%)未加入滑動(dòng)窗口的貝葉斯網(wǎng)絡(luò)算法加入滑動(dòng)窗口的貝葉斯網(wǎng)絡(luò)算法Normal 92.46 93.7292.5681.3289.3690.21 Dos 90.29 Probing 79.86 R2L 87.58 U2R 88.96

貝葉斯網(wǎng)絡(luò)生成之后,用已有的貝葉斯網(wǎng)絡(luò)分類算法和基于滑動(dòng)窗口的貝葉斯網(wǎng)絡(luò)分類算法進(jìn)行比較。通過多次試驗(yàn)證明,當(dāng)滑動(dòng)窗口的大小為1000時(shí),分類效果較好。算法采用Matlab編程實(shí)現(xiàn),并分別計(jì)算出兩個(gè)不同算法的準(zhǔn)確率和查全率。試驗(yàn)后得到兩種不同算法針對(duì)每個(gè)類具體的F1值,如表3所示。

實(shí)驗(yàn)結(jié)論

1. 與直接用標(biāo)準(zhǔn)數(shù)據(jù)集中的數(shù)據(jù)訓(xùn)練貝葉斯網(wǎng)絡(luò)相比較,用主成分分析方法對(duì)數(shù)據(jù)集進(jìn)行特征提取會(huì)大大減少貝葉斯網(wǎng)絡(luò)訓(xùn)練過程中的計(jì)算量;

2. 由表2可知,使用滑動(dòng)窗口可以明顯提高貝葉斯網(wǎng)絡(luò)的檢測(cè)精度。

本文在對(duì)KDD CUP 1999數(shù)據(jù)集進(jìn)行分析的基礎(chǔ)上,使用主成分分析的方法對(duì)數(shù)據(jù)集進(jìn)行降維,將滑動(dòng)窗口引入到貝葉斯網(wǎng)絡(luò)分類算法中,從而得到改進(jìn)的貝葉斯網(wǎng)絡(luò)分類算法。試驗(yàn)證明,改進(jìn)的算法能夠有效地降低分類數(shù)據(jù)的維數(shù),同時(shí)該算法建立的入侵檢測(cè)模型能夠更好地檢測(cè)出已知的入侵攻擊類型。但對(duì)于未知的攻擊,檢測(cè)效果還不是很理想,這也是本文下一步要考慮的問題。

擴(kuò)展閱讀:

[1]楊德剛.基于模糊C均值聚類的網(wǎng)絡(luò)入侵檢測(cè)算法.計(jì)算機(jī)科學(xué),2005,32(1):86-91.

[3]李冰寒,高曉利,劉三陽,李戰(zhàn)國.利用互信息學(xué)習(xí)貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)[J].智能系統(tǒng)學(xué)報(bào),2011,6(1):68-71.

[4]張堯庭等.多元統(tǒng)計(jì)分析引論[M].北京:科學(xué)出版社,1982.

[5]于濤.主成分分析及其算法[J].金筑大學(xué)學(xué)報(bào),1996,22(2):75-78.

[6]張連文,郭海鵬.貝葉斯網(wǎng)引論[M].北京:科學(xué)出版社,2006.

[7]Jie Cheng,David A.Bell,Weiru Liu,et al.Learning belief networks from data: an information theory based approach[C]. In Proceedings of the Sixth ACM International Conference on Information and Knowledge Management,325-331.

[8]王衛(wèi)玲,劉培玉,初建崇.一種改進(jìn)的基于條件互信息的特征選擇算法[J].計(jì)算機(jī)應(yīng)用,2007,27(2):433-435.

[9]楊鋒.基于數(shù)據(jù)挖掘的入侵檢測(cè)技術(shù)研究[D].哈爾濱:哈爾濱工程大學(xué),2006.

[10]王越,譚淑秋,劉亞輝.基于互信息的貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)學(xué)習(xí)算法[J].計(jì)算機(jī)工程,2011,37(7):62-64.

(作者單位為北方民族大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院)

猜你喜歡
貝葉斯分類節(jié)點(diǎn)
CM節(jié)點(diǎn)控制在船舶上的應(yīng)用
分類算一算
基于貝葉斯解釋回應(yīng)被告人講述的故事
基于AutoCAD的門窗節(jié)點(diǎn)圖快速構(gòu)建
概念格的一種并行構(gòu)造算法
基于動(dòng)態(tài)貝葉斯估計(jì)的疲勞駕駛識(shí)別研究
分類討論求坐標(biāo)
數(shù)據(jù)分析中的分類討論
教你一招:數(shù)的分類
基于互信息的貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)學(xué)習(xí)
马山县| 青岛市| 林周县| 特克斯县| 民丰县| 丹江口市| 阿勒泰市| 平江县| 新营市| 黔江区| 两当县| 曲周县| 永吉县| 淳安县| 芜湖市| 新建县| 英山县| 上思县| 惠东县| 鹤峰县| 固始县| 德州市| 兴国县| 牙克石市| 香港| 萨迦县| 长治市| 剑阁县| 敦化市| 灵武市| 襄城县| 民乐县| 克东县| 广宁县| 青河县| 阜宁县| 蓬安县| 麟游县| 洛南县| 华池县| 马龙县|