国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于CFA和BP神經(jīng)網(wǎng)絡(luò)的入侵檢測方法

2018-08-22 01:27捷,
關(guān)鍵詞:權(quán)值遺傳算法閾值

凌 捷, 黃 盛

(廣東工業(yè)大學(xué) 計算機學(xué)院 廣東 廣州 510006)

0 引言

目前網(wǎng)絡(luò)入侵檢測方法研究的主要方向是通過融合若干傳統(tǒng)的算法及優(yōu)化特征子集和參數(shù)的選擇,以提高檢測正確率和降低誤檢率.文獻[1]融合了KNN和SVM算法, KNN和SVM算法采用不同的參數(shù),以構(gòu)造出不同的分類器,然后采用PSO算法尋找分類器之間的最優(yōu)權(quán)值.文獻[2]提出基于模糊熵和蟻群算法的最小特征子集方法,消除冗余特征項,適用于實時入侵檢測系統(tǒng).

神經(jīng)網(wǎng)絡(luò)算法具有自適應(yīng)、自學(xué)習(xí)、自組織、泛化能力強以及能夠進行大規(guī)模并行計算等優(yōu)點,適合當(dāng)前復(fù)雜多變的入侵檢測環(huán)境[3],BP神經(jīng)網(wǎng)絡(luò)是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一.但由于BP神經(jīng)網(wǎng)絡(luò)的初始運行參數(shù)是隨機選擇的,存在易陷入局部最小值、收斂速度過慢和接近最優(yōu)解時可能會震蕩等問題,導(dǎo)致在網(wǎng)絡(luò)入侵檢測中準確率較低、誤報率較高.針對這個問題,許多學(xué)者提出利用智能仿生算法來優(yōu)化,如粒子群算法、遺傳算法、人工蜂群算法等,以獲得較優(yōu)的BP神經(jīng)網(wǎng)絡(luò)檢測模型.文獻[4-5]提出利用遺傳算法來優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值,提高了BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練速度和檢測準確率.文獻[6-8]分別將蝙蝠算法、粒子群算法和人工蜂群算法應(yīng)用在BP神經(jīng)網(wǎng)絡(luò)的運行參數(shù)優(yōu)化中.但這些算法都存在著各自的不足,如遺傳算法有時可能出現(xiàn)過早收斂和停滯現(xiàn)象,選擇有效的控制遺傳因子和控制參數(shù)也較為困難.蟻群算法和粒子群算法在搜索后期容易出現(xiàn)陷入局部最優(yōu)和早熟現(xiàn)象.

墨魚算法(cuttlefish algorithm, CFA)是文獻[9]提出的一種新的智能元啟發(fā)式仿生算法,其在組合優(yōu)化問題和連續(xù)優(yōu)化問題上具有快速收斂的特點[10].在文獻[9]的研究中,作者利用Rosenbrock和Griewank等基準函數(shù)進行收斂能力的測試比較,結(jié)果表明,CFA比遺傳算法和粒子群算法收斂時間更短.文獻[11-12]提出CFA與ID3決策樹和SVM相融合的入侵檢測方法,其中CFA用于尋找最優(yōu)子集,ID3和SVM作為分類器,檢測準確率作為CFA的適應(yīng)值,實驗結(jié)果表明,通過CFA選取的特征子集比粒子群算法選取的特征子集具有更高的檢測準確率.特征子集的選擇和BP神經(jīng)網(wǎng)絡(luò)的運行參數(shù)選擇類似,其實質(zhì)都是在一個大規(guī)??臻g搜索的組合優(yōu)化問題.

本文提出一種融合CFA和BP神經(jīng)網(wǎng)絡(luò)的入侵檢測方法CFA-BPIDS,將BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值作為CFA的優(yōu)化目標(biāo),誤差函數(shù)作為CFA的適應(yīng)值函數(shù),當(dāng)達到最大迭代次數(shù)或滿足誤差要求時,選擇適應(yīng)值最優(yōu)的一組參數(shù)作為BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值進行訓(xùn)練學(xué)習(xí);并將優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)應(yīng)用于網(wǎng)絡(luò)入侵檢測,采用KDDCUP99數(shù)據(jù)集進行了仿真測試,實驗結(jié)果表明,該方法有效地提高了BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練速度和平均檢測準確率.

