999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于人工神經網絡和遺傳算法的網絡攻擊檢測

2021-09-16 01:51:44羅予東
計算機工程與設計 2021年9期
關鍵詞:分類特征檢測

羅予東,陸 璐

(1.嘉應學院 計算機學院,廣東 梅州 514015;2.華南理工大學 計算機科學與工程學院,廣東 廣州 510641)

0 引 言

入侵檢測是網絡安全領域的一個重要問題[1],傳統的入侵檢測系統[2]基于正常的流量數據建立模型,把與正常流量存在明顯差異的行為識別成異常行為,無需網絡異常行為的先驗知識,即可實現較好的檢測準確率,但由于噪聲數據和冗余數據的影響,此類傳統方法存在誤報率過高的問題。

目前主流的方法是將特征選擇算法和機器學習技術結合,能夠有效降低入侵檢測的誤報率,同時提高系統的處理效率[3]。宋勇等[4]提出了一種基于信息論模型的入侵檢測特征提取方法,該特征選擇算法提高了入侵檢測的準確率。文獻[5]首先應用K-近鄰模型檢測并刪除離群數據,有效提高了網絡攻擊的檢測效果。文獻[6]提出一種結合極限學習機與改進K-means算法的入侵檢測方法。文獻[4-6]分別采用搜索算法、隨機森林和極限學習機3種機器學習技術,在NSL-KDD和KDD-99等數據集上完成了驗證實驗,這兩個數據集的分類數量較少,且數據分布不平衡的程度較低。

因此本文采用MLRM[7]作為機器學習技術,將MLRM與多目標遺傳算法NSGA-II結合成封裝特征選擇算法。再把降維后的特征子集送入感知機訓練,利用重引力搜索算法搜索神經網絡的參數。本算法利用NSGA-II較強的多目標優化能力,并利用了多項式邏輯回歸模型較強的不平衡數據分類能力,選擇的特征子集對不平衡數據具有較強的判別能力,最終實現了較好的分類性能,另外通過GSA訓練技術加快了感知機的訓練速度。

1 封裝特征選擇算法

圖1是封裝特征選擇算法的流程,將多目標遺傳算法NSGA-II[8]和邏輯回歸分類器[9]組合成封裝式特征選擇算法。

圖1 基于遺傳算法和邏輯回歸的封裝特征選擇算法

1.1 多目標遺傳算法NSGA-II

NSGA-II算法通過irank和idist兩個指標評價解i的質量:irank表示解i的前沿排名,idist表示解i的密度。采用快速非支配排序方法[8]計算irank,采用擁擠度計算解的idist。擁擠度表示最近兩個點在前沿上的平均距離,通過擁擠度指數可維持解在前沿中均勻分布。解i擁擠度的計算式為

(1)

圖2 擁擠度計算

NSGA-II的選擇算子基于參數irank和idist實現,選擇算子的規則為:選擇前沿排名更高的解,如果兩個解屬于同一個前沿,則優先選擇處于低擁擠度的解。圖3是NSGA-II算法在第t次迭代的處理過程,遺傳算子處理種群Pt,產生后代種群Qt,將Pt和Qt合并成大小為2N的種群Rt。使用非支配排序方法識別種群Rt中不同的前沿,采用精英機制將最優前沿的解保留到下一次迭代。

圖3 NSGA-II算法在第t次迭代的處理過程

1.2 邏輯回歸分類器

封裝式特征選擇采用邏輯回歸分類器MLR評價NSGA-II選擇的特征子集。使用MLR和訓練集評價該模型,然后將模型在測試集上進行測試。MLR模型中模態yj的邏輯定義為

(2)

通過下式降低J-1項的概率

(3)

通過差分運算估計概率πJ。通過計算最大似然,估計出(J-1)×(N+1)個項的系數

(4)

采用牛頓迭代法[10]計算式(4)的最大似然,首先建立牛頓法的梯度向量和Hessian矩陣,將梯度向量G表示為

(5)

式中:向量Gj與模態yj相關聯,Gj的維度為(N+1)×1,Gj第i個元素的計算式為

(6)

設H為Hessian矩陣,H的維度為[(J-1)×(N+1)]×[(J-1)×(N+1)],H定義為

(7)

式中:Hi,j的維度為(N+1)×(N+1),Hi,j的計算式為

(8)

