夏麗莎,劉 兵
(1.上海理工大學(xué) 管理學(xué)院,上海200093;2.武漢科技大學(xué) 信息工程學(xué)院,湖北 武漢430081)
隨著互聯(lián)網(wǎng)等新一代信息技術(shù)在各領(lǐng)域的融合創(chuàng)新,大數(shù)據(jù)成為行業(yè)智能化的關(guān)鍵內(nèi)容,對相應(yīng)技術(shù)及應(yīng)用具有重要推動作用。在故障診斷領(lǐng)域,這些實時產(chǎn)生的大數(shù)據(jù)能提供有力依據(jù),但同時往往伴隨維數(shù)災(zāi)難,導(dǎo)致計算復(fù)雜度高、存儲量大和算法性能衰減等問題產(chǎn)生,成為影響效果的絆腳石,需要借助一系列特征提取方法進(jìn)行數(shù)據(jù)降維預(yù)處理,將高維空間數(shù)據(jù)投影至低維子空間,從而降低數(shù)據(jù)冗余度,提升故障診斷效率。
早期的特征提取方法基于線性假設(shè),即假設(shè)數(shù)據(jù)來源于全局線性空間且變量間相互獨立,以主成分分析、獨立元分析、多維尺度方法、線性判別分析為典型代表。其中主成分分析方法以最小化特征信息丟失為目標(biāo),適用于呈高斯分布的原始數(shù)據(jù);獨立元分析方法以最大化屬性獨立性為目標(biāo),可以處理非高斯分布的原始數(shù)據(jù);多維尺度方法基于樣本相似度低維可視化,與主成分分析和線性判別分析同屬于無監(jiān)督特征提取方法;線性判別分析方法以提高分類準(zhǔn)確率為目標(biāo),適用于處理高斯分布數(shù)據(jù),隸屬有監(jiān)督特征提取方法。
針對現(xiàn)實世界更為普遍存在的呈非線性分布的高維數(shù)據(jù),通過線性特征提取算法難以尋找到完整的非線性特征信息,因此一系列非線性特征提取算法涌現(xiàn),主要可分為基于核方法和基于流形學(xué)習(xí)方法。核方法的主要思想是將原始空間線性不可分?jǐn)?shù)據(jù)通過核函數(shù)投影到更高維的核空間,在足夠高的維度中找到線性可分的超平面,由此使得數(shù)據(jù)線性可分,在此基礎(chǔ)上進(jìn)行進(jìn)一步線性特征提取[1]。核主成分分析[2]與核判別分析[3]是典型基于核方法的非線性特征提取算法。核函數(shù)的普適性以及高維計算是其主要局限所在。隨著對高維非線性結(jié)構(gòu)的研究深入,發(fā)現(xiàn)高維數(shù)據(jù)普遍具有低維內(nèi)在幾何嵌入結(jié)構(gòu),若找到嵌入在高維空間中的低維流形,可實現(xiàn)維數(shù)約簡或數(shù)據(jù)可視化。此類特征提取方法統(tǒng)稱流形學(xué)習(xí)(Manifold Learning)[4],能夠充分保留原始數(shù)據(jù)間近鄰關(guān)系等幾何結(jié)構(gòu),計算效率高,并可獲得全局最優(yōu)解。自Science于2000年首次提出等距映射(Isometric Feature Mapping,ISOMAP)[5]與局部線性嵌入(Locally Linear Embedding,LLE)[6]方法起,流形學(xué)習(xí)已成為近年來的研究熱點,以拉普拉斯特征映射(Laplacian Eigenmap,LE)[7]、局部保持映射(Locality Preserving Projections,LPP)[8]、判別局部保持映射(Discriminant Locality Preserving Projections,DLPP)[9]和t分布隨機鄰域嵌入(t-distributed Stochastic Neighbor Embedding,t-SNE)[10]為代表的一系列基于流形學(xué)習(xí)的非線性特征提取技術(shù)及其改進(jìn)方法相繼產(chǎn)生,并在圖像處理、人體行為識別、人臉識別、故障檢測等數(shù)據(jù)非線性特性顯著的多個領(lǐng)域得到廣泛應(yīng)用[11-16]。
表1 對上述主要特征提取方法進(jìn)行分類總結(jié)。不難發(fā)現(xiàn),除LDA方法、由LDA擴(kuò)展至核方法的KDA方法以及由LPP擴(kuò)展的DLPP方法外,其他特征提取方法均基于無監(jiān)督學(xué)習(xí)。盡管無監(jiān)督降維過程無需花費昂貴的代價獲取類別標(biāo)注,數(shù)據(jù)來源豐富,易獲得性強,但由于缺少樣本標(biāo)簽的指導(dǎo),其所缺失的投影方向向量可能恰是區(qū)分不同類別數(shù)據(jù)對象的重要投影方向向量,當(dāng)作為分類的預(yù)處理過程時,此類無監(jiān)督方法的樣本區(qū)分度有限,使得后續(xù)分類性能總體上弱于基于有監(jiān)督方法進(jìn)行數(shù)據(jù)預(yù)處理[17]。反之,若能有效利用數(shù)據(jù)類別標(biāo)記信息約束指導(dǎo)降維過程,同時保持并增強數(shù)據(jù)對象之間的鄰近關(guān)系,使得類間分散而類內(nèi)緊湊,將提升降維效果,增強分類有效性。
表1 特征提取方法分類
綜合大數(shù)據(jù)維數(shù)高、非線性強、噪聲敏感、故障特征信息冗余多、歷史數(shù)據(jù)的類別標(biāo)記信息可獲取等特點,本文對適用于非線性數(shù)據(jù)的t-SNE流形學(xué)習(xí)方法進(jìn)行改進(jìn)。針對t-SNE為無監(jiān)督學(xué)習(xí)算法,沒有充分利用數(shù)據(jù)樣本中的類別信息,且學(xué)習(xí)過程中使用等權(quán)重歐氏距離,本文提出一種基于加權(quán)判別隨機鄰域嵌入(Weighted Discriminative Stochastic Neighbor Embedding,WDSNE)的故障特征提取算法,通過在原始高維空間和相應(yīng)的低維子空間定義包含類別信息的數(shù)據(jù)相似度,使用受空間維數(shù)影響較小的Manhattan距離作為度量方式,生成比歐氏距離更大的相對距離差,基于距離遠(yuǎn)近關(guān)系進(jìn)行加權(quán)處理,由此既能夠充分利用類別標(biāo)記約束指導(dǎo)降維,又能夠保持并增強數(shù)據(jù)對象之間的鄰近關(guān)系,擴(kuò)大異類數(shù)據(jù)對象之間的區(qū)分度,從而提升故障特征提取效果,增強故障診斷有效性。
SNE方法的核心思想是盡可能保持由概率形式表達(dá)的樣本相似度進(jìn)行降維,使得降維前后數(shù)據(jù)的內(nèi)部結(jié)構(gòu)得以保持,其歸屬于流形學(xué)習(xí)方法。采用X(x1,x2,…,xN)∈Rn描述原始高維數(shù)據(jù)樣本,Y(y1,y2,…,yN)∈Rd(d<<n)描 述 其 在 對應(yīng) 的 低 維子空間所構(gòu)建的樣本,SNE算法通過定義上述兩個空間概率分布的Kullback-Leibler目標(biāo)散度并使其最小化,從而實現(xiàn)降維效果。其方法步驟主要如下:
(1)定義條件概率pj/i,即xj有可能成為xi近鄰的幾率,用于描述xi與xj的鄰近關(guān)系:
其中λi為以數(shù)據(jù)點xi為中心的高斯方差,||xi-xj||為xi與xj的歐式距離。
(2)在低維子空間中采用類似概率表達(dá),得到對應(yīng)低維子空間數(shù)據(jù)點yi與yj之間的相似度qj/i:
(3)通過梯度下降法求解SNE的匹配代價函數(shù),即計算原始高維空間和對應(yīng)低維子空間概率分布的Kullback-Leibler散度最小值,使得條件概率pj/i與qj/i之間的差異最小化:
從而獲得低維子空間對應(yīng)樣本Y(y1,y2,…,yN)。
t-SNE方法是對SNE方法的擴(kuò)展,其改進(jìn)的核心思想在于:
(1)對條件概率pj/i求和并進(jìn)行歸一化,構(gòu)造具有對稱性的聯(lián)合概率pij,取代條件概率pj/i表示高維空間數(shù)據(jù)相似度:
(2)在低維子空間中引入t分布,構(gòu)造具有對稱性的聯(lián)合概率qij,取代條件概率qj/i描述對應(yīng)樣本yi和yj之間的相似度:
由于t分布為典型的重尾分布,因此引入t分布能夠擴(kuò)大降維后的數(shù)據(jù)點間距,從一定程度上緩解SNE方法的“擁擠問題”[15]。
與t-SNE舍棄數(shù)據(jù)樣本中的類別信息、學(xué)習(xí)過程中使用等權(quán)重歐氏距離不同,WDSNE算法定義了包含類別信息的數(shù)據(jù)相似度,且以加權(quán)Manhattan距離作為度量方式,從而在實現(xiàn)數(shù)據(jù)降維的同時增大異類數(shù)據(jù)對象間區(qū)分度,提升故障診斷的有效性。
WDSNE算法具體步驟如下:
(1)給定帶有類別標(biāo)簽的原始高維數(shù)據(jù)樣本矩陣X(x1,x2,…,xN)∈Rn,樣本總類別數(shù)為C,將其進(jìn)行歸一化處理:
(2)定義高維空間數(shù)據(jù)樣本點xi與xj的Manhattan距離dij作為度量方式,從而生成比SNE與t-SNE方法所使用的歐氏距離更大的相對距離差:
(3)基于dij數(shù)據(jù)分布離散形式進(jìn)行加權(quán)處理。使用k均值聚類算法對dij進(jìn)行層次聚類,其中k=3,按照dij距離數(shù)值大小,依次將所有高維空間數(shù)據(jù)樣本點距離分別命名為近距離、中等距離和遠(yuǎn)距離,然后對三類距離分別賦予不同權(quán)重系數(shù),并進(jìn)行加權(quán):
其 中L1和L2為 三 類 距 離 臨 界 閾 值,w1、w2與w3為三類距離的權(quán)重系數(shù),且有w1<1,w2=1,w1>1。
(4)引入類別標(biāo)簽,定義原始高維空間中具有對稱性的聯(lián)合概率pij,表示xj有可能成為xi近鄰的幾率,用于描述原始高維空間樣本xi和xj之間的相似度:
其中λi為以數(shù)據(jù)點xi為中心的高斯方差,ci為數(shù)據(jù)點xi的類別標(biāo)簽。
(5)引入類別標(biāo)簽與t分布,定義低維子空間中具有對稱性的聯(lián)合概率qij,用于描述相對應(yīng)的低維子空間樣本yi和yj之間的相似度:
(6)計算上述原始高維空間概率分布pij及其對應(yīng)低維子空間概率分布qij之間的Kullback-Leibler散度,作為WDSNE算法的匹配代價函數(shù):
其中對角矩陣Din中的對角元素由 矩 陣Uin的 每列之和組成,對角矩陣Dout中的對角元素由矩陣Uout的每列之和組成,即
(8)使用共軛梯度法迭代求解WDSNE算法的目標(biāo)代價函數(shù)C(Y),得到Y(jié)的更新迭代公式:
其中Yt為第t次迭代的最優(yōu)解,αt-1和St-1分別為共軛梯度中的第t-1次迭代步長和第t-1次迭代方向,相應(yīng)計算公式為:
(9)輸出低維子空間對應(yīng)樣本,獲得最終降維結(jié)果。
上述WDSNE算法流程總結(jié)如圖1所示。
圖1 WDSNE算法流程圖
為驗證上述WDSNE算法的有效性,將其應(yīng)用于UCI仿真數(shù)據(jù)集與KDD99網(wǎng)絡(luò)故障診斷數(shù)據(jù)集。基于本文提出的WDSNE算法,對比DSNE算法、t-SNE算法、Mwt-SNE算法和PCA算法分別進(jìn)行特征提取與降維,然后使用KNN算法構(gòu)建分類器,從而獲得不同維數(shù)下的分類準(zhǔn)確率。
采用UCI數(shù)據(jù)庫中的iris、glass和wine數(shù)據(jù)集進(jìn)行實驗,設(shè)定訓(xùn)練集與測試集數(shù)據(jù)樣本比例為2:1,得到訓(xùn)練集與測試集樣本數(shù)、維數(shù)、類別數(shù)情況如表2所示。
表2 實驗1數(shù)據(jù)集
基于上述特征提取與降維算法并結(jié)合KNN分類器,得到iris數(shù)據(jù)集降至二維和三維時的分類準(zhǔn)確率(如表3所示)和glass數(shù)據(jù)集、wine數(shù)據(jù)集分別降至不同維數(shù)時的分類準(zhǔn)確率(如圖2、圖3所示)。
由表3、圖2與圖3可以看出,基于本文提出的WDSNE算法進(jìn)行特征提取和降維后得到的KNN分類器準(zhǔn)確率,在不同維度上均優(yōu)于改進(jìn)前的Mwt-SNE算 法、DSNE算 法、t-SNE算 法 和 常 用 的PCA算法。其中iris數(shù)據(jù)集基于WDSNE算法降至二維與三維時分類準(zhǔn)確率最高,達(dá)到94%,也具備可視化效果;glass數(shù)據(jù)集基于WDSNE算法降至五維時分類準(zhǔn) 確 率為74.64%, 達(dá)到最高;wine數(shù)據(jù)集基于WDSNE算法降至四維時分類準(zhǔn)確率為88.14%,達(dá)到最高。上述實驗結(jié)果均說明本文提出的WDSNE算法具有有效性。
表3 iris數(shù)據(jù)集分類準(zhǔn)確率
圖2 glass數(shù)據(jù)集分類準(zhǔn)確率
圖3 wine數(shù)據(jù)集分類準(zhǔn)確率
本實驗數(shù)據(jù)源于美國MIT林肯實驗室入侵檢測評估項目,經(jīng)過特征分析和數(shù)據(jù)預(yù)處理整理成UCI網(wǎng)絡(luò)故障診斷與安全領(lǐng)域經(jīng)典數(shù)據(jù)集KDD99。該數(shù)據(jù)集包含正常網(wǎng)絡(luò)狀態(tài)(NOR)和四大類異常(attack)狀態(tài)的網(wǎng)絡(luò)故障:拒絕服務(wù)攻擊(DoS)、來自遠(yuǎn)程主機的未授權(quán)訪問(R2L)、未授權(quán)的本地超級用戶特權(quán)訪問(U2R)、端口監(jiān)視與掃描(PROBE)。從KDD99數(shù)據(jù)集中抽取4 500條記錄形成數(shù)據(jù)子集,并設(shè)定訓(xùn)練集與測試集數(shù)據(jù)樣本比例為2:1。將符號型特征數(shù)值化,加入50 dB隨機噪聲,然后進(jìn)行歸一化處理,得到訓(xùn)練集與測試集樣本數(shù)、維數(shù)、類別數(shù)總體情況如表4所示,各類別訓(xùn)練集樣本數(shù)、測試集樣本數(shù)和整體占比率如表5所示。
表4 KDD99網(wǎng)絡(luò)故障數(shù)據(jù)子集
表5 各類別訓(xùn)練集樣本數(shù)、測試集樣本數(shù)、整體占比率
對訓(xùn)練集樣本數(shù)據(jù)進(jìn)行歸一化處理,求得樣本間Manhattan距離,使用k均值聚類算法對距離進(jìn)行聚類,得到三類距離類別臨界閾值。設(shè)定WDSNE算法三類距離的初始權(quán)重系數(shù)為w=[w1,w2,w3]=[0.5,1,5],在w1=[0.1:0.1:1],w2=[0.9:0.05:1.1],w3=[1:1:10]范圍內(nèi)對三類距離的權(quán)重進(jìn)行網(wǎng)格尋優(yōu),得到最優(yōu)權(quán)重系數(shù)為w*=[0.9,1,7]?;赪DSNE算法進(jìn)行特征提取與降維,使用KNN分類器進(jìn)行網(wǎng)絡(luò)故障診斷,得到正常網(wǎng)絡(luò)狀態(tài)和四大類異常狀態(tài)的網(wǎng)絡(luò)故障診斷的分類結(jié)果混淆矩陣,如表6所示。對比Mwt-SNE算 法、DSNE算 法、t-SNE算 法 和PCA算法,得到不同方法下的診斷誤差對比如表7所示。
由表6的網(wǎng)絡(luò)故障診斷實驗結(jié)果混淆矩陣可見,WDSNE算法實現(xiàn)了故障診斷實驗漏報率為0、誤報率為0、故障檢測錯誤率為0、故障類別辨識錯誤率為2.631 6%、診斷錯誤率為2.066 7%的有效診斷效果。其中31個錯分樣本的實際故障類別均為R2L(來自遠(yuǎn)程主機的未授權(quán)訪問,樣本數(shù)為133),預(yù)測類別均為故障PROBE(端口監(jiān)視與掃描),說明R2L類型網(wǎng)絡(luò)故障為其中主要故障類別辨識錯誤來源。分析原因,由于故障類別樣本分布不均衡,占少數(shù)類的R2L和PROBE故障類別易缺乏樣本代表性,從而造成辨識錯誤。因此需特別重視并與PROBE類別網(wǎng)絡(luò)故障進(jìn)行進(jìn)一步區(qū)分,從而降低故障類別辨識錯誤率,降低故障診斷錯誤率。
表6 基于WDSNE算法的網(wǎng)絡(luò)故障診斷實驗混淆矩陣
對比其他算法,根據(jù)表7結(jié)果可見SNE系列方法優(yōu)于PCA方法,結(jié)合類別信息的有監(jiān)督DSNE系列方法優(yōu)于無監(jiān)督t-SNE方法,而基于空間距離加權(quán)后的WDSNE算法表現(xiàn)最優(yōu)。從故障檢測角度分析,PCA方法故障漏報數(shù)為11,誤報數(shù)為8,因此在漏報率和誤報率兩個指標(biāo)上PCA方法顯然弱于SNE系列方法,特別是WDSNE算法,其漏報數(shù)和誤報數(shù)均為0,說明若僅以故障檢測為目的,則WDSNE算法的檢測精度能夠達(dá)到100%的效果,優(yōu)勢最為顯著。此外,故障類別辨識錯誤是上述算法在本實驗中主要錯誤來源。從故障類型辨識角度比較可見,PCA方法的辨識錯誤率最高,DSNE和t-SNE方法的辨識錯誤率接近,均略高于Mwt-SNE方法,WDSNE方法的辨識錯誤率最低,說明WDSNE方法的改進(jìn)效果明顯。
表7 不同特征提取算法的診斷誤差對比
本文提出一種改進(jìn)的有監(jiān)督加權(quán)判別隨機鄰域嵌入方法,通過定義包含類別信息的數(shù)據(jù)相似度及距離相似度加權(quán),有效擴(kuò)大異類數(shù)據(jù)對象之間的區(qū)分度,從而提升降維效果并增強特征提取有效性,具備一定的數(shù)據(jù)可視化效果。在網(wǎng)絡(luò)故障診斷系統(tǒng)中,由于不同類別故障樣本分布不均衡等原因,故障類別辨識錯誤成為故障診斷誤差的主要來源。因此如何在故障類別樣本分布不均衡前提下進(jìn)行有效的故障診斷,有待進(jìn)一步的深入研究。