戶文剛, 趙榮珍
(蘭州理工大學機電工程學院 蘭州,730050)
轉子故障是旋轉機械中常見的故障且危害極大,準確判斷轉子系統的故障程度和故障類型,對避免重大事故的發生至關重要。通過采集振動信號進行故障檢測和診斷是一種應用較廣的方法[1-2]。為了獲得較高的診斷精度,可以從振動信號時域、頻域和時頻域等方面提取反映機械設備運行狀態的量化特征,但隨著特征數量的增多,在故障診斷過程中需處理的特征集維數過高,產生了“維數災難”問題[3],這加大了分類器的訓練時間和空間復雜度。因此,對故障特征集進行非線性維數約簡,提取有用的低維敏感特征就顯得非常關鍵[3-6]。
根據是否使用了類別標簽,傳統的降維方法被劃分成2 類:①無監督降維,如主成分分析(principal component analysis,簡稱PCA)[7];②有監督降維,如Fisher 判別分析(Fisher discriminant analysis,簡稱FDA)[8]。無監督降維方法由于不能利用標簽樣本的類別信息,導致最后的分類結果精度不夠準確。有監督降維方法雖然能夠利用標簽信息指導降維過程,避免了無監督降維方法在降維過程中的盲目性,但需要對每個樣本進行標記,當訓練樣本中沒有標簽樣本或者標簽樣本不足時,其泛化能力會急劇降低[9]。然而,在實際應用中對數據樣本進行標記是費時費力的,需要一定的專家知識,而獲取大量的無標記樣本則相對容易很多。因此,針對無監督降維和有監督降維各自存在的問題,研究僅需少量的標簽樣本和大量的無標簽樣本的半監督降維成為降維領域的熱點[10-11]。半監督學習可以同時利用少量的標簽樣本和大量的無標簽樣本來改善有監督降維方法的泛化能力,提高無監督降維方法的高效性[12]。半 監 督 局 部Fisher 判 別 分 析(semi-supervised local Fisher discriminant analysis,簡稱SELF)[13]是半監督降維的代表方法之一,能夠利用少量標簽樣本和大量無簽樣本中的信息指導降維過程,避免了因有標簽樣本不足引起的過學習問題。但是,SELF 本質上仍是線性降維方法,面對復雜的非線性、不平穩數據,不能保持良好的降維效果。核方法[14]是處理非線性數據的有效方法,能較好解決線性降維方法在處理非線性問題時的不足。
筆者對核方法和半監督局部Fisher 判別分析相結合的故障數據集降維算法進行研究,提出了一種基于核半監督局部Fisher 判別分析的降維方法,為解決高維和非線性機械故障數據集的維數約簡與分類問題提供一定的理論參考依據。
核方法[14]是以統計學理論和核技術為基礎的非線性數據處理技術的總稱,通過運用非線性映射將低維空間中線性不可分的數據映射到高維特征空間,進而在特征空間中實現對應的線性分類。
給定一個數據集X={xi∈RD}(i=1,2,…,n),xi和xj(i,j=1,2,…,n)為數據空間中的樣本點,數據空間到特征空間的映射函數為Φ,可直接在特征空間中實現向量內積的變換(xi,xj)→K(xi,xj)=Φ(xi)TΦ(xj),從而達到優化計算和改善算法的目的。常用的核函數主要包括:p階多項式核函數K(xi,xj)=(xi xj+1)p;高斯核函數K(xi,xj)=線性核函數K(xi,xj)=xi xj;指數核函數K(xi,xj)=
局部Fisher 判別分析(local Fisher discriminant analysis,簡稱LFDA)[15]是一種結合了原始FDA 和局部保持投影(local preserving projections,簡稱LPP)[16]的監督降維方法,克服了原始FDA 針對多模態數據或者異常值的弱點,最大限度地提高了類間的可分性,同時保持了類內局部結構。LFDA 在標簽樣本不足時,由于過度依賴少量的標簽樣本容易陷入過學習。為了克服這一問題,Sugiyama 等[13]將LFDA 和PCA 進行有效融合,提出了一種新的半監督局部Fisher 判別分析算法。該方法結合PCA和LFDA 各自的優點,綜合考慮有標簽樣本和無標簽樣本,使降維后的類間數據距離最大化,類內鄰近數據間距離最小化,并盡可能地保持類內非鄰近數據。
給定一數據集X,記為X={xi∈Rd×n)},i=(1,2,…,n',…,n),n'為有標簽樣本的個數。其中:有類別標簽樣本為xi(i=1,2,…,n');標簽樣本的類別標簽為li∈{1,2,…,c} (i=1,2,…,n')。記類別標簽為l的類別中包含nl個樣本,則有維數約簡的目標就是尋找一個d×r轉換矩陣T,使等 式Y=TTX成 立。其 中:Y=[y1,y2,…,yn]∈Rr×n;r(1≤r≤d)為低維空間維度。
SELF 的局部類間散度矩陣和局部類內散度矩陣定義為

其中:S(lb)和S(lw)為LFDA 定義的局部類間和局部類內散度矩陣,如式(3),(4)所示;S(t)為PCA 定義的全局散度矩陣,如式(5)所示;Id為標準矩陣;β∈[0,1]為權系數。
β使SELF兼具LFDA 和PCA 的特性,可通過調節β的大小來增加算法的靈活性。當β=1 時,SELF 等價于PCA,當β=0 時則等價于LFDA。


其中:n'li為 第li∈{1,2,…,c}(i=1,2,…,n')類 樣本數;Ai,j∈[0,1]為相似矩陣。
Ai,j用于描述2 個樣本點xi和xj之間的相似性。若兩點間的相似程度越大,則Ai,j就越大,反之則Ai,j越小。Ai,j具有多種不同形式的定義,筆者采用局部尺度啟發式的定義形式計算Ai,j