式中:X=(1,X1,…,XN)是觀察樣本ω的表示向量。如果i=j,那么σi,j=1,否則σi,j=0。

1.3 封裝式特征選擇設計

針對不平衡數據分類問題,將NSGA-II和MLR結合成封裝特征選擇算法。特征選擇的目標是以最少的特征獲得最高的分類準確率,屬于多目標優化問題,算法1所示是特征選擇算法的步驟,通過NSGA-II搜索多目標優化問題的帕累托前沿,通過MLR評價特征的質量。

算法1隨機初始化N個染色體的種群Pt,每個染色體表示一個潛在的特征子集,假設總特征數量為n,特征子集為X={x1,x2,…,xn},其中xi∈{0,1},1≤i≤n。xi=1表示特征i被選擇,否則被取消。首先通過MLR評估初始化種群的染色體,將準確率和特征數量作為兩個目標函數。將MLR評估過的每個子集保存于列表L,避免重復評估相同的特征子集,由此加快處理速度。采用非支配排序方法將初始化種群排序,經過遺傳算子(選擇算子、交叉算子及變異算子)處理產生后代種群Qt。根據非支配排列程序的排序結果直接生成第1個后代種群,選擇算子選擇擁擠度低的染色體,交叉算子采用概率為pc的單點交叉,變異算子采用概率為pm的隨機變異。將父種群Pt和后代種群Qt合并獲得Rt,對種群Rt進行非支配排序處理和擁擠度排序處理,選出排名前一半的染色體建立下一代種群。特征選擇算法的結束條件為:①當前種群與下一代種群相同;②達到預設的迭代次數G。

算法1:封裝特征選擇算法

輸入:訓練數據集,測試數據集

輸出:帕累托次優解集

(1)i=0;

(2)Pt=NULL;

(3)Pt+1=NULL;

(4)Evaluate(L);

(5)InitPop(Pt);

(6)Evaluate(Pt,L);//評價種群

(7)NonDomSort(Pt); //非支配排序

(8)While()do

(9) if(i>0)then

(10)NonDomSort(Pt+1); //非支配排序

(11)CrowdDistanceSort(Pt+1);//擁擠度排序

(12)Pt=Pt+1;

(13) endif

(14)GenOff(Pt,Qt); //生成后代種群

(15)Evaluate(Qt,L); //評價種群

(16)Rt=Merge(Pt,Qt); //合并種群

(17)NonDomSort(Rt); //非支配排序

(18)CrowdDistanceSort(Rt);//擁擠度排序

(19)Gen(Rt,Pt+1); //產生下一代種群

(20)i++;

(21)endwhile

2 攻擊檢測算法

2.1 基于多層感知機的攻擊檢測

多層感知機MLP具有結構簡單、訓練難度小的優點,因此采用MLP檢測網絡的攻擊類型,MLP包含一個輸入層I、一個隱藏層H和一個輸出層O。根據數據集的分類數量決定輸出層的節點數量,例如:NSL-KDD數據集共有5個分類,輸出節點數量為3,輸出“000”表示正常樣本,“001”表示DoS攻擊,“010”表示U2R攻擊,“011”表示R2L攻擊,“100”表示Probe攻擊。圖4是MLP的網絡結構,在MLP輸入層和隱藏層之間的權重記為Vih,隱藏層和輸出層之間的權重記為Who,偏置節點和輸出節點間連接的權重B1,B2,B3稱為偏置權重。因此MLP共有((I×H)+(H×3)+3)個權重參數。

圖4 多層感知機的網絡結構

2.2 人工神經網絡的訓練方法

目前大多采用反向傳播算法直接訓練MLP分類器[11],但該訓練過程容易陷入局部最優。為解決該問題,本文將重引力搜索(gravitational search algorithm,GSA)和粒子群優化(particle swarm optimization,PSO)混合來提高MLP的訓練效果,簡記為HPSO(hybrid particle swarm optimization),提高算法的全局搜索能力,并避免陷入局部最優。圖5是基于HPSO訓練ANN的流程。

圖5 基于HPSO的訓練流程

(1)Agent表示

GSA的每個Agent對應一個可能解,將Agent表示為向量形式:{V11,V12,…,VIH,W11,W12,…,WH3,B1,B2,B3},每個元素對應ANN的一個權重參數。Agent的長度等于[(I×H)+(H+3)+3]。