1 CFA與BP神經(jīng)網(wǎng)絡(luò)

1.1 CFA仿生原理

墨魚可以通過皮膚層堆積的色素細胞、虹彩細胞和白細胞3層細胞改變自身皮膚顏色,使得與外界顏色一致而達到隱藏自己的目的.其中色素細胞通過肌肉的收縮與放松使得色素囊的面積增大或縮小來改變細胞顏色;虹彩細胞與白細胞是類似鏡面的反射細胞,可反射或散射進入細胞的光線.

CFA模擬了圖1的6種3層細胞變色的情形,基本原理是考慮了墨魚皮膚細胞變色的兩個主要過程:反射和呈現(xiàn).反射過程模擬了色素細胞收縮與放松的機制,呈現(xiàn)過程模擬了反射細胞的反射和散射的機制,色素細胞收縮放松程度與反射細胞的呈現(xiàn)程度分別由R和V表示.CFA將兩個過程作為全局尋優(yōu)的搜索策略,細胞顏色的變化即尋找新解newP的公式為

newP=reflection+visibility,

(1)

reflection=R·G[i].Point,

(2)

visibility=V·(Best.Point-G[i].Point),

(3)

reflection=R·Best.Point,

(4)

visibility=V·(Best.Point-AVBest),

(5)

R=random()·(r1-r2)+r2,

(6)

V=random()·(v1-v2)+v2.

(7)

其中:i為第i個細胞;Best.Point代表了最優(yōu)解的細胞;r1和r2為描述色素細胞收縮和放松程度的兩個常數(shù);v1和v2為描述反射細胞呈現(xiàn)程度的兩個常數(shù);random()是產(chǎn)生(0,1)隨機數(shù)的函數(shù). 情形1和情形2的reflection和visibility由式(2)和(3)描述,情形3和情形4的reflection和visibility由式(4)和(3)描述,情形5的reflection和visibility由式(4)和(5)描述,R和V由式(6)和(7)計算得到.

1.2 BP神經(jīng)網(wǎng)絡(luò)

BP神經(jīng)網(wǎng)絡(luò)是一種模擬神經(jīng)系統(tǒng)的結(jié)構(gòu)和生物神經(jīng)網(wǎng)絡(luò)信息傳遞的智能算法,其典型結(jié)構(gòu)由輸入層、輸出層和一個或多個隱含層組成,每1層由多個節(jié)點組成,如圖2所示.

圖1 6種變色情形Fig.1 Record of the six cases

圖2 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 BP neural network structure

設(shè)輸入層有n個神經(jīng)元,隱含層有q個神經(jīng)元,輸出層有m個神經(jīng)元,樣本總數(shù)為P,xpi表示第p個樣本的第i個輸入,vki表示輸入層第i個節(jié)點到隱含層第k個節(jié)點的權(quán)值,wjk表示隱含層第k個節(jié)點到輸出層第j個節(jié)點的權(quán)值,則

BP神經(jīng)網(wǎng)絡(luò)是基于梯度下降的一種迭代學(xué)習(xí)算法,不同的初始權(quán)重和閾值等參數(shù)會引起不同的結(jié)果.若取值不當(dāng),就很可能引起網(wǎng)絡(luò)震蕩而不能收斂或訓(xùn)練時間過長,陷入局部極值.這些因素都會影響B(tài)P神經(jīng)網(wǎng)絡(luò)在入侵檢測時的檢測準確率和訓(xùn)練時間.為此,結(jié)合CFA全局搜索和收斂快的特點,將CFA引入到BP神經(jīng)網(wǎng)絡(luò)的參數(shù)優(yōu)化中.

2 入侵檢測方法 CFA-BPIDS