其中:σi為樣本點xi的局部尺度,定義為σi=為xi的第k個最近鄰點,設置超參數k=7[17]。
SELF 的目標函數定義為

轉換矩陣T的求解可以轉化為如式(10)所示的廣義特征向量求取

其中:λ為廣義特征值。
選取前r個最大廣義特征值對應的廣義特征向量(α1,α2,…,αr)組成轉換矩陣T。但是,SELF 本質上仍屬于線性化的降維方法,在解決非線性數據時比較困難,為了進一步提高SELF 的性能,通過核方法,將SELF 的作用范圍引入到非線性領域。筆者選用高斯核函數,將SELF 的應用推廣到非線性領域。KSELF 定義的局部類間散度矩陣和局部類內散度矩陣分別為

式(10)的廣義特征值問題等效為

根據再生核理論可知,廣義特征向量α可以表示 為a=Φ(X)φ。 在 式(13)兩 邊 同 時 左 乘Φ(X)T,得到

此時引入高斯核函數K(xi,xj)=ΦT(xi)Φ(xj),得到KSELF 的目標函數為

其中:φ為核樣本向量
進而得到KSELF 的轉換矩陣T,由式(15)的d個最大特征值λ1≥λ2≥…≥λd所對應的特征向量(φ1,φ2,…,φd)組成。
輸入高維數據樣本集X={xi∈Rd}(i=1,2,…,n',…,n),包 含 類 別 標 簽 樣 本xi(i=1,2,…,n')和低維特征空間目標維數r。輸出投影轉換矩陣T和低維數據集Y。KSELF 算法具體實現步驟如下:
1)采集振動數據,從時域、頻域和時頻域方面提取特征指標,構建原始數據特征集并進行數據歸一化處理,得到新的數據集X;
2)通過高斯核函數將X映射到高維特征空間H,得到Φ(X);
5)求解KL(b)Kφ=λKL(w)Kφ的廣義特征值和特征向量,得到前d個最大特征值對應的特征向量(φ1,φ2,…,φd)組成投影矩陣T;
6)根據公式Y=TTΦ(X)計算高維數據集X所對應的d維數據集Y。
實驗數據來自于如圖1 所示的雙跨度轉子故障模擬實驗臺。設置實驗臺的采樣頻率為5 kHz,轉速為2800 r/min,用12 個電渦流傳感器分別采集該轉子實驗臺軸系不對中、軸承松動、質量不平衡、動靜碰磨和正常轉動5 種狀態的振動信號各80 組,選取其中的50 組作為訓練樣本(其中60%為有標簽樣本),剩余的30 組作為測試樣本。從振動信號的時域、頻域及時頻域中提取故障特征參數,構造出12個通道的特征集合。各通道故障特征參數如表1 所示,共得到12×21=252 個特征,即252 維高維數據集。

圖1 雙跨轉子實驗臺Fig.1 Double-span rotor test bench
將高維故障特征集輸入KSELF 進行訓練學習與維數約簡。為表現一般性,權系數采用折中取值,即β=0.5。根據文獻[17],設定KSELF 中樣本點鄰域大小k=7,為充分涵蓋原始數據集的本質信息,設定低維子空間的維數d=4(目標維數=故障類別數?1)。實驗從以下方面來驗證所提方法的有效性。
1)降維可視化對比。分別用PCA,KPCA,LFDA,KLFDA 和SELF 算法的降維效果和KSELF算法進行對比驗證,得到的降維可視化結果對比如圖2 所示。文中核參數選取采用五折交叉驗證法選取最優核參數,得到KPCA,KLFDA 和KSELF 的核參數σ分別為75.6,62.5 和20.5。