Agent解的每個元素初始化為[-1,1]的隨機數,然后隨機初始化每個Agent的參數,包括:速度、質量、G0、慣性權重、學習因子。圖6是隨機初始化Agent的一個實例。

圖6 隨機初始化Agent的實例

(2)Agent的適應度評價

ANN采用以下的sigmoid激活函數

(9)

將網絡攻擊的識別準確率Det作為適應度函數,識別準確率的計算式為

(10)

式中:T表示被正確分類的樣本數量,F為錯誤分類的樣本數量。

(3)Agent更新

根據文獻[12]的研究,采用對數曲線更新Agent的引力,可降低GSA陷入局部最優的概率,Agent的對數更新公式為

(11)

式中:Gmin和Gmax分別為初始化引力常量的最小值和最大值,a為加速度,t為當前的迭代次數,T為預設的最大迭代次數。

為了加快GSA的搜索速度,設計如下的速度更新公式

(12)

式中:c′1和c′2為加速度系數,Agentbest為目前為止的最佳Agent,x為個體最佳位置,a為Agent的加速度,r1和r2為[0,1]范圍的隨機數。

Agent的速度更新公式為

vt=(ω×vt-1)+Z1+Z2

(13)

式中:ω為慣性權重,vt為Agent在第t次迭代的速度。

圖7是攻擊檢測算法的總體流程。

圖7 攻擊檢測算法的流程

3 實驗與結果分析

3.1 數據集簡介

基于NSL-KDD和CIC-IDS 2017兩個公開數據集完成算法的驗證實驗。KDD99數據集與其擴展數據集NSL-KDD是應用最為廣泛的網絡入侵數據集,但這兩個數據集的版本較為老舊,所包含的攻擊類型較少。因此本文也在近期的CIC-IDS2017數據集上完成了驗證實驗,該數據集采集了真實的網絡攻擊流量,且包含更多的攻擊類型。

NSL-KDD數據集是經典KDD-99數據集的擴展數據集,其訓練集共有125 973個樣本,測試集共有22 543個樣本。數據集共有41個特征和5個分類,表1是NSL-KDD數據集每個類別的分布情況,表中每個分類的所占比例顯示,該數據集是一個不平衡的數據集,正常樣本大約占了半數,DoS數據大約占了三分之一。

表1 NSL-KDD數據集的基本信息

CIC-IDS2017數據集包含5天時間內所采集的50 GB原始網絡流量數據,該數據集利用CICFlowMeter軟件[13]共提取了80余個特征,數據集的攻擊流量細分成14種攻擊類型:DoS黃金眼、Heartbleed、DoS Hulk、DoS Slowhttp、DoS Slowloris、SSH-Patator、FTP-Patator、Brute Force攻擊、SQL注入攻擊、XSS攻擊、滲透攻擊、Bot攻擊、端口掃描攻擊和DDoS。表2是CIC-IDS2017數據集每個分類的分布情況,表中每個分類的所占比例顯示,該數據集是一個極為不平衡的數據集[14]。

表2 CIC-IDS2017數據集的基本信息

3.2 實驗方法設計

實驗環境為PC機:配置Intel Core i7 4790S處理器,3.2 GHz主頻,16 GB內存,Windows 10操作系統。基于C++編程語言實現攻擊檢測算法。

(1)性能評價指標

首先通過分類準確率評價攻擊檢測的準確性,另外采用精度、召回率、F-measure、MCC(Matthews correlation coefficient)及AUC(area under curve)評價攻擊檢測算法的綜合性能。

精度的計算式為

(14)

式中:TPi為正陽性樣本,FPi為假陽性樣本。

召回率的計算式為

(15)

式中:FNi為假陰性樣本。

F-measure的計算式為

(16)

MCC的計算式為

------------------

(17)

------------------

式中:TNi為真陰性樣本。

AUC的計算式為

式中:TPR為真正率,FPR為假正率。

(2)對比方法介紹

