王振東,劉堯迪,胡中棟,李大海,王俊嶺
(江西理工大學 信息工程學院,江西 贛州 341000)
對企圖入侵、正在入侵或者已經發生入侵的行為進行識別的過程稱為入侵檢測[1].該方法的核心技術是通過分析采集的網絡數據,檢測網絡中的各類行為是否安全.異常檢測與誤用檢測是入侵檢測系統兩種不同的檢測類型.誤用檢測通過對已知的入侵行為和企圖進行特征提取并編寫進規則庫,將監測到的網絡行為與規則庫進行模式匹配,進而判斷入侵行為或者入侵企圖,該方法的優點是誤報率低;異常檢測則是從大量正常用戶行為模型中檢測出攻擊行為,可以對未知攻擊進行檢測是其顯著優點.
截至目前,研究人員提出了包括基于神經網絡、決策樹(Decision Tree,DT)、AdaBoost、支持向量機(SVM)等多種入侵檢測方法.楊彥榮等[2]將卷積神經網絡和極限學習機的組合式入侵檢測模型(CNN-ELM)應用于入侵檢測,實驗表明,該方法在NSL-KDD數據集上具有較高的檢測準確率、良好的泛化能力和實時性.Ranjit Panigrahi等[3]使用J48決策樹進行二元和多元分類,在ISCXIDS2012和NSL-KDD數據集上取得了較優的檢測效果.Mehrnaz Mazini等[4]提出了基于人工蜂群算法(ABC)和AdaBoost的入侵檢測模型,首先使用ABC進行特征選擇,再使用AdaBoost進行分類,與傳統方法相比,該方法的檢測率得到了提高.高妮等[5]提出了基于自編碼網絡特征降維的輕量級入侵檢測模型,該模型使用SVM對降維的數據進行入侵檢測,實驗證明,該模型的檢測性能優于傳統算法,而且能夠滿足網絡入侵檢測實時性的要求.而BP(Back Propagation)神經網絡作為一種工作信號前向傳播,誤差反向傳播的多層前饋型神經網絡,在學習過程中具有很強的自學習能力、泛化能力以及強大的非線性映射能力.梁辰等[6]將BP神經網絡應用于對網絡攻擊的入侵檢測,并證明BP神經網絡較傳統的入侵檢測具有較高的檢測正確率,較低的誤報率和漏報率.
雖然BP神經網絡較傳統入侵檢測能夠取得較好的效果,但BP神經網絡存在初始值隨機性較大以及易陷入局部最優的缺點.很多學者對此提出了相應的改進方法.劉珊珊等[7]提出了基于PCA的PSO-BP入侵檢測模型,該模型通過變慣性因子粒子群算法優化BP神經網絡的初始權值和閾值,取得較好的分類效果以及較優的泛化能力和實時性;丁衛紅等[8]使用改進的和聲搜索算法(HS)來優化BP神經網絡應用于入侵檢測,該辦法中BP神經網絡的初始值通過改進和聲搜索算法來優化,提高網絡檢測率以及收斂速率,防止神經網絡陷入局部最優;沈夏烔等[9]在入侵檢測中設計了一種使用人工蜂群優化BP神經網絡的方法,該方法將神經網絡的誤差函數作為人工蜂群算法的適應度函數,選擇最優適應度函數作為神經網絡的初始權值和閾值,從而縮短模型的訓練時間以及避免神經網絡陷入局部最優.雷宇飛等[10]將PSO-BP神經網絡模型應用于入侵檢測中,該模型利用粒子群算法優化得到一個最優初始值,通過修正網絡誤差獲得最優值,實驗結果證實該算法能夠在較大程度上提高入侵檢測系統的檢測正確率.
針對BP神經網絡存在的缺點,本文提出一種基于改進灰狼算法優化BP神經網絡的入侵檢測模型(IGWO-BP),通過改進灰狼算法獲得較優的初始權值和閾值,再使用反向傳播BP算法對NSL-KDD和UNSW-NB15數據集進行入侵檢測.從而解決BP神經網絡初始值隨機較大且易陷入局部最優的缺點.
BP神經網絡可以模擬神經系統結構和生物神經網絡傳遞信息,擁有較強的自學能力,同時能夠進行自適應計算,是一種大規模非線性自適應體系.在3層BP神經網絡中,假設有M個輸入神經元,I個隱含層神經元,J個輸出層神經元.xm為輸入層第m個神經元的輸入,ωmi為隱含層第m個神經元到輸出層第i個神經元的連接權值,bi為隱含層第i個神經元的閾值.ωij為隱含層第i個神經元到輸出層第j個神經元的連接權值,θi為輸出層第i個神經元的閾值.
BP網絡學習的具體過程:
1)權值和閾值通過rands隨機初始化.通常,我們在[-1,1]之間隨機初始化權值和閾值.
2)實驗數據預處理并輸入BP網絡進行學習.
3)計算隱含層第i個神經元的輸入,隱含層第i個神經元的輸入等于輸入層神經元的加權和:
再通過激活函數來計算隱含層第i個神經元的輸出:
vi=f(ui)
其中,f為Sigmoid激活函數.
4)計算輸出層第j個神經元的輸入,輸出層第j個神經元的輸入等于隱含層輸出的加權和:
再計算輸出層第j個神經元的輸出:
vj=g(uj)
其中,g為線性函數.
5)計算神經網絡輸出總誤差:
其中,dj為神經元網絡的真實輸出,vj為神經網絡的預測輸出.
6)工作信號正向傳播調整隱含層與輸出層之間的權值ωij和閾值θi;誤差信號反向傳播調整輸入層與隱含層之間的權值ωmi和閾值bi,權值和閾值修正量分別為:
Δωij=μejg′(uj)vi,Δθi=μδi
Δωmi=μδivm,Δbi=μδi