表1 各通道故障特征參數Tab.1 Fault characteristic parameters of each channel
從圖2 可以看出,PCA 降維后的測試樣本分類效果不理想,這是因為PCA 是基于二階統計信息,其只能保持數據最大方差方向的投影,忽略了原始特征空間的非線性特征結構。KSELF 降維后的分類效果最好,各故障類內間距小、類間距離明顯,這是因為其具有較強的非線性提取能力,并能有效地利用標簽信息和無標簽信息來提高故障識別率。其他4 種算法的分類效果介于二者之間。

圖2 測試樣本基于不同降維方法的降維效果Fig.2 The results of test sample based on different methods of dimension reduction
2)故障診斷的本質是模式識別,為了直觀有效地描述上述6 種方法的降維效果,將各降維方法的識別準確率如表2 所示。
從表2可以看出:①有監督的降維方法LFDA,KLFDA,SELF 和KSELF 降維后的識別準確率高于無監督降維方法PCA 和KPCA,這是由于監督降維方法能夠通過類別標簽信息,尋找具有判別能力的低維特征,無監督降維方法無法通過利用標簽信息的指導作用進行維數約簡,容易丟失大量有用的信息,使得整體的識別率較低;②半監督降維方法SELF 和KSELF 的 識 別 率 高 于PCA 和LFDA,這是 因 為SELF 和KSELF 繼 承 了PCA 和LFDA 兩 種算法的優勢,能綜合利用標記樣本和無標記樣本;③引入核方法的降維算法,利用核映射將特征集中的非線性問題轉化成線性問題,能夠有效去除空間中的噪聲與冗余信息,得到更高的識別率。

表2 各降維方法的識別準確率Tab.2 Methods of dimension reduction of recognition accuracy %
3)為了驗證KSELF 方法在數據降維問題的優越性,選用不同的訓練樣本和測試樣本比例(測試樣本中60%為標記樣本),將各降維方法降維后的低維 矢 量 輸 入 到K 近 鄰(K-nearest neighbor,簡 稱KNN)分類器中進行故障辨識,得出不同訓練樣本比例下的降維結果在KNN 中對應的平均識別準確率,如圖3 所示。

圖3 不同訓練樣本比例對應的平均識別準確率Fig.3 The average recognition accuracy on the different number of training samples
從圖3 可以看出:6 種降維方法降維后的識別準確率隨著訓練樣本比例的增加而不斷增大;PCA 和KPCA 的識別準確率在訓練樣本數較少的情況下下降明顯,而其他監督降維方法的識別準確率整體上下降不明顯;KSELF 一直很穩定,基本不受影響,表明提出的KSELF 算法是一種穩定且高效的降維方法。
為了進一步測試KSELF 方法中有標簽樣本與無標簽樣本的不同比例對降維效果的影響,隨機設置訓練樣本中有標簽樣本個數分別為10,15,20,25,30,35 和40。經各降維算法訓練降維后,將得到的低維測試樣本輸入KNN 分類器,得到平均識別率。不同標記樣本數目與故障識別率的關系如圖4所示。從圖4 可以看出:①PCA 和KPCA 屬于無監督的降維算法,不能利用有標簽故障樣本的信息,因而未受到不同標記樣本個數的影響;②LFDA,KLFDA,SELF 和KSELF 降維方法隨著訓練樣本中有類別標簽樣本個數的增加,其分類識別率也隨之增加,這是因為隨著故障標記樣本個數的增加,可利用的先驗信息變多,過擬合現象隨之減少,故障識別率增加;③有監督的降維算法LFDA 因為過度依賴標記樣本中的信息,受標記樣本個數的影響較大,其識別率隨著標記樣本個數的增加變化明顯;④半監督降維方法因能同時利用標記樣本和無標記樣本,在少量標記樣本的情況下得到的識別率比較高,體現了半監督降維算法相比無監督和有監督降維方法的優越性。

圖4 不同標記樣本數目與故障識別率的關系Fig.4 Relationship between the number of different labeled samples and the fault recognition rate
為了從復雜的高維和非線性故障數據集中提取有效的低維敏感特征子集,筆者從核方法和半監督角度出發,提出了一種基于核半監督局部Fisher 判別分析的方法。該方法具有有效利用有限數量的標記樣本和一定數量的未標記樣本來最大化識別的能力,通過核函數將原始數據特征集中的非線性問題轉化為線性問題,可以很好地處理非線性的復雜故障數據。通過KSELF 降維,實現高維數據映射到低維數據,其類間數據間距離最大化和類內鄰近數據間距離最小化。通過雙跨度轉子實驗臺故障模擬實驗,驗證了KSELF 方法優于其他算法,具有更高的故障識別精度以及更強的降維能力和泛化能力。該方法為復雜旋轉機械故障診斷的智能化診斷提供了一種新思路。