程磊,滿穎慧
(陸軍軍事交通學院鎮江校區,江蘇 鎮江 212000)
深度學習是機器學習領域的一個分支[1],相較于傳統機器的學習技術,深度學習可以更加高效地學習樣本數據的內在規律,當其應用于入侵檢測系統時能夠充分地挖掘流量數據中蘊含的各種信息,大幅提高系統檢測精度,降低系統的檢測成本。常用深度學習算法有卷積神經網絡(Convolutional Neural Network,CNN) ,循環神經網絡(Recurrent Neural Network,RNN) ,深度信念網絡(Deep Belief Network,DBN) 等。通常入侵檢測系統訓練深度學習模型時對樣本數據的規模以及分布情況都有一定的要求,而當前網絡攻擊手段變化較快,且網絡數據中正常樣本數據較多,異常樣本數據較少,樣本數據分布不平衡,導致可用訓練樣本較少,這就需要入侵檢測系統能夠具備小樣本訓練的能力。
可靠標簽選擇與學習的半監督學習算法Reliable Label Selection and Learning Base Algorithm for Semi-Supervised Learning,ReLSL) 可以進一步降低半監督算法對標記數據的依賴,避免由于初始信息量較少導致的模型啟動困難以及偽標簽噪聲比困難導致的模型崩潰等情況,提高檢測準確率[2]。本文對ReLSL 算法進行了研究,并通過自適應的方法對ReLSL算法中部分超參數進行了優化,提出了一種基于可靠標簽選擇與學習的自適應半監督學習算法的網路入侵檢測模型(Reliable Label Selection and Learning Base Algorithm for Adaptive Semi-Supervised Learning,ReLASL) ,相較于入侵檢測系統常用的深度學習模型,該模型能夠適應網絡數據分布不均衡的特點,可以通過較少的訓練樣本標簽實現快速、準確地識別網絡行為。
ReLSL算法將半監督學習(Semi-Supervised Learning,SSL) 問題轉化為在數據集Α上訓練深度學習神經網絡?(?),用于C分類問題[2],數據集Α包括無標簽數據集與標簽數據集,其中,為標簽,通過one-hot向量表示,維度為C,在極少標簽樣本情況下,即KM< 特征提取與基于圖的標簽傳染主要目的對無標簽樣本進行標定,主要分三個步驟,一是特征提取,即使用(Anchor Neighborhood Discovery,AND) 算法提取數據集Α 特征ei=φ(xi),其中φ(?)為AND 網絡,采用了ResNet50結構;二是計算相似度,即采用式(1) 根據提取特征計算樣本相似度矩陣S,并通過式(2) 對S進行規范化處理。 其中,α為超參數,值越大代表樣本特征距離越大,相似度越小。 三是標簽樣本標定,即通過式(3) 獲取偽標簽隸屬度向量。 其中,γ表示跳向相鄰節點概率,I為單位矩陣,Y與Y′是維度相同的初始化標簽矩陣,當獲得Y′后,還需將其徹底轉化為one-hot 向量,最終處理得到標簽樣本矩陣。 由于初始的訓練標簽樣本不足,僅通過標簽傳染的方式還無法保證偽標簽標定的準確率,因此需要對偽標簽樣本~Y'進行再學習與重新標定,ReLSL算法應用WRN-28-2 網絡結構訓練模型φ(?),并引入一致性懲罰項對φ(?)損失函數進行優化,如式(4) 所示: 為進一步準確挑選正確標記樣本,算法通過記錄樣本訓練后期的輸出損失,綜合訓練損失的均值與方差,確定最終的標簽樣本,即由式(5) 確定標簽樣本。 其中,lossce(-ep:)表示樣本xi在模型訓練最后h次迭代獲得的損失。 ReLSL算法計算每個訓練樣本的chi值后,以此為依據,對φ(?)輸出的one-hot 標簽進行排序,并保留前m 個樣本,其余樣本重新標定為未標記樣本,則最終標定訓練數據集記為Α′ 標簽數據集為無標簽數據集為,,在極少標簽條件下 ReLSL算法使用LS與MSC策略進行半監督學習,LS策略是為緩解由錯誤標記導致的無法修正問題,即對Α′M樣本中標簽yi進行等比例平滑,如式(6) 所示。 其中: ε為平滑系數,隨迭代逐漸變小,η為0 到1 之間的均勻采樣隨機數,λ為平滑因子,λ值越小,則輸出的向量越平滑。針對yi,ReLSL 算法則是采用了指數加權平均操作,即對樣本每次的輸出結果進行了加權平均: 其中,?(xi)表示樣本xi在模型φ(?)訓練時第t-1次迭代時的輸出向量,為樣本xi在第t-1次迭代時的移動平均值,δ為動量權重,主要用于控制更新力度。MSC 策略主要為降低錯誤標簽以及擾動對模型訓練的影響,首先通過式(8)對數據集Α′中每個樣本在Softmax的輸入向量進行指數加權平均操作。 進而對每一虛擬類中的輸出進行平均操作,而對于無標簽數據∈ΑN的輸出向量,ReLSL算法采用了損失函數式(9) 進行了偏移校正。 ReLASL入侵檢測模型充分利用ReLSL算法小樣本訓練的優勢的同時根據網絡樣本數據分布情況,改進了ReLSL 算法超參數設置方法,保證能夠快速、高效地檢測網絡異常數據。 相對于ReLSL,ReLASL 僅對特征提取與標簽傳染、偽標簽學習與標定進行了改進,因此僅對改動部分做具體介紹。 本文特征學習方法同樣選用AND 算法,采用ResNet50 結構提取訓練樣本特征值,獲取特征。由于網絡樣本數據量較大,相同類型的數據特征值之間的距離差較大,無法通過簡單的特征值距離計算相似度矩陣?,因此引入樣本特征值平均距離的概念改進式(1) 超參數α取值,通過該樣本特征值與其他樣本特征值平均距離決定對遠距離樣本的敏感程度,當樣本特征值距離小于樣本平均特征距離時,特征距離相差較大樣本相似度越小,反之,特征距離相差較大樣本相似度越大。如式(10) 所示。 而后通過式(2) 與式(3) 獲取穩定的標簽矩陣Y′,并按照原方法將其處理生成標簽樣本。 為進一步提高偽標簽標定的準確率,同樣采用WRN-28-2 網絡結構訓練模型φ(?),并引入一致性懲罰項對φ(?)損失函數進行優化,通常網絡異常數據占比較小,噪聲數據較多,增加了訓練的不確定性,因此在偽標簽學習與標定階段,通過構建的異常數據集,以降低噪聲樣本的影響。異常數據集主要通過不斷積累歷史訓練樣本中的異常數構建而成,因此對式(4)中超參數β賦值如下: 當樣本xi與平均距離較大,表示xi為噪聲樣本可能性較大,則損失函數需更加關注對標簽的一致程度,反之,則更應關注其對樣本的輸出穩定性。 為進一步提高模型訓練的效率,縮短模型收斂的時間,對損失函數中的超參數?進行了進一步的優化,如式(12) 所示: 其中,Maxepoch為訓練最大迭代次數,Currentepoch為當前迭代次數,從而引導損失函數先進行大幅度偏移校正快速接近收斂區域,再進行小幅度偏移校正保證損失函數能夠更快地達到收斂狀態。 基于ReLASL 網絡入侵檢測模型訓練過程如下所示: 輸出:訓練完成的ReLASL入侵檢測模型; 1) 采集網絡數據并對數據進行預處理,構建onehot向量表示的入侵數據集。 2) 采用AND 算法提取樣本特征值(ResNet-50結構)。 3) 采用式(10) 計算特征值相似度矩陣,通過式(2)與式(3) 獲取穩定的標簽矩陣Y′,并對其中的無標簽樣本進行處理,通過最大值將其轉化為one-hot向量,最終獲得標簽矩陣。 4) 采用WRN-28-2網絡結構訓練模型φ(?),其中優化函數為式(4) 、式(11) ,并通過式(5) 最終確定標簽樣本。 5) 根據式(6) 最確定的標簽樣本進行平滑操作后代入監督學習losssl中進行訓練,同時將式(9) 與式(12)代入半監督學習lossssl中進行優化。 6) 采用訓練模型進行網絡異常數據檢測。 為驗證本文提出入侵檢測模型,使用KDD99數據集進行評價[3],該數據集包含了500多萬數據,其中每個數據集包含了1 個標簽與41 個特征。本文使用了9 469 個訓練數據和93 653 個測試數據,其中訓練數據包括了8 220個無標簽數據以及1 249個標簽數據,具體數量見表1所示。 表1 數據訓練量 KDD99數據集包含了數值與字符特征,無法直接使用數據集進行訓練檢測,需進行預處理操作。 1) 數值化 KDD99 數據集中的字符型特征需進行數值化處理,因此采用屬性映射的方式對標簽protocol_type、service、flag、class進行數值化轉換。 2) 歸一化 對數值化處理后的數據進行歸一化處理,保證數據處于[0,1]之間,如式(13) 所示為歸一化公式: 其中,Rawdata為數據集中各字段所對應的入侵屬性數據,Rawmindata表示該字段所對應的最小入侵屬性數據,Rawmindata表示該字段所對應的最大入侵屬性數據。Normaldata表示歸一化處理后的入侵屬性數據。 為驗證ReLASL入侵檢測模型性能與常用半監督分類方法SWCMR[3]、ML-LOC[4]、SSWL[5]以及ReLSL[2]在KDD99數據集中進行對比,結果如表2所示。 表2 檢測性能表 與ReLSL相比,ReLASL入侵檢測模型,結構更加優化,參數自動化程度更高,從表2可以看出,ReLASL的檢測性能更優,此外,相較于其他半監督檢測方法,ReLASL 模型的檢測性能也達到了更優的效果,且具備了較好的小樣本訓練的能力,在復雜網絡環境中,更具有一定的競爭力。 針對網絡數據變化快,可用訓練樣本少且樣本數據分布不均勻的情況,提出了一種基于ReLASL 算法的入侵檢測模型,以提高入侵檢測模型的小樣本訓練的能力。 模型以ReLSL算法為基礎,對ReLSL算法中特征提取與標簽傳染階段以及偽標簽學習與標定階段的中超參數進行了自動化改進,并將改進后的ReLSL算法應用于網絡入侵檢測中,提高了模型在小樣本不均勻分布數據中的檢測性能,從而使模型具備了一定的能夠識別未知攻擊的能力。 實驗結果表明,ReLASL 入侵檢測模型在實時的網絡入侵檢測中能夠更準確地分辨攻擊類型,與常用的檢測模型相比,其能夠顯著的提高入侵檢測模型對小樣本不均衡數據的檢測性能。但ReLASL算法步驟較多,需進一步降低算法的復雜度,進一步優化算法的整體框架。1 ReLASL入侵檢測模型
1.1 特征提取與標簽傳染
1.2 偽標簽學習與標定
2 實驗結果及分析
2.1 數據

2.2 數據預處理
2.3 實驗結果

3 結束語