7)重復3)-6),直到全局誤差小于預期誤差,或學習次數到達最大學習次數.
灰狼優化算法(grey wolf optimizer,GWO)是Mirjalili等人在2014年模擬灰狼群體狩獵行為提出的一種元啟發式算法[11].算法具有較強的收斂性能,實現起來簡單且參數較少,因此在約束優化[12]、無人機路徑規劃[13]、模塊組裝調度[14]、PI控制器優化[15]、車間調度[16]等領域得到初步應用.然而,因為難以平衡全局和局部搜索能力以及位置向量更新時頭狼位置未必最優,致使GWO算法在不停迭代過程當中極易陷入局部最優及收斂速度較慢.針對上述問題,本文對原始灰狼算法進行改進.首先,使用二維混沌映射初始化種群,可以確保數據的多樣性和不重復性;接著,用非線性收斂因子取代線性收斂因子,可以很好地平衡算法的局部和全局搜索能力;最后,提出動態權重策略,使權重系數在每一次迭代中不斷變化,領導層灰狼動態指導狼群前進,從而防止灰狼算法陷入局部最優.
標準GWO算法利用隨機數隨機初始化灰狼群體,導致群體的多樣性和不重復性難以保證,算法搜索效率在一定程度上會受到影響.因此,用混沌映射代替隨機數初始化種群,可以確保種群具有較好的遍歷性和不重復性,提高算法的搜索效率.文中使用二維混沌映射初始種群的數學表達式為:
(1)
其中,a,b,c為控制參數,控制參數的選擇在很大程度上影響初始種群的形態.若參數a=0,混沌映射退化為線性映射,故一般要求參數a≠0且b2-4ac≠0,此時映射在不動點處具有較好的混沌性,故文中取a=-4,b=0,c=0.5,x1=0.15.
收斂因子a對算法的全局搜索能力和局部搜索能力具有很好地平衡作用.由文獻[11]可知,當|A|>1時,灰狼群體為尋找到更好的獵物將擴大搜索范圍;當|A|<1時,灰狼群體為接近獵物而縮小搜索范圍,此時算法應進行局部搜索.因此,該參數的選擇對算法的性能有很大的影響.標準GWO算法中,收斂因子a隨迭代次數增加從2線性遞減到0,無法較好地平衡算法的局部和全局搜索能力.在實際應用中,更加偏向選擇非線性策略調整收斂因子,以此更加準確地描述灰狼群體復雜的搜索過程.因此,本文對線性收斂因子進行改進,提出非線性收斂因子策略,以此來平衡算法的局部和全局搜索能力.數學描述如下:
(2)
其中,tmax是最大迭代次數,t是當前迭代次數.
圖1為收斂因子的對比圖,從圖中可以看出原始收斂因子a的圖像是線性遞減的,在迭代過程中以相同的速率減小,算法的局部和全局搜索能力一直保持不變;改進收斂因子a的圖像是非線性遞減的,在迭代初期a的衰減程度緩慢,有利于進行大量全局搜索;迭代后期收斂因子a的衰減程度提高,有利于進行大量局部搜索,提高算法的搜索精度.因此,改進的收斂因子a可以更好地平衡算法的局部和全局搜索能力.

