?

基于BiLSTM和注意力機制的入侵檢測

2020-11-17 06:54豪,王晨,史
計算機工程與設計 2020年11期
關鍵詞:傳輸層準確率分類

舒 豪,王 晨,史 崯

(1.武漢郵電科學研究院 烽火科技學院,湖北 武漢 430000; 2.南京烽火軟件科技有限公司,江蘇 南京 210000)

0 引 言

隨著網絡技術的發展和新型網絡的應用,面對日益復雜的網絡環境和網絡攻擊方式,傳統的網絡安全技術已難以滿足目前人們對于網絡安全和信息安全的需求,因此,網絡入侵檢測成為當前研究的一個熱點[1]。

近年來,機器學習應用于網絡入侵檢測領域的研究已經受到越來越多的關注。與傳統入侵檢測方法不同的是,它是通過對入侵檢測問題重新剖解分析,將其轉變為對模式識別和分類問題的研究,采用機器學習算法構建分類器,對網絡中的正常行為和異常行為進行分類[2,3],有效地提高了檢測率、降低了誤報率。文獻[4]提出了在RNN(recurrent neural network)中應用LSTM(long short-term momery)結構的方法,并通過實驗證明了該方法的有效性。文獻[5]提出了在支持向量機算法的基礎上,利用蟻群算法優化入侵檢測模型的方法,通過蟻群算法確定最優參數,有效地提高了檢測率。文獻[6]設計了一種神經元映射卷積神經網絡,通過將特征數據重構為一個二維的特征矩陣,再由經典的卷積神經網絡架構提取出更抽象魯棒的特征表示,提高了模型的泛化能力。文獻[7]提出了一種深度神經網絡模型來識別網絡數據中的異常,實驗結果驗證了該方法的有效性,提高了檢測率,降低了誤報率。文獻[8]針對全連接神經網絡和遞歸神經網絡在入侵檢測中的特點,提出將LSTM和DNN結合的檢測模型,以尋求模型在識別準確率和訓練所需時間上的一個平衡,通過實驗驗證了模型的有效性。文獻[9]提出了CNN(convolutional neural networks)和雙向LSTM相融合的檢測方法,該方法分別利用CNN和雙向LSTM的特點來獲取特征的局部特性和前后關聯性,并引入注意力機制,增加了對特征重要性的考慮[10],實驗結果表明該方法有較好的檢測性能[11,12]。綜合來看,機器學習方法的引入,有效提高了檢測率,降低了誤報率,但仍存在一定的提升空間,少有如文獻[9]中的方法,考慮屬性前后信息的影響以及對特征的重要性加以關注。

因此,本文提出一種基于BiLSTM和注意力機制的網絡入侵檢測方法,通過BiLSTM網絡充分考慮每個屬性前后信息的影響,經DNN進行特征提取后,利用注意力機制提取顯著性特征。實驗結果驗證了本文所提模型的有效性,與其它方法相比,提高了網絡入侵檢測的準確率。

1 基于BiLSTM和注意力機制的入侵檢測方法

為提高網絡入侵檢測的準確率,本文首先利用數據預處理部分對原始數據進行預處理,使其滿足機器學習算法的輸入數據格式;然后利用BiLSTM-DNN模型對預處理后的數據進行特征提取,并在模型中引入注意力機制以增加對特征重要性的考慮;最后由Softmax分類器輸出分類結果[11,12]。本文方法的原理框架如圖1所示。

圖1 基于BiLSTM和注意力機制的入侵檢測原理框架

1.1 數據預處理

數據預處理主要包含以下3大部分:

(1)數值化。特征數據中有3維特征屬性(protocol_type、service、flag)是字符型特征,采用one-hot方法將字符型特征轉化為數值型特征。

(2)標準化。數據集中同一條記錄的不同特征屬性之間,數值上可能存在較大的數值差異,采用Z-score方法對數值型特征進行標準化處理,公式如式(1)所示

(1)

式中:r為標準化前的數值特征,z為標準化后的值,μ為平均值,s為標準差。

(3)歸一化。將標準化后的數據根據一定的規則,映射到[0,1]區間,x為z歸一化后的值,公式如式(2)所示

(2)

1.2 BiLSTM-DNN模型

BiLSTM-DNN模型由BiLSTM網絡和DNN網絡兩大部分組成,以BiLSTM網絡的輸出作為DNN網絡的輸入的方式連接;模型的輸入和輸出分別用X和P表示,X為經預處理后的數據,P為X經BiLSTM-DNN模型處理后的數據。

1.2.1 BiLSTM網絡

長短時記憶網絡LSTM[13]是一種解決了長序列遠距離傳輸信息丟失的特殊循環神經網絡RNN。LSTM內部結構如圖2所示。

圖2 LSTM內部結構

LSTM模型由一個細胞狀態和3個門控結構(遺忘門、輸入門和輸出門)組成。遺忘門對上一時刻的細胞狀態進行篩選,保留重要信息,遺忘無用信息;輸入門對當前時刻的網絡輸入進行選擇性保留,可有效剔除無用信息;輸出門對細胞的當前狀態選擇性輸出。輸入參數為t-1時刻的細胞狀態Ct-1和隱層狀態ht-1,以及t時刻的輸入序列元素值xt;輸出參數為t時刻的細胞狀態Ct和隱層狀態ht。對應的計算公式如式(3)所示

(3)

式中:Wi、Wf、Wo、Wc分別表示輸入門、遺忘門、輸出門和細胞狀態的權重矩陣;bi、bf、bo、bc分別表示各門控單元以及細胞單元的偏置項;σ表示sigmoid函數;⊙表示參與運算的兩個向量對應元素相乘;tanh表示雙曲正切激活函數[10]。