本文提出的入侵檢測方法CFA-BPIDS的主要原理是:利用CFA優(yōu)化BP神經(jīng)網(wǎng)絡(luò)中的權(quán)值和閾值,獲得最優(yōu)的運行參數(shù),以加速收斂、避免陷入局部最優(yōu)及提高BP神經(jīng)網(wǎng)絡(luò)的入侵檢測準確率;其中CFA優(yōu)化BP神經(jīng)網(wǎng)絡(luò)原理是將細胞群數(shù)量為N的細胞個體編碼為w維問題空間中的N個可行解,w維看作是BP神經(jīng)網(wǎng)絡(luò)里閾值和權(quán)值的總個數(shù),每個可行解唯一確定1個網(wǎng)絡(luò),細胞顏色更新的反射和呈現(xiàn)兩個過程對應(yīng)神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值的更新,通過圖1中6種變色情形尋找最優(yōu)初始權(quán)值和閾值;最后對BP神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,并應(yīng)用在網(wǎng)絡(luò)入侵的檢測模塊中,建立網(wǎng)絡(luò)入侵模型.

2.1 細胞編碼設(shè)計

設(shè)BP神經(jīng)網(wǎng)絡(luò)包含輸入層、隱含層、輸出層,分別有n個、p個、m個神經(jīng)元,則CFA中每個細胞包含的維度w為w=n·p+p·m+p+m.

2.2 基于CFA-BPIDS的入侵檢測步驟

基于CFA-BPIDS的入侵檢測步驟主要包含訓(xùn)練數(shù)據(jù)收集、數(shù)據(jù)預(yù)處理和類別標(biāo)記、BP神經(jīng)網(wǎng)絡(luò)優(yōu)化和訓(xùn)練、入侵檢測等步驟,具體過程如圖3,詳細描述如下:

圖3 CFA-BPIDS入侵檢測Fig.3 CFA-BPIDS intrusion detection

Step1將收集的流量數(shù)據(jù)Dk和已知的類別Ck通過映射集合Udc=(?Dk,Ck|?Dk∈Ck)(1≤k≤n)進行結(jié)合并標(biāo)記,作為訓(xùn)練集.

Step2對訓(xùn)練集進行離散化和歸一化,提取主要特征項和去除冗余特征,依據(jù)特征項個數(shù)和類別個數(shù)確定BP神經(jīng)網(wǎng)絡(luò)的輸入層和輸出層神經(jīng)元個數(shù),構(gòu)建神經(jīng)網(wǎng)絡(luò)模型.

Step3為使BP神經(jīng)網(wǎng)絡(luò)獲得更好的檢測性能,采用CFA優(yōu)化BP神經(jīng)網(wǎng)絡(luò)以獲得最優(yōu)的初始權(quán)值和閾值,優(yōu)化過程具體描述如下.

1) 初始化CFA,設(shè)定r1、r2、v1和v2及最大迭代次數(shù)MCN和目標(biāo)誤差ε等參數(shù),根據(jù)BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值個數(shù)對細胞編碼,隨機初始化細胞種群N的公式為

P[i].Point[j]=random()·(upperLimit-lowLimit)+lowLimit,

(8)

其中:j為細胞的第j維;upperLimit和lowLimit為每個維度上值的上、下限.

2) 計算每個細胞的適應(yīng)值,將適應(yīng)值最優(yōu)的細胞保存到Best細胞中,若Best細胞的適應(yīng)值滿足誤差要求,則轉(zhuǎn)到Step4,否則將細胞群分成G1、G2、G3三組.

3)G1組中每個細胞由式(2)和式(3)生成reflection和visibility,式(1)更新細胞并計算其適應(yīng)值,若適應(yīng)值更優(yōu)則更新Best以及AVBest,AVBest為Best細胞各維度上的均值.

4)G2組中每個細胞由式(4)和式(3) 生成reflection和visibility,式(1)更新細胞并計算其適應(yīng)值,若適應(yīng)值更優(yōu)則更新Best以及AVBest.

5)G3組中每個細胞由式(4)和式(5) 生成reflection和visibility,式(1)更新細胞并計算其適應(yīng)值,若適應(yīng)值更優(yōu)則更新Best以及AVBest.

