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

?

基于特征提取的工業(yè)控制系統(tǒng)入侵檢測(cè)研究

2021-12-02 06:33曲金帥劉譯文李鴻
關(guān)鍵詞:工控粒子樣本

倪 旻,曲金帥,范 菁,劉譯文,李鴻,邱 陽

(1.云南民族大學(xué) 電氣信息工程學(xué)院,云南 昆明 650504;2.云南民族大學(xué) 云南省高校信息與通信安全災(zāi)備重點(diǎn)實(shí)驗(yàn)室, 云南 昆明 650504;3.云南民族大學(xué) 云南省高校無線傳感器網(wǎng)絡(luò)重點(diǎn)實(shí)驗(yàn)室,云南 昆明 650504;4.云南民族大學(xué) 社會(huì)學(xué)院,云南 昆明 650504)

自第1次工業(yè)革命以后,工業(yè)控制系統(tǒng)(industrial control system,ICS)對(duì)于國家的建設(shè)起到至關(guān)重要的作用,包括石油、化工、電力、制造業(yè)等.隨著信息技術(shù)的發(fā)展[1],越來越多ICS連接到外網(wǎng),使得ICS容易受到入侵的威脅.

入侵檢測(cè)系統(tǒng)(intrusion detection system,IDS)是通過監(jiān)控和分析網(wǎng)絡(luò)活動(dòng)來檢測(cè)網(wǎng)絡(luò)異常最重要的安全機(jī)制之一[2].目前,IDS在工業(yè)網(wǎng)絡(luò)中的應(yīng)用越來越受到重視.與機(jī)器學(xué)習(xí)等領(lǐng)域相關(guān)的入侵檢測(cè)技術(shù)正成為研究熱點(diǎn),歸根結(jié)底就是模式識(shí)別中的分類.許多專家也提出了一些有效的工控入侵檢測(cè)方法.陳萬志等[3]利用白名單可以設(shè)置連續(xù)特征的特征范圍和常見特征,神經(jīng)網(wǎng)絡(luò)則用于檢測(cè)特征不完備或多特征異常情況,體現(xiàn)了入侵檢測(cè)的有效性.於幫兵等[4]使用長短時(shí)記憶網(wǎng)絡(luò)(LSTM)避免了梯度消失和記憶能力不足等問題,將SMOTE算法運(yùn)用于少數(shù)類樣本的采樣,數(shù)據(jù)不平衡的問題迎刃而解,實(shí)現(xiàn)了對(duì)ICS良好的入侵檢測(cè).石樂義等[5]采用了相關(guān)信息熵,使其起到特征選擇的作用,達(dá)到去除噪聲,并針對(duì)不平衡樣本采用Borderlines-SMOTE進(jìn)行處理,同時(shí)在空間和時(shí)間維度上,CNN-BiLSTM模型提取數(shù)據(jù)特征,保證了良好的檢測(cè)效果.Süzen等[6]提出了混合深度信念網(wǎng)絡(luò)模型,即將低級(jí)特征結(jié)合起來,從少量特征中學(xué)習(xí)關(guān)鍵特征,這可以產(chǎn)生更好的分類性能.綜上所述,現(xiàn)在研究者更多傾向于將機(jī)器學(xué)習(xí)算法引入到工控入侵檢測(cè)領(lǐng)域,并取得了很好的效果,但是仍存在一些問題:例如在解決不平衡數(shù)據(jù)集上,所采用的方法沒有考慮到不同少數(shù)類樣本的分布情況;又如利用DBN可以提升入侵檢測(cè)水平,但DBN隱含層的節(jié)點(diǎn)數(shù)量不容易確定,需要增加訓(xùn)練次數(shù)與手動(dòng)調(diào)節(jié)次數(shù),從而影響整個(gè)系統(tǒng)的網(wǎng)絡(luò)訓(xùn)練過程等.

針對(duì)以上問題,提出了一種基于特征提取的ADASYN-PSO-DBN的工控入侵檢測(cè)方法.

1 工業(yè)控制系統(tǒng)入侵檢測(cè)模型

1.1 ADASYN

