張 茹, 趙利輝, 董和磊
(1.中北大學(xué) 軟件學(xué)院, 山西 太原 030051; 2.中北大學(xué) 儀器與電子學(xué)院, 山西 太原 030051)
隨著(zhù)網(wǎng)絡(luò )在社會(huì )生活服務(wù)中應用程度的不斷加深, 網(wǎng)絡(luò )攻擊已嚴重威脅基于網(wǎng)絡(luò )的社會(huì )基礎設施和公民信息安全, 及時(shí)檢測網(wǎng)絡(luò )攻擊不僅是保障國家基礎設施安全和國民信息安全的基礎措施, 而且是網(wǎng)絡(luò )安全研究的重要內容[1]。入侵檢測系統(Intrusion Detection System, IDS)能夠有效檢測出網(wǎng)絡(luò )攻擊[2], 而入侵檢測模型則是影響其檢測性能的關(guān)鍵因素, 隨著(zhù)機器學(xué)習、深度學(xué)習技術(shù)的不斷發(fā)展, 入侵檢測模型也隨之不斷更新。
目前, 已有許多學(xué)者將機器學(xué)習方法引入到IDS研究中, 如支持向量機[3-10](Support Vector Machine, SVM)、隨機森林等。機器學(xué)習在IDS中的研究主要分為3種: 結合優(yōu)化算法、集成多種機器學(xué)習算法和融合深度學(xué)習技術(shù)。針對SVM模型收斂較慢的問(wèn)題, 陳晨等[3]、馬占飛等[4]、王華忠等[5]、莊夏[6]分別提出PSOGWO-SVM模型、IPSO-SVM模型、IWOA-SVM模型和BMIFS-SVM模型進(jìn)行檢測, 并分別使用粒子群優(yōu)化算法、改進(jìn)鯨魚(yú)優(yōu)化算法來(lái)優(yōu)化SVM模型的懲罰參數和內核參數, 以加快模型的尋優(yōu)能力和收斂速度, 仿真實(shí)驗均可表明優(yōu)化算法可以提高模型的檢測性能和收斂速度[7]。針對單一機器學(xué)習算法檢測性能較低的問(wèn)題, 池亞平等[8]、付子爔等[9]集成多種機器學(xué)習算法有效提升了模型的檢測性能。其中, 池亞平等[8]將Adaboost算法與SVM進(jìn)行了集成, 付子爔等[9]在SVM和K近鄰算法基礎上融入增量學(xué)習的IL-SVM-KNN模型, 實(shí)驗結果表明對比單一機器學(xué)習算法, 多算法集成能夠提升檢測速度和性能。另外, 也有學(xué)者通過(guò)深度學(xué)習技術(shù)改進(jìn)SVM模型以提升檢測性能, 如宋勇等[10]提出基于深度學(xué)習的網(wǎng)絡(luò )入侵檢測方法(AE-SVM), 通過(guò)改進(jìn)的自編碼網(wǎng)絡(luò )確定深度模型隱藏層的節點(diǎn)個(gè)數, 有效提升了模型的檢測性能。實(shí)驗結果表明, 深度學(xué)習技術(shù)與SVM的融合能夠提升檢測性能, 但存在訓練時(shí)間長(cháng)、實(shí)時(shí)性較差等問(wèn)題。為解決該問(wèn)題, 互信息、主成分分析等方法被用來(lái)降低原始數據維度, 進(jìn)而達到減少訓練時(shí)間的目的。
針對IDS網(wǎng)絡(luò )流量維度高, 檢測模型泛化性差等問(wèn)題, 本文提出基于機器學(xué)習和鯨魚(yú)提升算法的混合入侵檢測模型(Hybrid Intrusion Detection Model, 簡(jiǎn)稱(chēng)HIDM), 主要工作包括: 1)特征選擇階段, 通過(guò)對比皮爾遜相關(guān)系數和互信息理論的特征提取能力確定了特征選擇模塊, 有效壓縮了訓練時(shí)間;2)模型構建階段, 針對模型泛化性較差的問(wèn)題結合多項式核函數(Polynomial Kernel Function, PKF)和高斯核函數(Radial Basis Function, RBF)構建了混合核函數改進(jìn)最小二乘支持向量機模型(Least Square Support Vector Machine, LSSVM)實(shí)現了入侵行為的檢測;3)模型參數優(yōu)化階段, 提出基于非線(xiàn)性遞減因子和自適應權值策略改進(jìn)的鯨魚(yú)提升算法(Whale Lifting Algorithm, WLA)實(shí)現檢測模型的優(yōu)化, 有效解決模型陷入局部最優(yōu)的問(wèn)題, 進(jìn)而提升模型的檢測精度。
互信息(Mutual Information, MI)[11]用來(lái)衡量?jì)蓚€(gè)變量之間的相關(guān)性, MI值越大, 表示兩者的相關(guān)性越高。本文利用MI值來(lái)表征網(wǎng)絡(luò )數據流中各特征對于標簽的貢獻率, 選擇MI值大的特征進(jìn)入模型可以達到數據降維和縮短訓練時(shí)間的目的。
互信息定義為I(X;Y), 具體見(jiàn)式(1), 其中p(x,y)表示特征X和特征Y的聯(lián)合分布,p(x)和p(y)分別表示特征X和Y的邊緣分布。
I(X;Y)=H(X)+H(Y)-H(X,Y)=
(1)
LSSVM[12]是將SVM[13]的非等式約束替換成等式約束進(jìn)行求解, 可用數學(xué)符號表示為
(2)
式中:w,b分別表示權重系數和隨機偏置;xi表示第i條網(wǎng)絡(luò )流量數據;yi表示第i條數據的標簽類(lèi)型, 其中, 0為正常, 1為異常, 即yi∈{0,1},xi=(Xi1,Xi2,Xi3,…,Xim)且xi∈Rm,m表示特征維度數量;N表示數據量大小;ei表示誤差項。
利用拉格朗日乘子法對其求解, 可得到回歸函數, 具體可以表示為式(3), 其中K(x,xi)為線(xiàn)性核函數,f(x)函數的具體計算方法見(jiàn)式(4)。
(3)
(4)
由于LSSVM模型的性能受到核函數的限制, 為了保證LSSVM模型的檢測性能和泛化性, 本文通過(guò)線(xiàn)性組合PKF核函數和RBF核函數構建了混合核函數, 利用PKF全局核函數保證模型泛化性的同時(shí)利用RBF核函數保證模型具有更好的學(xué)習能力, 混合核函數如式(5)所示, 其中,λ∈[0,1], 表示混合核函數的權重系數,KPKF(x,xi)和KRBF(x,xi)分別表示多項式核函數和高斯核函數, 具體計算方法見(jiàn)式(6), 式(7)。用式(5)替換式(3)中原始的線(xiàn)性核函數, 即可得到混合核最小二乘支持向量機(Hybrid Kernel LSSVM, HKLSSVM)模型。
K(x,xi)=λKPKF(x,xi)+(1-λ)KRBF(x,xi),
(5)
KPKF(x,xi)=(μxTxi+r)d,μ>0,
(6)
(7)
式(6)中的μ表示PKF核函數參數, 本文取值為0.5,r是一個(gè)常數項, 本文取r=0,d表示核函數的階數;式(7)中的δ表示RBF核函數的寬度, 可通過(guò)WLA尋找最優(yōu)參數。
鯨魚(yú)優(yōu)化算法[14](Whale Optimization Algorithm, WOA)是模仿自然界中鯨魚(yú)種群圍捕機制的智能優(yōu)化算法, 本文提出利用自適應權重策略和非線(xiàn)性遞減因子分別改進(jìn)WOA算法中存在的易陷入局部最優(yōu)和搜索速度較慢問(wèn)題, 形成WLA算法, 它主要包括包圍階段、捕食階段、搜索階段三個(gè)階段。
1.3.1 包圍階段
WLA算法假設當前解為“最佳搜索代理”, 定義為X*(t), 搜索空間中的其它解為“搜索代理”, 定義為X(t), 包圍階段其它“搜索代理”向“最佳搜索代理”靠近的位置更新方法見(jiàn)式(8)和式(9)。
D=|CX*(t)-X(t)|,
(8)
X(t+1)=X*(t)-A·D,
(9)
式中:t是當前迭代次數;A,C是系數向量,A的計算方法見(jiàn)式(10), WOA算法的a在迭代過(guò)程中從2線(xiàn)性下降至0, 迭代較慢, WLA提出非線(xiàn)性遞減因子來(lái)加快搜索速率, 收斂因子隨迭代次數的增加呈現加速遞減趨勢, 從而保證優(yōu)化算法的搜索速度, 計算方法見(jiàn)式(11), 式(11)中k表示迭代指數, 為[2,3]之間的隨機數,C的計算方法見(jiàn)式(12),r為[0,1]之間的隨機向量。
A=2ar-a,
(10)
(11)
C=2r。
(12)
1.3.2 捕食階段
WLA算法在捕食階段融合了收縮包圍機制和螺旋更新包圍機制。收縮包圍機制是a線(xiàn)性縮小實(shí)現收縮, 螺旋更新包圍機制是結合“搜索代理”(X,Y)與“最優(yōu)搜索代理”(X*,Y*)之間的距離D′, 利用等式(13)和式(14)實(shí)現螺旋狀移動(dòng), 其中,b為常數,l是[-1,1]之間的隨機數。螺旋更新包圍機制的示意圖如圖1 所示。
圖1 螺旋更新包圍機制示意圖
X(t+1)=D′eblcos(2πl)+X*(t),
(13)
D′=|X*(t)-X(t)|。
(14)
引入概率p作為包圍機制選擇的標準, 若p<0.5, 選擇收縮包圍機制, 否則選擇螺旋更新包圍機制, 具體可表示為式(15), 其中p為[0,1]之間的隨機數。
X(t+1)=
(15)
為改善WOA算法容易陷入局部最優(yōu)的情況, WLA算法提出利用自適應權重策略引入權重w降低“最佳搜索代理”對當前“搜索代理”的影響, 進(jìn)而實(shí)現跳出局部最優(yōu)的效果。w計算方法見(jiàn)式(16)。
(16)
將自適應權重策略應用到位置更新過(guò)程中, 其改進(jìn)后的計算公式為式(17)和式(18)。
X(t+1)=w(t)X*(t)-A·D,
(17)
X(t+1)=D·ebl·cos(2πl)+w(t)X*(t)。
(18)
1.3.3 搜索階段
除了收縮包圍機制和螺旋更新包圍機制結合的局部搜索策略之外, 還需要通過(guò)隨機搜索實(shí)現全局搜索, 具體可以用式(19)和式(20)描述,Xrand(t)是搜索空間中隨機選擇的“搜索代理”, 當|A|>1 時(shí)選擇全局搜索,|A|<1 時(shí)選擇局部搜索。
D=|CXrand(t)-X(t)|,
(19)
X(t+1)=Xrand(t)-AD。
(20)
WLA優(yōu)化算法流程如圖2 所示。
圖2 WLA優(yōu)化算法流程圖
WLA算法的整體步驟包括:
Step1: 初始化位置信息;
Step2: 計算每個(gè)可行解的適應度, 保存當前“最佳搜索代理”(以分類(lèi)準確性作為適應度);
Step3: 用式(11)~式(12)計算參數a、系數向量A,C;
Step4: 判斷是否滿(mǎn)足p<0.5, 是則轉入Step5, 否則采用式(17)進(jìn)行位置更新;
Step5: 判斷是否滿(mǎn)足|A|<1, 是則按式(18)更新位置;否則按式(19)和式(20)更新位置;
Step6: 位置更新結束, 判斷是否有更高的適應度, 有則進(jìn)行替換, 否則不更改;
Step7: 判斷迭代次數是否超出閾值, 是則保存對應的最優(yōu)參數, 否則轉Step3。
本文利用WLA算法優(yōu)化HKLSSVM模型的懲罰參數γ和內核參數δ, 構建HIDM模型, 該模型主要包括3個(gè)部分: 特征選擇模塊、HKLSSVM模型、WLA參數優(yōu)化模型參數, 具體框架圖如圖3 所示。
圖3 HIDM檢測模型流程圖
HIDM模型構建過(guò)程主要包括:
Step1: 導入數據并進(jìn)行數據預處理;
Step2: 利用MI理論和Pearson系數計算各特征和標簽的相關(guān)度, 并選擇相關(guān)度≥0.2的特征作為HKLSSVM的輸入, 選擇檢測效果更好的方法作為HIDM的特征選擇模塊;
Step3: 采用最優(yōu)參數訓練HKLSSVM檢測模型;
Step4: 采用測試集進(jìn)行模型評估。
為了驗證HIDM模型的正確性, 本文采用NSL-KDD網(wǎng)絡(luò )流量數據集[15]的部分數據進(jìn)行仿真實(shí)驗, 該數據集有41列特征和1列標簽。本文隨機選取5 000條數據進(jìn)行仿真實(shí)驗, 其中4 000條數據作為訓練集, 1 000條數據作為測試集。參與仿真實(shí)驗的數據具體分布情況如表1 所示。
表1 實(shí)驗數據分布
二值轉換: 由于數據集[15]的“Protocol” “Service” “Label”都是字符型, 其它的39維特征都是數值型, 本文采用字典的鍵值對實(shí)現字符型特征到數值特征的轉換, 將“Protocol”特征的3種類(lèi)型tcp, udp, icmp分別轉換成0, 1, 2;“Service”特征的70種類(lèi)型aol, …, Z39~Z50分別轉換成0, …, 69;“Label”標簽的normal類(lèi)型轉換成0, 其它類(lèi)型轉換成1。
歸一化: 由于數據集中的“duration” “num_compromised”等特征列的數值分布范圍較廣, 最大達到381 709 090.0, 最小達到0.0, 所以, 在運算過(guò)程中容易造成計算量大、訓練時(shí)間長(cháng)或者數據溢出、保留結果不精確等問(wèn)題, 本文采用式(21)進(jìn)行處理。
(21)
式中:x表示樣本值;xmax,xmin分別表示樣本數值中的最大值、最小值。
由于原始數據集包含41維特征, 每個(gè)特征對于標簽的貢獻率參差不齊, 在模型訓練之前進(jìn)行特征選擇, 可以提取強相關(guān)特征。本文分別利用互信息理論和Pearson系數[16]計算各特征對于標簽的貢獻率, 以此作為特征選擇的依據。各特征與標簽之間的互信息值(MI值)和Pearson系數(P值)如表2 所示。
表2 各特征與標簽之間的相關(guān)性
由表2 可知, 有10個(gè)特征的MI值≥0.2, 有12個(gè)特征的P值≥0.2, 明顯高于剩余特征的貢獻率, 分別選擇MI值≥0.2的10維特征和P值≥0.2的12維特征進(jìn)行訓練, 將訓練后的檢測準確率分別記為AccMI和AccP, 若AccMI≥AccP, 則選擇MI方法構建HIDM, 反之, 則選擇Pearson作為HIDM模型特征選擇模塊。
HIDM模型性能評價(jià)指標包括混淆矩陣、準確率、檢測率和誤報率?;煜仃嚤硎救绫? 所示, 準確率、檢測率和誤報率的計算方法見(jiàn)式(22)~式(24)。
表3 混淆矩陣
(22)
(23)
(24)
為驗證本文提出的HIDM模型, 基于表4 所示的仿真環(huán)境配置表進(jìn)行了仿真實(shí)驗。HIDM模型利用WLA算法尋優(yōu)的參數范圍設置以及最佳檢測性能對應的參數值如表5 所示。
表4 HIDM仿真環(huán)境配置表
表5 HIDM模型的參數列表
將WLA算法尋找到的最優(yōu)參數代入到LSSVM模型中進(jìn)行測試, 測試結果和原始標簽構成的混淆矩陣如圖4 所示。
圖4 HIDM模型測試集混淆矩陣
基于混淆矩陣, 通過(guò)式(22)~式(24)計算得到的準確率、檢測率、誤報率等指標結果如表6 所示。
表6 HIDM模型的仿真測試結果
本文分別使用MI理論和Pearson系數衡量各特征和標簽的相關(guān)性, 選取相關(guān)性≥0.2的特征作為模型的輸入, 以模型檢測準確率作為評比標準, 選擇檢測性能更好的方法完成特征選擇。表7 列出了利用MI理論進(jìn)行選擇的10維特征和利用Pearson系數進(jìn)行選擇的12維特征。
表7 NSL-KDD數據集上選擇的特征及排序
為了驗證互信息理論特征選擇的正確性, 本文對比了未進(jìn)行特征選擇的模型(HKLSSVM)、MI理論進(jìn)行特征選擇的模型(M-HKLSSVM)和Pearson系數進(jìn)行特征選擇的模型(P-HKLSSVM), 仿真結果如圖5 和表8 所示。
表8 特征選擇對模型檢測性能影響的對比表
圖5 特征選擇對模型檢測準確率影響的對比圖
由圖5 可知, 將前100條測試數據輸入至訓練好的HKLSSVM和P-HKLSSVM模型中, 檢測率達到98%, 而M-HKLSSVM模型可以達到99%;測試數據達到200時(shí), 檢測準確率分別達到96.5%, 97.5%和98%;隨著(zhù)測試樣本的增加, 各模型檢測率會(huì )稍稍下降, 但整體對比可以發(fā)現, M-HKLSSVM模型對比P-HKLSSVM模型和HKLSSVM模型, 其檢測準確率曲線(xiàn)始終高于另外兩者, 即它具有更好的檢測性能。
結合表7 和表8 可知, M-HKLSSVM模型與HKLSSVM模型對比, MI選擇保證輸入特征列數最少, 進(jìn)而保證模型訓練時(shí)間(迭代100次的總時(shí)間)大幅降低, 并且M-HKLSSVM模型準確率對比其它兩個(gè)模型分別提升了0.2%和0.7%, 因此, 本文使用MI理論完成特征選擇, 所構建的HIDM模型能夠有效提升檢測性能, 降低訓練時(shí)間。
本文使用WLA算法對模型參數進(jìn)行了尋優(yōu)處理, 為驗證WLA算法的參數優(yōu)化能力, 對比了利用WLA算法構建的HIDM模型和WOA算法構建的M-WOA-HKLSSVM模型, 其仿真結果如圖6 和表9 所示。
表9 WLA算法對模型檢測性能影響的對比表
圖6 WLA算法對模型檢測準確率影響的對比圖
由圖6 可知, WLA算法進(jìn)行模型參數優(yōu)化的檢測準確率曲線(xiàn)始終高于WOA算法進(jìn)行模型參數優(yōu)化的結果, 即WLA算法在模型優(yōu)化中具有更大的優(yōu)勢, 更能提升模型的檢測性能, 并能有效降低模型的誤報率。由表9 可知, HIDM模型比M-WOA-HKLSSVM模型的檢測率提升了0.2%, 時(shí)間縮短了12%左右。顯然, 非線(xiàn)性遞減因子可以有效加快搜索速率, 降低訓練時(shí)間。
本文為了提升模型泛化性, 使用多項式核和高斯核線(xiàn)性組合構建了混合核, 并利用其替換了標準LSSVM的線(xiàn)性核。為了驗證混合核對模型泛化性的影響, 本文基于CICIDS2018數據集選擇互信息值≥0.2的特征列(71,1,69,68,38,37,5,64,6,66,70,42,9,13,7,65)進(jìn)行了對比實(shí)驗, 對比結果如表10 所示。
表10 HIDM模型泛化性驗證結果的對比表
由表10 可知, HIDM在NSL-KDD數據集和CICIDS2018數據集上均可以取得較高的檢測率和準確率, 以及較低的誤報率;對比單純的線(xiàn)性核、多項式核和高斯核, 混合核具有更高的檢測效果, 因此, 混合核可以有效提升模型的準確性和泛化性。
為進(jìn)一步驗證HIDM模型性能, 本文對機器學(xué)習算法BMIFS-LSSVM[6]和深度學(xué)習算法Bi-LSTM[17]進(jìn)行了仿真, 并將3種模型進(jìn)行了對比, 結果分別如圖7 和表11 所示。
表11 HIDM模型與其他模型檢測性能的對比表
圖7 HIDM模型與其他模型檢測性能的對比圖
由圖7 可知, 對比左側兩組柱狀體(ACC, DR), HIDM模型最高, 對比最右側柱狀體(FPR), HIDM模型最低, 即HIDM模型在檢測率、準確率和誤報率方面均比Bi-LSTM模型和BMIFS-LSSVM模型有優(yōu)勢。由表11 可知, HIDM模型對比其它兩個(gè)模型在檢測率上最多可提升0.9%, 在誤報率方面可降低3.34%, 主要是因為本文提出的HIDM模型采用MI理論提取了最適當和最有效的特征進(jìn)行學(xué)習, 大幅降低了模型訓練時(shí)間, 通過(guò)去除負相關(guān)特征也在一定程度上提升了模型的檢測性能, 同時(shí), WLA算法對HKLSSVM模型參數的尋優(yōu)進(jìn)一步提升了HIDM模型的檢測性能。
上述實(shí)驗足以證明HIDM模型在二分類(lèi)檢測中取得了不錯的結果, 但實(shí)際入侵檢測場(chǎng)景中, 不僅要檢測出惡意流量, 而且也需要判斷出具體類(lèi)型, 因此, 本文通過(guò)實(shí)驗來(lái)評估該模型的多分類(lèi)檢測能力。
(25)
(26)
式(25)中,p12和p21是第一個(gè)分類(lèi)器訓練后的結果,p12表示該分類(lèi)器對于Normal類(lèi)型流量的識別能力,p21表示該分類(lèi)器對于Probe類(lèi)型流量的識別能力。同樣地,p32和p23是第5個(gè)分類(lèi)器訓練后的結果。HIDM模型最終的分類(lèi)結果可由式(26)計算得到, 具體檢測結果如表12 所示。
表12 HIDM模型的多分類(lèi)檢測結果
本文提出了HIDM模型, 在特征選擇階段, 通過(guò)對比MI方法和Pearson方法擇優(yōu)選擇了MI值≥0.2的特征輸入模型, 大幅減少了模型訓練時(shí)間; 設計了基于非線(xiàn)性遞減因子和自適應權值策略的WLA算法對HKLSSVM模型參數進(jìn)行尋優(yōu), 加快了模型收斂速度, 有效提升了模型分類(lèi)性能。在NSL-KDD數據集上進(jìn)行了仿真實(shí)驗, 通過(guò)與部分已有工作的對比, 證明所提出的HIDM模型具有更好的檢測精度和較低的誤報率, 同時(shí), 通過(guò)對比實(shí)驗也表明了WLA算法和MI特征選擇的有效性和正確性, 并基于CICIDS2018數據集的仿真實(shí)驗驗證了混合核可以有效提升模型泛化性。
猜你喜歡特征選擇準確率函數二次函數新世紀智能(數學(xué)備考)(2021年9期)2021-11-24第3講 “函數”復習精講中學(xué)生數理化·中考版(2021年3期)2021-07-22乳腺超聲檢查診斷乳腺腫瘤的特異度及準確率分析健康之家(2021年19期)2021-05-23不同序列磁共振成像診斷脊柱損傷的臨床準確率比較探討醫學(xué)食療與健康(2021年27期)2021-05-132015—2017 年寧夏各天氣預報參考產(chǎn)品質(zhì)量檢驗分析農業(yè)科技與信息(2021年2期)2021-03-27二次函數新世紀智能(數學(xué)備考)(2020年9期)2021-01-04函數備考精講中學(xué)生數理化(高中版.高考數學(xué))(2020年9期)2020-10-28高速公路車(chē)牌識別標識站準確率驗證法中國交通信息化(2018年5期)2018-08-21Kmeans 應用與特征選擇電子制作(2017年23期)2017-02-02聯(lián)合互信息水下目標特征選擇算法西北工業(yè)大學(xué)學(xué)報(2015年4期)2016-01-19