圖1 收斂因子對比圖Fig.1 Convergence factor contrast diagram
標準GWO算法中,灰狼位置的更新公式是前3頭狼位置的算術平均數,位置權重始終不變.而算法中頭狼α狼不一定是全局最優解,此時隨著ω狼不停地向頭狼逼近,算法極易陷入局部最優.因此,本文提出動態權重策略,通過位置向量比例權重不斷調節頭狼所占的比重,避免算法陷入局部最優.
本文提出的比例權重公式,數學描述如下:
(3)
(4)
其中,ω狼對α狼的學習率為W1;ω狼對β狼的學習率為W2;ω狼對δ狼的學習率為W3.
灰狼位置更新公式為:
X(t+1)=W1*X1+W2*X2+W3*X3
(5)
在標準GWO算法中,位置更新公式的權重系數始終保持不變,算法極易陷入局部最優.而提出的動態權重策略,通過位置向量計算比例權重W1、W2和W3,在每一次迭代中W1、W2和W3不斷變化,使領導層灰狼動態指導狼群前進,避免算法陷入局部最優.
綜合以上改進策略,給出本文提出的改進灰狼算法(IGWO)步驟:
算法1.改進灰狼算法(IGWO)步驟
1.設置算法參數:種群規模N和最大迭代次數tmax.
2.用二維混沌映射產生初化始種群.
3.計算種群適應度值并對適應度值進行升序排序,適應度前3的個體位置記為Xα、Xβ和Xδ.
4.用公式(3)-公式(5)更新種群中灰狼個體的位置.判斷算法是否滿足迭代終止條件,若滿足,則停止計算,輸出最優適應度對應的位置Xα,否則,重復執行3-4.
假設算法最大迭代次數為tmax,種群規模為N,維數為D,標準GWO算法中,首先初始化種群,時間復雜度為o(N×D);其次計算灰狼的適應度值,時間復雜度為o(N);之后對適應度值進行升序排序,時間復雜度為o(NlogN);最后根據上述公式更新灰狼群體的位置,時間復雜度為o(N);故總的時間復雜度為o(tmax×(D×N+N+NlogN+N)).IGWO算法和GWO算法相比沒有增加任何步驟,故IGWO總的時間復雜度為o(tmax×(D×N+N+NlogN+N)).對比兩種算法,可知GWO算法和IGWO算法具有相同的時間復雜度,數量級為o(tmax×NlogN),但實驗結果表明IGWO算法具有更高的求解精度、更快的收斂速度以及更好地穩定性.
適應度函數使用入侵檢測誤差和函數,由于預測結果可由神經網絡直接得到因此計算誤差和非常方便;文獻[17]的適應度函數為入侵檢測正確率,一方面需要統計出模型正確分類個數,增加算法計算量;另一方面如果計算正確分類個數不當,會導致訓練神經網絡結果不理想.因此,誤差和函數作為適應度函數優化BP網絡可以得到較好的網絡模型以及減少計算量.
IGWO通過適應度函數優化BP神經網絡建立最優入侵檢測模型,提高網絡入侵檢測正確率,降低誤報率,從而提高網絡整體安全性.使用網絡入侵檢測誤差和函數作為適應度函數,數學表達式為:
(6)

使用IGWO算法優化BP神經網絡的基本思路是求出適應度函數最好的一組灰狼位置,在迭代結束時把最好的灰狼位置作為BP神經網絡的最優初始權值和閾值建立最優檢測模型,基于IGWO-BP入侵檢測模型框架圖如圖2所示,該入侵檢測框架具體過程如下:

圖2 IGWO-BP入侵檢測總體框架圖Fig.2 IGWO is used to optimize the flow chart of BP neural network
步驟1.對原始數據集預處理.預處理過程包括2個步驟:
1)離散數據特征映射.將離散型特征轉化為數字型特征.
2)數據歸一化.由于同種屬性的數據之間差異較大,影響模型的訓練效果,因此將數據歸一化為[0,1]的實數.
步驟2.IGWO-BP模型訓練和參數調優.
1)初始化BP網絡結構:innum個輸入層節點、midnum個隱藏層節點和outnum個輸出層節點以及網絡初始權值和閾值.
2)初始化灰狼群體:灰狼種群大小N;所求問題維度D=(innum+1)×midnum+(midnum+1)×outnum和最大收斂迭代次數tmax及灰狼種群位置xi.
3)根據訓練樣本和適應度函數計算灰狼適應度函數值,對適應度值升序排序并保存前3個最優狼Xα、Xβ和Xδ,更新狼群ω的位置以及非線性收斂因子a,若當前迭代次數到達最大收斂迭代次數,則迭代結束轉到4);不然轉到3).
4)建立最優入侵檢測模型,并輸入測試集進而得到入侵檢測分類結果.
用4個標準測試函數[18]進行仿真實驗檢驗IGWO算法的尋優能力.4個標準測試函數都是經典函數,包括2個單峰函數,2個多峰函數.標準測試函數的詳細信息可以從表1中查看.