由于原始工控標(biāo)準(zhǔn)數(shù)據(jù)集中存在嚴(yán)重的不平衡性,僅正常事件就占據(jù)了總樣本的63%.此外,部分類別的攻擊事件中所占比例極低,這會(huì)導(dǎo)致ICS的大量正常事件會(huì)掩蓋攻擊事件,攻擊事件沒有得到正確和快速的識(shí)別,就會(huì)有更大的風(fēng)險(xiǎn)造成控制系統(tǒng)中斷、關(guān)鍵基礎(chǔ)設(shè)施破壞、經(jīng)濟(jì)損失和負(fù)面環(huán)境影響.因此采用自適應(yīng)合成采樣(ADASYN)方法來進(jìn)行不平衡數(shù)據(jù)集的學(xué)習(xí),ADASYN的基本思想是根據(jù)不同的少數(shù)類樣本的學(xué)習(xí)困難程度使用加權(quán)分布.ADASYN方法不僅可以減少由于原始數(shù)據(jù)分布不平衡而帶來的學(xué)習(xí)偏置,而且還可以自適應(yīng)地轉(zhuǎn)移決策邊界集中在那些難以學(xué)習(xí)的樣本上[7].這里的目標(biāo)有2個(gè)方面:減少偏置和自適應(yīng)學(xué)習(xí).提出兩分類問題的算法在ADASYN中得到了描述.

輸入:具有m個(gè)樣本{xi,yi},i=1,…,m的訓(xùn)練數(shù)據(jù)集Dtr,其中xi是n維特征空間X中的一個(gè)實(shí)例,yi∈Y={1,-1}是與xi相關(guān)的類標(biāo)識(shí)標(biāo)簽.將ms和ml分別定義為少數(shù)類樣本的數(shù)量和多數(shù)類樣本的數(shù)量.因此ms≤ml并且ms+ml=m.

過程:

1) 計(jì)算類不平衡的程度:d=ms/ml.

(1)

其中d∈(0,1].

2) 如果d

a.計(jì)算少數(shù)類需要生成的合成數(shù)據(jù)樣本的數(shù)量:G=(mi-ms)×β,

(2)

其中β∈[0,1]是一個(gè)參數(shù)用于指定合成數(shù)據(jù)生成后所需的平衡水平.β=1表示在泛化過程后生成一個(gè)完全平衡的數(shù)據(jù)集;

b.對(duì)于每個(gè)樣本xi∈minorityclass,根據(jù)n維空間的歐氏距離求K個(gè)最近鄰,并計(jì)算其比率ri定義為:

ri=Δi/K,i=1,…,ms.

(3)

其中Δi是xi的K個(gè)最近鄰中屬于多數(shù)類的樣本數(shù),因此ri∈[0,1];

(4)

e.對(duì)于每個(gè)少數(shù)類數(shù)據(jù)樣本xi來說,根據(jù)以下步驟生成gi合成數(shù)據(jù)樣本.

從1到gi的循環(huán).

(i)從數(shù)據(jù)xi中的K個(gè)近鄰中隨機(jī)選擇一個(gè)少數(shù)數(shù)據(jù)樣本xzi.

(ii)生成合成數(shù)據(jù)樣本:

si=xi+(xzi-xi)×λ.

(5)

其中(xzi-xi)是n維空間中的向量之差,并且λ是一個(gè)隨機(jī)數(shù):λ∈[0,1].

結(jié)束循環(huán).

1.2 隨機(jī)森林

隨機(jī)森林(RF)是一種操作效率高、參數(shù)調(diào)整方便的集成學(xué)習(xí)bagging算法[8].決策樹一般具有二叉樹結(jié)構(gòu),是RF的基本模塊.每個(gè)非葉節(jié)點(diǎn)根據(jù)特定的規(guī)則被劃分為2個(gè)子節(jié)點(diǎn),除非它是葉節(jié)點(diǎn).類信息存儲(chǔ)在葉節(jié)點(diǎn)中,葉節(jié)點(diǎn)可用于訓(xùn)練模型和斷定分類結(jié)果.

使用單一決策樹存在過擬合和精度方面的缺陷.RF算法可以使用由多個(gè)決策樹組成的分類器解決該問題[9].RF過程包括以下主要步驟:

1) 隨機(jī)森林決策樹的構(gòu)建

a.為每個(gè)決策樹構(gòu)建訓(xùn)練數(shù)據(jù)集

從具有N個(gè)樣本的訓(xùn)練數(shù)據(jù)集中提取n個(gè)樣本,構(gòu)建一個(gè)決策樹的訓(xùn)練數(shù)據(jù)子集.每棵決策樹在RF中都有相應(yīng)的訓(xùn)練數(shù)據(jù)集,如果RF中有ntree(樹的數(shù)量),則需要使用bootstrap抽樣方法建立相同數(shù)量的訓(xùn)練數(shù)據(jù)子集.

