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

?

基于CanpoySMOTE和自適應(yīng)學(xué)習(xí)的入侵檢測方法研究

2022-12-27 13:14:56張曉冰成林芳
計(jì)算技術(shù)與自動化 2022年4期
關(guān)鍵詞:漏報(bào)類別分類器

湯 亮,張曉冰 ,成林芳

(1.湖南省電子信息產(chǎn)業(yè)研究院,湖南 長沙 410001;2.杭州安恒信息技術(shù)股份有限公司,浙江 杭州 310000)

數(shù)據(jù)的不均衡分布即在數(shù)據(jù)集中有一個(gè)或者幾個(gè)類別的樣本數(shù)量遠(yuǎn)超其他類型的樣本數(shù)。數(shù)據(jù)占比較小的類別稱為少數(shù)類,占比較多的類別成為多數(shù)類[1]。網(wǎng)絡(luò)攻擊類型繁雜,有些攻擊類型很常見如DDOS、暴力破解、ARP欺騙等。而有些攻擊類型出現(xiàn)比較少,如未獲授權(quán)的本地超級用戶特權(quán)訪問、遠(yuǎn)程主機(jī)的未授權(quán)的訪問等。這些類型的攻擊樣本數(shù)比常見類型的攻擊數(shù)量少[2-3]。不同攻擊帶來的后果也是不同的,DDOS攻擊帶來的后果可能是對整個(gè)網(wǎng)絡(luò)破壞,降低服務(wù)性能,阻止終端服務(wù),而遠(yuǎn)程主機(jī)的未授權(quán)訪問會導(dǎo)致主機(jī)被控制從而進(jìn)行違法犯罪活動等?,F(xiàn)有的分類方法對于多數(shù)類別的樣本點(diǎn)識別率高,而少數(shù)類別易被誤分類,從而導(dǎo)致很嚴(yán)重的后果。因此處理不平衡數(shù)據(jù)集,提高模型泛化性能是很重要的。

學(xué)術(shù)界提出了許多針對不平衡數(shù)據(jù)集的處理方法,主要分為兩類,第一類是在數(shù)據(jù)層面,第二類是在算法層面[4-5]。對于數(shù)據(jù)層面,增加少數(shù)類別樣本降低不均衡性稱為過采樣[6-8],減少多數(shù)類別樣本稱為欠采樣[9-10]。欠采樣中典型的方法是隨機(jī)刪除多數(shù)類別的樣本,但是由于樣本的大部分特征相似,隨機(jī)刪除可能會刪除重要的信息,導(dǎo)致模型泛化性能差。過采樣中典型的方法是連續(xù)復(fù)制少類別樣本數(shù),達(dá)到類間平衡,但是因?yàn)橛写罅恐貜?fù)的樣本點(diǎn),可能會導(dǎo)致過擬合。為了防止上述問題,Chawla等人提出了的人工合成新樣本點(diǎn)的SMOTE算法[11],在每個(gè)樣本的特征空間中挑選K個(gè)近鄰,使用隨機(jī)因子選出一個(gè)每個(gè)近鄰與樣本之間的點(diǎn)成為新的樣本點(diǎn)。有效地增加了少數(shù)類別樣本點(diǎn)的數(shù)量,但是對于多數(shù)類別的樣本不產(chǎn)生影響,若一個(gè)少數(shù)類別樣本點(diǎn)附近都是多數(shù)類別容易產(chǎn)生噪聲,影響對于數(shù)據(jù)集的分類效果。而Hui等人提出的基于邊界線的過采樣算法[12](Borderline-SMOTE),對距離邊界較近的樣本點(diǎn)根據(jù)SMOTE的原理,對模糊樣本點(diǎn)進(jìn)行過采樣,可以確定邊界樣本的類別。但是這種方法只針對了邊界樣本,忽略了類內(nèi)樣本分布的問題,類內(nèi)分布不均衡時(shí)也會導(dǎo)致樣本點(diǎn)重合,難以提供有效的分類信息。

在算法層面,學(xué)者提出了很多基于傳統(tǒng)分類器的算法,但是所有傳統(tǒng)分類器的目的都是減少整體的損失或漏報(bào)率。他們大都認(rèn)為所有類別誤分類的代價(jià)相同。但是網(wǎng)絡(luò)攻擊中誤分類的代價(jià)可能導(dǎo)致系統(tǒng)崩潰,重要信息被篡改等,這些代價(jià)是遠(yuǎn)超我們想象的。Khan等提出的基于代價(jià)敏感的特征算法,對于CNN模型中特征和分類器的訓(xùn)練過程進(jìn)行改進(jìn),增加學(xué)習(xí)特征的判別性,和魯棒性。但是代價(jià)敏感學(xué)習(xí)中代價(jià)參數(shù)的設(shè)定需要有先驗(yàn)經(jīng)驗(yàn),因此很難準(zhǔn)確設(shè)定,從而使分類結(jié)果?;趩晤悓W(xué)習(xí)的不均衡數(shù)據(jù)處理算法主要針對多類別樣本進(jìn)行學(xué)習(xí),它的目標(biāo)是從測試的樣本中選出多數(shù)類,因此雖然可以降低時(shí)間成本,但是在對類間不均衡對少數(shù)樣本過擬合,從而使模型泛化性能差。