共采用了6個攻擊檢測或識別算法與本文算法比較,將本文算法簡記為MGA-LR。GA-SVM[15]采用遺傳算法對流量數據集進行降維處理,通過過濾式特征選擇算法刪除一部分冗余特征,再利用支持向量機將流量數據樣本分類。GA-ANN[16]采用遺傳算法對流量數據集進行過濾式特征選擇,通過降維處理刪除一部分冗余特征,再利用人工神經網絡和支持向量機的混合模型將流量數據樣本分類。PSO-ANN[17]采用粒子群優化算法對流量數據集進行降維處理,將基尼指數和決策樹融合完成封裝式特征選擇,再對流量數據樣本進行分類。GS-ANN[18]將重引力搜索算法和模糊分類器結合成封裝式特征選擇算法,再利用人工神經網絡對流量數據進行分類。GSPSO-ANN[19]將重引力搜索算法和粒子群優化算法結合對流量數據進行降維處理,再利用多層感知機對流量數據進行分類。本文MGA-LR算法將多目標遺傳算法和多項式邏輯回歸分類器組合成封裝式特征選擇算法,再用特征集訓練多層感知機,實現對網絡攻擊的檢測與識別。

(3)實驗方法與參數設置

將每個數據集隨機均勻分成兩個子數據集Dataset1和Dataset2。數據集Dataset1用于特征選擇處理,Dataset1的50%作為訓練集,另外50%作為測試集。數據集Dataset2用于分類處理,Dataset2的60%作為訓練集,10%作為驗證集,30%作為測試集。實驗首先對網絡流量數據集進行預處理,使用Weka軟件[20]將數據樣本和特征轉換成整型數值,再將整型數值歸一化至[0,1]范圍。然后采用封裝式特征選擇算法對數據進行降維處理,并刪除冗余的特征。將特征子集和訓練數據送入多層感知機進行訓練,利用訓練的神經網絡識別測試數據的類型。

通過試錯實驗搜索GSA算法和GA算法的最佳參數,最終相關參數的取值見表3。NSL-KDD和CIC-IDS2017數據集的GSA種群大小分別為50和80,交叉率分別為0.6和0.7。NSL-KDD和CIC-IDS2017數據集的GA種群大小分別為50和100。

表3 優化算法的基本信息

3.3 實驗結果與分析

(1)特征選擇結果

表4是不同算法選擇的特征數量,GSPSO-ANN處理NSL-KDD數據集之后,僅保留了4個顯著特征,是降維效果最好的算法。GA-ANN和MGA-LR均屬于基于遺傳算法的特征選擇算法,兩者的區別在于GA-ANN是過濾式的特征選擇算法,而MGA-LR是封裝式的特征選擇算法,兩個算法刪除的維數十分接近。GA-SVM將特征判別能力作為主要目標,通過單目標遺傳算法完成尋優處理,因此刪除的特征數量較少。

表4 數據集的特征選擇結果(特征數量)

(2)流量檢測準確率

網絡安全算法的首要目標是將每個網絡數據實例分類,圖8(a)、圖8(b)分別為NSL-KDD數據集和CIC-IDS2017數據集的平均分類準確率。觀察NSL-KDD數據集的結果,GA-ANN通過7個特征獲得了約87.7%的分類準確率。MGA-LR通過6個特征獲得了更好的分類準確率。GSPSO-ANN僅通過4個特征即獲得了接近95%的分類準確率,在降維效果和準確率兩個方面較為平衡。總體而言,本文MGA-LR算法在準確率性能上表現出明顯的優勢。觀察CIC-IDS2017數據集的結果,GA-ANN通過15個特征獲得了約81.5%的分類準確率。GSPSO-ANN僅通過11個特征即獲得了接近84%的分類準確率,在降維效果和準確率兩個方面較為平衡。總體而言,本文MGA-LR算法在不同程度的不平衡數據集上均表現出明顯的優勢,其原因在于NSGA-II具有較強的多目標優化能力,多項式邏輯回歸模型也具有較強的不平衡數據分類能力,因此所選擇的特征子集對不平衡數據具有較強的判別能力。

圖8 檢測準確率的結果

(3)攻擊檢測性能

上文測試了算法框架每個階段的性能,該小節對攻擊檢測算法的總體性能進行實驗測試。圖9(a)、圖9(b)分別為NSL-KDD數據集的統計性能指標,圖10(a)、圖10(b)分別為CIC-IDS2017數據集的統計性能指標。觀察NSL-KDD數據集的結果,MGA-LR通過6個特征獲得了較好的統計分析結果,但在MMC和AUC兩個綜合性能指標上,本文算法仍然具有一定的優勢。比較NSL-KDD和CIC-IDS2017兩個數據集的統計分析結果,數據集的不平衡程度越高,總體檢測性能越低。本文利用NSGA-II較強的多目標優化能力,利用多項式邏輯回歸模型較強的不平衡數據分類能力,選擇的特征子集對不平衡數據具有較強的判別能力,最終實現了較好的分類性能。