表1 測試函數Table 1 Test function
1)NSL-KDD[19]:NSL-KDD是KDD CUP99數據集的簡化版本,刪除了KDD Cup99數據集中的冗余數據和重復記錄.NSL-KDD數據集可以保證入侵檢測模型不受偏見,相比于KDD CUP99數據集,它更適合于誤用檢測.表2給出了NSL-KDD數據集的詳細信息.
2)UNSW-NB15[20]:澳大利亞網絡安全中心的網絡安全研究團隊引入了一種稱為UNSW-NB15的新數據集,以解決KDD CUP99和NSL-KDD數據集中發現的問題.此數據以混合方式生成,包含實時網絡流量的正常行為和攻擊行為,是一種綜合性的網絡攻擊流量數據集.數據集用42個特征來描述,這些要素的標簽為“正常”和9種不同的“攻擊”類型.表3中描述了有關模擬攻擊類別的信息及其詳細統計信息.
我們隨機選擇了2000條連接記錄并將其使用t-SNE[21]將NSL-KDD進行可視化如圖3所示.從圖3可以看出NSL-KDD數據集是非線性可分的.

圖3 NSL-KDD可視化Fig.3 NSL-KDD visualization
實驗是在Intel core i7雙核CPU,主頻2.5GHz,內存8GB,操作系統Windows 10環境下進行,實驗仿真軟件采用Matlab R2015b.

表2 NSL-KDD的訓練集和測試集Table 2 NSL-KDD training and testing sets

表3 UNSW-NB15的訓練集和測試集Table 3 UNSW-NB15 training and testing sets
群智能算法涉及參數的選擇,選擇較好的參數可以提高算法的收斂速度和精度.在實際應用中,群智能算法的交叉概率和變異概率一般在[0.5,1]和[0,0.5]之間取值;而在粒子群算法中,c1,c2為學習因子,也稱為加速常數,分別用于控制粒子指向自身或領域最佳位置的運動,一般建議c1+c2≤4;慣性權重ω能夠在很大程度上保留原始的速度.ω較大,算法具有較強的全局搜索能力,較弱的局部搜索能力;ω較小,算法具有較強的局部搜索能力,較弱的全局收斂能力,一般ω在[0.8,1.2]之間,PSO算法具有更快的收斂速度,而當ω>1.2時,算法極易陷入局部極值.
神經網絡分類模型的性能受到所選參數的影響,較多的訓練次數對于模型準確率的提升沒有太大的影響,一般淺層神經網絡訓練50-150次,就可以獲得較優的分類模型;而隱含層結點個數過多模型會出現過擬合現象,過少模型不能充分學習其特征,故參考文獻[22]確定隱含層結點個數.
因此,文中使用的參數設置如下:在測試函數中,函數維度為30,最大迭代次數為5000次,并且實驗運行30次.特別的是在GA中,交叉和遺傳概率分別為0.7和0.5;在PSO中,c1=c2=ω=0.9;在DE中,交叉概率為0.99.入侵檢測模型中最大迭代次數為500,神經網絡訓練次數為100;神經網絡的輸入層和輸出層由實際數據集的特征和類別決定,隱含層結點個數為30.
模型評價標準[23]定義如下:
準確率(Accuracy):它估計正確識別的樣本數與整個測試集的比率.準確率越高,神經網絡的模型就越好(Accuracy∈[0,1]).對于包含平衡類的測試數據集是一個很好的度量.準確率定義為:
(7)
精確率(Precision):它估計正確識別的正常樣本與被預測為正常樣本總數之比.精度越高,神經網絡模型越好(Precision∈[0,1]).精確率定義如下:
(8)
F1-Score:F1-Score也叫做F1-Measure.它是精確率和召回率的調和平均數.F1-Score越高,神經網絡模型越好(F1-Score∈[0,1]).F1-Score定義如下:
(9)
真正率(TPR):它也被稱為召回率.它估計正確分類的正常樣本與實際正常樣本總數的比率.如果TPR越高,則神經網絡模型越好(TPR∈[0,1]).TPR定義如下:
(10)
假正率(FPR):它估計被預測為正常樣本的攻擊樣本數與實際攻擊總數的比率.FPR越低,則神經網絡模型越好(FPR∈[0,1]).FPR定義如下:
(11)
ROC(receiver operating characteristic)曲線:它的橫軸為假正率(false positive rate,FPR),縱軸為真正率(true positive rate,TPR).AUC的值是ROC曲線下的面積,與ROC一起作為神經網絡模型的比較指標.AUC越高,神經網絡模型越好.
(12)
其中,TP(True Positive)是正確分類到正常類的樣本總數,TN(True Negative)是正確分類到攻擊類的樣本總數,FP(False Positive)是將攻擊類錯誤分類為正常類的樣本總數,FN(False Negative)是將正常類錯誤分類為攻擊類的樣本總數.
表4是5種算法在測試函數上的實驗結果.在單峰基準測試函數和多峰基準測試函數中,和GA、PSO、DE以及原始GWO算法相比,IGWO算法具有更好的尋優能力以及更強的穩定性.這是因為,IGWO算法使用混沌映射初始化種群、非線性收斂因子策略以及動態權重策略解決了傳統GA、PSO、DE和原始GWO算法中存在的收斂精度低以及穩定性較差的問題.