從數(shù)據(jù)預(yù)處理方面與增強(qiáng)學(xué)習(xí)融合構(gòu)成分類器,提出了基于CanpoySMOTE和AdaboostM1的入侵檢測分類方法,首先使用Canpoy進(jìn)行粗聚類得到噪聲點(diǎn),去除噪聲點(diǎn),同時(shí)使用降采樣方法將多數(shù)類別的數(shù)量降低,減少模型過擬合,然后用SMOTE線性合成少數(shù)類樣本點(diǎn),提高了少數(shù)類別的數(shù)量,從而減少了類間不平衡,形成平衡數(shù)據(jù)集,該平衡樣本可以很好地彌補(bǔ)少數(shù)類別分類樣本數(shù)量不足的缺點(diǎn),又解決了隨機(jī)采樣時(shí)重要信息丟失的問題。與AdaBoostM1分類器結(jié)合,使用隨機(jī)森林作為基分類器,隨機(jī)選取特征子集的特性讓數(shù)據(jù)維度對分類結(jié)果的影響降低,在每次迭代的過程中獲得局部最佳弱分類器,然后對樣本的權(quán)重進(jìn)行更新,雖然訓(xùn)練時(shí)間會增大,但是與原來的不平衡數(shù)據(jù)集在AdaboostM1分類器上的結(jié)果相比,可以有效地提升少數(shù)類別的準(zhǔn)確率,降低平均漏報(bào)率。

1 平衡數(shù)據(jù)訓(xùn)練集的構(gòu)造

首先使用Canopy算法[13]將訓(xùn)練數(shù)據(jù)根據(jù)歐氏距離計(jì)算樣本點(diǎn)到簇中心點(diǎn)的距離,分為多個(gè)Canopy子集,將包含樣本點(diǎn)較少,距離較遠(yuǎn)的子集視為噪聲點(diǎn),刪除這些噪聲數(shù)據(jù),然后對多數(shù)類進(jìn)行隨機(jī)降采樣,降低模型過擬合,最后通過SMOTE抽樣對訓(xùn)練集進(jìn)行類內(nèi)均衡,得到均衡數(shù)據(jù)集,算法流程圖如圖1所示。

圖1 平衡數(shù)據(jù)集構(gòu)造流程圖

1.1 Canopy

Canopy是一種簡單的粗聚類算法,使用歐式距離計(jì)算樣本點(diǎn)到質(zhì)心的距離,與設(shè)定的距離閾值T1,T2進(jìn)行比較。最后根據(jù)每個(gè)簇中樣本點(diǎn)數(shù)以及與每個(gè)質(zhì)心的距離篩選出數(shù)據(jù)集中的干擾點(diǎn),并刪除噪聲樣本。算法步驟如下:

(1)將原始樣本集隨機(jī)排列成樣本列表L={x1,x2,…,xn}根據(jù)先驗(yàn)知識或交叉驗(yàn)證調(diào)參設(shè)定初始距離閾值T1,T2(T1>T2)。

(2)隨機(jī)從列表L中選取一個(gè)樣本點(diǎn)xi,i∈(1,n),作為第一個(gè)Canopy的質(zhì)心,并把x1從列表中刪除。

(3)隨機(jī)從列表L中選取一個(gè)樣本點(diǎn)xp,p∈(1,n)p≠i,計(jì)算xp到所有質(zhì)心的距離,并檢驗(yàn)最小距離Dmin。

(4)若T2≤Dmin≤T1,則給xp一個(gè)弱標(biāo)記,表示Dmin屬于此canopy,并加入。

(5)若Dmin≤T2,則給xp一個(gè)強(qiáng)標(biāo)記,表示Dmin屬于此canopy,且接近質(zhì)心;并將xp從列表中刪除。

(6)若Dmin>T1,則xp形成一個(gè)新的局促,并將xp從列表中刪除。

(7)重復(fù)第三步,直到列表中元素?cái)?shù)變?yōu)榱恪?/p>