圖9 NSL-KDD數據集的統計性能指標

圖10 CIC-IDS2017數據集的統計性能指標

(4)算法時間性能

時間效率是網絡攻擊檢測算法的另一個關鍵性能指標,表5、表6統計了不同檢測算法處理NSL-KDD和CIC-IDS2017數據集的平均時間及標準偏差,其中訓練時間為全部訓練過程的總時間,測試過程則是檢測每個數據實例的時間。本文算法采用了結構簡單的感知機神經網絡,且利用HPSO對神經網絡進行訓練,加快了訓練速度。由于本文采用的感知機具有結構簡單的特點,因此算法的檢測速度也較快。

表5 NSL-KDD數據集的時間性能/s

表6 CIC-IDS2017數據集的時間性能/min

4 結束語

為了提高網絡攻擊檢測的準確率,設計了基于人工神經網絡和遺傳算法的混合網絡攻擊檢測算法。該算法利用NSGA-II較強的多目標優化能力,利用多項式邏輯回歸模型較強的不平衡數據分類能力,所選擇的特征子集對不平衡數據實現了較強的判別能力。此外,采用結構簡單的感知機神經網絡,且利用HPSO對神經網絡進行訓練,加快了訓練速度。實驗結果顯示,本文算法對于不同程度的不平衡數據集均表現出較好的識別性能,優于其它同類型的方法。

猜你喜歡
分類特征檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
分類算一算
如何表達“特征”
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
分類討論求坐標
數據分析中的分類討論
教你一招:數的分類
抓住特征巧觀察
主站蜘蛛池模板: 五月丁香伊人啪啪手机免费观看| 国产自在线拍| 2020极品精品国产 | 国产精品白浆无码流出在线看| 亚洲精品视频网| 毛片在线看网站| 日韩中文精品亚洲第三区| 国内精品手机在线观看视频| 国产区福利小视频在线观看尤物| 激情视频综合网| 欧美精品H在线播放| 国产91小视频在线观看| 国产精品亚洲一区二区三区在线观看| 亚洲婷婷丁香| 婷婷色狠狠干| 国产性猛交XXXX免费看| 67194亚洲无码| 午夜啪啪福利| 熟女视频91| 99热最新网址| 国内精自线i品一区202| 色综合久久无码网| 亚洲欧美另类日本| 国产精品女人呻吟在线观看| 在线网站18禁| 国产成人免费手机在线观看视频| 亚洲首页国产精品丝袜| 天天做天天爱天天爽综合区| 国产麻豆精品在线观看| 亚洲精品色AV无码看| 色综合五月婷婷| 成人在线天堂| 欧美激情,国产精品| 久久午夜夜伦鲁鲁片无码免费 | 亚洲人成色77777在线观看| 欧美成人a∨视频免费观看| 国产三级精品三级在线观看| 国产日韩欧美成人| 亚洲精品无码人妻无码| 亚洲av色吊丝无码| 91福利免费视频| 精品视频一区二区三区在线播| 不卡国产视频第一页| 91国内在线观看| 香蕉蕉亚亚洲aav综合| av天堂最新版在线| 欧美成人影院亚洲综合图| 国产乱子伦精品视频| 久久综合色88| 欧美啪啪网| 99热国产这里只有精品无卡顿"| 国产欧美网站| 国产毛片不卡| 亚洲AV无码不卡无码 | 99激情网| 毛片久久网站小视频| 国产精品污视频| 亚洲丝袜中文字幕| 国产欧美视频综合二区| 欧美日韩久久综合| 久久精品亚洲专区| 亚洲国产欧美国产综合久久| 色天天综合久久久久综合片| 99re免费视频| 综合久久久久久久综合网| 一级全免费视频播放| 69国产精品视频免费| 欧美日韩免费在线视频| 日韩A∨精品日韩精品无码| 激情综合激情| 在线观看91香蕉国产免费| 美女啪啪无遮挡| 国产在线自乱拍播放| 国产视频大全| 欧美日韩国产综合视频在线观看| 男女男免费视频网站国产| 国产白浆视频| 国产屁屁影院| 国产丝袜精品| 91青青草视频| 久久人搡人人玩人妻精品一| 亚洲成人一区二区|