6) 為防止陷入局部最優(yōu),使用式(8)產(chǎn)生一組新的細胞,reflection為一隨機數(shù)值,visibility為0,式(1)更新細胞并計算其適應(yīng)值,若適應(yīng)值更優(yōu)則更新Best以及AVBest.

7) 重復(fù)3)~6)的過程,直到滿足終止的迭代次數(shù)或滿足誤差要求.

Step4輸出Best細胞中的值作為BP神經(jīng)網(wǎng)絡(luò)初始的權(quán)值和閾值,并開始訓(xùn)練.

Step5把訓(xùn)練好的BP神經(jīng)網(wǎng)絡(luò)應(yīng)用在網(wǎng)絡(luò)入侵檢測中的檢測模塊,建立入侵檢測模型,把預(yù)處理和特征選擇后的未知流量作為檢測模塊的輸入,輸出則為入侵檢測的結(jié)果.

3 實驗結(jié)果分析

首先通過兩個基準測試函數(shù)對CFA、遺傳算法和粒子群算法的收斂性能進行比較分析;然后分別將CFA、遺傳算法和粒子群算法優(yōu)化后的BP神經(jīng)網(wǎng)絡(luò)建立入侵檢測模型,并從BP神經(jīng)網(wǎng)絡(luò)的收斂速度以及在入侵檢測中準確率、誤報率兩方面進行仿真分析.實驗環(huán)境為window7操作系統(tǒng),處理器為I5,安裝內(nèi)存8.00 GB,仿真軟件為Matlab R2014a,選擇KDDCUP99作為仿真的數(shù)據(jù)源.

3.1 CFA的收斂性能比較

3種算法的收斂速度對比如圖4和圖5所示,從圖中可以看出,CFA的收斂速度明顯優(yōu)于遺傳算法和粒子群算法,這表明CFA的全局搜索能力和收斂速度均優(yōu)于遺傳算法和粒子群算法.

圖4 在De Jong函數(shù)收斂對比Fig.4 Comparison of the convergence in De Jong function

圖5 在Rosenbrock valley函數(shù)收斂對比Fig.5 Comparison of the convergence in Rosenbrock valley function

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

KDDCUP99數(shù)據(jù)集是美國麻省理工學(xué)院林肯實驗室提供的一種應(yīng)用于入侵檢測研究領(lǐng)域的標(biāo)準數(shù)據(jù)集.實驗數(shù)據(jù)是在KDDCUP99提供的10%的數(shù)據(jù)集基礎(chǔ)上隨機抽取的樣本,包括41維特征.數(shù)據(jù)集包含4種入侵類型:DoS、Probe、U2R、R2L,同時含有正常樣本Normal,各類攻擊樣本分布具體如表1所示.

表1 訓(xùn)練集攻擊類型分布

根據(jù)文獻[13]的研究,去除28個冗余的屬性,獲得包含13個特征屬性的約簡樣本.

1) 離散特征預(yù)處理

在抽取的樣本中包含label、protocol、service、flag 4個離散特征屬性,通過獨熱編碼(one-hot)將其轉(zhuǎn)換成啞變量.

2) Z-Score中心化處理

對連續(xù)特征進行Z-Score中心化處理,處理方式為newValue=(oldValue-mean)/varience,其中:newValue是Z-Score中心化后的值;oldValue是原值;mean是對應(yīng)特征的均值;varience是對應(yīng)特征的標(biāo)準差.

3.3 收斂速度對比

圖6 收斂速度對比Fig.6 Comparison of the convergence speed