b.將節(jié)點(diǎn)拆分成二叉樹結(jié)構(gòu)

從訓(xùn)練數(shù)據(jù)的M個(gè)變量中隨機(jī)選擇m(m

c.重復(fù)步驟a和b,直到構(gòu)建出一個(gè)隨機(jī)的決策樹森林.

2)分類

建立隨機(jī)森林決策樹的過程會(huì)產(chǎn)生一系列的分類器.多個(gè)分類器可以產(chǎn)生不同的分類結(jié)果.對(duì)于輸入數(shù)據(jù)屬于哪個(gè)類,采用多數(shù)投票原則來做出最終決定.

當(dāng)RF應(yīng)用于特征選擇時(shí),在每棵決策樹中計(jì)算每個(gè)特征的排列重要性得分.在其他特征不變的情況下,RF算法計(jì)算每棵決策樹的每個(gè)特征的排列重要性.排列重要性有3種值:正、負(fù)和零.隨機(jī)重排后,重要特征對(duì)應(yīng)的排列重要性應(yīng)為正值.差的特征分散在不同的樣本中,對(duì)應(yīng)的排列重要性為負(fù)值.一個(gè)不相關(guān)的特征與樣本上的標(biāo)簽沒有任何相關(guān)性,相應(yīng)的排列重要性總是為零.排列重要度得分越高,表示該特征越重要.

1.3 遞歸特征消除

遞歸特征消除(RFE)是一種尋找最優(yōu)變量子集的貪婪算法,其主要思想是反復(fù)建立一個(gè)模型,選擇最佳(或最差)變量.移除特定的變量,然后重復(fù)上述過程,直到遍歷所有剩余的變量.在這個(gè)過程中,變量是否被消除依據(jù)變量的重要性順序.RFE方法需要一個(gè)機(jī)器學(xué)習(xí)算法來構(gòu)建分類器并評(píng)估預(yù)測(cè)器的重要性.本研究采用RF方法作為RFE模型的分類器.

在RFE模型中首先選擇的變量對(duì)后面選擇的特征有顯著的影響.由于RFE重采樣過程中的分割差異,應(yīng)用RFE方法,選擇的變量是非唯一的結(jié)果.例如,第1個(gè)模型將包含所有輸入變量,第2個(gè)模型將只包含有限的輸入變量.針對(duì)上述問題,采用k-fold交叉驗(yàn)證和和模擬方法為工業(yè)控制系統(tǒng)入侵檢測(cè)標(biāo)準(zhǔn)數(shù)據(jù)選擇合適的特征變量.在每個(gè)交叉驗(yàn)證的RFE模型中,最優(yōu)變量子集由最高的交叉驗(yàn)證精度確定.

1.4 基于PSO的DBN工控入侵檢測(cè)模型優(yōu)化

1.4.1 深度信念網(wǎng)絡(luò)

深度信念網(wǎng)絡(luò)(DBN)是Hinton等的開創(chuàng)性成果,具有良好的分類性能.然而,DBN的網(wǎng)絡(luò)結(jié)構(gòu)一般是通過實(shí)踐經(jīng)驗(yàn)設(shè)定的.自2006年提出以來[11],它得到了廣泛的關(guān)注,并成功應(yīng)用于語音識(shí)別和入侵檢測(cè)領(lǐng)域.從結(jié)構(gòu)上看,DBN分為多個(gè)RBM與一層BP神經(jīng)網(wǎng)絡(luò),結(jié)構(gòu)如圖1所示.

圖1 深度信念網(wǎng)絡(luò)結(jié)構(gòu)

深度信念網(wǎng)絡(luò)的訓(xùn)練步驟可以分為2步:

步驟1 逐層訓(xùn)練RBM.隱含層向量可以通過映射下一層的每個(gè)可見層向量得到,然后將隱含層向量作為下一層的可見層向量輸入.根據(jù)可見層和隱含層之間的相關(guān)性,不斷更新每一層的權(quán)值,然后通過類比訓(xùn)練多層RBM.在訓(xùn)練過程中,將第一層的誤差按順序傳輸?shù)絉BM的最后一層.