表4 單峰和多峰函數的測試結果Table 4 Result of unimodal and multimodal test function
基準測試函數二維圖和函數收斂曲線圖如圖4所示.為方便觀察,對目標函數值進行了log變換.從圖4中可以看出,不論是單峰函數還是多峰函數,IGWO算法的收斂速度明顯比其他算法快,收斂精度也更高.所以,IGWO算法的性能遠好于其他傳統算法.但其仍存在一定的缺陷,即在IGWO算法中我們采用簡單的上下限的邊界值對灰狼種群的越界進行替換,迭代過程中越來越多的灰狼將處于上下限的邊界,導致狼群多樣性減弱,在一定程度上會影響算法的收斂精度.

圖4 基準測試函數二維圖和函數收斂曲線圖Fig.4 Benchmark test function and function convergence curve
各模型二分類的分類結果如表5所示.在準確率方面,我們注意到,IGWO-BP模型最優且AdaBoost模型的效果優于其它現有模型,分別是DT、ELM、SVM和BP.且DT、ELM、SVM和BP分類器的性能在不同的數據上性能保持不變,但AdaBoost在不同的數據集上分類器性能不同.這表明DT、ELM、SVM和BP分類器具有通用性.相比于表6和表7的多分類檢測結果,各模型的二分類檢測結果更優.
圖5(a)和圖5(b)分別是NSL-KDD和UNSW-NB15數據集二分類的準確率.圖5(a)中,大部分模型的準確率位于0.8-0.95;圖5(b)中,所有模型的準確率均大于0.9.相比于圖7(a)和圖7(b),大部分模型準確率波動幅度較小.NSL-KDD和UNSW-NB15數據集二分類準確率箱線圖如圖5(c)和5(d)所示.圖5(c)和圖5(d)中,所有模型準確率離散程度較小,且AdaBoost、DT和SVM只需訓練1次分類器模型就可以保持穩定,可以減少今后模型訓練次數,從而縮短模型訓練時間.圖圖5(e)和圖5(f)分別是NSL-KDD和UNSW-NB15數據集二分類的ROC曲線圖.相比于其它模型,通過AUC值進行比較,IGWO-BP模型分類能力最優.且相比于多分類的圖7(e)和圖7(f),各模型的AUC值均更優.

表5 二分類測試結果Table 5 Test result of binary class classification

