• 
    

    
    

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

      基于多任務(wù)聯(lián)合學(xué)習(xí)的入侵檢測方法

      2022-03-26 06:53:36劉勝全
      關(guān)鍵詞:多任務(wù)類別損失

      劉 源,劉勝全,劉 艷

      (新疆大學(xué)信息科學(xué)與工程學(xué)院,新疆 烏魯木齊 830046)

      0 引言

      近些年來,互聯(lián)網(wǎng)技術(shù)飛速發(fā)展且逐漸成熟,網(wǎng)絡(luò)所帶來的便利已經(jīng)滲透到了人們生產(chǎn)生活中的各個方面,隨之而來的是網(wǎng)絡(luò)攻擊的風(fēng)險也急劇增加.網(wǎng)絡(luò)攻擊的罪魁禍?zhǔn)字痪褪蔷W(wǎng)絡(luò)入侵,現(xiàn)有的入侵檢測技術(shù)基于模式匹配,準(zhǔn)確率高但卻需要人工建立特征庫,而基于深度學(xué)習(xí)的入侵檢測方法無須人工提取特征,但對于少數(shù)類攻擊檢測率低,因此如何提高少數(shù)類的識別率是目前網(wǎng)絡(luò)入侵檢測方法面臨的主要難題.

      在文本分類領(lǐng)域,TextCNN取得了非常好的分類效果[1],它采用一個主任務(wù)加兩個輔助任務(wù)完成整個分類模型的構(gòu)建,借助輔助任務(wù)來改善原任務(wù)模型的性能.

      相較于傳統(tǒng)機器學(xué)習(xí)方法,深度學(xué)習(xí)在特征提取方面有著更好的表現(xiàn),近年來隨著深度學(xué)習(xí)的逐漸成熟,入侵檢測方法也逐漸向深度學(xué)習(xí)靠攏.Javaid等[2]采用稀疏自編碼器做特征提取,取得了比傳統(tǒng)機器學(xué)習(xí)更好的結(jié)果;Tan等[3]將預(yù)訓(xùn)練深度置信網(wǎng)絡(luò)(DBN)引入入侵檢測,同時與傳統(tǒng)機器學(xué)習(xí)方法進行了對比;楊昆明等[4]在采用深度置信網(wǎng)絡(luò)的情況下,使用SVM代替SOFTMAX分類器,在二分類上取得了更好的結(jié)果;Deng等[5]將卷積神經(jīng)網(wǎng)絡(luò)(CNN)應(yīng)用于入侵檢測,將流量信息轉(zhuǎn)換為灰度圖再通過CNN提取特征,加強了模型的通用性,同時取得了較好的成果;Kim等[6]使用了長短時記憶網(wǎng)絡(luò)(LSTM),同時提出了一種神經(jīng)語言模型,將系統(tǒng)調(diào)用序列建模為一種自然語言,降低了誤報率;方圓等[7]提出了一種混合模型,將卷積神經(jīng)網(wǎng)絡(luò)和長短時記憶網(wǎng)絡(luò)串聯(lián)起來,先經(jīng)過CNN提取出網(wǎng)絡(luò)流量的空間特征,再通過LSTM對已經(jīng)時間序列化的數(shù)據(jù)進行訓(xùn)練最終得到結(jié)果.

      上述深度學(xué)習(xí)方法均采用單一任務(wù),即對模型只進行二分類或多分類訓(xùn)練,該方法雖然對常見類型能夠有較好的判別,但流量數(shù)據(jù)不平衡性導(dǎo)致少數(shù)類別召回率低的問題仍然存在.本文結(jié)合注意力混合模型與多任務(wù)學(xué)習(xí),對高維流量特征的權(quán)重進行初始化,從眾多信息中選擇出更關(guān)鍵的信息.再分別提取空間特征與時序特征,將兩部分特征進行融合,從而獲得更加全面的流量信息,通過輔助任務(wù)的加入,降低數(shù)據(jù)不平衡性的影響以提升分類準(zhǔn)確率和泛化性能.

      1 模型簡介

      1.1 多任務(wù)學(xué)習(xí)

      多任務(wù)學(xué)習(xí)的主要目標(biāo)是通過多個相關(guān)的不同任務(wù),來優(yōu)化共享網(wǎng)絡(luò)的參數(shù),多任務(wù)學(xué)習(xí)能夠更好地挖掘任務(wù)之間具有的聯(lián)系[8].

      多任務(wù)學(xué)習(xí)包括聯(lián)合學(xué)習(xí)、自主學(xué)習(xí)和帶輔助任務(wù)的學(xué)習(xí).其中帶輔助任務(wù)的學(xué)習(xí)方式通過劃分任務(wù)為主任務(wù)和輔助任務(wù),利用輔助任務(wù)的信息來改進主任務(wù)的學(xué)習(xí)性能,從而可以學(xué)習(xí)到多個任務(wù)上的統(tǒng)一表示,進而實現(xiàn)對輔助任務(wù)的注意力機制.因此通過多任務(wù)學(xué)習(xí),能夠改善樣本不平衡性帶來的分類誤差.多任務(wù)學(xué)習(xí)模型公式為

      (1)

      其中:wm為第m個任務(wù)的一列的權(quán)重,xm,j為第m個任務(wù)的第j個樣例,ym,j代表對應(yīng)的輸出,εm代表噪聲.式中多個任務(wù)的信息共享是通過共享特征與共享隱層神經(jīng)元實現(xiàn)的,所有任務(wù)都由某種結(jié)構(gòu)相連接,通過同時優(yōu)化多個損失函數(shù),使網(wǎng)絡(luò)的泛化能力更加強大.

      1.2 膠囊網(wǎng)絡(luò)

      傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)在池化層會丟失大量的信息,這就導(dǎo)致網(wǎng)絡(luò)的輸入微小變化的敏感度降低,其輸出幾乎是不變的.但是我們希望網(wǎng)絡(luò)能夠保留更多的細節(jié)信息.Sabour等[9]提出了膠囊網(wǎng)絡(luò)結(jié)構(gòu)克服了這些缺點.膠囊網(wǎng)絡(luò)提供了一個實體間局部到全局的關(guān)系方法,在膠囊網(wǎng)絡(luò)里,細節(jié)的層次結(jié)構(gòu)信息會被網(wǎng)絡(luò)提取出來,由于提取的細節(jié)信息更多,所以膠囊網(wǎng)絡(luò)僅需少量的數(shù)據(jù)即可達到更好的效果.

      膠囊網(wǎng)絡(luò)由膠囊層組成,每一層都被劃分為一組稱為膠囊的神經(jīng)元,膠囊的輸入輸出均為向量形式.為使膠囊的輸出向量表示為某種概率,Hinton使用了壓縮函數(shù)(Squashing)對向量進行歸一化,保證向量的長度在0,1之間.

      圖1為膠囊網(wǎng)絡(luò)示意圖,其中squash函數(shù)的公式為

      (2)

      式中:vj為膠囊j的輸出,sj為膠囊j所有輸入向量的加權(quán)和,即前層膠囊的輸出向量,其公式為

      (3)

      其中cij為耦合系數(shù),由softmax函數(shù)計算求出,其初值為bij,cij的公式為

      (4)

      其中bij是膠囊i耦合到膠囊j的對數(shù)先驗概率,它依賴于兩個膠囊的位置和類型.通過計算上一層中每個膠囊的輸出vj與預(yù)測μij之間的一致性,重新確定耦合系數(shù).

      (5)

      通過動態(tài)路由算法,不斷迭代,最終計算出膠囊的輸出vj.

      圖1 膠囊網(wǎng)絡(luò)結(jié)構(gòu)

      1.3 簡單循環(huán)單元

      簡單循環(huán)單元(SRU)是由Tao等[10]于2017年提出.GRU網(wǎng)絡(luò)能夠很好地解決傳統(tǒng)循環(huán)神經(jīng)網(wǎng)絡(luò)誤差梯度隨著時間長度的增加而逐漸變小難以收斂的缺點,但是傳統(tǒng)RNN結(jié)構(gòu)如LSTM和GRU在計算當(dāng)前時間步狀態(tài)時需要上一個時間步的隱層輸出,這嚴(yán)重限制了RNN模型的并行計算能力,拖慢了整個序列的處理速度.而SRU對GRU的門結(jié)構(gòu)進行了修改,引入了Skip-Connection結(jié)構(gòu)[11].使當(dāng)前時間步計算不再依賴上一個時間步的隱層輸出,大大加強了并行計算能力.SRU的單元公式為

      (6)

      ft=s(Wfxt+bf);

      (7)

      rt=s(Wrxt+br);

      (8)

      (9)

      ht=rt·g(ct)+(1-rt)·xt.

      (10)

      1.4 聯(lián)合學(xué)習(xí)模型

      入侵檢測問題可以看作一個多分類問題,其問題可以形式化如下:存在一個流量空間X以及固定的類別集合L=(l1,l2,l3,…,lj),對于訓(xùn)練集D,D?X,每條流量可以表示為〈d,l〉?X×L,我們的目標(biāo)是訓(xùn)練一個分類器C:X→L,對于給定的d?X,確定C(d)?L.

      膠囊網(wǎng)絡(luò)沒法有效提取上下文數(shù)據(jù)長期的依賴關(guān)系,但卻能很好地提取局部層次結(jié)構(gòu)特征.SRU能夠提取數(shù)據(jù)間的時序依賴關(guān)系,但卻對局部層次特征表現(xiàn)較差.通過結(jié)合不同模型的特點,更加全面提取數(shù)據(jù)特征[12].而為了解決數(shù)據(jù)分布不平衡帶來的收斂速度慢、泛化性能差等影響,引入了輔助二分類任務(wù),通過二分類判斷流量是否為入侵流量,將單任務(wù)學(xué)習(xí)中難以提取的入侵特征引入作為輔助信息,通過與多分類任務(wù)學(xué)習(xí)相同的共享網(wǎng)絡(luò)結(jié)構(gòu),來調(diào)整共享隱層的權(quán)重,減小模型對多數(shù)類別的偏向,增強其泛化能力,聯(lián)合學(xué)習(xí)模型的工作流程如圖2所示.

      圖2 混合模型結(jié)構(gòu)

      (1) 對78維的流量數(shù)據(jù)進行歸一化,其中xmin,xmax分別代表X每個分量的最小和最大值.

      (11)

      (2) 將歸一化后的數(shù)據(jù)一份轉(zhuǎn)化為9*9的灰度圖輸入膠囊網(wǎng)絡(luò)模塊得到特征向量Hc,一份通過注意力層后輸入SRU模塊得到特征向量Hr.

      (3) 將Hc與Hr拼接,得到混合后的向量Hf.

      (4) 通過全連接層由softmax分類器分類.

      對于多任務(wù)損失函數(shù)來說,X為輸入向量,Yi為第i個任務(wù)的標(biāo)簽,其總損失可以表示為

      (12)

      其中λi為損失Li的權(quán)重,是對于每個任務(wù)所做貢獻的衡量,手動調(diào)節(jié)λi十分耗時,本文引入動態(tài)權(quán)重搜索.

      (13)

      (14)

      首先計算相對下降率wk,即每個子任務(wù)與前一輪epoch損失的比值,然后除以超參T,T越大代表個任務(wù)間權(quán)重差異越小,最后進行exp映射后,計算各個損失所占比.

      為了提高少數(shù)類的召回率,額外引入一個二分類任務(wù),其中Lc為多分類損失、Lbc為二分類損失,其公式為

      Lmc=-α(1-softmax(H))γ·
      log(softmax(H));

      (15)

      Lbc=-α(1-D(H))γlog(D(H))+
      (1-α)D(H)γlog(1-D(H)).

      (16)

      該公式在原始交叉熵損失上加入平衡因子α和γ對損失函數(shù)進行約束,平衡因子α用來平衡正負樣本,當(dāng)α趨近1時,1-α趨近0,即負樣本比正樣本占比小.而平衡因子γ則對樣本易分程度進行了平衡,由于D(H)的輸出在(0,1)之間,因此當(dāng)γ>1時,D(H)γ增大而(1-D(H))γ減小,即置信度高則該樣本易分,其損失會降低,使模型更關(guān)注難分樣本.

      2 實驗方法與分析

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

      大多數(shù)入侵檢測模型所采用的數(shù)據(jù)集KDD-99或NLS-KDD距今已有十多年[13].然而,對于當(dāng)前的網(wǎng)絡(luò)威脅環(huán)境,這些數(shù)據(jù)集并不能全面反映網(wǎng)絡(luò)流量和入侵攻擊,考慮到網(wǎng)絡(luò)數(shù)據(jù)集應(yīng)該具有時效性,本文采用了CICIDS2017數(shù)據(jù)集[14].該數(shù)據(jù)集由加拿大網(wǎng)絡(luò)安全研究所提供,其融合了真實的正常和攻擊流量.更適合模擬現(xiàn)有網(wǎng)絡(luò)環(huán)境.數(shù)據(jù)集中所包含攻擊類型見表1.其中KDD99與NSL-KDD數(shù)據(jù)集中并不包含Browser、Bdoor以及DNS攻擊類型,而CICIDS-2017包含了現(xiàn)在流行的大多數(shù)攻擊.因此采用該數(shù)據(jù)集訓(xùn)練的模型更加適應(yīng)現(xiàn)有的網(wǎng)絡(luò)環(huán)境.

      表1 數(shù)據(jù)集包含攻擊類型

      CICIDS2017數(shù)據(jù)集十分龐大.其包含3 119 345條數(shù)據(jù),15個類別標(biāo)簽(14個攻擊類型+1個正常類型).刪除缺失數(shù)據(jù)后仍有2 830 540條數(shù)據(jù).該數(shù)據(jù)集雖然包含了大多數(shù)攻擊場景,但是其缺點是數(shù)據(jù)分布不平衡.各類別的分布如表2 所示.

      表2 入侵類型分布

      可以看出BEGIN的占比為83.4%,HeartBleed的占比為0.000 39%,數(shù)據(jù)集非常不平衡將會對分類器的分類性能有嚴(yán)重影響,分類器會更加偏向?qū)颖九袆e為多數(shù)類,而忽視少數(shù)類別,因為這樣能夠更加輕易獲得較低的損失值.因此,在進行訓(xùn)練過程前,需要對數(shù)據(jù)集的不平衡性進行處理.最簡單的方法即為重新劃分類別,該數(shù)據(jù)集中正常類很難再細分,于是可以考慮將少數(shù)攻擊類合并為新的類別,調(diào)整后的類別分布如表3所示.

      從表3中可以看出攻擊類別的占比有著明顯的提升,從而大大降低了類別的不平衡性.由于類別的分布有著很大的不平衡性,正樣本是負樣本的數(shù)倍之多,故模型采用分層K折交叉驗證,即在每一折中都保持著原始數(shù)據(jù)中各個類別的比例關(guān)系.選取K為3,將2/3用于訓(xùn)練,1/3用于測試.訓(xùn)練3次,取其平均值.

      2.2 實驗設(shè)置

      本文在Ubuntu18.04環(huán)境上進行,采用Keras深度學(xué)習(xí)框架,后端實現(xiàn)為TensorFlow-ROCm,集成環(huán)境為Anaconda3.系統(tǒng)硬件配置如下:CPU為AMD ryzen 3600x,內(nèi)存為16 GB,GPU為AMD RX580.具體設(shè)置參數(shù)見表4和5.

      表4 膠囊網(wǎng)絡(luò)參數(shù)設(shè)置

      表5 SRU網(wǎng)絡(luò)參數(shù)設(shè)置

      聯(lián)合學(xué)習(xí)模型中,膠囊網(wǎng)絡(luò)和SRU單元的輸出向量均為64維,經(jīng)過拼接后為128維向量,該向量通過一層前饋全連接網(wǎng)絡(luò)后由softmax分類.層與層之間加入Layer Normalization對數(shù)據(jù)進行歸一化,使其分布一致,避免梯度消失,加快收斂速度.

      本文通過混淆矩陣(見表6)分別計算準(zhǔn)確率 (A),查準(zhǔn)率(P),查全率 (R),和F1值(F1)來評估模型的性能.

      (11)

      表6 混淆矩陣

      (12)

      (13)

      其中P是模型預(yù)測為正例中預(yù)測正確的比重,R是所有真實值是正例的結(jié)果中預(yù)測正確的比重,F(xiàn)1值是對查準(zhǔn)率和查全率進行了綜合考慮,F(xiàn)1值越高,說明模型越穩(wěn)健,性能越好.

      2.3 實驗結(jié)果與分析

      2.3.1 收斂性分析

      圖3和4展示了多任務(wù)聯(lián)合模型訓(xùn)練時的準(zhǔn)確率和損失值的變化趨勢,其中acc和loss分別代表代表準(zhǔn)確率和損失.在20次的迭代訓(xùn)練中,準(zhǔn)確率穩(wěn)定上升直至訓(xùn)練后期趨于平穩(wěn),同時損失值也平穩(wěn)地下降,10輪之后基本穩(wěn)定不再變化,表明本模型良好且能夠快速收斂.訓(xùn)練使用完整數(shù)據(jù)集,對比試驗也采用相同的數(shù)據(jù)集和測試集.

      圖3 多任務(wù)聯(lián)合模型的準(zhǔn)確率

      圖4 多任務(wù)聯(lián)合模型損失

      2.3.2 模型對比分析

      為了驗證本文模型對入侵檢測有著更好的效果,分別對比了文獻[5]中基于卷積神經(jīng)網(wǎng)絡(luò)的入侵檢測方法,文獻[6]中基于長短時記憶網(wǎng)絡(luò)的方法以及文獻[7]中基于CNN+GRU混合模型的方法.同時也對比了本文模型添加輔助任務(wù)和不添加輔助任務(wù)的情況.通過對比各個模型的性能指標(biāo)來分析模型的優(yōu)缺點,實驗結(jié)果如表7所示.

      表7 不同模型的性能對比 %

      可以看出在單一模型中LSTM和CNN模型的性能基本相同,而由于CNN+GRU混合模型能夠提取更加豐富的特征,故所有類別的F1均高于單一模型.但是3個模型對Infiltration和WebAttack類的檢測上均表現(xiàn)較差,尤其是 Infiltration類,這3種方法均無法檢測出該類.對于不添加輔助函數(shù)的本文模型,性能與CNN+GRU模型類似,對Infiltration類別的判斷有所提高,而添加了輔助任務(wù)的多任務(wù)聯(lián)合學(xué)習(xí)模型不僅在P,R,F(xiàn)1值方面均優(yōu)于對比模型,同時能夠很好的檢測出Infiltration與WebAttack這樣的少數(shù)類別.這是因為數(shù)據(jù)集中惡意樣本數(shù)相對較少,而少數(shù)類別對神經(jīng)網(wǎng)絡(luò)的權(quán)重影響過于小,損失函數(shù)通過忽視少數(shù)類別能夠更簡單的降低損失值,因此本文方法引入一個二分類的輔助損失,通過該損失函數(shù)來調(diào)整網(wǎng)絡(luò)共享層的權(quán)重,使其能夠注意到少數(shù)的攻擊類別.

      2.3.3 輔助損失驗證分析

      在多任務(wù)聯(lián)合學(xué)習(xí)模型中,需要對每個任務(wù)的損失進行權(quán)重分配,必須保證輔助損失能夠微調(diào)模型權(quán)重參數(shù)但又不能主導(dǎo)整個模型的訓(xùn)練[15].通過使用動態(tài)損失權(quán)重和不使用動態(tài)損失權(quán)重進行模型訓(xùn)練來確定該方法是否有效,結(jié)果如表8所示.可以發(fā)現(xiàn)使用動態(tài)損失權(quán)重的模型F1值明顯優(yōu)于不使用該方法.其動態(tài)調(diào)整二分類損失的比重可以更好地調(diào)整模型參數(shù),提高少數(shù)類別的召回率.

      表8 動態(tài)損失權(quán)重 %

      3 結(jié)論

      本文提出的多任務(wù)聯(lián)合學(xué)習(xí)方法,很好地解決了流量數(shù)據(jù)中少數(shù)類別檢測難的問題,將CapsNet與SRU相結(jié)合提取更加全面的流量信息,最后結(jié)合輔助任務(wù)來提升少數(shù)類的召回率.通過對比不同方法的檢測結(jié)果,結(jié)果顯示本文方法在大幅提高少數(shù)類別召回率,同時查準(zhǔn)率也較其他方法有所提升.由于模型針對特定數(shù)據(jù)集訓(xùn)練,未考慮真實網(wǎng)絡(luò)環(huán)境下的流量數(shù)據(jù),所以下一步研究將著重于真實情況下的網(wǎng)絡(luò)入侵,建立一個泛化能力與抗干擾能力更強的入侵監(jiān)測系統(tǒng),來驗證多任務(wù)聯(lián)合學(xué)習(xí)方法的性能.

      猜你喜歡
      多任務(wù)類別損失
      少問一句,損失千金
      胖胖損失了多少元
      基于中心化自動加權(quán)多任務(wù)學(xué)習(xí)的早期輕度認知障礙診斷
      玉米抽穗前倒伏怎么辦?怎么減少損失?
      基于判別性局部聯(lián)合稀疏模型的多任務(wù)跟蹤
      基于多任務(wù)異步處理的電力系統(tǒng)序網(wǎng)絡(luò)拓撲分析
      電測與儀表(2016年5期)2016-04-22 01:13:46
      服務(wù)類別
      新校長(2016年8期)2016-01-10 06:43:59
      一般自由碰撞的最大動能損失
      論類別股東會
      商事法論集(2014年1期)2014-06-27 01:20:42
      中醫(yī)類別全科醫(yī)師培養(yǎng)模式的探討
      边坝县| 吴川市| 咸宁市| 喀什市| 温泉县| 庄河市| 古交市| 平和县| 兴安盟| 兴化市| 大余县| 宣恩县| 纳雍县| 正宁县| 柞水县| 斗六市| 巴楚县| 武穴市| 息烽县| 雅江县| 剑川县| 南雄市| 仁布县| 鄂尔多斯市| 登封市| 延川县| 逊克县| 广水市| 武清区| 中宁县| 晋宁县| 沾益县| 胶州市| 桃江县| 油尖旺区| 封开县| 平定县| 喜德县| 建昌县| 玉林市| 博野县|