步驟2 在最后一個(gè)RBM后加入一個(gè)BP神經(jīng)網(wǎng)絡(luò),以最后一個(gè)RBM的輸出向量作為其輸入向量.并將帶標(biāo)簽的數(shù)據(jù)附加到該層,從上到下監(jiān)督整個(gè)網(wǎng)絡(luò),調(diào)整整個(gè)網(wǎng)絡(luò)的權(quán)值來微調(diào)深度信念網(wǎng)絡(luò).

1.4.2 受限玻爾茲曼機(jī)

受限玻爾茲曼機(jī)(RBM)是DBN的重要組成部分,它廣泛用于數(shù)據(jù)分類、模式識(shí)別.它的第1層是可見層(v),其中包含大量可見單元,另一層是隱含層(h),其中包含大量隱含單元.RBM是一個(gè)無向圖模型[12],模型的同一層中的節(jié)點(diǎn)之間沒有連接,不同層之間相互連接,RBM結(jié)構(gòu)如圖2所示,W代表可見層和隱含層之間的連接權(quán)重,以及所有可見層和隱含層之間都存在連接.而可見層單元不像隱含層那樣相互連接.

圖2 受限玻爾茲曼機(jī)結(jié)構(gòu)

RBM是一種雙層隨機(jī)神經(jīng)網(wǎng)絡(luò),它包含一層表示數(shù)據(jù)的可見節(jié)點(diǎn)(υ1,υ2,…,υi,…,υm)和一層學(xué)習(xí)表示特征的隱藏節(jié)點(diǎn)(h1,h2,…,hj,…,hn),每個(gè)υi∈{0,1}和hj∈{0,1}.定義可見節(jié)點(diǎn)的偏置為(b1,b2,…,bi,…,bm),隱含節(jié)點(diǎn)的偏置為(c1,c2,…,cj,…,cn).聯(lián)合配置{υ,h}的能量函數(shù)E(υ,h)定義如下[13-14]:

(6)

訓(xùn)練完一個(gè)RBM后,可以在第1個(gè)RBM的基礎(chǔ)上堆疊另一個(gè)RBM[15].第1個(gè)RBM中隱含單元的最終學(xué)習(xí)狀態(tài)被用作第2個(gè)RBM可見單元的輸入數(shù)據(jù).因此,可以將多層RBM疊加,自動(dòng)提取不同的特征,這些特征逐漸代表數(shù)據(jù)中更復(fù)雜的結(jié)構(gòu).在實(shí)踐中,將RBMs堆疊起來,用貪婪的分層無監(jiān)督學(xué)習(xí)算法進(jìn)行訓(xùn)練.在訓(xùn)練階段,每個(gè)添加的隱藏層都被訓(xùn)練為RBM.

1.4.3 反向傳播神經(jīng)網(wǎng)絡(luò)

反向傳播(BP)神經(jīng)網(wǎng)絡(luò)是在預(yù)測(cè)任務(wù)中應(yīng)用最廣泛的人工神經(jīng)網(wǎng)絡(luò)模型之一.在DBN中,最后一層是BP神經(jīng)網(wǎng)絡(luò).接受最后一層RBM的輸出特征向量作為這一層的輸入特征向量[16],并監(jiān)督整個(gè)網(wǎng)絡(luò)結(jié)構(gòu)是BP神經(jīng)網(wǎng)絡(luò)在DBN中的主要任務(wù).

在DBN中BP算法的微調(diào)權(quán)值如下.

輸入 訓(xùn)練樣本xi(i=1,2,…,m).

初始化 從RBM的預(yù)訓(xùn)練中獲取模型參數(shù)并初始化θ={wij,ai,bj},迭代數(shù)為k.

輸出 微調(diào)權(quán)重后的模型參數(shù)為θ={wij,ai,bj}.

第1步 計(jì)算每個(gè)訓(xùn)練樣本xi,實(shí)際輸出yi.

第2步 對(duì)于每個(gè)輸出單元k,計(jì)算實(shí)際輸出和理想輸出之間的誤差梯度:

δk←yk(1-yk)(xk-yk) .

(7)

(8)

第4步 計(jì)算每個(gè)網(wǎng)絡(luò)模型參數(shù):

θij=θij+Δθij.

(9)

式中:θij=ηyjδj,η為學(xué)習(xí)率.

第5步 存模型參數(shù),確定是否達(dá)到迭代次數(shù),或者轉(zhuǎn)到第1步.

1.4.4 粒子群優(yōu)化算法