刪除canopy簇中樣本點(diǎn)數(shù)少的簇,并將少數(shù)類樣本點(diǎn)附近有超過一倍多數(shù)類樣本點(diǎn)的噪聲點(diǎn)刪除。

1.2 人工少數(shù)類樣本點(diǎn)合成算法

SMOTE算法,該算法只對少數(shù)類別的樣本起作用[14-15]。主要思想是通過隨機(jī)尋找少數(shù)類樣本點(diǎn),在距離該樣本點(diǎn)k個(gè)最臨近類中尋找一點(diǎn),進(jìn)行插值,合成新的少數(shù)類實(shí)例,樣本數(shù)少的類別進(jìn)行人工合成新的樣本加入訓(xùn)練集中。該算法合成數(shù)據(jù)的步驟如下:

(1)從數(shù)據(jù)集中挑選出一個(gè)少數(shù)類別的樣本i,特征向量為xi,i∈{1,…,T};

(2)從少數(shù)類別的全部T個(gè)樣本中找到樣本xi的k個(gè)近鄰(例如使用歐氏距離),記為xi(near),near∈{1,…,k};

(3)從這k個(gè)近鄰中隨機(jī)選取一個(gè)樣本xi(nn),再生成一個(gè)(0,1)之間的隨機(jī)數(shù)λ1,從而合成一個(gè)新樣本xi1:

xi1=xi+λ1·(xi(nn)-xi)

(1)

(4)將步驟3重復(fù)N次,從而可以合成N個(gè)新樣本:xinew,new∈{1,…,N}。

2 基于AdaBoostM1的入侵檢測分類模型

對于網(wǎng)絡(luò)數(shù)據(jù)集來說,不同類型的攻擊所引起的代價(jià)不同,傳統(tǒng)的單層決策樹保持不變的訓(xùn)練數(shù)據(jù)每次迭代找到的都是最好的點(diǎn),也都是同一個(gè)點(diǎn)。因此模型的分類精度低,泛化性能差。而AdaBoostM1可多次迭代訓(xùn)練弱分類器,把錯分類樣本數(shù)量權(quán)值進(jìn)行調(diào)整,提高分類模型的泛化性能。每一次訓(xùn)練好的弱分類器將會參與下一次迭代訓(xùn)練。根據(jù)上一次迭代結(jié)果增大誤分類為多數(shù)類的樣本點(diǎn)在訓(xùn)練集中所占權(quán)值,同時(shí)把正確分類樣本點(diǎn)的權(quán)值減少,并進(jìn)入下一次迭代,可以有效地提高分類器的分類性能。下一次迭代產(chǎn)生的分類器更加關(guān)注上一個(gè)分類器分類錯誤的樣本,增加了樣本分類的正確率,最后根據(jù)每次迭代產(chǎn)生的分類器進(jìn)行投票決定分類結(jié)果。每次迭代產(chǎn)生的分類器根據(jù)分類錯誤率來計(jì)算最后組成強(qiáng)分類器時(shí)所占比重。分類錯誤率越低,權(quán)重越高。因此使用AdaBoostM1可以有效降低分類錯誤率,提高少數(shù)類別的分類準(zhǔn)確率,使模型的泛化性能更好。

本文使用隨機(jī)森林作為弱分類器,對于一個(gè)輸入樣本會產(chǎn)生多個(gè)分類結(jié)果,最終分類結(jié)果由隨機(jī)森林中每個(gè)樹投票產(chǎn)生。隨機(jī)森林因?yàn)樗请S機(jī)選取特征子集,因此減少了維度過多帶來的影響,使模型訓(xùn)練的效果更好,增加魯棒性。AdaBoostM1框架如圖2所示。

圖2 AdaBoostM1框架流程圖

3 實(shí)驗(yàn)數(shù)據(jù)和評價(jià)指標(biāo)

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

實(shí)驗(yàn)使用數(shù)據(jù)集為KDD CUP 99數(shù)據(jù)集。該數(shù)據(jù)集含有大量網(wǎng)絡(luò)流量數(shù)據(jù),大概包含有5,000,000多個(gè)網(wǎng)絡(luò)連接記錄,同時(shí)包含有測試數(shù)據(jù)大約2,000,0000條。為避免數(shù)據(jù)量過大,按10%比例對數(shù)據(jù)集進(jìn)行隨機(jī)抽樣,把抽樣結(jié)果作為學(xué)習(xí)的訓(xùn)練集,使用測試數(shù)據(jù)的10%作為測試集??梢杂行У販p少建立模型的時(shí)間,同時(shí)在精度上影響較小[16]。本文使用的訓(xùn)練數(shù)據(jù)集包含49,399條訓(xùn)練數(shù)據(jù)。測試集包含311,029條測試數(shù)據(jù)記錄。數(shù)據(jù)集中共有41個(gè)特征,4種攻擊類型,分別是拒絕服務(wù)攻擊(Denial of Service,DOS),源于遠(yuǎn)程主機(jī)的權(quán)限獲取攻擊(Remote to Local,R2L),端口監(jiān)視掃描攻擊(PROBE),提權(quán)攻擊(User to Root,U2R)。具體數(shù)據(jù)集攻擊類型數(shù)目分布如表1所示:

表1 原始數(shù)據(jù)集類型分布

由于原始數(shù)據(jù)集中樣本不平衡,U2R的數(shù)量遠(yuǎn)遠(yuǎn)少于DOS和Normal,因此會對結(jié)果造成影響,影響模型的泛化性能,采用Canopy去除噪聲點(diǎn),SMOTE來提高少數(shù)樣本U2R和R2L的樣本數(shù)量,同時(shí)對含有較多記錄的DOS和Normal類型進(jìn)行降采樣,然后將人工合成的U2R和R2L類型的記錄與降采樣得到的數(shù)據(jù)和Probe類型的數(shù)據(jù)混合成一個(gè)新的平衡數(shù)據(jù)集。本文使用的均衡數(shù)據(jù)集數(shù)據(jù)分布如表2所示:

表2 平衡數(shù)據(jù)集分布

3.2 實(shí)驗(yàn)結(jié)果的評估準(zhǔn)則

本文使用混淆矩陣、漏報(bào)率、ROC曲線來對分類器進(jìn)行評價(jià)[17]?;煜仃囈步凶髡`差矩陣,用來比較分類結(jié)果跟實(shí)際結(jié)果,是可視化描繪出分類器性能的指標(biāo)。

漏報(bào)率、準(zhǔn)確率計(jì)算公式如下:

漏報(bào)率=把某類攻擊樣本判斷為正常樣本的數(shù)量(FP)/該類攻擊樣本總數(shù)

(1)

準(zhǔn)確率=所有預(yù)測類別正確的樣本數(shù)量(TP+TN)/所有類別總的樣本數(shù)量

(2)

ROC曲線橫軸是偽陽性率FPR,縱軸真陽性率TPR。

(3)

真陽性率或真正性率表示模型把正常樣本預(yù)測為正常樣本的數(shù)量與所有預(yù)測為正常樣本數(shù)量的比值。

(4)

偽陽性率或假正性率FPR表示模型把正常樣本預(yù)測為攻擊類型的數(shù)量與所有預(yù)測為攻擊類型的樣本的數(shù)量的比值。

ROC曲線通常用來表示模型分類器的效果,在最佳狀態(tài)下,ROC應(yīng)該在左上角,這表示在較低假陽率的情況下有高真陽性率。

4 驗(yàn)證與評估結(jié)果分析

將隨機(jī)抽樣得到的不平衡訓(xùn)練集使用10折交叉驗(yàn)證,把數(shù)據(jù)集中的數(shù)據(jù)均等分為10份,選取一份做驗(yàn)證集,其余9份做訓(xùn)練,依次迭代10次。最后使用10個(gè)模型的平均實(shí)驗(yàn)結(jié)果作為整個(gè)模型的結(jié)果,使用測試集進(jìn)行測試,將在此訓(xùn)練集中訓(xùn)練的模型命名為AdaboostM1。將平衡數(shù)據(jù)集使用10折交叉驗(yàn)證,把隨機(jī)森林作為基分類器,隨機(jī)森林能夠處理高維度數(shù)據(jù)不需要進(jìn)行特征選擇,對于不平衡的數(shù)據(jù)集可以平衡誤差,因此可以與AdaboostM1進(jìn)行結(jié)合。

把在平衡數(shù)據(jù)集上訓(xùn)練得出的模型命名為SMOTEAdboostM1,在原始數(shù)據(jù)集上訓(xùn)練得出的模型命名為AdaboostM1。使用測試集分別對兩種模型進(jìn)行檢驗(yàn),SMOTEAdboostM1模型得到混淆矩陣如表3所示,AdaboostM1模型得到的混淆矩陣如表4所示。表5是AdaboostM1模型和SMOTEAdboostM1模型在測試集上進(jìn)行測試得到的每個(gè)類別漏報(bào)率結(jié)果。表6是AdaboostM1模型和SMOTEAdboostM1模型在測試集上進(jìn)行測試得到的每個(gè)類別準(zhǔn)確率結(jié)果。

表3 SMOTEAdboostM1混淆矩陣

表4 AdaBoostM1混淆矩陣

表5 AdaBoostM1與SMOTEAdboostM1漏報(bào)率(%)

表6 AdaBoostM1與SMOTEAdaBoostM1準(zhǔn)確率(%)

通過表5和表6數(shù)據(jù)表明在使CanpoySMOTE對樣本處理之后,減少了噪聲,解決了樣本不平衡造成的少類別樣本誤差問題。在沒有改變原有整體準(zhǔn)確率的前提下,極大地提高了U2R、R2L的準(zhǔn)確率,同時(shí)減少了漏報(bào)率。

為了進(jìn)一步表明,本文提出的方法對少類別數(shù)據(jù)有較好的應(yīng)用,本文還比較了U2R和R2L在兩個(gè)模型上的ROC曲線。數(shù)據(jù)集中的少數(shù)類別U2R在SMOTEAdaBoostM1模型上的ROC曲線如圖3所示,AUC=0.9779。

圖3 SMOTEAdaBoostM1-U2R ROC曲線

數(shù)據(jù)集中少數(shù)類別U2R在AdaBoostM1模型上的ROC曲線如圖4所示,AUC=0.6297。

圖4 AdaBoostM1-U2R ROC曲線

數(shù)據(jù)集中少數(shù)類別R2LSMOTEAdaBoostM1模型上的ROC曲線如圖5所示,AUC=0.7091。

圖5 SMOTEAdaBoostM1-R2L ROC曲線

數(shù)據(jù)集中少數(shù)類別R2L在AdaBoostM1模型上的ROC曲線如圖6所示,AUC=0.6486。

圖6 AdaBoostM1-R2L ROC曲線

5 結(jié) 論

網(wǎng)絡(luò)環(huán)境中攻擊行為多種多樣,收集到的攻擊數(shù)據(jù)樣本數(shù)量不均衡,很難對少數(shù)類別的攻擊行為進(jìn)行判斷,因此本文中使用Canopy去除噪聲點(diǎn),減少了在合成少數(shù)類別樣本點(diǎn)時(shí)的誤差,SMOTE技術(shù)將某種攻擊數(shù)據(jù)量少的類別(R2L和U2R)進(jìn)行人工合成數(shù)據(jù),增加數(shù)據(jù)所占比例,并同時(shí)減少數(shù)量占比較多的類別(DOS和Normal)樣本的數(shù)量,然后使用平衡數(shù)據(jù)集訓(xùn)練AdaboostM1分類器,與原始數(shù)據(jù)集在AdaBoostM1分類器上訓(xùn)練模型進(jìn)行對比。實(shí)驗(yàn)得出在不減少整體數(shù)據(jù)集準(zhǔn)確率的情況下,少數(shù)類別U2R攻擊的準(zhǔn)確率提升20%,R2L攻擊的準(zhǔn)確率提升5%,同時(shí)平均漏報(bào)率降低9%,證明了該方法可以有效提升少類別準(zhǔn)確率,降低平均漏報(bào)率,有效地解決了網(wǎng)絡(luò)入侵檢測少數(shù)類誤分類問題。

猜你喜歡
漏報(bào)類別分類器
BP-GA光照分類器在車道線識別中的應(yīng)用
電子測試(2018年1期)2018-04-18 11:52:35
加權(quán)空-譜與最近鄰分類器相結(jié)合的高光譜圖像分類
結(jié)合模糊(C+P)均值聚類和SP-V-支持向量機(jī)的TSK分類器
各類氣體報(bào)警器防誤報(bào)漏報(bào)管理系統(tǒng)的應(yīng)用
服務(wù)類別
新校長(2016年8期)2016-01-10 06:43:59
論類別股東會
商事法論集(2014年1期)2014-06-27 01:20:42
傳染病漏報(bào)原因分析及對策
基于LLE降維和BP_Adaboost分類器的GIS局部放電模式識別
中醫(yī)類別全科醫(yī)師培養(yǎng)模式的探討
日本廠商在美漏報(bào)事故千余起被指管理疏漏
公安县| 广德县| 江北区| 金昌市| 南城县| 乌兰浩特市| 冀州市| 宽城| 霍山县| 清新县| 奉贤区| 黄石市| 南投县| 大同县| 杨浦区| 吉林市| 习水县| 连州市| 叙永县| 新邵县| 芜湖县| 昌图县| 乌兰察布市| 山东省| 镇赉县| 蓬溪县| 调兵山市| 石渠县| 姜堰市| 南川市| 阳高县| 全南县| 莎车县| 汤阴县| 马龙县| 乌拉特后旗| 同德县| 凤城市| 武安市| 九龙城区| 阿巴嘎旗|