圖5 二分類準確率、箱線圖和ROC曲線Fig.5 Binary classification accuracy,boxplot and ROC curve
對于NSL-KDD和UNSW-NB15數據集多分類的真正率、假正率和AUC值分別在表6和表7中給出.對于NSL-KDD數據集,IGWO-BP模型的真正率、假正率和AUC值均較優,但在某些類別分類上略差于DT模型,較DT模型差0.0583.特別地,AdaBoost和SVM模型對“R2L”類別檢測效果較差,真正率為0.這表明AdaBoost和SVM模型對于數量較少的特征學習效果并不是很好.對于UNSW-NB15數據集,相比于NSL-KDD數據更加復雜,故同一模型檢測效果相比于NSL-KDD數據集略差.綜合所有分類結果,IGWO-BP模型可以取得較優的真正率、假正率和AUC值.某些類別分類真正率略差于DT,但IGWO-BP的參數更少,計算的時間代價更少.且DT和AdaBoost的模型優于SVM和ELM模型.特別的,對于“DoS”、“Shellcode”、“Worms”類別ELM、SVM以及BP模型的分類真正率均為0.故在NSL-KDD和UNSW-NB15數據集上,IGWO-BP模型分類效果較優.
在入侵檢測過程中,神經網絡的每一層都有助于理解將數據分類為“正常”或“攻擊”以及將攻擊具體分類為攻擊類別.為了更加直觀的理解這一過程,我們將激活值傳遞到t-SNE對其進行可視化.NSL-KDD和UNSW-NB15數據集分別在圖6(a)和圖6(b)中表示.對于NSL-KDD,“U2R”、“DoS”的連接記錄已經完全出現在另一個集群中;對于UNSW-NB15,“Worms”、“Generic”的連接記錄已經出現在另一個集群中.這表明IGWO-BP已經了解了可以區分出“U2R”、“DoS”、“Worms”和“Generic”的連接記錄,但還未達到最佳分區功能.對于NSL-KDD,屬于“DoS”的連接記錄如圖6(c)所示,這些連接記錄和“Normal”具有相似的特征;對于UNSW-NB15,屬于“Exploit”的連接記錄如圖6(d)所示,這些連接記錄和“Normal”、“Generic”具有相似的特征,這表明數據集需要增加更多的附加特征才能正確區分具有相似特征的數據類型.

表6 NSL-KDD多分類測試結果Table 6 Result of NSL-KDD multi-class classification

表7 UNSW-NB15多分類測試結果Table 7 Result of UNSW-NB15 multi-class classification
對NSL-KDD和UNSW-NB15數據集進行多分類的準確率如圖7(a)和圖7(b)所示.對于NSL-KDD數據集,算法準確率位于0.4-0.95之間;對于UNSW-NB15數據集,算法準確率在0.5-0.85之間變化.為進一步直觀表示準確率,我們使用箱線圖對準確率進行表示,圖7(c)和圖7(d)分別為NSL-KDD和UNSW-NB15數據集準確率的箱線圖表示.從箱線圖中可以直觀看出準確率的離散程度,還可以看出AdaBoost、DT和SVM的準確率一直保持穩定,這表明AdaBoost、DT和SVM模型無需多次訓練就可以得到最優分類模型,在以后實驗中可以減少AdaBoost、DT和SVM模型的訓練次數,從而節約訓練時間.圖7(e)和圖7(f)分別為NSL-KDD和UNSW-NB15數據集的ROC曲線圖.在大多數情況下,使用AUC作為評價指標與現有模型相比,IGWO-BP模型表現良好.這表明,IGWO-BP獲得了較高的TPR和較低的FPR.

圖6 最后一個隱含層激活函數的連接記錄和特征映射Fig.6 Connection record and feature mapping of last hidden layer activation function

圖7 多分類準確率、箱線圖和ROC曲線Fig.7 Multi-class accuracy,boxplot and ROC curve
傳統BP神經網絡隨機初始化權值和閾值,極易導致BP神經網絡陷入局部最優.對此,本文提出一種基于IGWO-BP的入侵檢測模型.首先,改進灰狼算法使用混沌映射初始化種群、非線性收斂因子以及動態權重策略優化BP神經網絡的初始權值和閾值,進而應用反向傳播的BP神經網絡對數據集進行入侵檢測.通過NSL-KDD和UNSW-NB15數據集的二分類和多分類實驗結果表明,IGWO-BP模型的分類性能更優.但NSL-KDD和UNSW-NB15數據集過大,大部分模型的訓練時間會過長,接下來希望通過主成成分分析(PCA)在保證入侵檢測準確率的前提下,對數據集進行降維,減少入侵檢測數據量,以此節約模型的訓練時間.此外,由于BP神經網絡一次訓練時間過長,而且存在局部極小、收斂速度慢、結構選擇不一以及對樣本依賴性較大等缺點,所以也希望可以利用深度學習或機器學習的方法來克服BP神經網絡中存在的不足.