通過探索鳥類群體覓食行為,衍生出了粒子群優(yōu)化算法(PSO).粒子是對(duì)鳥類的模擬.每個(gè)粒子都可以看作是n維搜索空間中的一個(gè)搜索個(gè)體,每個(gè)粒子的當(dāng)前位置是這個(gè)問題的候選解決方案[17].每個(gè)粒子都有兩個(gè)屬性:速度和位置.速度表示移動(dòng)的步長,位置表示移動(dòng)的方向.將每個(gè)粒子找到的最優(yōu)解作為個(gè)體最優(yōu)解,將所有粒子的最優(yōu)解作為全局最優(yōu)解.通過多次這樣的迭代,速度和位置不斷更新,當(dāng)滿足終止條件時(shí),迭代將退出.

PSO的過程可以描述如下:

1) 隨機(jī)初始化搜索空間中粒子的速度和位置.

2) 定義適應(yīng)度函數(shù).每個(gè)粒子都有自己的最優(yōu)解,對(duì)應(yīng)于一個(gè)適應(yīng)度值,而全局最優(yōu)解則由這些最優(yōu)解生成.每次迭代比較當(dāng)前的全局最優(yōu)值與歷史的全局最優(yōu)值,比較的結(jié)果將決定是否更新全局最優(yōu)值.

3) 每個(gè)粒子的速度和位置的更新表示為:

Vid=ωVid+C1random(0,1)(Pid-Xid)+C2random(0,1)(Pgd-Xid),

(10)

Xid=Xid+Vid.

(11)

其中C1和C2是個(gè)體和群體學(xué)習(xí)因子,Pid是第i個(gè)粒子個(gè)體最優(yōu)的第d維,Pgd是全局最優(yōu)的第d維,ω為慣性權(quán)重,其線性衰減策略可表示為:

(12)

其中iter是最大迭代次數(shù),iteri是當(dāng)前迭代次數(shù),ωmax和ωmin分別是ω的最大值和最小值.

1.4.5 PSO算法優(yōu)化DBN模型

DBN的運(yùn)行過程是先通過RBM進(jìn)行預(yù)訓(xùn)練,經(jīng)過隱含層后通過重構(gòu)誤差對(duì)網(wǎng)絡(luò)參數(shù)用BP神經(jīng)網(wǎng)絡(luò)進(jìn)行微調(diào),從而得到網(wǎng)絡(luò)的整體結(jié)構(gòu),當(dāng)準(zhǔn)確率較高且返回誤差穩(wěn)定在較小值時(shí),代表著當(dāng)前DBN結(jié)構(gòu)較好.因?yàn)樵诮BN模型時(shí)不能完全確認(rèn)其隱含層的節(jié)點(diǎn)數(shù),所以有必要增加訓(xùn)練次數(shù),并手動(dòng)調(diào)整網(wǎng)絡(luò)節(jié)點(diǎn)數(shù),以避免在訓(xùn)練過程中出現(xiàn)網(wǎng)絡(luò)性能損失的問題,本文在DBN模型構(gòu)建后利用PSO算法優(yōu)化DBN的隱含層層數(shù)以及節(jié)點(diǎn)數(shù),獲得最優(yōu)的DBN結(jié)構(gòu),得到最高的準(zhǔn)確率.

PSO算法優(yōu)化DBN模型的步驟如下:

1) 構(gòu)建一個(gè)DBN入侵檢測(cè)模型并初始化網(wǎng)絡(luò)參數(shù),即確定網(wǎng)絡(luò)中隱含層的層數(shù)和每層的節(jié)點(diǎn)數(shù);

2) 初始化粒子群各參數(shù),包括學(xué)習(xí)因子C1和C2、最大迭代次數(shù)iter、慣性權(quán)重ωmax和ωmin,同時(shí)規(guī)定粒子速度和位置的范圍.在該范圍內(nèi)隨機(jī)初始化種群中粒子的速度向量和位置向量.將DBN網(wǎng)絡(luò)的各層間的連接權(quán)重映射到粒子的各維度;

3) 確定適應(yīng)度函數(shù),使用準(zhǔn)確率(Accuracy)作為各個(gè)粒子的適應(yīng)度函數(shù)值,求出個(gè)體極值Pid和群體極值Pgd;

4) 比較各粒子的適應(yīng)度值與自身個(gè)體極值Pid的大小.若粒子當(dāng)前的適應(yīng)度大于個(gè)體極值Pid,則將其賦給個(gè)體極值Pid,反之保持Pid不變.設(shè)定DBN模型的隱含層節(jié)點(diǎn)數(shù),對(duì)其進(jìn)行訓(xùn)練并評(píng)估,判斷準(zhǔn)確率是否為最大值;

