第三章 實驗設計
3.2 多階層資料融合研究內容說明
在本研究所提出的兩種實驗架構一開始先投入訓練資料和測試資料,我們針 對KDD Cup’99 資料進行前置處理,檢視 KDD Cup’99 原始資料所擁有的 41 個 特徵資料型態,其中protocol type、services 和 flag 此三種特徵值,以及原資料標 記(label)是屬於文字格式資料。而在進行特徵萃取方法時,必須使用數字型態
35
資料才可以進行萃取方法的運算,為了使KDD Cup’99 資料集可以順利以特徵萃 取方法成功化簡原本結構複雜的特徵合,我們在此步驟將原是文字格式的資料欄 位轉化為數值格式的資料型態。在本論文實驗中我們將資料標記中的正常連線
(原資料標記為 Normal)轉換為數字 0,並把所有攻擊類型統一訂為 Attack 並 轉換為數字1,以便後續支持向量機進行兩類別分類測試。
其次,由於本實驗使用LIBSVM 工具軟體[39]做為支持向量機分類實驗的核 心工具,在LIBSVM 所限定的資料輸入格式中,資料標記欄位必須位於每筆資 料紀錄的第一資料欄位。但是KDD Cup’99 原始資料集中的原資料標記卻位於每 筆資料紀錄的最末資料欄位,因此我們同樣在此步驟中預先將原本位於最後欄位 的資料標記轉移至第一資料欄位。
接著將KDD Cup’99 資料集以所含四種類型特徵值組 Intrinsic、Content、
Host-base、Time-base 進行分群(其中 Content Host-base 和 Time-base 是從以內容 為基礎之網路連線特徵群組再加以分類),使用DA、LR、MLR 重要特徵萃取技 術進行重要特徵萃取,利用SPSS 統計軟體進行分析,透過特徵篩選進而獲得多 套不同的重要特徵組合子集合,最後依據所獲得的重要特徵子集合各別進行支持 向量機分類模組訓練與測試。
影響支持向量機總體預測正確率的因素便是在訓練分類模組時所使用的核 心函數。如何選擇一個合適的核心函數沒有一個很明確的選擇指標。但依據研究 學者Smola,於 1998 年所提出的研究指出,認為如果對資料的性質沒有任何事 先認知時,使用高斯函數(即LIBSVM 中的 RBF 核心函數),會得到較佳的預 測結果[27]。此概念於該次研究中被以實驗的方式對高斯函數和多項式函數等不 同核心函數進行效能比較,結果不論是訓練效率和資料判定的正確度而言,均是 高斯函數略勝一籌。因此本研究以RBF 核心函數,做為本研究模組訓練核心函 數。另外,我們使用了3 種不同的重要特徵萃取技術,將分群後的 4 個特徵群組 分別化簡成12 個不同的重要特徵集合,並以此進行了 12 次獨立的分類模組訓練 與測試也因此得出了12 份分類測試結果,作為貝氏平均階段的輸入資料。
36
支持向量機的分類模型測試所輸出的結果檔案之中,會包含支持向量機對每 一筆資料可能所屬類別之可能機率(probability),而各類別的可能機率相加總和 必為1,並採以具有最高可能機率的類別做為分類判定結果。其中 Label 0 表示 正常事件,Label 1 則是代表攻擊事件。其結果檔案輸出格式範例如下:
Label 0 1
0 0.95183247 0.04816753 1 0.13527983 0.86472017 0 0.5 0.5
範例中的第一筆結果記錄,歸屬於類別0(normal)的可能性為 0.95183247 大於 類別 1(attack)的可能性 0.04816753,因此支持向量機會判斷該筆資料屬於 0 類別,並給定分類標記(Label)0;反之第二筆結果記錄則判定為 1 類別,並給 定分類標記 1(如第二筆結果紀錄)。但在第三筆結果記錄中,兩類別的可能性 相同(同為0.5),此時在支持向量機的分類法則中,會以第一個類別標記為預設 判定類別而將該筆資料判定屬於類別0,並給定分類標記 0。
使用不同特徵組合所建置的分類器的分類精準度不盡相同,而且同一分類器 面對不同類別資料的分類精準度也不同,沒有哪一個分類器可以達到全面高偵測 正確率,本研究利用其中所存在著的互補性以資料融合方式增進分類準確度。
以BDF、MBDF 和 TDFM 而言,在 Dempster-Shafer Theory 融合階段採取階 層式融合方式將貝氏平均法所得到的資料分類結果經過 Dempster-Shafer Theory 融合演算法。使用Dempster-Shafer Theory 必須輔以確定性度量(certainty measure, cm)用於確認分類器所得到的輸出結果真確性強度。經由貝氏平均融合法所得 到的輸出結果真確性因不同分類測試結果合併可能相同也可能有差異性,我們必 須為不同的方法找到其cm 值,這將會影響 Dempster-Shafer Theory 融合後結果優 劣的表現和修正貝氏平均融合法之結果。本研究透過測試資料的預測結果選用區
37
間判斷正確率來當作本實驗 D-S 融合演算法的 cm 值,本研究中所謂的區間指 的是分類器對每一筆訓練資料在所屬分類類別上所評估的可能機率值,這裡的每 一筆可能機率值都會界於0~1 之間。
首先將分類器輸出判定為正常或是異常類別的可能機率以每 10%為一個單 位分成 1~10 個區間,假設落於區間 0%~10%資料判對筆數為 m1 而落在區間 0%~10%之資料總數為 t1。m1_t11 表示在 0%~10%區間分類器判定之確定性度 量 。count_range1_correct_1 表示在 0%~10%之間正確判定資料總合。count _range1_all_1 表示在 0%~10%之間所有的數量總和,當 count_range1_all_1 = 0,
則令m1_t1 = 0.5 以避免計算錯誤 overflow)。:
m1_t1= (count_range1_correct_1) / (count_range1_all_1) (18) 透過cm 值的計算和 D-S 融合對資料進行重新判定,在階層式融合中找出偵 測最佳解。最後對分類結果做分析,驗證兩次融合之偵測正確率是否有改善,並 記錄兩次資料融合階段所耗費時間用來評估時間與偵測結果關係,此為本研究所 提出的Bayesian-Dempster fusion(BDF)。
圖 3-3 與圖 3-2 最大差別在於貝氏平均融合階段的處理,前者是將使用不同 特徵群組搭配相同特徵選取方式進行結合;而後者則是以同一個特徵群組搭配不 同特徵選取方式進行融合(Multiple Bayesian-Dempster fusion, MBDF),透過以不 同差異度特徵萃取所比較融合偵測結果和效率。
圖3-4 所架構的實驗,與[32]差異在於多加入 LR 特徵選取法,透過六套特 徵選取方法分別為DA、GA、LR、MLR、RST 以及 PCA 進行融合,利用支持 向量機分類模型測試動作後,輸出用來判定分類結果的可能機率值,藉由訂定可 能區間範圍(20%~90%)並將資料抽取出進行資料重新判定,藉此提昇偵測正 確率。圖3-5 以 Dempster-Shafer 進行資料融合,採取逐步融合方式記錄偵測正 確率結果,將最佳預測確率做為該實驗最終結果。兩者的共同缺點便是需要耗費 較多預測時間和利用較多的特徵選取方式來達到高偵測正確率。因此,本研究提 出以較少的特徵選取方法結合多階層式資料融合,以改善偵測時間冗長的缺點。
38
訓練資料 測試資料
資料前處理
Result Time-based
Host-based Content Intrinsic
DA、LR、MLR特徵選取
Time-based DA、LR、
MLR result Host-based
DA、LR、
MLR result
Content DA、LR、
MLR result
Intrinsic DA、LR、
MLR result
階層式D-S融合 支持向量機驗證
貝氏AVG融合
圖3-2:BDF 實驗流程圖
39
圖3-3:MBDF 實驗流程圖
40
圖3-4:TDMF 實驗流程圖
41
測試資料 訓練資料
資料前處理
DA、GA、LR、MLR、PCA、RST 特徵選取
支持向量機驗證
Dempster-Shafer融合法
Result DA、GA、LR、
MLR、PCA、RST 驗證結果
圖3-5:Dempster-Shafer 融合流程圖
42