1.一種基于感知數(shù)據(jù)的無線傳感器網(wǎng)絡(luò)異常類型鑒別方法,其特征在于:該方法包括以下步驟:
S1:無線傳感器網(wǎng)絡(luò)節(jié)點每隔一個固定時間間隔Δt收集一組感知數(shù)據(jù),包括溫度、濕度或亮度,并將其發(fā)送給基站,在沒有發(fā)生攻擊行為時間段內(nèi),基站將收到的感知數(shù)據(jù)集生成檢測特征集,作為訓(xùn)練數(shù)據(jù),即訓(xùn)練集;
S2:將訓(xùn)練集進(jìn)行z-score標(biāo)準(zhǔn)化方法歸一化,并保留列均值μ和列方差σ;
S3:將訓(xùn)練集進(jìn)行主成分分析法PCA(Principal Component Analysis,PCA)降維,保留特征向量矩陣E*和列均值向量μ*;
S4:采用基于密度的競爭聚類算法DCCA(Detrended Canonical Correspondence Analysis,DCCA)將訓(xùn)練集聚類為正常簇和異常簇;
S5:當(dāng)新的檢測特征出現(xiàn)時,依據(jù)列均值μ和列方差σ進(jìn)行歸一化,經(jīng)特征向量矩陣E*和列均值向量μ*降維,最后根據(jù)其劃歸在正常簇與異常簇的收益值判定網(wǎng)絡(luò)是否異常。
2.如權(quán)利要求1所述的一種基于感知數(shù)據(jù)的無線傳感器網(wǎng)絡(luò)異常類型鑒別方法,其特征在于:在步驟S1中,所述無線傳感器網(wǎng)絡(luò)節(jié)點為S={Sj:j=1,2,…,m},其中m是節(jié)點的數(shù)量;所述一組感知數(shù)據(jù)是一個p維向量vj=(vj1,vj2,…,vjp),vj∈Rp,其中p表示感知數(shù)據(jù)的類型數(shù),R為實數(shù)域;所述感知數(shù)據(jù)集為V={v1,v2,…,vn},其中n為組數(shù),與節(jié)點ID無關(guān),n≤m;V的均值為其中V的均方差為σ={σ1,σ2,…,σp},其中所述檢測特征為向量其維度為q=2p;定義檢測特征完整度為檢測特征ID為其中t是該檢測特征的接收時間;定義時間段[0,T]內(nèi)收到的檢測特征集作為訓(xùn)練數(shù)據(jù),表示為矩陣XT={x1,x2,…,xk},k=T/Δt。
3.如權(quán)利要求1所述的一種基于感知數(shù)據(jù)的無線傳感器網(wǎng)絡(luò)異常類型鑒別方法,其特征在于:所述步驟S2包括以下步驟:
S201:定義訓(xùn)練數(shù)據(jù)為
S202:將XT經(jīng)公式進(jìn)行歸一化,其中μ是矩陣XT的列均值,σ是矩陣XT的列均方差,得到
4.如權(quán)利要求1所述的一種基于感知數(shù)據(jù)的無線傳感器網(wǎng)絡(luò)異常類型鑒別方法,其特征在于:所述步驟S3包括以下步驟:
S301:計算的列均值向量μ*并對進(jìn)行零均值化得到矩陣其中零均值化就是矩陣中的每個數(shù)減去自身所在列的均值;
S302:通過公式計算矩陣X'的協(xié)方差矩陣;
S303:計算協(xié)方差矩陣的特征向量E={e1,e2,…,eq}與特征值λ1,λ2,…,λq,其中特征值按從大到小排序,與特征向量一一對應(yīng);
S304:計算貢獻(xiàn)率當(dāng)前l(fā)個特征值貢獻(xiàn)率之和大于θ時,保留對應(yīng)l個特征向量組成矩陣E*;
S305:計算得到降維后的矩陣X=X'*E*。
5.如權(quán)利要求1所述的一種基于感知數(shù)據(jù)的無線傳感器網(wǎng)絡(luò)異常類型鑒別方法,其特征在于:所述基于密度的競爭聚類算法包括以下步驟:
S401:給定降維后的訓(xùn)練數(shù)據(jù),計算每個點的代價函數(shù),若該點在其鄰域內(nèi)代價值最大,則為聚類中心;
S402:每個點依據(jù)其他點選擇聚類中心的概率選擇收益最大的類;
S403:每個點基于每次選擇結(jié)果重新選擇直到所有點的收益值都達(dá)到最大;
S404:依據(jù)各個點的選擇結(jié)果形成了多個簇,通過簇均值和簇均方差區(qū)分簇的類型,即正常簇與異常簇。
6.如權(quán)利要求5所述的一種基于感知數(shù)據(jù)的無線傳感器網(wǎng)絡(luò)異常類型鑒別方法,其特征在于:所述步驟S401包括以下步驟:定義降維后的訓(xùn)練數(shù)據(jù)集X={x1,x2,…,xk},計算每個點x的代價函數(shù)其中,dist為歐式距離,dc為截斷距離,dc可取所有點的相互距離中由小到大排列占總數(shù)1%的位置的距離數(shù)值;若該點在其鄰域內(nèi)代價值最大,則為聚類中心。
7.如權(quán)利要求5所述的一種基于感知數(shù)據(jù)的無線傳感器網(wǎng)絡(luò)異常類型鑒別方法,其特征在于:所述步驟S402包括以下步驟:定義點xi與點xj同屬一個聚類時,點xi的收益值value(xi,xj)=exp(-dist(xi,xj)),定義點xi選擇與點xj歸屬同一類的概率為則點x選擇歸屬到聚類中心c的收益函數(shù)為g(x)=value(x)probs(c),其中value(x)=(value(x,x1),value(x,x2),…,value(x,xk)),probs(c)=(probs(x1,c),probs(x2,c),…,probs(xk,c)),若點x選擇聚類中心c的收益值最大,即獲取的利益最大,則選擇歸類到聚類中心c。
8.如權(quán)利要求5所述的一種基于感知數(shù)據(jù)的無線傳感器網(wǎng)絡(luò)異常類型鑒別方法,其特征在于:所述步驟S403包括以下步驟:定義點x歸屬到聚類C的收益為h(x),其中num表示聚類C中點的個數(shù)(若x∈C,則個數(shù)減1),點x依據(jù)在各個聚類的收益值,重新選擇歸屬到收益值最大的聚類中,所有點重復(fù)選擇直到所有點選擇不變,達(dá)到平衡,即所有點獲得最大收益。
9.如權(quán)利要求5所述的一種基于感知數(shù)據(jù)的無線傳感器網(wǎng)絡(luò)異常類型鑒別方法,其特征在于:所述步驟S404包括以下步驟:定義一個簇內(nèi)所有檢測特征中的感知數(shù)據(jù)均值的平均值為簇均值其中表示第i個檢測特征的第j個均值,num表示簇中檢測特征的個數(shù);定義一個簇內(nèi)所有檢測特征中的感知數(shù)據(jù)均方差σ的平均值為簇均方差其中σij分別表示第i個檢測特征的第j個均方差;通過計算各個簇的簇均方差來劃分正常數(shù)據(jù)和噪聲,其中簇均方差最大的簇為異常簇且異常是由噪聲與錯誤引起的,簇內(nèi)點為噪聲與錯誤,而簇均方差最小的簇為正常簇,剩余簇依據(jù)與正常簇以及異常簇的簇均方差的差異程度就近判斷為正?;虍惓?。
10.如權(quán)利要求1所述的一種基于感知數(shù)據(jù)的無線傳感器網(wǎng)絡(luò)異常類型鑒別方法,其特征在于:所述步驟S5包括以下步驟:
S501:定義一個簇內(nèi)所有檢測特征的完整度A的平均值為簇完整度其中Ai表示第i個檢測特征的完整度;定義一個簇內(nèi)的所有檢測特征ID的方差為簇連續(xù)度其中di表示第i個檢測特征的ID,為均值;
S502:新的檢測特征xnew先經(jīng)z-score標(biāo)準(zhǔn)化以及PCA降維后得到點x;
S503:通過公式計算點x歸屬到各個簇的收益值;若收益值的最大值大于給定的閾值(ε=10e-5),則將點x歸屬到收益值最大的簇中;若點x歸屬到正常簇,則判定為正常值,否則判定為異常值并根據(jù)異常簇的類型決策引起點x異常的原因;若收益值的最大值小于給定的閾值,也就是點x在現(xiàn)有的簇中的收益值小到可以忽略不計,則點x形成一個新簇;根據(jù)規(guī)則判定新簇的類型,在判定點x的歸屬后用它替換對應(yīng)簇內(nèi)舊的檢測特征;
所述規(guī)則如下:若新簇的簇均值、簇均方差、簇完整度以及簇連續(xù)度均與正常簇簇持平,則判定該簇為正常簇;若新簇的簇均方差和簇連續(xù)度大于正常簇而簇完整度與正常簇持平,則該簇判定為異常簇且異常是由噪聲與錯誤引起的;若新簇的簇均方差、簇完整度和簇連續(xù)度與正常簇簇持平,而簇均值遠(yuǎn)大于或遠(yuǎn)小于正常簇,則該簇判定為異常簇且異常是由事件引起的;若新簇的簇均方差與正常簇持平,而簇均值和簇完整度均遠(yuǎn)小于正常簇,則該簇判定為異常簇且異常是由與網(wǎng)絡(luò)協(xié)議相關(guān)的攻擊引起的;若新簇的簇均方差大于正常簇,而簇連續(xù)度與正常簇持平,則該簇為異常簇且異常是由惡意數(shù)據(jù)注入攻擊引起的;其中,持平、大于、遠(yuǎn)大于和遠(yuǎn)大于指標(biāo)都是與訓(xùn)練集的正常簇相比而言,持平表示兩者的數(shù)量級相同,遠(yuǎn)大于和遠(yuǎn)小于表示新簇大于或小于正常簇一個數(shù)量級以上。