5) 比較群體中所有粒子的Pid與群體極值Pgd,若存在Pid優(yōu)于群體極值Pgd,則將其賦給群體極值Pgd,反之保持Pgd不變;

6) 根據(jù)式(10)、(11)更新各粒子的速度和位置;

7) 確定迭代是否結(jié)束.當(dāng)達(dá)到設(shè)置的最大迭代次數(shù),或者群體極值的變化量足夠小時(shí),迭代結(jié)束.否則,返回步驟3;

8) 如果準(zhǔn)確率增加到一定程度則滿足最優(yōu)解條件,將最終求得的隱含層節(jié)點(diǎn)數(shù)作為DBN模型的初始訓(xùn)練參數(shù)并近似確定DBN網(wǎng)絡(luò)結(jié)構(gòu),直至達(dá)到DBN結(jié)束訓(xùn)練的要求,DBN網(wǎng)絡(luò)建模完成.

整個(gè)流程如圖3所示.

圖3 PSO優(yōu)化DBN模型訓(xùn)練過程

2 實(shí)驗(yàn)與結(jié)果

2.1 工控入侵檢測(cè)數(shù)據(jù)集與預(yù)處理

文中使用的是托馬斯·莫里斯與他的研究團(tuán)隊(duì)于2014年在密西西比州立大學(xué)關(guān)鍵基礎(chǔ)設(shè)施保護(hù)中心(MSU)從實(shí)驗(yàn)室環(huán)境中用串行端口數(shù)據(jù)記錄器捕獲的網(wǎng)絡(luò)流量記錄生成的工控標(biāo)準(zhǔn)數(shù)據(jù)集[18],數(shù)據(jù)源于天然氣管道ICS網(wǎng)絡(luò)層,該數(shù)據(jù)總量為97019,并進(jìn)行了數(shù)值化處理.數(shù)據(jù)以X=(x1,x2,…,xn,y)的方式存儲(chǔ),其中x1,x2,…,xn為每條數(shù)據(jù)的特征,y為每條數(shù)據(jù)的類別標(biāo)簽.本文所用數(shù)據(jù)集中的每條數(shù)據(jù)包含26個(gè)屬性與1個(gè)類別標(biāo)簽.數(shù)據(jù)類別和相應(yīng)標(biāo)簽值如表1所示.

表1 攻擊形式及仿真分類標(biāo)簽

2.2 仿真平臺(tái)設(shè)置和評(píng)價(jià)指標(biāo)

為了驗(yàn)證ADASYN-PSO-DBN在工控入侵檢測(cè)中的有效性,隨機(jī)抽取了原始數(shù)據(jù)中的 10 000 條數(shù)據(jù),選取 8 000 條用于訓(xùn)練,2 000 條用于測(cè)試,采用5折交叉驗(yàn)證,其訓(xùn)練數(shù)據(jù)與測(cè)試數(shù)據(jù)分布如圖4所示.所采用的實(shí)驗(yàn)平臺(tái):Inter Core i5-5200U CPU 2.20GHz,4G內(nèi)存,Anaconda3 Spyder.PSO算法初始參數(shù)設(shè)置為:種群大小為20,最大迭代次數(shù)為20,ω=0.5,C1=0.5,C2=0.5.

圖4 不同類型的數(shù)據(jù)分布

文中為了評(píng)估模型的性能,評(píng)價(jià)指標(biāo)為以下6種:準(zhǔn)確率(accuracy)、檢測(cè)率(DR)、精確率(precision)、召回率(recall)、誤報(bào)率(FAR)、運(yùn)行時(shí)間.

(13)

(14)

(15)

(16)

(17)

其中TP是被正確歸類為攻擊的攻擊數(shù)據(jù),TN是被正確分類為正常的正常數(shù)據(jù),F(xiàn)P是被錯(cuò)誤歸類為攻擊的正常數(shù)據(jù),F(xiàn)N是被錯(cuò)誤歸類為正常的攻擊數(shù)據(jù).

2.3 實(shí)驗(yàn)過程與結(jié)果分析

實(shí)驗(yàn)的軟件環(huán)境是基于TensorFlow的Keras深度學(xué)習(xí)配置.實(shí)驗(yàn)過程中,用DBN訓(xùn)練數(shù)據(jù)集,因此對(duì)模型的部分參數(shù)進(jìn)行了設(shè)置,如表2所示.