實驗中采用的BP神經(jīng)網(wǎng)絡(luò)為3層網(wǎng)絡(luò)結(jié)構(gòu),輸入層、隱含層、輸出層神經(jīng)元個數(shù)分別為13、10、5,轉(zhuǎn)移函數(shù)采用Sigmoid函數(shù).設(shè)定的CFA參數(shù)為:初始細胞群大小為50,r1、r2、v1、v2的值分別為1、-0.5、2、-2,實驗結(jié)果如圖6所示.從圖6中可以看出,CFA優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)在訓(xùn)練不到70次達到目標(biāo)誤差,而遺傳算法和粒子群優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)則在迭代150次后還未滿足誤差要求,說明通過CFA優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)可以找到更優(yōu)的權(quán)值和閾值,使得BP神經(jīng)網(wǎng)絡(luò)收斂更快,學(xué)習(xí)時間明顯縮短.

3.4 檢測結(jié)果對比

將訓(xùn)練好的BP神經(jīng)網(wǎng)絡(luò)對測試數(shù)據(jù)集進行檢測,并使用各攻擊類型(包括正常類型)的檢測正確率和誤檢率作為性能評估指標(biāo),比較對象是基于遺傳算法、粒子群算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò),具體檢測結(jié)果如表2和表3所示,檢測正確率(Acc)和誤檢率(FPR)的計算采用文獻[14]的計算公式,具體如下:

其中:TP為預(yù)測為正的正樣本;FP為預(yù)測為負的負樣本;TN為預(yù)測為正的負樣本;FN為預(yù)測為負的負樣本.

表2 檢測準確率對比

表3 誤檢率對比

由表2和表3的平均值來看,基于CFA-BPIDS的檢測方法相比基于GA-BPIDS及PSO-BPIDS的檢測方法,在檢測準確率上分別提高了2.35%和3.15%,在誤檢率上分別降低了0.19%和0.35%.具體分析來看,3種檢測方法對Normal、DoS、Probe 3種類型的檢測準確率較高,而對U2R和R2L兩種類型的檢測準確率較低,這是因為在所抽取的數(shù)據(jù)樣本中,這兩類攻擊樣本較少.綜合分析,CFA-BPIDS檢測方法相比其他兩種檢測方法表現(xiàn)出了更好的檢測性能,這是由于CFA擴大了BP神經(jīng)網(wǎng)絡(luò)參數(shù)的搜索空間,CFA能夠使BP神經(jīng)網(wǎng)絡(luò)獲得較優(yōu)的權(quán)值和閾值,在所設(shè)定的最大迭代次數(shù)范圍內(nèi)能夠收斂并達到目標(biāo)誤差,從而提高了BP神經(jīng)網(wǎng)絡(luò)的檢測性能.仿真實驗結(jié)果表明,CFA-BPIDS方法和基于遺傳算法及粒子群優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的方法相比,具有迭代次數(shù)更少、訓(xùn)練時間更短的優(yōu)點,可有效地提高入侵檢測的準確率.

猜你喜歡
權(quán)值遺傳算法閾值
一種融合時間權(quán)值和用戶行為序列的電影推薦模型
土石壩壩體失穩(wěn)破壞降水閾值的確定方法
基于5G MR實現(xiàn)Massive MIMO權(quán)值智能尋優(yōu)的技術(shù)方案研究
基于遺傳算法的高精度事故重建與損傷分析
采用紅細胞沉降率和C-反應(yīng)蛋白作為假體周圍感染的閾值
基于遺傳算法的智能交通燈控制研究
強規(guī)劃的最小期望權(quán)值求解算法?
計算機測量與控制(2018年3期)2018-03-27
一種基于遺傳算法的聚類分析方法在DNA序列比較中的應(yīng)用
基于遲滯比較器的雙閾值穩(wěn)壓供電控制電路
佛学| 扎赉特旗| 阜康市| 顺昌县| 德州市| 莱阳市| 建宁县| 东乡族自治县| 黔东| 吉首市| 翁牛特旗| 鲁山县| 共和县| 阳西县| 阳江市| 资阳市| 乐山市| 革吉县| 玉树县| 红原县| 安岳县| 错那县| 秦安县| 蒲城县| 柞水县| 措美县| 临桂县| 郓城县| 池州市| 竹北市| 越西县| 历史| 汕尾市| 通道| 广东省| 时尚| 漳州市| 平乐县| 衡阳市| 田林县| 扶绥县|