• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于ICNN-MMD的網(wǎng)絡(luò)入侵檢測(cè)方法

      2024-01-02 08:35:42李卓文鄧在輝葉彩瑞
      軟件導(dǎo)刊 2023年12期
      關(guān)鍵詞:源域神經(jīng)網(wǎng)絡(luò)分類

      李卓文,鄧在輝,葉彩瑞,彭 濤

      (武漢紡織大學(xué) 計(jì)算機(jī)與人工智能學(xué)院,湖北 武漢 430200)

      0 引言

      網(wǎng)絡(luò)技術(shù)發(fā)展使人們聯(lián)系更緊密,在帶來(lái)便利的同時(shí),各種網(wǎng)絡(luò)安全問題也不斷浮現(xiàn),一旦民生等重要設(shè)施被境外攻擊者入侵,后果將非常嚴(yán)重。為了應(yīng)對(duì)上述問題,工業(yè)界和學(xué)術(shù)界提出了許多解決方案,網(wǎng)絡(luò)入侵檢測(cè)系 統(tǒng)(Network Intrusion Detection System,NIDS)為其中之一。

      雖然,基于深度學(xué)習(xí)的網(wǎng)絡(luò)入侵檢測(cè)方法極大提升了檢測(cè)性能,但需要大量帶標(biāo)簽數(shù)據(jù)才能訓(xùn)練出更好的攻擊分類模型。與此同時(shí),標(biāo)注攻擊流量本身也是一項(xiàng)耗時(shí)長(zhǎng)、易出錯(cuò)的工作[1-2]。此外,深度學(xué)習(xí)方法只有在新數(shù)據(jù)與原有數(shù)據(jù)具有相同特征空間與統(tǒng)一分布的條件下才具有較好的性能,這意味著在網(wǎng)絡(luò)入侵檢測(cè)領(lǐng)域中一旦檢測(cè)到新型攻擊,模型就需要耗費(fèi)大量計(jì)算資源重新訓(xùn)練,并未較好運(yùn)用原有模型蘊(yùn)含的知識(shí)。因此,遷移學(xué)習(xí)[3]方法被提出,其核心思想是從原有數(shù)據(jù)集中提取信息并重新應(yīng)用于新數(shù)據(jù)集,即利用源域數(shù)據(jù)集知識(shí)提升目標(biāo)域的任務(wù)性能[4]。

      本文提出一種基于改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)結(jié)合最大均值差異(Improved Convolutional Neural Network and Maximum Mean Discrepancy,ICNN-MMD)的遷移學(xué)習(xí)網(wǎng)絡(luò)入侵檢測(cè)方法,通過無(wú)監(jiān)督域適應(yīng)方式最小化源域與目標(biāo)域間距離,實(shí)現(xiàn)兩者特征遷移,達(dá)到提升模型泛化能力的目標(biāo)。實(shí)驗(yàn)表明,本文所提方法的各項(xiàng)總體指標(biāo)相較于現(xiàn)有方法提升較大,證實(shí)了所提方法的有效性。

      1 相關(guān)工作

      張陽(yáng)等[5]使用簡(jiǎn)單抽樣與SMOTE 算法平衡KDD99 數(shù)據(jù)集,隨后利用常見的傳統(tǒng)機(jī)器學(xué)習(xí)算法分別在平衡前后的數(shù)據(jù)集上進(jìn)行測(cè)試,但并未改進(jìn)機(jī)器學(xué)習(xí)算法。其中,采用KNN 算法在少數(shù)分類攻擊類型上的檢測(cè)準(zhǔn)確率較差。由于傳統(tǒng)機(jī)器學(xué)習(xí)方法未能較好提取數(shù)據(jù)特征,學(xué)者們開始研究基于深度學(xué)習(xí)的入侵檢測(cè)方法。時(shí)東閣等[6]利用卷積神經(jīng)網(wǎng)絡(luò)提取特征,通過Softmax 回歸進(jìn)行多分類,最后采用Focal loss 函數(shù)優(yōu)化數(shù)據(jù)集不平衡問題,但需要花費(fèi)較長(zhǎng)的訓(xùn)練時(shí)間。Sun 等[7]組合CNN 與LST 提取數(shù)據(jù)集的時(shí)空特征,利用分類權(quán)重優(yōu)化方法平衡數(shù)據(jù)集以提升檢測(cè)率,但在CICIDS2017 上測(cè)試時(shí),由于數(shù)據(jù)較少導(dǎo)致攻擊類型Heartbleed、SSH-Patator 的檢測(cè)率較差。Kunang等[8]結(jié)合預(yù)訓(xùn)練的自編碼器(Auto Encoder,AE)與深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)實(shí)現(xiàn)入侵檢測(cè),模型使用自動(dòng)超參數(shù)優(yōu)化過程尋找最優(yōu)配置,預(yù)訓(xùn)練階段使用AE、深度自編碼器(Deep Auto Encoder,DAE)、堆疊自編碼器(Stacking Auto Encoder,SAE)提取特征,其中深度自編碼器結(jié)果最優(yōu)。Gao 等[9]設(shè)計(jì)基于深度神經(jīng)網(wǎng)絡(luò)與聯(lián)合分析(Association Analysis,AA)的異常檢測(cè)系統(tǒng),使用Apriori算法構(gòu)建數(shù)據(jù)集各種特征間的關(guān)聯(lián)規(guī)則,然后匹配分類數(shù)據(jù)與規(guī)則,將不匹配的信息識(shí)別為惡意流量,生成報(bào)警日志,但該方法相較于部分方法在NSL-KDD 的二分類精確度偏低,深度神經(jīng)網(wǎng)絡(luò)依然存在改進(jìn)空間。

      遷移學(xué)習(xí)作為新的學(xué)習(xí)方法,學(xué)者們嘗試將遷移學(xué)習(xí)應(yīng)用到網(wǎng)絡(luò)入侵檢測(cè)領(lǐng)域。彭雨荷等[10]提出基于聯(lián)合分布適配的遷移學(xué)習(xí)方式,尋找最優(yōu)變換矩陣以適配源域、目標(biāo)域的邊緣概率、條件概率,實(shí)現(xiàn)源域與目標(biāo)域的特征遷移,解決源域與目標(biāo)域間的分布差異導(dǎo)致檢測(cè)率降低的問題。然而,該方法會(huì)產(chǎn)生高維特征遷移矩陣的搜索問題,對(duì)訓(xùn)練集規(guī)模具有一定要求,且在大規(guī)模數(shù)據(jù)集上訓(xùn)練模型時(shí)收斂速度較慢。Singh 等[11]提出一種基于廣義深度遷移學(xué)習(xí)(Transfer Learning,TL)的高擴(kuò)展性堆疊GRU模型處理網(wǎng)絡(luò)入侵檢測(cè)中的多維數(shù)據(jù)、多變量時(shí)間序列的回歸與分類問題,但實(shí)現(xiàn)較為復(fù)雜。盧明星等[12]設(shè)計(jì)的遷移學(xué)習(xí)框架由嵌入層和標(biāo)簽層實(shí)現(xiàn)編解碼,權(quán)重由源域、目標(biāo)域共享,用于知識(shí)遷移。在嵌入層中,通過最小化域間嵌入實(shí)例的KL 散度來(lái)強(qiáng)制源域與目標(biāo)域數(shù)據(jù)分布相似;在標(biāo)簽編碼層中,使用Softmax 回歸模型編碼分類源域標(biāo)簽信息。Li 等[13]提出基于主動(dòng)遷移學(xué)習(xí)的入侵檢測(cè)算法AcTrAdaBoost,該算法準(zhǔn)確率、訓(xùn)練時(shí)間相較于其他算法更優(yōu),但更適用于單個(gè)源域且目標(biāo)域存在少量數(shù)據(jù)標(biāo)注的條件下。

      2 ICNN-MMD模型

      本文提出的ICNN-MMD 模型采用暹羅式網(wǎng)絡(luò),源域數(shù)據(jù)與目標(biāo)域數(shù)據(jù)共享神經(jīng)網(wǎng)絡(luò)權(quán)值,具體結(jié)構(gòu)如圖1 所示。ICNN-MMD 的神經(jīng)網(wǎng)絡(luò)包含5 個(gè)卷積層,兩個(gè)最大池化層,4 個(gè)全連接層[14]。其中,卷積層1-3 使用RELU 激活函數(shù)增大網(wǎng)絡(luò)稀疏程度,全連接層1、2 使用Dropout 方法防止過擬合。

      Fig.1 ICNN-MMD model structure圖1 ICNN-MMD模型結(jié)構(gòu)

      網(wǎng)絡(luò)采取跨層聚合的設(shè)計(jì)方式,跨層是指從卷積層2開始保存卷積結(jié)果,隨后分別進(jìn)行卷積、池化、全連接操作,聚合是指利用Tensorflow 的concat 函數(shù)合并操作全連接層2、4 的輸出數(shù)據(jù)。最后,通過Softmax 分類計(jì)算分類損失值并反向傳播,不斷修正網(wǎng)絡(luò)權(quán)值和偏置值,直至模型收斂,ICNN 結(jié)構(gòu)如圖2所示。

      Fig.2 ICNN model structure圖2 ICNN模型結(jié)構(gòu)

      為了實(shí)現(xiàn)源域與目標(biāo)域間的域適應(yīng)(Domain Adaption,DA),本文設(shè)計(jì)的卷積神經(jīng)網(wǎng)絡(luò)架構(gòu)[15]引入適配層(Adaptation Layer,AL)與域損失(Domain Loss,DL),將入侵檢測(cè)數(shù)據(jù)集的訓(xùn)練集作為源域數(shù)據(jù),測(cè)試集作為目標(biāo)域數(shù)據(jù),二者共享神經(jīng)網(wǎng)絡(luò)權(quán)值。在模型訓(xùn)練時(shí),DL 與原有損失共同計(jì)算并反向傳播,逐漸優(yōu)化、調(diào)整卷積神經(jīng)網(wǎng)絡(luò)的權(quán)值與偏置值,具體網(wǎng)絡(luò)架構(gòu)如圖3所示。

      Fig.3 Structure of convolution neural network in this paper圖3 本文卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)

      為了定量描述源域與目標(biāo)域間的差異(域損失),引用標(biāo)準(zhǔn)分布度量,即最大均值差異(Maximum Mean Discrepancy,MMD),具體計(jì)算公式為:

      其中,φ(·)為定義表征,xs∈XS表示源域數(shù)據(jù),xt∈XT表示目標(biāo)域數(shù)據(jù)。

      因此,新架構(gòu)的網(wǎng)絡(luò)優(yōu)化目標(biāo)是最小化分類損失與MMD 距離,如式(2)所示。

      其中,LC(XL,y)表示標(biāo)簽數(shù)據(jù)XL的分類損失,XL為Ground Truth 標(biāo)簽,MMD(XS,XT)表示源域數(shù)據(jù)XS和目標(biāo)域XT的距離,λ為超參數(shù),決定了域適應(yīng)的強(qiáng)度。若該參數(shù)設(shè)置過低將導(dǎo)致MMD 正則化在學(xué)習(xí)表征時(shí)效果較差,設(shè)置過高會(huì)導(dǎo)致數(shù)據(jù)點(diǎn)距離過近,學(xué)習(xí)表征退化。

      3 數(shù)據(jù)預(yù)處理

      3.1 實(shí)驗(yàn)數(shù)據(jù)集

      本文采用的NSL-KDD 數(shù)據(jù)集相較于KDD CUP 99,在模型訓(xùn)練上收斂速度更快,樣本數(shù)據(jù)分布更均衡合理,可利用性更高,一定程度上提升了模型的泛化能力[16-17]。其中,訓(xùn)練集KDDTrain+包含125 973 條記錄(約18.2 MB),測(cè)試集包含KDDTest+與KDDTest-21,分別包含22 544 條記錄(約3.28 MB)、11 850 條記錄(約1.69 MB)。表1 為NSL-KDD 數(shù)據(jù)樣本分布。

      Table 1 Sample distribution of NSL-KDD dataset表1 NSL-KDD數(shù)據(jù)集樣本分布

      由表1 可見,數(shù)據(jù)集中包含正常類數(shù)據(jù)(Normal)和另外4 種攻擊類型數(shù)據(jù),分別為Probe、DoS、U2R、R2L,而他們又可細(xì)分為39 個(gè)小類攻擊類型。因此,NSL-KDD 數(shù)據(jù)集的每條記錄均為42 維,包含38 維數(shù)字特征,3 維符號(hào)特征與1個(gè)攻擊類型標(biāo)簽(Label)。

      3.2 數(shù)據(jù)預(yù)處理

      3.2.1 獨(dú)熱編碼(One-Hot Encoding)

      NSL-KDD 的3 個(gè)符號(hào)特征分別為protocol_type、service、flag。具體的,protocol_type 在數(shù)據(jù)集中包含TCP,UDP、ICMP,編碼為3 維二進(jìn)制向量;service 在數(shù)據(jù)集中有70 類,編碼為70 維二進(jìn)制向量;flag 編碼為11 維二進(jìn)制向量。包括其他數(shù)值特征,數(shù)據(jù)集中的每條記錄始終為122維向量。

      3.2.2 歸一化

      NSL-KDD 數(shù)據(jù)集中各特征數(shù)值范圍不同,即存在明顯差異,如果直接送入模型訓(xùn)練會(huì)導(dǎo)致收斂速度緩慢、波動(dòng)較大、模型精度較差等問題。歸一化操作是將各區(qū)間數(shù)據(jù)映射到統(tǒng)一、特定區(qū)間,以此加速模型收斂速度。為此,本文將各特征數(shù)值縮放至[0,1]區(qū)間,具體計(jì)算公式如下:

      其中,x為某個(gè)特征值,xmin表示數(shù)據(jù)集中對(duì)應(yīng)該特征的最小值,xmax表示數(shù)據(jù)集中所對(duì)應(yīng)特征的最大值,xnorm為歸一化處理后的結(jié)果。

      4 實(shí)驗(yàn)結(jié)果與分析

      4.1 實(shí)驗(yàn)設(shè)計(jì)

      本文通過實(shí)驗(yàn)驗(yàn)證所提方法是否能使源域與目標(biāo)域間的域適應(yīng)為目標(biāo)域帶來(lái)增益,并依據(jù)此方法所構(gòu)建的多分類器是否能提升目標(biāo)域的效果。

      實(shí)驗(yàn)將訓(xùn)練集KDDTrain+作為源域數(shù)據(jù),測(cè)試集KDDTest+、KDDTest-21 作為目標(biāo)域數(shù)據(jù)并進(jìn)行多分類輸出。同時(shí),實(shí)驗(yàn)分為兩次訓(xùn)練,第一次在最優(yōu)超參數(shù)的情況下使用源域數(shù)據(jù)訓(xùn)練ICNN 模型,然后在目標(biāo)域數(shù)據(jù)上測(cè)試得到結(jié)果;第二次為基于ICNN-MMD 的方法訓(xùn)練,即在第一次訓(xùn)練好的ICNN 模型基礎(chǔ)上使用不帶標(biāo)簽的目標(biāo)域數(shù)據(jù),以無(wú)監(jiān)督方式進(jìn)行基于MMD 的域適應(yīng)優(yōu)化訓(xùn)練。隨后,分別比較兩次訓(xùn)練在目標(biāo)域數(shù)據(jù)上的實(shí)驗(yàn)結(jié)果,包含總體指標(biāo)和多分類指標(biāo)。最后,將本文算法與現(xiàn)存算法進(jìn)行比較。

      4.2 實(shí)驗(yàn)環(huán)境

      本文實(shí)驗(yàn)在Windows 10 下進(jìn)行,處理器為Intel i7-7700HQ,顯卡為NVIDIA GEFORCE GTX 1050,顯存為4GB。為提高程序運(yùn)行效率,采用基于GPU 的Tensorflow-GPU 框架及Keras API,使用Pycharm 2019平臺(tái)進(jìn)行開發(fā)。

      4.3 實(shí)驗(yàn)指標(biāo)

      本文使用檢測(cè)準(zhǔn)確率(Accuracy)、精確度(Precision)、召回率(Recall)和F1 值(F1-Score)作為評(píng)價(jià)指標(biāo)。其中,檢測(cè)精度為測(cè)試數(shù)據(jù)檢測(cè)過程中得出的檢測(cè)精度。

      (1)準(zhǔn)確率。準(zhǔn)確率越高代表模型性能越好。

      (2)誤報(bào)率。誤報(bào)率是正常流量被錯(cuò)誤的判斷為攻擊的比例。

      (3)精確度。精確度是精確性的度量值,精確度計(jì)算值通常為Precision=1 -FAR,也可通過公式(6)求解。

      (4)召回率。召回率是覆蓋面的度量值,該值表示真實(shí)為正中被預(yù)測(cè)為正的比例。

      (5)F1 值。F1 值是綜合計(jì)算Precision 與Recall 的指標(biāo)值,能表示模型整體性能。

      對(duì)于整體數(shù)據(jù)集而言,除誤報(bào)率外的指標(biāo)越高越好;對(duì)于模型分類而言,精確度、召回率越高代表分類效果越好,但僅靠準(zhǔn)確率可能無(wú)法判斷模型的分類優(yōu)劣。

      4.4 結(jié)果分析

      經(jīng)過多次組合訓(xùn)練,第一次訓(xùn)練最優(yōu)參數(shù)Epoch=50,學(xué)習(xí)率為0.05,batch_size=50,優(yōu)化器選擇隨機(jī)梯度下降優(yōu)化器。第二次訓(xùn)練最優(yōu)參數(shù)epoch=10,學(xué)習(xí)率為0.005,lambda=30,優(yōu)化器也選擇隨機(jī)梯度下降優(yōu)化器。表2、表3均將KDDTest+作為目標(biāo)域數(shù)據(jù),表2展示多分類指標(biāo),表3展示總體指標(biāo)。由表2 可見,ICNN-MMD 方法相較于ICNN,Normal 準(zhǔn)確度提升0.13%,DoS 提升4.06%,Probe 提升0.41%,U2R 提升2.98%,R2L 提升0.38%。由表3 可見,ICNN-MMD 總體指標(biāo)優(yōu)于ICNN,Accuracy 提升1.5%,Precision提升0.26%,Recall提升2.54%,F(xiàn)1值提升1.9%。

      Table 2 Multi-classification accuracy performance of ICNN-MMD on KDDTest+表2 ICNN-MMD在KDDTest+上多分類準(zhǔn)確率指標(biāo)(%)

      Table 3 Global performance of ICNN-MMD on KDDTest+表3 ICNN-MMD在KDDTest+上總體指標(biāo)(%)

      表4、表5 將KDDTest-21 作為目標(biāo)域數(shù)據(jù)。表4 展示多分類指標(biāo),表5 展示總體指標(biāo)。由表4 可見,ICNN-MMD方法的多分類指標(biāo)均有提升,Normal的準(zhǔn)確度提升0.65%,DoS 提升7.21%,Probe 提升0.46%,U2R 提升1.49%,R2L 提升0.38%。

      Table 4 Multi-classification accuracy performance of ICNN-MMD on KDDTest-21表4 ICNN-MMD在KDDTest-21上多分類準(zhǔn)確率指標(biāo)(%)

      Table 5 Global performance of ICNN-MMD on KDDTest-21表5 ICNN-MMD在KDDTest-21上總體指標(biāo)(%)

      由表5 可見,ICNN-MMD 相較于ICNN,Accuracy 提升2.96%,Precision 提升0.54%,Recall 提升3.46%,F(xiàn)1 值提升3.0%。

      為直觀觀察模型表現(xiàn),表6 給出了KDDTest+數(shù)據(jù)集在多分類上的混淆矩陣,其中縱列為真實(shí)類,橫列為預(yù)測(cè)類。由此可見,大多數(shù)樣本被正確分類,位于對(duì)角線上,但U2R、R2L類型更多地被誤判為Normal類型。

      Table 6 Confusion matrix on KDDTest+表6 KDDTest+上的混淆矩陣

      表7 為KDDTest+每個(gè)攻擊分類的FAR 和Recall 指標(biāo)。由于NSL-KDD 訓(xùn)練集中U2R、R2L 類型數(shù)據(jù)較少,由此可見U2R、R2L類型的誤報(bào)率偏高,檢出率偏低。

      Table 7 Multi-classification attack performance表7 多分類攻擊指標(biāo)(%)

      將本文所提方法與RF、DT、GaussianNB、BiLSTM、GoogleNet 和DLNID 方法進(jìn)行比較,總體指標(biāo)均在KDDTest+上測(cè)試所得,如表8 所示。由此可見,本文提出的ICNN-MMD 方法優(yōu)于ICNN;DLNID-MMD 方法也優(yōu)于DLNID。整體而言,本文所提方法的總體指標(biāo)值均高于其他算法。

      Table 8 Overall indicators of various methods on KDDTest+表8 各類方法在KDDTest+上總體指標(biāo)(%)

      5 結(jié)語(yǔ)

      在目前網(wǎng)絡(luò)環(huán)境中,網(wǎng)絡(luò)設(shè)施數(shù)據(jù)交換量大,攻擊類型多樣,人工標(biāo)注的數(shù)據(jù)集規(guī)模極為有限。為此,本文提出基于ICNN-MMD 的網(wǎng)絡(luò)入侵檢測(cè)方法,首先將NSLKDD 數(shù)據(jù)集預(yù)處理為適合神經(jīng)網(wǎng)絡(luò)輸入的格式;然后將實(shí)驗(yàn)分為兩次訓(xùn)練過程,第一次以最優(yōu)參數(shù)預(yù)訓(xùn)練ICNN 模型,第二次則在前者的基礎(chǔ)上利用無(wú)標(biāo)簽?zāi)繕?biāo)域數(shù)據(jù)進(jìn)行無(wú)監(jiān)督的域適應(yīng)優(yōu)化訓(xùn)練;最后將兩次訓(xùn)練的模型與第一次訓(xùn)練和其他方法進(jìn)行比較。

      實(shí)驗(yàn)表明,本文所提方法提高了網(wǎng)絡(luò)入侵檢測(cè)模型的總體指標(biāo)。此外,由于KDDTest-21 同源域數(shù)據(jù)分布差異更大,將KDDTest-21 作為目標(biāo)域數(shù)據(jù)相較于KDDTest+對(duì)模型的提升更明顯。

      猜你喜歡
      源域神經(jīng)網(wǎng)絡(luò)分類
      多源域適應(yīng)方法綜述
      分類算一算
      基于參數(shù)字典的多源域自適應(yīng)學(xué)習(xí)算法
      神經(jīng)網(wǎng)絡(luò)抑制無(wú)線通信干擾探究
      電子制作(2019年19期)2019-11-23 08:42:00
      分類討論求坐標(biāo)
      數(shù)據(jù)分析中的分類討論
      教你一招:數(shù)的分類
      基于神經(jīng)網(wǎng)絡(luò)的拉矯機(jī)控制模型建立
      復(fù)數(shù)神經(jīng)網(wǎng)絡(luò)在基于WiFi的室內(nèi)LBS應(yīng)用
      可遷移測(cè)度準(zhǔn)則下的協(xié)變量偏移修正多源集成方法
      平潭县| 潮州市| 阜新| 三河市| 年辖:市辖区| 贺州市| 武胜县| 莫力| 怀柔区| 玛曲县| 通江县| 平阳县| 元氏县| 淮滨县| 龙游县| 本溪| 明溪县| 晋州市| 巴塘县| 亚东县| 准格尔旗| 奇台县| 灵台县| 荆门市| 绥滨县| 垦利县| 岑巩县| 商城县| 嘉荫县| 京山县| 昭通市| 博爱县| 哈密市| 通山县| 赤壁市| 噶尔县| 平乡县| 兰州市| 临泽县| 黔南| 蒙山县|