表2 DBN實(shí)驗(yàn)參數(shù)

為了驗(yàn)證工控入侵檢測(cè)模型的有效性,本文進(jìn)行了多組實(shí)驗(yàn),包括采用ADASYN合成少數(shù)類前后的效果對(duì)比;采用基于隨機(jī)森林(RF)的特征提??;以及通過PSO優(yōu)化得到的DBN最佳隱含層層數(shù)以及節(jié)點(diǎn)數(shù),并用該DBN模型進(jìn)行對(duì)比;記錄每次所得結(jié)果,將所有評(píng)價(jià)指標(biāo)匯總并取均值,實(shí)驗(yàn)共進(jìn)行10次.

2.3.1 ADASYN合成少數(shù)類前后效果對(duì)比

由于數(shù)據(jù)存在不平衡的問題,將經(jīng)過處理前后的數(shù)據(jù)集在PSO-DBN模型上進(jìn)行驗(yàn)證.實(shí)驗(yàn)結(jié)果表明,經(jīng)過ADASYN處理的數(shù)據(jù)集有效提高了各類型數(shù)據(jù)檢測(cè)率,雖然NMRI檢測(cè)結(jié)果有所降低,但是幾乎提升了整體的性能,結(jié)果如圖5所示.

圖5 ADASYN處理前后的效果對(duì)比

2.3.2 基于隨機(jī)森林與遞歸特征消除的特征選擇

本文采用基于隨機(jī)森林(RF)與遞歸特征消除(RFE)的方法對(duì)數(shù)據(jù)進(jìn)行特征選擇,因?yàn)樗玫臄?shù)據(jù)集自然包含一些不相關(guān)且有噪聲的特征,這些特征會(huì)降低算法的有效性,導(dǎo)致檢測(cè)性能較差,所以先應(yīng)用RF對(duì)數(shù)據(jù)集中26個(gè)特征進(jìn)行特征重要性排序,排序結(jié)果如圖6所示,由此通過特征排序可以清晰發(fā)現(xiàn)特征的冗余,進(jìn)而進(jìn)行下一步的特征選擇.

圖6 特征重要性排序

根據(jù)以上的特征重要性排序,應(yīng)當(dāng)選取特征個(gè)數(shù)為15,以上更為重要的15個(gè)特征需要經(jīng)過RFE方法進(jìn)行選擇,特征選擇前后的入侵檢測(cè)性能對(duì)比如表3所示,可以看出檢測(cè)的準(zhǔn)確率明顯提高,平均運(yùn)行時(shí)間降低.

表3 特征選擇前后的實(shí)驗(yàn)結(jié)果

2.3.3 經(jīng)過預(yù)處理后的PSO-DBN工控入侵檢測(cè)模型優(yōu)化

設(shè)定好初始化參數(shù)后針對(duì)DBN隱含層層數(shù)是影響入侵檢測(cè)效果的重要因素,實(shí)驗(yàn)對(duì)1~6個(gè)隱含層的DBN網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行尋優(yōu),并進(jìn)行準(zhǔn)確率和檢測(cè)率對(duì)比,最終得到最佳的隱含層層數(shù)以及每層的節(jié)點(diǎn)個(gè)數(shù),如表4所示.

表4 不同結(jié)構(gòu)對(duì)應(yīng)的準(zhǔn)確率和檢測(cè)率

實(shí)驗(yàn)結(jié)果表明,隨著DBN網(wǎng)絡(luò)層數(shù)的增加,綜合準(zhǔn)確率與檢測(cè)率都有所提升,DBN的最佳網(wǎng)絡(luò)結(jié)構(gòu)是26-110-63-31-8,綜合準(zhǔn)確率達(dá)到95.62%,檢測(cè)率達(dá)到93.68%,但在逐步增加隱含層的情況下,準(zhǔn)確率和檢測(cè)率開始呈現(xiàn)下降趨勢(shì).在優(yōu)化了DBN網(wǎng)絡(luò)隱含層層數(shù)與節(jié)點(diǎn)數(shù)后,將最終模型的檢測(cè)結(jié)果與其他基準(zhǔn)入侵檢測(cè)模型進(jìn)行比較,這樣更體現(xiàn)了該模型的優(yōu)勢(shì).各個(gè)基準(zhǔn)入侵檢測(cè)模型的參數(shù)設(shè)置如表5所示.另外,為了保證實(shí)驗(yàn)的公平性,在同一環(huán)境下,對(duì)每種常用方法進(jìn)行多次實(shí)驗(yàn),對(duì)比結(jié)果如表6所示.

