歐陽(yáng)瀟琴 王秋華
摘 要:無(wú)線(xiàn)傳感器網(wǎng)絡(luò)通常部署在復(fù)雜的戶(hù)外環(huán)境,易遭受各種攻擊。多數(shù)入侵檢測(cè)系統(tǒng)均采用數(shù)據(jù)挖掘算法對(duì)網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行分析,但在處理大樣本集時(shí),其效率明顯降低。針對(duì)這一缺點(diǎn),提出一種基于Mini Batch K-Means和SVM的入侵檢測(cè)方案。該方案首先分別對(duì)正常行為特征庫(kù)和異常行為特征庫(kù)進(jìn)行Mini Batch K-Means聚類(lèi),取得類(lèi)中心作為各類(lèi)的代表樣本并賦予權(quán)值,將其傳入SVM分類(lèi)器作為訓(xùn)練數(shù)據(jù),得到分類(lèi)超平面,通過(guò)該超平面對(duì)待測(cè)樣本作出判斷。解決了如K-Means、KNN、SVM等傳統(tǒng)數(shù)據(jù)挖掘算法在大數(shù)據(jù)樣本集數(shù)據(jù)分析中面臨的低效問(wèn)題。仿真結(jié)果表明,該方案能快速準(zhǔn)確地判斷樣本類(lèi)別,其檢測(cè)率達(dá)到98.7%。與K-Means、KNN和SVM相比,不僅達(dá)到了同樣高的檢測(cè)率,而且明顯提高了入侵檢測(cè)的時(shí)間效率。
關(guān)鍵詞:無(wú)線(xiàn)傳感器網(wǎng)絡(luò);入侵檢測(cè);Mini Batch K-Means聚類(lèi)算法;SVM算法
DOI:10. 11907/rjdk. 191638
中圖分類(lèi)號(hào):TP309 ? 文獻(xiàn)標(biāo)識(shí)碼:A ??????????????? 文章編號(hào):1672-7800(2020)003-0204-06
An Intrusion Detection Scheme Based on Mini Batch K-Means and
SVM in Wireless Sensor Networks
OU YANG Xiao-qin1,WANG Qiu-hua2
(1. School of Communication Engineering,Hangzhou Dianzi University;
2. School of Network Space Security,Hangzhou Dianzi University, Hangzhou 310018, China)
Abstract: Wireless sensor networks (WSN) are usually deployed in complex outdoor environments and vulnerable to various attacks. Most intrusion detection systems use data mining algorithms to analyze network packets, but their efficiency is significantly reduced when dealing with large sample sets. In view of this shortcoming, a intrusion detection scheme based on Mini Batch K-Means and SVM is proposed. The scheme firstly conducts Mini Batch K-Means clustering on the database of normal behavior and abnormal behavior. The obtained centers of clusters are then used as representative samples of their clusters, each of which is assigned a weight and is input into SVM classifier as training data, so as to get a Classifying hyper-plane which can be used to classify samples. The proposed scheme solves the inefficiencies that traditional data mining algorithms such as K-means, KNN and SVM face in data analysis of big data sample sets. Simulation results show that our proposed scheme can determine the sample types quickly and accurately, whose accuracy is 98.7%. Compared with K-Means, KNN and SVM, our proposed scheme not only achieved the same accuracy, but also improved the time efficiency of intrusion detection significantly.
Key Words: wireless sensor networks; intrusion detection; mini batch K-Means clustering algorithm; support vector machine algorithm
0 引言
近年來(lái),隨著無(wú)線(xiàn)傳感器網(wǎng)絡(luò)(WSN:Wireless Sensor Networks)應(yīng)用的日益普及,與之相關(guān)的安全問(wèn)題也隨之而來(lái)。WSN通常部署在相對(duì)復(fù)雜、無(wú)人維護(hù)的環(huán)境中,其所面臨的安全威脅更加復(fù)雜多樣,除一般無(wú)線(xiàn)網(wǎng)絡(luò)所面臨的信息泄露與篡改、拒絕服務(wù)、重放等多種攻擊外,WSN還面臨著傳感器節(jié)點(diǎn)被攻擊者物理捕獲,并獲取節(jié)點(diǎn)中存儲(chǔ)的重要信息從而控制網(wǎng)絡(luò)的威脅。WSN中的入侵行為能夠造成網(wǎng)絡(luò)癱瘓、數(shù)據(jù)欺騙等安全問(wèn)題,并給網(wǎng)絡(luò)帶來(lái)巨大破壞[1]。因此,WSN安全是一個(gè)亟待解決的問(wèn)題,WSN的入侵檢測(cè)具有重大研究意義,得到了廣泛研究,已提出多種入侵檢測(cè)算法[2-7]。
文獻(xiàn)[2]采用基于改進(jìn)粒子群優(yōu)化的K-Means算法,根據(jù)物理層的接收信號(hào)強(qiáng)度 (RSS:Received Signal Strength)檢測(cè)欺騙攻擊;文獻(xiàn)[3]利用從不同接收節(jié)點(diǎn)獲取的RSS比率值檢測(cè)欺騙攻擊。但上述兩種方案均無(wú)法檢測(cè)出節(jié)點(diǎn)是否遭受到物理捕獲攻擊。文獻(xiàn)[4-5]使用基于歐氏距離的KNN算法,通過(guò)投票檢測(cè)入侵行為;文獻(xiàn)[6]通過(guò)帶有聚類(lèi)半徑的K-Means算法對(duì)特征向量進(jìn)行入侵檢測(cè);文獻(xiàn)[7]采用改進(jìn)核函數(shù)的支持向量機(jī)(SVM:Support Vector Machine)算法將線(xiàn)性不可分的向量映射到高維空間,從而得到分類(lèi)超平面,對(duì)待測(cè)樣本進(jìn)行預(yù)測(cè)。但是文獻(xiàn)[4-7]所提方案在處理大樣本集時(shí)計(jì)算量大,耗時(shí)長(zhǎng)、效率低,而隨著網(wǎng)絡(luò)的發(fā)展,必然會(huì)有更多數(shù)據(jù)加入訓(xùn)練集,算法訓(xùn)練時(shí)間也會(huì)隨之增加[8]。
本文針對(duì)上述入侵檢測(cè)方案中存在的缺陷,提出一種分別對(duì)正常行為特征庫(kù)和異常行為特征庫(kù)進(jìn)行聚類(lèi)處理,再使用SVM算法對(duì)樣本進(jìn)行分類(lèi)預(yù)測(cè)的入侵檢測(cè)方案。在本文所提方案中,首先使用適合大數(shù)據(jù)的聚類(lèi)算法Mini Batch K-Means對(duì)大樣本集進(jìn)行數(shù)據(jù)簡(jiǎn)約,即對(duì)不同行為特征庫(kù)進(jìn)行聚類(lèi),得到每類(lèi)的聚類(lèi)中心作為該類(lèi)的代表樣本,該類(lèi)的樣本數(shù)量作為代表樣本的權(quán)值;然后,將代表樣本和其對(duì)應(yīng)的權(quán)值作為SVM分類(lèi)算法的訓(xùn)練數(shù)據(jù),經(jīng)過(guò)訓(xùn)練得到一個(gè)超平面,最后利用該超平面對(duì)正常樣本和異常樣本進(jìn)行分割,從而對(duì)待測(cè)數(shù)據(jù)進(jìn)行預(yù)測(cè),判斷其是否屬于正常行為。本方案的主要優(yōu)點(diǎn)為:①對(duì)樣本進(jìn)行Mini Batch K-Means聚類(lèi)并取類(lèi)中心作為訓(xùn)練數(shù)據(jù),有效解決了大樣本集所引起的耗時(shí)影響,顯著提高了檢測(cè)速度;②分別對(duì)兩種行為特征庫(kù)進(jìn)行聚類(lèi)處理保證了聚類(lèi)得到的類(lèi)中心代表的都是同一類(lèi)行為,同時(shí)對(duì)類(lèi)中心賦予權(quán)值,保證了較高的檢測(cè)準(zhǔn)確率。本文對(duì)方案進(jìn)行了算法實(shí)現(xiàn),實(shí)驗(yàn)結(jié)果表明,使用Mini Batch K-Means顯著提高了樣本聚類(lèi)時(shí)的收斂速度,成倍提高了SVM分類(lèi)速度,同時(shí)保證了較高的檢測(cè)準(zhǔn)確率,得到了良好的檢測(cè)結(jié)果。
1 數(shù)據(jù)挖掘在入侵檢測(cè)中的應(yīng)用
數(shù)據(jù)挖掘[9]是指使用機(jī)器學(xué)習(xí)、統(tǒng)計(jì)學(xué)等領(lǐng)域的技術(shù)從海量數(shù)據(jù)中挖掘隱藏信息,將其轉(zhuǎn)化成有用知識(shí)。數(shù)據(jù)挖掘過(guò)程大致分為5個(gè)階段:?jiǎn)栴}定義、數(shù)據(jù)收集、數(shù)據(jù)預(yù)處理、數(shù)據(jù)挖掘?qū)嵤┮约巴诰蚪Y(jié)果解釋與評(píng)估[9]。在明確數(shù)據(jù)挖掘任務(wù)以及目標(biāo)數(shù)據(jù)對(duì)象后,使用分類(lèi)、回歸等方法對(duì)已得數(shù)據(jù)進(jìn)行分析,從數(shù)據(jù)源中抽取與數(shù)據(jù)挖掘目標(biāo)相關(guān)的信息。
由于數(shù)據(jù)挖掘能夠從大量數(shù)據(jù)中提取特征,挖掘出特定的行為模式,因此,該技術(shù)也常被用于入侵檢測(cè)中[10-14]。通過(guò)對(duì)網(wǎng)絡(luò)通信時(shí)采集而來(lái)的數(shù)據(jù)包進(jìn)行分析,提取出其中隱含的規(guī)律,從而得出正常類(lèi)型和攻擊類(lèi)型的數(shù)據(jù)包特征。
WSN由大量的小型傳感器組成,通過(guò)部署在監(jiān)測(cè)區(qū)域的傳感器采集數(shù)據(jù)并發(fā)送給監(jiān)察者,可從數(shù)據(jù)包中提取節(jié)點(diǎn)RSS值、感知數(shù)據(jù)值、數(shù)據(jù)包接收比例和發(fā)送比例、丟包率、延遲時(shí)間、節(jié)點(diǎn)剩余能量等特征組成的特征向量,作為數(shù)據(jù)挖掘樣本,使用數(shù)據(jù)挖掘算法對(duì)上述特征向量進(jìn)行分析,對(duì)于每一個(gè)收到的數(shù)據(jù)包,判斷其是否異常。基于數(shù)據(jù)挖掘的入侵檢測(cè)模型如圖1所示。
2 算法基礎(chǔ)
2.1 Mini Batch K-Means
Mini Batch K-Means算法[15-16]是K-Means算法的變種,采用隨機(jī)產(chǎn)生的小批量數(shù)據(jù)子集進(jìn)行聚類(lèi),大大減少了計(jì)算時(shí)間,Mini Batch K-Means算法產(chǎn)生的聚類(lèi)效果只略差于K-Means算法。
Mini Batch K-Means算法流程如下:
(1)首先隨機(jī)初始化K個(gè)樣本作為K個(gè)簇初始質(zhì)心。
(2)在第t次迭代中,從數(shù)據(jù)集中隨機(jī)抽取一些數(shù)據(jù)形成小批量樣本集,求其到各中心的距離,將該樣本集歸到距離最短的中心所在的類(lèi)。
(3)利用均值方法更新該類(lèi)的中心值。
(4)對(duì)于所有的K個(gè)聚類(lèi)中心,如果利用步驟(2)和步驟(3)的迭代方法更新后,目標(biāo)函數(shù)值保持不變,則迭代結(jié)束,否則繼續(xù)迭代。
樣本間的距離采用歐式距離,歐氏距離是指兩點(diǎn)之間的歐氏空間直線(xiàn)距離。兩點(diǎn)[u=(u1,u2,?,un)]和[v=][(v1,v2,?,vn)]之間歐氏距離計(jì)算如式(1)。
第i個(gè)類(lèi)中心計(jì)算公式如式(2)。
其中,[ciq]表示第i個(gè)類(lèi)的類(lèi)中心,[Ni]表示第i個(gè)類(lèi)中的元素個(gè)數(shù),[Ci]表示第i個(gè)類(lèi)。
加入批量大小為batch_size的小批量樣本集[X=][X1,X2,?Xbatch_size]后的類(lèi)中心為[c′iq],計(jì)算方式如式(3)。
另外,使用誤差的平方和(Sum of the Squared Error,? SSE)作為度量聚類(lèi)質(zhì)量的目標(biāo)函數(shù),SSE定義如式(4):
2.2 支持向量機(jī)
支持向量機(jī)[17-18]是一種監(jiān)督式學(xué)習(xí)方法,廣泛應(yīng)用于統(tǒng)計(jì)分類(lèi)及回歸分析,其特點(diǎn)是能夠同時(shí)最小化經(jīng)驗(yàn)誤差與最大化幾何邊緣。SVM可以很好地用于高維數(shù)據(jù),避免維數(shù)災(zāi)難。其基本思想是將輸入向量映射到高維特征空間,然后在特征空間構(gòu)造最優(yōu)分類(lèi)超平面,向量集合被該最優(yōu)超平面分開(kāi)。最優(yōu)分類(lèi)超平面如圖2所示,[x=][(xi,yi)i=1,2,?,n]為訓(xùn)練樣本,n為樣本數(shù)量,[xi]為輸入向量,類(lèi)別[yi∈(0,1)]。
所有分類(lèi)超平面可表達(dá)為式(5)。
其中,“[w]”代表超平面的法向量,參數(shù)[bw]決定超平面從原點(diǎn)沿法向量的位移。
決策函數(shù)為式(6)。
由于要阻止數(shù)據(jù)點(diǎn)落入邊緣內(nèi),因此添加如下約束:
(1)對(duì)于屬于第一類(lèi)別的[xi],有[wT?xi-b1]。
(2)對(duì)于屬于第一類(lèi)別的[xi],有[wT?xi-b-1]。
支持向量到分類(lèi)間隔距離的函數(shù)間隔定義為[γ=y(wT?x-b)=yfx]。[wT?x-b=1]與[wT?x-b=-1]兩個(gè)平面之間的距離為[margin=2w=2γ],則有[γ=1w],且[yi(wT?xi-b)1]。SVM分類(lèi)的關(guān)鍵為最大化margin,等價(jià)于最小化[w22],目標(biāo)函數(shù)可轉(zhuǎn)化為式(7)。
引入拉格朗日乘子[αi>0,(i=1,2,?,n)],構(gòu)造拉格朗日函數(shù)如式(8)。
根據(jù)拉格朗日對(duì)偶性,原始約束最優(yōu)化問(wèn)題可等價(jià)于極大極小對(duì)偶問(wèn)題:[maxLw,b,α]。等價(jià)于式(9)中最優(yōu)化問(wèn)題。
由此得到算法決策函數(shù)如式(10)。
3 基于Mini Batch K-Means和SVM的融合算法設(shè)計(jì)
3.1 算法思想
Mini Batch K-Means算法和K-Means算法都屬于聚類(lèi)算法,但由于K-Means算法在對(duì)大樣本集進(jìn)行聚類(lèi)時(shí)的收斂速度較慢,因此本方案采用適用于大樣本集的Mini Batch K-Means算法進(jìn)行聚類(lèi),在基本不影響聚類(lèi)效果的前提下,可以顯著提高收斂速度。SVM算法的中心思想是將線(xiàn)性不可分的數(shù)據(jù)映射到高維空間,再在空間中構(gòu)造一個(gè)最優(yōu)分類(lèi)超平面將兩類(lèi)數(shù)據(jù)分隔開(kāi),減少異類(lèi)之間的相互影響。
鑒于入侵檢測(cè)的樣本集十分龐大,采用傳統(tǒng)聚類(lèi)算法或SVM等機(jī)器學(xué)習(xí)算法進(jìn)行檢測(cè)非常耗時(shí),本文所提方案著重解決入侵檢測(cè)中大樣本集所帶來(lái)的耗時(shí)問(wèn)題。本方案先采用Mini Batch K-Means對(duì)訓(xùn)練樣本進(jìn)行快速聚類(lèi),獲取類(lèi)中心,將其作為SVM分類(lèi)器的訓(xùn)練數(shù)據(jù),然后構(gòu)造分類(lèi)超平面,再根據(jù)該超平面對(duì)待測(cè)樣本進(jìn)行分類(lèi)預(yù)測(cè)。
3.2 檢測(cè)流程
本文方案的檢測(cè)流程包括去重處理與樣本劃分、Mini Batch K-Means聚類(lèi)、簇中心提取和SVM分類(lèi)4個(gè)步驟。
(1)去重處理與樣本劃分。當(dāng)網(wǎng)絡(luò)狀況和被監(jiān)測(cè)區(qū)域環(huán)境處于一個(gè)相對(duì)穩(wěn)定的狀態(tài)時(shí),會(huì)出現(xiàn)一部分?jǐn)?shù)據(jù)包提取到相同樣本,大量重復(fù)的樣本會(huì)在一定程度上影響算法運(yùn)行速度。通過(guò)去重處理并給每一個(gè)樣本賦予一個(gè)權(quán)重,可以減輕樣本重復(fù)所帶來(lái)的不利影響。首先,給每個(gè)樣本賦予一個(gè)權(quán)重weight,初始值為1,將每一列屬性值都相等的樣本合并到一個(gè)樣本,相應(yīng)weight賦值為該樣本代表的重復(fù)樣本數(shù)量;然后,根據(jù)樣本標(biāo)簽將訓(xùn)練樣本劃分到正常行為特征庫(kù)或異常行為特征庫(kù),如圖3所示。
(2)Mini Batch K-Means聚類(lèi)。分別對(duì)正常行為特征庫(kù)和異常行為特征庫(kù)中的數(shù)據(jù)進(jìn)行Mini Batch K-Means聚類(lèi)。Mini Batch K-Means算法中有兩個(gè)參數(shù)至關(guān)重要,分別是聚類(lèi)簇?cái)?shù)K和批量大小batch_size。K表示聚類(lèi)目標(biāo)簇的數(shù)量,即根據(jù)算法規(guī)則將樣本分配到K個(gè)簇中;batch_size表示每次迭代時(shí)從數(shù)據(jù)集中隨機(jī)抽取的樣本批量大小。每次迭代時(shí),隨機(jī)抓取batch_size個(gè)數(shù)據(jù)元素[S=s1,s2,?,sbatch_size],計(jì)算其加權(quán)平均值[Avg=][i=1batch_sizewi?sii=1batch_sizewi],再計(jì)算平均值[Avg]與K個(gè)簇中心的歐氏距離[D=d1,d2,?,dk],得到最小距離[mind1,d2,?,dk],將抓取的數(shù)據(jù)分配到距離最近的簇中。按照上述迭代方法,分別將正常特征庫(kù)和異常特征庫(kù)中的樣本劃分為大小均衡的K個(gè)簇,如圖4所示。
(3)簇中心提取和權(quán)重分配。由步驟(2)得到K個(gè)簇,從每個(gè)簇中提取其簇中心作為該簇的代表樣本。假設(shè)第i個(gè)簇中含有m個(gè)數(shù)據(jù)元素[s1,s2,?,sm],每個(gè)元素對(duì)應(yīng)的權(quán)重分別為[w1,w2,?,wm],其簇中心[Ci=j=1mwj?sjj=1mwj],權(quán)重[Wi=j=1mwj]。按照上述方法計(jì)算得到K個(gè)簇中心[C1,C2,?,Ck]及其對(duì)應(yīng)權(quán)重[W1,W2,?,Wk],如圖5所示。
(4)SVM分類(lèi)。由步驟(3)得到K個(gè)簇中心及相應(yīng)權(quán)重,將其作為SVM分類(lèi)器的訓(xùn)練數(shù)據(jù)和樣本權(quán)重,采用高斯徑向基函數(shù)作為SVM的核函數(shù),將線(xiàn)性不可分的樣本映射到高維特征空間,從而得到一個(gè)分類(lèi)超平面[w?x-b=0],以及決策函數(shù)[fx=sgnw?x-b]。使用上述分類(lèi)超平面,對(duì)待測(cè)樣本進(jìn)行分類(lèi),如圖6所示。設(shè)待測(cè)樣本為[x=x1,x2,?,xn],計(jì)算[fx]。若[w?x-b>0],則該樣本屬于正常類(lèi)別;若[w?x-b<0],則該樣本屬于異常本方案整個(gè)執(zhí)行流程如圖7所示。
4 性能仿真
4.1 仿真說(shuō)明
本方案的仿真數(shù)據(jù)采用UCI數(shù)據(jù)集中的KDD99[19-21],該數(shù)據(jù)是由美國(guó)國(guó)防部高級(jí)規(guī)劃署在MIT林肯實(shí)驗(yàn)室模擬的美國(guó)空軍局域網(wǎng)的一個(gè)網(wǎng)絡(luò)環(huán)境中經(jīng)過(guò)9周時(shí)間,仿真各種用戶(hù)類(lèi)型、各種不同的網(wǎng)絡(luò)流量和攻擊手段收集而來(lái)的數(shù)據(jù)集,是目前公認(rèn)的入侵檢測(cè)數(shù)據(jù)集。本文使用10%的數(shù)據(jù)集作為測(cè)試數(shù)據(jù),共有近50萬(wàn)條,包含正常數(shù)據(jù)和異常數(shù)據(jù)兩大類(lèi)數(shù)據(jù)集,其中異常數(shù)據(jù)集分為DoS(Denial of Service)、U2R(User to Root)、R2L(Remote to User)和Probe 4類(lèi)攻擊數(shù)據(jù)。本方案所使用的實(shí)驗(yàn)環(huán)境為Windows 10系統(tǒng)、i5處理器,4核CPU,8G內(nèi)存。
首先需對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,使用出現(xiàn)頻率最高的數(shù)值填補(bǔ)缺失值,對(duì)于標(biāo)稱(chēng)型數(shù)據(jù),根據(jù)其取值在取值空間中的頻率,將其量化到[0,1]區(qū)間。對(duì)數(shù)據(jù)進(jìn)行PCA降維處理,去除部分沒(méi)有價(jià)值的屬性,再對(duì)所有屬性進(jìn)行Z-score中心化處理。處理方式如式(11)。
其中,mean表示每個(gè)屬性的均值,varience表示屬性的標(biāo)準(zhǔn)差。中心化處理是為了避免計(jì)算歐式距離時(shí)大數(shù)吃小數(shù)的問(wèn)題。
4.2 結(jié)果分析
4.2.1 聚類(lèi)效果分析
在給定相同數(shù)量數(shù)據(jù)樣本情況下,分別使用K-Means和Mini Batch K-Means方案對(duì)樣本進(jìn)行聚類(lèi)。圖8為兩種算法的收斂時(shí)間對(duì)比,圖9為聚類(lèi)適應(yīng)度inertia對(duì)比。收斂時(shí)間表示聚類(lèi)時(shí)長(zhǎng),inertia為各樣本到其所屬類(lèi)中心的距離平方和,是代表聚類(lèi)適應(yīng)度的指標(biāo),計(jì)算如式(4)所示,inertia越小,聚類(lèi)效果越好。
由圖8可以看出,Mini Batch K-Means方案的收斂時(shí)間遠(yuǎn)小于K-Means,因?yàn)榍罢咴诿看蔚^(guò)程中都是抓取一個(gè)批量的樣本集進(jìn)行劃分,而K-Means每次只針對(duì)一個(gè)樣本進(jìn)行聚類(lèi),樣本集越大,兩者對(duì)比越明顯。
由圖9可以看出,Mini Batch K-Means的聚類(lèi)適應(yīng)度inertia只稍大于K-Means,結(jié)合圖8可知,Mini Batch K-Means在基本不影響聚類(lèi)效果的情況下顯著提高了收斂速度。
4.2.2 入侵檢測(cè)結(jié)果分析
表1給出了本方案的仿真結(jié)果,表中4列分別表示測(cè)試樣本的攻擊類(lèi)型、用于測(cè)試的樣本總數(shù)、從總樣本中檢測(cè)出的正確樣本數(shù)量以及各種攻擊類(lèi)型的檢測(cè)百分比。由表1可知,本方案對(duì)各種攻擊樣本都有比較良好的檢測(cè)效果。
本方案使用聚類(lèi)中心作為一個(gè)類(lèi)的代表樣本,即將相似度較高的樣本融合成一個(gè)樣本,再賦予權(quán)重,從而降低大樣本集所帶來(lái)的耗時(shí)影響。因此,聚類(lèi)簇?cái)?shù)的大小對(duì)檢測(cè)精度會(huì)有一定影響。圖10為不同聚類(lèi)簇?cái)?shù)下本方案的檢測(cè)率。結(jié)果表明,聚類(lèi)簇?cái)?shù)越大,準(zhǔn)確率越高。但是,聚類(lèi)簇?cái)?shù)的增加,也會(huì)直接影響聚類(lèi)時(shí)長(zhǎng),圖11為不同聚類(lèi)簇?cái)?shù)的大小對(duì)檢測(cè)時(shí)間的影響。結(jié)果表明,聚類(lèi)簇?cái)?shù)越大,入侵檢測(cè)的時(shí)間開(kāi)銷(xiāo)也越大。
結(jié)合圖10和圖11可知,增加聚類(lèi)簇?cái)?shù),可以增加檢測(cè)精度,但同時(shí)也會(huì)加長(zhǎng)數(shù)據(jù)訓(xùn)練時(shí)間。因此,需要經(jīng)過(guò)不同參數(shù)驗(yàn)證,得到一個(gè)最合適的聚類(lèi)簇?cái)?shù),使得本方案既有一個(gè)良好的檢測(cè)率,又不會(huì)明顯增加時(shí)間開(kāi)銷(xiāo)。此處通過(guò)實(shí)驗(yàn)選擇1 000作為較為合適的聚類(lèi)簇?cái)?shù)。
表2給出了本方案與K-Means、KNN、加權(quán)KNN、SVM 4種方案在相同測(cè)試樣本下的檢測(cè)率對(duì)比,由表2可知,相對(duì)于其它幾種方案,本方案具有更高的檢測(cè)率和更低的誤檢率。
圖12顯示了本方案與SVM算法在相同訓(xùn)練樣本數(shù)量下的檢測(cè)率比較。由圖12可知,本方案的檢測(cè)率稍低于SVM的檢測(cè)率。
圖13為本方案與SVM算法在相同訓(xùn)練樣本數(shù)量下檢測(cè)所耗費(fèi)時(shí)長(zhǎng)對(duì)比。由圖13可知,本方案的時(shí)間開(kāi)銷(xiāo)明顯低于SVM算法。
綜合圖12和圖13可知,本方案在保證理想檢測(cè)率的前提下,顯著提高了大樣本集下的檢測(cè)速度。
5 結(jié)語(yǔ)
本文針對(duì)傳統(tǒng)數(shù)據(jù)挖掘算法在分析大樣本集時(shí)耗時(shí)較大、效率較低的問(wèn)題,提出了一種基于Mini Batch K-Means和SVM的入侵檢測(cè)算法。利用Mini Batch K-Means算法分別對(duì)正常行為特征庫(kù)和異常行為特征庫(kù)快速聚類(lèi),取得類(lèi)中心作為SVM分類(lèi)器的訓(xùn)練樣本,得到分類(lèi)超平面對(duì)待測(cè)樣本作出判斷。仿真結(jié)果表明,本方案在時(shí)間開(kāi)銷(xiāo)上具有明顯優(yōu)勢(shì),并且具有理想的檢測(cè)效果。但該算法仍存在無(wú)法識(shí)別出具體攻擊類(lèi)型的缺陷,有待今后進(jìn)一步研究。
參考文獻(xiàn):
[1]鐘敦昊, 張冬梅, 張玉. 一種基于相似度計(jì)算的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)入侵檢測(cè)方法[J]. 信息網(wǎng)絡(luò)安全, 2016(2):22-27.
[2]陶莉,孫子文. 無(wú)線(xiàn)傳感器網(wǎng)絡(luò)KIPSO欺騙攻擊檢測(cè)模型[J].? 傳感技術(shù)學(xué)報(bào), 2016, 29(7):1049-1055.
[3]WANG W, WANG Z. Anti-Sybil attack MPRR-RSSI localization algorithm in wireless sensor networks[J]. Journal of Electronic Measurement & Instrumentation, 2016.
[4]MA Z,KABAN A. K-Nearest-Neighbours with a novel similarity measure for intrusion detection[C]. 2013 13th UK Workshop on Computational Intelligence, 2013:266-271.
[5]JAMSHIDI Y,NEZAMABADI-POUR H. A Lattice based nearest neighbor classifier for anomaly intrusion detection[J]. International Journal Of Applied Mathematics And Computer Science,2013(4):51-60.
[6]劉華春,候向?qū)帲瑮钪? 基于改進(jìn)K均值算法的入侵檢測(cè)系統(tǒng)設(shè)計(jì)[J]. 計(jì)算機(jī)技術(shù)與發(fā)展,2016(1):101-105.
[7]ZHANG S, ZHANG S, JIN Z, et al. A novel SVM by combining kernel principal component analysis and improved chaotic particle swarm optimization for intrusion detection[J].? Soft Computing,2015,19(5):1187-1199.
[8]華輝有,陳啟買(mǎi),劉海,等. 一種融合Kmeans和KNN的網(wǎng)絡(luò)入侵檢測(cè)算法[J]. 計(jì)算機(jī)科學(xué), 2016, 43(3):158-162.
[9]王倩. 基于數(shù)據(jù)挖掘的入侵檢測(cè)技術(shù)的研究與實(shí)現(xiàn)[D]. 北京:北京郵電大學(xué),2017.
[10]郭春. 基于數(shù)據(jù)挖掘的網(wǎng)絡(luò)入侵檢測(cè)關(guān)鍵技術(shù)研究[D]. 北京:北京郵電大學(xué), 2014.
[11]JOKAR P,LEUNG V. Intrusion detection and prevention for ZigBee-based home area networks in smart grids[J]. IEEE Transactions on Smart Grid,2016, (99):1-1.
[12]趙石真. 基于SVM的k-means聚類(lèi)算法在WSN入侵檢測(cè)中的應(yīng)用[D]. 成都:西華大學(xué),2016.
[13]BUCZAK A, GUVEN E. A survey of data mining and machine learning methods for cyber security intrusion detection[J]. IEEE Communication Survey and Tutorials, 2017(18): 1153-1176.
[14]ARIAFAR E,KIANI R. Intrusion detection system using an optimized framework based on data mining techniques[C]. Proceedings IEEE International Conference on Knowledge-Based Engineering and Innovation,2017:785-791.
[15]PENG K, LEUNG V C M, HUANG Q. Clustering approach based on mini batch kmeans for intrusion detection system over big data[J].? IEEE Access, 2018(6):11897-11906.
[16]SCULLEY D.Web-scale K-means clustering[C]. Proceedings 19th International Conference on World Wide Web,2010: 1177-1178.
[17]MOHAMMED J ZAKI, WAGNER MEIRA JR. 數(shù)據(jù)挖掘與分析:概念與算法[M]. 北京:人民郵電出版社,2017:445-474.
[18]張曉峰. 基于聚類(lèi)和支持向量機(jī)的入侵檢測(cè)方法研究[D].? 蘭州:蘭州理工大學(xué),2018.
[19]TAVALLAEE M, BAGHERI E, LU W, et al. A detailed analysis of the KDD CUP 99 data set[C]. IEEE International Conference on Computational Intelligence for Security and Defense Applications, 2009:53-58.
[20]張新有,曾華燊,賈磊. 入侵檢測(cè)數(shù)據(jù)集KDD CUP99研究[J].? 計(jì)算機(jī)工程與設(shè)計(jì),2010,31(22):4809-4812.
[21]ENGEN V,VINCENT J,PHALP K. Exploring discrepancies in findings obtained with the KDD Cup '99 data set[J]. Intelligent Data Analysis, 2011,15(2):251-276.
(責(zé)任編輯:孫 娟)
收稿日期:2019-05-30
基金項(xiàng)目:浙江省自然科學(xué)基金項(xiàng)目(LY19F020039);之江實(shí)驗(yàn)室重大科研項(xiàng)目(2019DH0ZX01)
作者簡(jiǎn)介:歐陽(yáng)瀟琴(1993-),女,杭州電子科技大學(xué)通信工程學(xué)院碩士研究生,研究方向?yàn)閭鞲衅骶W(wǎng)絡(luò)安全、計(jì)算機(jī)網(wǎng)絡(luò)安全;王秋華(1978-),女,杭州電子科技大學(xué)網(wǎng)絡(luò)空間安全學(xué)院副教授,研究方向?yàn)閭鞲衅骶W(wǎng)絡(luò)安全、計(jì)算機(jī)網(wǎng)絡(luò)安全、安全密鑰管理。