• 
    

    
    

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

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

      2021-06-10 05:42:52李俊夏松竹蘭海燕李守政孫建國(guó)
      關(guān)鍵詞:檢出率神經(jīng)網(wǎng)絡(luò)流量

      李俊, 夏松竹, 蘭海燕, 李守政, 孫建國(guó)

      (1.國(guó)家工業(yè)信息安全發(fā)展研究中心,北京 100040; 2.哈爾濱工程大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,黑龍江 哈爾濱 150001)

      網(wǎng)絡(luò)安全包括承載載體的完整性、可用性及機(jī)密性。任何企圖破壞機(jī)密性或者繞過網(wǎng)絡(luò)安全機(jī)制的活動(dòng)都可以視為網(wǎng)絡(luò)入侵[1]。網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)是一種用于檢測(cè)網(wǎng)絡(luò)入侵的安全管理系統(tǒng),是網(wǎng)絡(luò)安全系統(tǒng)中不可或缺的一部分[2]。網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)通常會(huì)抓取檢測(cè)特定網(wǎng)絡(luò)中全部的出流量及入流量,以確定其中一些數(shù)據(jù)包是否含有入侵跡象[3]。

      近年來,機(jī)器學(xué)習(xí)的許多研究應(yīng)用在入侵檢測(cè)領(lǐng)域。例如,支持向量機(jī)、人工神經(jīng)網(wǎng)絡(luò)和遺傳算法在入侵檢測(cè)領(lǐng)域取得了不錯(cuò)的成績(jī)。但是由于入侵呈現(xiàn)多樣化,現(xiàn)有的機(jī)器學(xué)習(xí)方法暴露出很多局限性。尤其在自動(dòng)提取入侵特征和分析中,需要更好的學(xué)習(xí)方法。

      Hinton等[4]研究發(fā)現(xiàn),深度學(xué)習(xí)被廣泛應(yīng)用在自然語言處理、圖像識(shí)別和天氣預(yù)報(bào)領(lǐng)域。深度學(xué)習(xí)中應(yīng)用高度非線性結(jié)構(gòu),在處理復(fù)雜數(shù)據(jù)時(shí)表現(xiàn)出出色的識(shí)別能力。并行計(jì)算硬件設(shè)施的高速發(fā)展也為深度學(xué)習(xí)算法提供了強(qiáng)有力的硬件支撐。通過設(shè)計(jì)合理的網(wǎng)絡(luò)結(jié)構(gòu),深度神經(jīng)網(wǎng)絡(luò)可有效控制神經(jīng)網(wǎng)絡(luò)的參數(shù)量,確保網(wǎng)絡(luò)性能的同時(shí),降低神經(jīng)網(wǎng)絡(luò)的運(yùn)行成本[5]。

      由于訓(xùn)練和計(jì)算復(fù)雜性,遞歸神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)在過去的一段時(shí)間未能成為主流深度學(xué)習(xí)的網(wǎng)絡(luò)模型。近些年,RNN開始進(jìn)入快速發(fā)展時(shí)期,在手寫識(shí)別[6]和語音識(shí)別[7-8]領(lǐng)域有了廣泛的應(yīng)用。RNN的特點(diǎn)是同一層中的節(jié)點(diǎn)是連通的。因此,隱藏層的輸入不僅包括上層的輸出,還包含最后一個(gè)時(shí)間點(diǎn)的同一層的輸出[9]。許多入侵行為可以抽象為來自底層網(wǎng)絡(luò)的特定時(shí)間序列的時(shí)間。因此,RNN被認(rèn)為適合用來構(gòu)建入侵檢測(cè)系統(tǒng)。

      本文將門控循環(huán)單元(gated recurrent unit,GRU)結(jié)構(gòu)放在RNN神經(jīng)網(wǎng)絡(luò)中進(jìn)行入侵檢測(cè),模型可以識(shí)別具有時(shí)序特性的入侵流量。分析并設(shè)計(jì)模型的層次結(jié)構(gòu),分析最優(yōu)的損失函數(shù)、分類函數(shù),提出了一種最適用于本文的優(yōu)化函數(shù),加快模型收斂速度。

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

      1.1 數(shù)值化

      使用歸一化、數(shù)值化方法處理元數(shù)據(jù)。KDD數(shù)據(jù)集中的數(shù)據(jù)是多組一維向量組成:

      [0,tcp,http,SF,219,1098,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0.00,0.00,0.00,0.00,1.00,0.00,0.00,7,255,1.00,0.00,0.14,0.05,0.00,0.01,0.00,0.00,normal]

      每列所代表內(nèi)容為:

      [“duration”,“protocol_type”,“service”,“flag”,“src_bytes”,“dst_bytes”,“l(fā)and”,“wrong_fragment”,“urgent”,“hot”,“num_failed_logins”,“l(fā)ogged_in”,“num_compromised”,“root_shell”,“su_attempted”,“num_root”,“num_file_creations”,“num_shells”,“num_access_files”,“num_outbound_cmds”,“is_host_login”,“is_guest_login”,“count”,“srv_count”,“serror_rate”,“srv_serror_rate”,“rerror_rate”,“srv_rerror_rate”,“same_srv_rate”,“diff_srv_rate”,“srv_diff_host_rate”,“dst_host_count”,“dst_host_srv_count”,“dst_host_same_srv_rate”,“dst_host_diff_srv_rate”,“dst_host_same_src_port_rate”,“dst_host_srv_diff_host_rate”,“dst_host_serror_rate”,“dst_host_srv_serror_rate”,“dst_host_rerror_rate”,“dst_host_srv_rerror_rate”,“l(fā)abel”]

      其中4項(xiàng)是字符型的數(shù)據(jù),需要對(duì)其進(jìn)行數(shù)值化處理。例如最后一項(xiàng)數(shù)據(jù)類型label,共有5種,分別是普通行為、拒絕服務(wù)攻擊、網(wǎng)絡(luò)窺探、越權(quán)攻擊、遠(yuǎn)程攻擊。此部分?jǐn)?shù)據(jù)離散化不能作為GRU-RNN模型的直接輸入,需要將數(shù)據(jù)重新編碼。可以采用One-hot編碼方式。在用機(jī)器學(xué)習(xí)算法分類時(shí),計(jì)算各個(gè)特征之間的距離非常重要。One-hot編碼基本思想是將原數(shù)據(jù)的離散值轉(zhuǎn)換為歐式空間中的一個(gè)點(diǎn)。label分類的轉(zhuǎn)換可以如表1所示。

      表1 攻擊分類one-hot編碼表Table 1 Attack classification one-hot code table

      1.2 歸一化

      元數(shù)據(jù)的范圍不一致,例如第一列數(shù)據(jù)在(0,1)分布,第5列數(shù)據(jù)理論上可以達(dá)到無窮大。不利于神經(jīng)網(wǎng)絡(luò)的處理。如果數(shù)值過大會(huì)增加計(jì)算負(fù)擔(dān)。所以對(duì)數(shù)據(jù)進(jìn)行歸一化處理,例如將第5列數(shù)據(jù)歸一到(0,1),本文采用歸一化式:

      (1)

      2 GRU-RNN網(wǎng)絡(luò)結(jié)構(gòu)

      2.1 RNN循環(huán)神經(jīng)網(wǎng)絡(luò)

      推出RNN的目的是因?yàn)槿藗兿胍脦в许樞蛐缘臄?shù)據(jù)。在傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)中,假設(shè)所有輸入和輸出互相獨(dú)立。但是對(duì)于許多的任務(wù)處理,這種處理方式得到的模型效果很差。例如某人想要預(yù)測(cè)句子的下一個(gè)單詞,那么他最好知道之前的單詞都是什么,否則無法完成預(yù)測(cè)。RNN之所以稱之為遞歸,是因?yàn)樗鼘?duì)序列的每個(gè)元素都執(zhí)行相同的任務(wù),它的輸出受之前運(yùn)算影響。RNN具有記憶功能,可以捕獲到目前已經(jīng)計(jì)算出來的所有有關(guān)的內(nèi)容。

      RNN具有記憶功能,得益于RNN的模型結(jié)構(gòu)設(shè)計(jì),可以將之前的信息傳遞到后面的隱含層中,從而達(dá)到記憶的效果。RNN能夠記住在時(shí)間t處理的信息,在隨后的時(shí)間進(jìn)行計(jì)算,RNN模型結(jié)構(gòu)圖如圖1所示。

      圖1 遞歸神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Recurrent neural network structure diagram

      RNN的模型結(jié)構(gòu)比較簡(jiǎn)單,由輸入層、隱藏層和輸出層組成。輸入層與隱含層和隱含層與輸出層之間為全連接的狀態(tài),隱含層自身也有一個(gè)自循環(huán)結(jié)構(gòu)。RNN模型展開圖如圖2所示。

      圖2 遞歸神經(jīng)網(wǎng)絡(luò)的層級(jí)展開Fig.2 Hierarchical expansion of recurrent neural network

      RNN展開圖中t-1,t,t+1代表時(shí)間順序。輸入層用x表示,W表示之前樣本的權(quán)重矩陣,U表示當(dāng)前時(shí)刻輸入樣本的權(quán)重矩陣,V表示輸出的權(quán)重矩陣。St表示數(shù)據(jù)在時(shí)間點(diǎn)t的隱藏狀態(tài),其計(jì)算過程受上一個(gè)時(shí)間點(diǎn)計(jì)算出來的狀態(tài)影響:

      St=f(W*St-1+U*Xt)

      (2)

      其中,f(·)為激活函數(shù),采用tanh函數(shù)。

      模型一般在t時(shí)刻初始化各類初值,其余值初始化階段:

      h1=Ux1+Ws0

      (3)

      s1=f(h1)

      (4)

      o1=g(Vs1)

      (5)

      其中g(shù)(·)為激活函數(shù),采用SOFTMAX函數(shù),在一次運(yùn)算完成后,當(dāng)前的狀態(tài)將作為t時(shí)刻的狀態(tài)參與下一時(shí)刻的運(yùn)算:

      h2=Ux2+Ws1

      (6)

      s2=f(h2)

      (7)

      o2=g(Vs2)

      (8)

      由此可知,最終輸出的式為:

      ht=Uxt+Wst-1

      (9)

      st=f(ht)

      (10)

      ot=g(Vst)

      (11)

      可以將隱藏狀態(tài)視為RNN“內(nèi)存”。 捕獲t時(shí)間點(diǎn)前發(fā)生的所有事情,并基于t時(shí)間點(diǎn)計(jì)算輸出。RNN在所有步驟中共享相同的參數(shù)(U,W,V),減少了學(xué)習(xí)過程中需要學(xué)習(xí)的參數(shù)總數(shù)。

      2.2 門控制循環(huán)單元

      門控循環(huán)單元(gated recurrent unit,GRU)在多種應(yīng)用領(lǐng)域中被證明是一種有效的LSTM變體,其結(jié)構(gòu)是LSTM的簡(jiǎn)化和提升版[10]。使用復(fù)位門和更新門替代LSTM結(jié)構(gòu)中輸入門、遺忘門和輸出門。復(fù)位門來計(jì)算是否忘記之前計(jì)算狀態(tài),更新門決定將上一步多少信息繼續(xù)迭代到當(dāng)前步驟[11]。GRU結(jié)構(gòu)如圖3所示。

      圖3 門控循環(huán)單元結(jié)構(gòu)Fig.3 gated recurrent unit structure diagram

      GRU結(jié)構(gòu)的主要計(jì)算式:

      rt=σ(Wrxt+Urht-1)

      (12)

      zt=σ(Wzxt+Urht-1)

      (13)

      (14)

      (15)

      GRU結(jié)構(gòu)比LSTM簡(jiǎn)單,在運(yùn)算的速度和性能上比LSTM更有優(yōu)勢(shì)[12],其展開圖如圖4所示。

      圖4 門控循環(huán)單元展開Fig.4 Hierarchical expansion of gated recurrent unit

      2.3 GRU-RNN網(wǎng)絡(luò)設(shè)計(jì)

      傳統(tǒng)網(wǎng)絡(luò)入侵檢測(cè)[13-14]被證明是非常有效的檢測(cè)手段,但這類檢測(cè)方式只對(duì)例如越權(quán)攻擊有較好的檢出率[15]。由于網(wǎng)絡(luò)入侵有明顯的時(shí)序性,例如DDOS攻擊就是在短時(shí)間內(nèi)大量的訪問某服務(wù)造成服務(wù)不可用的狀態(tài)。傳統(tǒng)的檢測(cè)方式[16],無法對(duì)持續(xù)一段時(shí)間的攻擊行為進(jìn)行檢測(cè),會(huì)在迭代學(xué)習(xí)的過程中產(chǎn)生一種梯度消失的現(xiàn)象,即遺忘[17]。所以本文采用RNN循環(huán)神經(jīng)網(wǎng)絡(luò),結(jié)合GRU模型,能夠處理具有時(shí)序性的攻擊信息。

      將GRU與RNN結(jié)合,構(gòu)建GRU-RNN網(wǎng)絡(luò)入侵檢測(cè)模型。如圖5所示,該系統(tǒng)由數(shù)據(jù)預(yù)處理模塊、過采樣模塊、GRU模塊、RNN模塊和輸出模塊組成。預(yù)處理模塊負(fù)責(zé)將原數(shù)據(jù)轉(zhuǎn)換為適合神經(jīng)網(wǎng)絡(luò)輸入的數(shù)值;GRU模塊由2個(gè)GRU層組成,每層含2個(gè)GRU結(jié)構(gòu)存儲(chǔ)數(shù)據(jù),是系統(tǒng)的核心部分;RNN模塊含15層隱含層,對(duì)GRU模塊的輸出執(zhí)行非線性映射,最終做出非線性的分類決策。KDD數(shù)據(jù)集共有5種行為,分別是普通行為、拒絕服務(wù)攻擊、網(wǎng)絡(luò)窺探、越權(quán)攻擊、遠(yuǎn)程攻擊。所以輸出層采用SOFTMAX函數(shù)對(duì)結(jié)果進(jìn)行分類處理,可標(biāo)準(zhǔn)化分類概率并將其輸出為最終結(jié)果。

      圖5 GRU-RNN網(wǎng)絡(luò)結(jié)構(gòu)Fig.5 GRU-RNN network structure diagram

      在這些組件當(dāng)中,GRU和RNN模塊是2種不同的神經(jīng)網(wǎng)絡(luò)模型。GRU結(jié)構(gòu)復(fù)雜,計(jì)算量大。RNN結(jié)構(gòu)簡(jiǎn)單,可以進(jìn)行快速的計(jì)算且易于堆疊。所以本文采用2層GRU和15層RNN隱含層來實(shí)現(xiàn)。兩者構(gòu)成一個(gè)深層網(wǎng)絡(luò),實(shí)現(xiàn)更優(yōu)化的結(jié)果。

      輸入層具有41個(gè)輸入神經(jīng)元,輸入層連接到2個(gè)記憶模塊的隱含層,輸入層的神經(jīng)元與隱含層是全連接的關(guān)系。

      1)輸入層設(shè)計(jì)。

      將KDD-99數(shù)據(jù)集中的元數(shù)據(jù)數(shù)值化和歸一化后輸入GRU-RNN模型。其中protocol_type、service、flag和label元數(shù)據(jù)為字符型,利用One-hot編碼成為標(biāo)量。對(duì)src_bytes、dst_bytes等數(shù)據(jù)歸一化成為(0,1)標(biāo)量。元數(shù)據(jù)共41個(gè)維度,處理后對(duì)應(yīng)41個(gè)輸入神經(jīng)元的輸入層將元數(shù)據(jù)輸入GRU-RNN。

      2)GRU與RNN隱含層設(shè)計(jì)。

      由2層記憶層組成,該部分負(fù)責(zé)存儲(chǔ)數(shù)據(jù),即模型最核心的創(chuàng)新點(diǎn)“記憶功能”。用于識(shí)別持續(xù)時(shí)間較長(zhǎng)的攻擊行為。然后將數(shù)據(jù)導(dǎo)入一個(gè)15層的RNN隱含層進(jìn)行特征識(shí)別。

      3)輸出層。

      該KDD-99數(shù)據(jù)集中共有5種行為被標(biāo)識(shí),所以本系統(tǒng)采用一個(gè)5個(gè)輸出神經(jīng)元的輸出層。

      3 實(shí)驗(yàn)

      3.1 測(cè)量方法

      對(duì)于分類問題,分類結(jié)果可以是正確的或不正確的,所有可能的結(jié)果可以分為表2中4個(gè)情況。

      表2 性能指標(biāo)分類表Table 2 Measure classification

      TP表示模型檢測(cè)出攻擊流量的數(shù)目,且該檢測(cè)結(jié)果是正確的;FN表示檢出為攻擊流量的數(shù)目,但其檢測(cè)結(jié)果錯(cuò)誤,這些流量實(shí)際是正常流量;TN表示檢出為正常流量的數(shù)目,且檢測(cè)結(jié)果是正確的;FP表示檢出為正常流量的數(shù)目,但其檢測(cè)結(jié)果錯(cuò)誤,實(shí)際該流量是攻擊流量。其中,F(xiàn)P和FN稱為誤報(bào)。

      根據(jù)以上4個(gè)參數(shù),通??梢缘贸?個(gè)指標(biāo)衡量一個(gè)模型的實(shí)際性能。

      準(zhǔn)確率:

      (16)

      檢出率:

      (17)

      正確檢出率:

      (18)

      漏報(bào)率:

      (19)

      相關(guān)系數(shù):

      (20)

      其中,式(16)代表正確判斷所有入侵流量和正常流量的概率;式(17)、(18) 代表攻擊流量的檢出率;式(19)代表攻擊流量被當(dāng)成正常流量的誤報(bào)率;式(20)是衡量模型總體指標(biāo)的衡量函數(shù)。

      3.2 數(shù)據(jù)集

      KDD數(shù)據(jù)集是美國(guó)空軍模擬空軍基地局域網(wǎng),收集7個(gè)星期的訓(xùn)練數(shù)據(jù)和2個(gè)星期的測(cè)試數(shù)據(jù)。手機(jī)的數(shù)據(jù)總數(shù)包含200多個(gè)實(shí)例。

      流量被分類為正常流量或某種攻擊類型。攻擊被分成4個(gè)攻擊類別:拒絕服務(wù)攻擊(DOS)、網(wǎng)絡(luò)探測(cè)(Probe)、遠(yuǎn)程攻擊(R2L)和越權(quán)攻擊(U2R)。

      3.3 GRU-RNN網(wǎng)絡(luò)結(jié)構(gòu)實(shí)驗(yàn)

      為進(jìn)一步驗(yàn)證本文提出的GRU-RNN網(wǎng)絡(luò)模型性能。與其他文獻(xiàn)中入侵檢測(cè)模型進(jìn)行比較,包括不平衡學(xué)習(xí)、支持向量機(jī)、DNN等學(xué)習(xí)方法[18-19]。此外在本實(shí)驗(yàn)中,使用NSL-KDD數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),作為KDD數(shù)據(jù)集的改進(jìn)版,解決了KDD-CUP-99數(shù)據(jù)集s一些固有問題[20]。但總體仍然存在一些問題,通常將2種數(shù)據(jù)集一起使用。

      如表3~5所示,實(shí)驗(yàn)測(cè)試了不同模型的整體檢測(cè)性能。

      表3 與其他不平衡算法性能比較Table 3 Comparison with other imbalance algorithms

      表4 與其他傳統(tǒng)算法性能比較Table 4 Compared with other traditional algorithms

      表5 與其他深度學(xué)習(xí)算法性能比較Table 5 Comparison with other deep learning algorithms

      與其他的不平衡學(xué)習(xí)方法相比,本文提出的GRU-RNN模型使用最少的樣本來獲得最佳性能。在準(zhǔn)確率和正確檢出率方面,I-NGSA與CANN+SMOTE模型在不平衡學(xué)習(xí)模型中取得了比較好的效果。相比之下,本文提出的GRU-RNN模型效果略遜色于上述2種模型,但由于均達(dá)到99%以上的檢出率。所以可以忽略本部分的劣勢(shì),可以視為是較好的檢測(cè)水平。

      與淺層學(xué)習(xí)相比,GA-LR在淺層學(xué)習(xí)中所有指標(biāo)均表現(xiàn)良好,總體效果要略好于本文提出的模型。但由于GA-LR模型所需要的訓(xùn)練數(shù)據(jù)集大小為本模型的7倍。因此,在相同的數(shù)據(jù)量下,本模型的收斂性比GA-LR模型好。表現(xiàn)出本算法在少量數(shù)據(jù)的時(shí)候,就能達(dá)到最優(yōu)狀態(tài)。

      與其他深度學(xué)習(xí)模型[21-22]相比,結(jié)果顯示其他深度模型均有較好的性能。其中,CNN-LSTM與DNN模型總體上檢測(cè)效果要好于本模型,與GA-LR模型具有同樣的問題,需要的數(shù)據(jù)量遠(yuǎn)大于本模型。S-NADE模型,整體性能較差,需要的數(shù)據(jù)量也遠(yuǎn)超本模型。SCDNN模型,正確檢出率極低。

      4 結(jié)論

      1)實(shí)驗(yàn)結(jié)果驗(yàn)證了基于GRU網(wǎng)絡(luò)記憶模塊的GRU-RNN入侵檢測(cè)系統(tǒng),能夠解決傳統(tǒng)的入侵檢測(cè)模型普遍無法對(duì)具有時(shí)序特征(尤其是持續(xù)時(shí)間較長(zhǎng)的攻擊)檢出率不高的問題。

      2)對(duì)KDD數(shù)據(jù)集的仿真實(shí)驗(yàn)表明,該模型能夠在使用較少數(shù)據(jù)集的條件下,達(dá)到99%以上的準(zhǔn)確率,且具有較好的準(zhǔn)確率、檢出率和漏報(bào)率。

      本文對(duì)所提出的模型主要進(jìn)行了理論驗(yàn)證,為了驗(yàn)證該模型的實(shí)際應(yīng)用,需要投入到大量的工程中運(yùn)行。下一步的研究重點(diǎn)是優(yōu)化模型,使其能夠應(yīng)用在網(wǎng)絡(luò)入侵檢測(cè)的實(shí)際場(chǎng)景中。

      猜你喜歡
      檢出率神經(jīng)網(wǎng)絡(luò)流量
      冰墩墩背后的流量密碼
      玩具世界(2022年2期)2022-06-15 07:35:36
      QCT與DXA對(duì)絕經(jīng)后婦女骨質(zhì)疏松癥檢出率的對(duì)比
      安寧市老年人高血壓檢出率及其影響因素
      張曉明:流量決定勝負(fù)!三大流量高地裂變無限可能!
      長(zhǎng)程動(dòng)態(tài)心電圖對(duì)心律失常的檢出率分析
      尋找書業(yè)新流量
      出版人(2020年4期)2020-11-14 08:34:26
      神經(jīng)網(wǎng)絡(luò)抑制無線通信干擾探究
      電子制作(2019年19期)2019-11-23 08:42:00
      基于神經(jīng)網(wǎng)絡(luò)的拉矯機(jī)控制模型建立
      復(fù)數(shù)神經(jīng)網(wǎng)絡(luò)在基于WiFi的室內(nèi)LBS應(yīng)用
      山東產(chǎn)品抽查:文胸嬰幼兒服裝不合格率居前
      武鸣县| 澳门| 疏附县| 峨边| 寿宁县| 郧西县| 加查县| 霸州市| 政和县| 和田县| 大石桥市| 龙岩市| 左云县| 平遥县| 阳曲县| 务川| 阳新县| 巩义市| 新乡县| 德化县| 故城县| 晴隆县| 来凤县| 乐清市| 金平| 盐亭县| 梅州市| 枝江市| 安达市| 榆中县| 怀集县| 南汇区| 南华县| 宜都市| 潼南县| 瑞金市| 鄯善县| 沂源县| 神木县| 岳西县| 贵阳市|