【正文】
,這是很重要的。scale對提高算法預(yù)測準(zhǔn)確性十分重要。grid網(wǎng)格搜索,用來對CSVC中的兩個可變參數(shù)C和γ進(jìn)行篩選,挑選出對訓(xùn)練樣本最佳的組合,然后再來訓(xùn)練模型。,因此需要先安裝python軟件包。網(wǎng)格搜索中的交叉驗(yàn)證默認(rèn)分為5份,另外訓(xùn)練模型時(shí)也可采用交叉驗(yàn)證的方法,份數(shù)是作為參數(shù)的(v),可靈活設(shè)置。網(wǎng)格搜索的方法在上面介紹gamma參數(shù)時(shí)已說明。另外LIBSVM在做網(wǎng)格搜索時(shí)調(diào)用gnuplot來畫出lg(C)和lg(gamma)的輪廓。train利用grid過程確定的c和gamma參數(shù)的值以及其他相關(guān)參數(shù)來訓(xùn)練己有樣本集,建立已有訓(xùn)練樣本的模型。predict利用以上建立的模型,對未知數(shù)據(jù)進(jìn)行預(yù)測。如果待測樣本集中每個樣本有分類號,則可測出模型的預(yù)測準(zhǔn)確率,如果沒有分類號,就是真的預(yù)測值了。支持向量機(jī)的一般實(shí)驗(yàn)過程:(1)將樣本分為訓(xùn)練樣本和測試樣本,將訓(xùn)練樣本的數(shù)據(jù)按照軟件包的格式要求,進(jìn)行輸入。(2)將數(shù)據(jù)進(jìn)行規(guī)格化處理,調(diào)用scale過程。利用稀疏矩陣的特點(diǎn),減少存儲空間和運(yùn)算次數(shù)。(3)選擇核函數(shù)RBF,則利用grid過程,進(jìn)行交叉驗(yàn)證,得出核函數(shù)中需要確的兩個參數(shù)C和gamma的最佳組合,用于下一步模型訓(xùn)練。(4)調(diào)用train過程,用grid出來的C和gamma,建立己有樣本的模型。因?yàn)橛?xùn)練樣本中,樣本所屬類別分布不均,給小樣本加了權(quán)重。(5)將測試樣本的數(shù)據(jù)送到上一步建立的模型中測試,給出模型準(zhǔn)確率。首先需要再次說明的是,因?yàn)槭嵌诸?,因此?shí)驗(yàn)中選擇C-SVC,其次,在LIBSVM中,只有RBF核函數(shù)才可以進(jìn)行交叉驗(yàn)證,求最優(yōu)C與gamma,因此只選擇了RBF核函數(shù)作為實(shí)驗(yàn)之選。本實(shí)驗(yàn)中只是用LIBSVM作為分類器,并以predict出來的值作為評價(jià)標(biāo)準(zhǔn),沒有對參數(shù)做詳細(xì)的配置,使用的均是默認(rèn)參數(shù)。程序中使用到的LIBSVM工具的代碼如下:對全部屬性進(jìn)行歸一化,并訓(xùn)練全部樣本的模型。void CAaDlg::fufeatutrain(){ char mand[256]。 sprintf(mand,\\ %%,0,0)。 system(mand)。 sprintf(mand,\\ % %,0,0)。 system(mand)。}對選擇的屬性進(jìn)行歸一,并用訓(xùn)練的樣本模式測試選擇的屬性,給出準(zhǔn)確率。void CAaDlg::2(int i){ char mand[256]。 sprintf(mand,\\ %%,i,i)。 system(mand)。 sprintf(mand,\\ % %%,i,i,i)。 system(mand)。}圖42 應(yīng)用libsvm工具流程圖系統(tǒng)采用基于Windows平臺的單對話框界面,建立了一個標(biāo)準(zhǔn)的、直觀的用戶界面。主要包括樣本文件的內(nèi)容預(yù)覽、選擇kdd屬性特征、更改屬性的選擇、單步執(zhí)行特征選擇過程、一步執(zhí)行完特征選擇的過程、重新選擇屬性進(jìn)行操作等功能。系統(tǒng)主界面如下圖所示。圖43 系統(tǒng)主界面選擇待處理的kdd數(shù)據(jù)文件,主窗口顯示了kdd特征屬性的內(nèi)容并且每行添加了行號便于直觀顯示。進(jìn)行選擇之前,選擇“瀏覽”按鈕給程序指定輸入?!邦A(yù)覽數(shù)據(jù)”按鈕獲取“預(yù)覽樣本的數(shù)量”,顯示在“預(yù)覽樣本內(nèi)容”中?!斑x定”按鈕執(zhí)行兩步,保存“選擇的特征屬性”中的內(nèi)容到數(shù)組中,清空內(nèi)容,然后在“選定特征組”中顯示選擇的屬性組?!笆謩印薄白詣印卑粹o執(zhí)行特征選擇算法,并在“執(zhí)行步驟”中顯示每步執(zhí)行的結(jié)果和所做的操作?!爸刈觥卑粹o重置所有變量到初始狀態(tài),清空所有顯示和計(jì)算過程中產(chǎn)生的txt文件。首先需要加載libsvm-、。我們通過系統(tǒng)界面按鈕“瀏覽”,程序的預(yù)覽數(shù)據(jù)的起始2行顯示出來,結(jié)果如下所示。0 1:0 2:2 3:7 4:6 5:181 6:5450 7:0 8:0 9:0 10:0 11:0 12:1 13:0 14:0 15:0 16:0 17:0 18:0 19:0 20:0 21:0 22:0 23:8 24:8 25: 26: 27: 28: 29: 30: 31: 32:9 33:9 34: 35: 36: 37: 38: 39: 40: 41:0 1:0 2:2 3:7 4:6 5:239 6:486 7:0 8:0 9:0 10:0 11:0 12:1 13:0 14:0 15:0 16:0 17:0 18:0 19:0 20:0 21:0 22:0 23:8 24:8 25: 26: 27: 28: 29: 30: 31: 32:19 33:19 34: 35: 36: 37: 38: 39: 40: 41:我們選擇一些屬性組,在文本框中就會顯示選定的特征組。效果如下所示。選定特征組:第1組選擇的特征:{2,3,5,11,15}第2組選擇的特征:{23,32,34,1,4}第3組選擇的特征:{10,13,17,25,27,35}第4組選擇的特征:{6,19,22,29,37,41}第5組選擇的特征:{8,16,26,30,12,24}第6組選擇的特征:{9,14,31,7,38}然后我們執(zhí)行“自動”按鈕后的效果如下所示:第1步:訓(xùn)練樣本第2步:%,%,%,%,%,%,在剩余特征組中選出使準(zhǔn)確率最大的第2組特征組,%.第3步:%,%,%,%,%,在剩余特征組中選出使準(zhǔn)確率最大的第1組特征組,%.第4步:%,%,%,%,沒有比當(dāng)前最好的,SFS算法結(jié)束.第5步:%,%,剔除第1組的屬性,%.最終特征為:23,32,34,1,4, seconds. 結(jié)束語計(jì)算機(jī)網(wǎng)絡(luò)的應(yīng)用和普及給人們的工作和生活帶來了極大的便利,但隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,各種專門針對計(jì)算機(jī)網(wǎng)絡(luò)的攻擊和入侵也層出不窮,傳統(tǒng)的入侵檢測方法在檢測精度及實(shí)時(shí)性等方面存在著不足,本文通過對支持向量機(jī)分類算法、啟發(fā)式特征選擇算法,將支持向量機(jī)分類方法應(yīng)用于網(wǎng)絡(luò)入侵檢測這一領(lǐng)域中,利用LIBSVM軟件包對kdd99數(shù)據(jù)集進(jìn)行訓(xùn)練和分類,把分類預(yù)測結(jié)果用作本文提出的改進(jìn)的特征選擇算法的評價(jià)函數(shù),對支持向量機(jī)應(yīng)用于網(wǎng)絡(luò)入侵檢測精確度和可行性作了有益的嘗試和探索。支持向量機(jī)作為一種新的機(jī)器學(xué)習(xí)方法,具有堅(jiān)實(shí)的理論基礎(chǔ),其優(yōu)點(diǎn)突出表現(xiàn)在:一是在有限樣本,尤其是小樣本情況下仍然保持很好的分類推廣能力。二是采用核函數(shù),把線性不可分的樣本通過一個非線性映射變換到高維特征空間使之線性可分。這是其算法優(yōu)秀之處的基礎(chǔ)。此次畢業(yè)設(shè)計(jì),LIBSVM只是用它的默認(rèn)參數(shù),沒有做深入的研究,預(yù)測的精度可能受影響,此外訓(xùn)練集的選取對預(yù)測的精度也有影響,對最終選出的特征可能有影響,各個實(shí)際方面,還有很多很多的工作需要進(jìn)一步完善。這些,既是不足,又是動力,不但指明了今后研究的發(fā)展方向,同時(shí)也是需要扎扎實(shí)實(shí)做工作的地方。對于此次畢業(yè)設(shè)計(jì)完成數(shù)據(jù)預(yù)處理和特征算法的實(shí)現(xiàn),但對我的編程和實(shí)踐能力也有很大的幫助。致 謝本次畢業(yè)設(shè)計(jì),是大學(xué)最后一次軟件設(shè)計(jì),是檢驗(yàn)我們四年學(xué)習(xí)成果的標(biāo)尺。首先要感謝我的畢設(shè)指導(dǎo)老師張偉老師,他對我的畢設(shè)給予了很大的幫助與支持。張偉老師給我介紹的參考資料和案例對我的畢設(shè)有很大幫助,要是沒有張偉老師的支持和鼓勵我很難完成畢設(shè)。在軟件開發(fā)地過程中張偉老師給予我很多地意見和建議,使我少走了不少彎路。同時(shí),我要感謝計(jì)算機(jī)網(wǎng)絡(luò)教研室和實(shí)驗(yàn)室的老師們,他們對我的畢設(shè)也幫助挺大。在次,還感謝姜波同學(xué),他認(rèn)真的學(xué)習(xí)態(tài)度很讓我欽佩。他在外文翻譯中給了我莫大的幫助。參考文獻(xiàn)[1] Jiawei Han Micheline Kamber 編著. ,2005年8月[2] 張?jiān)茲?:電子工業(yè)出版社,2004年5月[3] Richard ,2003年9月[4] de Sa編著..模式識別 原理、,2002年11月[5] Guyon and A. Elisseeff. An introduction to variable and feature selection. JMLR, 2003(3), 11571182.[6] C. Sima et al. Impact of Error Estimation on FeatureSelection Algorithms. Pattern Recognition, 2005,38(12),24722482.[7] J. Hua et Number of Features as a Function of Sample Size for Various Classification Rules. Bioinformatics, 2005, 21(8),15091515.[8] T. Cover and J. Van Campenhout. On the Possible Orderings in the Measurement Selection Problem. IEEE Trans. Systems, Man, and Cybernetics, 1977,7(9),657–661.[9] 毛勇 周曉波 夏錚 尹征 [J].模式識別與人工智能,2007,20(2):211218.[10] 楊長春,倪彤光,薛恒新,. 一種基于數(shù)據(jù)挖掘的DDoS攻擊入侵檢測系統(tǒng)[J]. 計(jì)算機(jī)工程,2007,(23).[11] Chen You , Cheng Xue2Qi , Li Yang , Dai Lei. Lightweight intrusion detection systems based on feature selection. Jour2nal of Software , 2007 , 18 (7) : 163921651 (in Chinese)(陳友,程學(xué)旗,李洋,戴磊. 基于特征選擇的輕量級入侵檢測系統(tǒng). 軟件學(xué)報(bào), 2007 , 18 (7) : 163921651)[12] Chen S, Tang Y. Stateful DDoS Attacks and Targeted Filtering[J].Journal of Network and Computer Applications, 2007, 30(3).[13] Brugger S. T. . Data mining methods for network intrusion detection. Technique Report , UC davis , 2004[14] Ertoz L. , Eilert son E. , Lazarevic A. , Tan P. , Dokas P. ,Srivastava J . , Kumar . Detection and summarization of novel network attacks using data mining. Technical Report , 2003[15] Li-Chiou Chen, Longstaff TA , Carley K. M. Characterization of defense mechanisms against distributed denial of service attacks. Computers amp。 Security, 2004。 23 (8) : 665—678[16] Honig A, Howard A. Adaptive Model Generation: An Architecture for the Deployment of Dataminingbased Intrusion Detection Systems [C]//Proc. of Data Mining for Security Applications, Kluwer. 2002.[17] Chris . Burges, Beruhard Scholkopf. Improving the Accuracy and Speed of Support Vector Machines. Neural Information Processing Systems, , M. Mozer, M. Jordan, amp。 T. Petsche, eds. MIT Press, Cambridge, MA, 1997. [18] . A Tutorial on Support Vector Machines for Pattern Recognition. Bell Laboratories, Lucent Technologies. 1997. [19] The 1999 DARPA Int rusion Detection Evaluation Data set , Information Systems Technology Group of MIT Lincoln Laboratory , ht tp :/ / . ll . mit . edu/ IST/ ideval/ data/ data _ [20] Kohavi R, John GH. Wrappers for feature subset selection. Artificial Intelligence Journal, 1997,97(12):27