表5 各基準(zhǔn)模型的參數(shù)設(shè)置

從表6可以看出,本文模型的分類準(zhǔn)確率、精度以及召回率最高,達(dá)到95.62%、96.27%、93.68%,雖然本文模型高于長短時(shí)記憶網(wǎng)絡(luò)(LSTM)的FAR,但是整體檢測(cè)效果好于后者.綜合各個(gè)指標(biāo)發(fā)現(xiàn),基于ADASYN-PSO-DBN構(gòu)建的工控入侵檢測(cè)模型具有良好的檢測(cè)效果.

2.3.4 各攻擊類型數(shù)據(jù)檢測(cè)效果分析

在工控入侵檢測(cè)標(biāo)準(zhǔn)數(shù)據(jù)集中,有著1種正常運(yùn)行數(shù)據(jù)和4種攻擊類別,4種攻擊類別細(xì)化為7種攻擊形式.各模型識(shí)別8種類型的數(shù)據(jù),檢測(cè)率如圖7所示.

從圖7可以看出,ADASYN-PSO-DBN對(duì)每種類型的數(shù)據(jù)都具有較高的檢測(cè)率,在識(shí)別MSCI、DoS、RECO上更為凸顯.ADASYN-PSO-DBN與其他模型相比,整體在Normal、CMRI、MPCI、RECO類別的數(shù)據(jù)檢測(cè)率較高,都在90%以上,尤其是在RECO攻擊的分類識(shí)別上,各模型的檢測(cè)率都接近100%,但是在識(shí)別NMRI上,識(shí)別檢測(cè)率最高的只在50%以下.

3 結(jié)語

為了解決不平衡、高維、非線性數(shù)據(jù)的入侵檢測(cè)問題,本文提出了基于特征提取的ADASYN-PSO-DBN的工控入侵檢測(cè)模型.通過ADASYN處理技術(shù),對(duì)少數(shù)類樣本進(jìn)行過采樣,在一定程度上解決了分類器傾向于多數(shù)類樣本的問題.采用隨機(jī)森林和遞歸特征消除方法進(jìn)行數(shù)據(jù)特征提取和特征降維,達(dá)到去除冗余特征,加快檢測(cè)效率.經(jīng)過處理后,建立了PSO-DBN模型,利用PSO算法對(duì)DBN隱含層層數(shù)以及節(jié)點(diǎn)數(shù)全局尋優(yōu),從而增加DBN模型的入侵檢測(cè)效果.仿真結(jié)果表明,與多種常用的入侵檢測(cè)方法相比,該模型基本上在各攻擊類型的檢測(cè)上均具有較高的準(zhǔn)確率.雖然該模型具有良好的檢測(cè)能力,但是在識(shí)別NMRI時(shí)的檢測(cè)效果需要進(jìn)一步優(yōu)化,這是下一步的工作.

猜你喜歡
工控粒子樣本
碘-125粒子調(diào)控微小RNA-193b-5p抑制胃癌的增殖和侵襲
基于Matlab GUI的云粒子圖像回放及特征值提取
安全防護(hù)應(yīng)貫穿工控系統(tǒng)全生命周期
規(guī)劃·樣本
人大專題詢問之“方城樣本”
一種用于抗體快速分離的嗜硫納米粒子的制備及表征
隨機(jī)微分方程的樣本Lyapunov二次型估計(jì)
全國政協(xié)委員何幫喜:工控網(wǎng)絡(luò)安全防護(hù)應(yīng)納入國家戰(zhàn)略
問:超對(duì)稱是什么?
啟明星辰網(wǎng)御星云 進(jìn)軍工控安全領(lǐng)域
且末县| 会东县| 长沙县| 长乐市| 藁城市| 涿州市| 灌阳县| 定兴县| 大渡口区| 青阳县| 海原县| 乡宁县| 固镇县| 宜宾市| 沭阳县| 黄山市| 武乡县| 运城市| 徐州市| 宿州市| 彭泽县| 涿鹿县| 锡林浩特市| 昭觉县| 黄石市| 鄂伦春自治旗| 和平区| 旅游| 于田县| 无棣县| 长宁区| 敖汉旗| 荥经县| 曲阜市| 马公市| 兰西县| 买车| 西安市| 蒙自县| 名山县| 栖霞市|