BiLSTM模型是由一個前向LSTM和后向LSTM組合而成。BiLSTM模型結構如圖3所示。

圖3 BiLSTM網絡部分展開圖

BiLSTM網絡的基本結構可以分為4層,分別為輸入層、正向傳輸層、反向傳輸層和輸出層。輸入層負責對輸入數據進行序列編碼,使輸入數據符合網絡的輸入要求;正向傳輸層負責提取輸入序列從前往后的前向特征;反向傳輸層則負責提取輸入序列從后往前的反向特征;輸出層負責對正向傳輸層和反向傳輸層輸出的數據進行整合[10]。因此,BiLSTM模型對于研究特征間的前后關聯性具有獨特的優勢,輸出公式如式(4)

(4)

1.2.2 DNN網絡

DNN[14]通常也稱為多層感知機(multi-layer perceptron,MLP),它由幾個相互連接的層組成,每層由一定數量的節點組成,稱為神經元。每個神經元都是具有激活功能的基本計算單元。每個神經元的輸入是由上一層的輸出值加權求和得到,而輸出值將作為下一層的輸入。DNN中的層可以分為3類:輸入層、隱藏層和輸出層。神經元的激活函數數學計算公式如式(5)

f(x)=σ(WX+b)

(5)

式中:X為神經元的輸入,W為與輸入對應的權值矩陣,b為偏置量,σ表示sigmoid激活函數。DNN網絡對BiLSTM的輸出H進行進一步處理后,即得到BiLSTM-DNN模型輸出P,并輸入到Attention機制部分中進行重要性計算。

1.3 Attention機制

(6)

式中:Q=K=V=P。利用式(6)對BiLSTM-DNN模型的輸出P進行計算,輸出結果直接輸入到softmax分類器中,進而得到分類結果。

2 實驗分析

2.1 實驗數據集

本文實驗數據采用NSL_KDD數據集[18]。NSL_KDD數據集包含KDDTrain+、KDDTrain+_20Percent、KDDTest+、KDDTest-21這4個子數據集。數據類型可分為5大攻擊類型:Normal、DoS、R2L、U2R、Probe,或者二大攻擊類型:正常類(normal)和攻擊類(attack)。數據集中每條記錄包含41個固定特征屬性和1個類標識,特征屬性中有32個是連續性數據,9個是離散型數據,類標識用于表示記錄所屬攻擊類型。實驗選取KDDTrain+_20Percent為訓練數據,KDDTest+為測試數據,由于沒有驗證集,本文從訓練數據中隨機抽取10%作為驗證數據。實驗數據的類別、數目及比例見表1、表2。

表1 KDDTrain+_20Percent訓練集類別、數量、比例

表2 KDDTest+測試集類別、數量、比例

2.2 評價標準及設置

實驗結果采用準確率(Acc)、精確率(P)、召回率(R)和F1值作為評價指標,公式定義如式(7)

(7)

其中,攻擊類為正類,正常類為負類。TP表示實際和預測均為攻擊類的樣本數;FP表示實際為正常類而預測為攻擊類的樣本數;TN表示實際和預測均為正常類的樣本數;FN表示實際為攻擊類而預測為正常類的樣本數。

由于實驗參數眾多,為了方便實驗和對比分析,實驗中的公共參數設置見表3。

表3 實驗公共參數配置

2.3 實驗結果與分析

為了驗證本文模型的有效性,本文在NSL_KDD數據集上分別進行了二分類和五分類實驗,并通過對比DNN、LSTM和LSTM-DNN方法,來驗證本文所提方法的檢測性能。

分析模型在二分類實驗上的比較結果見表4。

表4 4種方法的二分類實驗結果比較

由表4可以看出,本文提出的方法在二分類問題上,相比于DNN、LSTM和LSTM-DNN方法,具有更高的準確率,達到了79.03%。由于P、R值的矛盾性,單純的從P、R值不足以判定模型的好壞。而F1值是精確率和召回率的權值都為1時的調和平均,通過對比發現,本文方法的F1值也高于對比方法,達到了0.8250。對比圖4發現,利用本文方法得到的AUC值最大,驗證了本文所提方法的有效性,并相對于其它對比方法,具有更好的檢測效果。

圖4 4種方法的ROC曲線

分析模型在五分類實驗上的比較結果見表5。

表5 4種方法的五分類實驗結果比較

由表5可得,本文方法在五分類結果上,準確率同樣高于其它對比方法,達到了73.86%。

3 結束語

本文提出了一種基于BiLSTM和注意力機制的網絡入侵檢測方法,該方法利用BiLSTM網絡充分考慮了每個特征屬性前后信息的影響,再由DNN網絡對特征進行提取,并引入注意力機制,對特征的重要性進行計算。通過在NSL_KDD數據集上的實驗,對比DNN、LSTM和LSTM-DNN方法在二分類和五分類的實驗結果,本文提出的方法準確率更高。然而本文方法存在訓練時間較長的不足,未來還需進一步研究其它機器學習算法,在提高網絡入侵檢測率的同時,也能減少模型的訓練時間。

猜你喜歡
傳輸層準確率分類
分類算一算
乳腺超聲檢查診斷乳腺腫瘤的特異度及準確率分析
不同序列磁共振成像診斷脊柱損傷的臨床準確率比較探討
基于Python語言的網絡傳輸層UDP協議攻擊性行為研究
2015—2017 年寧夏各天氣預報參考產品質量檢驗分析
ZnO電子傳輸層在有機無機雜化鈣鈦礦太陽能電池中的應用
分類討論求坐標
物聯網無線通信傳輸層動態通道保障機制
高速公路車牌識別標識站準確率驗證法
數據分析中的分類討論
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合