佘 博, 田福慶, 梁偉閣, 湯 健
(1.海軍工程大學 兵器工程系,武漢 430000;2.北京工業(yè)大學 信息學部,北京 100124)
獲取高維樣本的低維嵌入子空間的降維方法在圖像處理、故障診斷等方面得到了廣泛的應用。LTSA作為一種非監(jiān)督的流形學習降維方法,能有效提取高維樣本的內(nèi)在本質(zhì)特征。在實際應用中,樣本數(shù)據(jù)存在無標簽信息和有助于識別分類的標簽信息,而LTSA只能將所有樣本作為無標簽樣本進行降維處理。在線監(jiān)測機械設(shè)備狀態(tài)應用方面,不斷增加的狀態(tài)數(shù)據(jù)對診斷算法的快速處理能力要求較高。LTSA作為一類批量處理降維方法,每次將新增樣本加入到原始訓練樣本中,全部樣本重新進行一次維數(shù)約簡,而無法利用原始訓練樣本集降維的結(jié)果。隨著動態(tài)數(shù)據(jù)的增加,批處理的方式耗時過長,不適合在線數(shù)據(jù)的處理。
監(jiān)督學習能充分利用樣本標簽信息,增量式學習也能充分利用已獲取的樣本的低維嵌入結(jié)構(gòu),避免不必要的重復學習。監(jiān)督流形學習方面,第1類方法通常是在樣本k鄰域選擇中利用樣本標簽信息改進了樣本間歐式距離矩陣,以確定樣本更佳的近鄰點[1];第2類方法是將監(jiān)督算法與流形學習算法相結(jié)合[2],使得算法能處理樣本標簽信息。在增量流形學習方面,相關(guān)的研究方法主要有:第1類是線性化增量方法,如線性局部切空間排列(Linear Local Tangent Space Alignment, LLTSA)、跡比線性判別分析[3](Trace Ratio Linear Discriminant Analysis, TRLDA),以獲取降維投影矩陣。第2類是基于標志點的增量學習,將標志點作為兩個線性塊的重疊點,利用重疊點在兩線性塊中低維嵌入坐標差值最小化原則,對新增樣本低維坐標進行旋轉(zhuǎn)、平移和縮放整合到原有樣本中[4-5]。第3類是采用迭代的方法更新樣本低維坐標,文獻[6]對動態(tài)增加的全局坐標矩陣采用Rayleigh-Ritz法加速特征值的迭代計算,文獻[7]迭代更新新增樣本局部坐標矩陣,都是將高階矩陣特征分解轉(zhuǎn)化為低階矩陣特征分解,降低了算法復雜度。第4類是采用最近鄰近似方法,文獻[8]提出利用新增樣本最近鄰點低維坐標線性估計新增樣本點低維坐標。上述增量學習方法尚存在部分不足之處:①利用原有樣本低維坐標獲取新增樣本低維坐標后,沒有更新原有樣本的低維坐標,隨著新增樣本的增加,新增樣本與原有樣本低維坐標間的差距會增大;②對新增樣本的處理是逐個進行,不適合在線的數(shù)據(jù)處理。
本文提出一種增量式監(jiān)督局部切空間排列算法(Incremental Supervised Local Tangent Space Alignment, ISLTSA),充分利用訓練集中各類樣本的標簽信息,將散度矩陣融入LTSA算法中,構(gòu)成監(jiān)督LTSA流形約簡方法(Supervised Local Tangent Space Alignment, SLTSA);對于批量增加的新樣本,采用迭代的方法將動態(tài)增大的高階全局坐標矩陣轉(zhuǎn)化為低階坐標矩陣進行特征值的計算,更新所有樣本的低維嵌入坐標。將本文方法應用于齒輪箱的故障診斷中,并結(jié)合支持向量機SVM進行故障狀態(tài)的識別。
本文在改進局部切空間排列算法(LTSA)的基礎(chǔ)上,分別提出了監(jiān)督局部切空間排列算法(SLTSA)和增量局部切空間排列算法(ILTSA),結(jié)合以上兩種改進算法形成ISLTSA算法。
LTSA是基于切空間的流形學習算法,用近似的局部切空間來表示樣本點所在流形的局部幾何。將樣本鄰域中各數(shù)據(jù)點到局部切空間的正交投影在全局坐標系中進行排列,得到低維嵌入表示。LTSA算法將D維數(shù)據(jù)集X={x1,x2,…,xN}(xi∈RD)投影為d維數(shù)據(jù)集Y={y1,y2,…,yN}(yi∈Rd),d (1) 鄰域選擇。利用k-nearest neighbor近鄰法,對給定樣本集X中的每一個樣本xi選擇k個最近的樣本(包括xi本身)構(gòu)成局部鄰域Xi=(xi1,…,xik)。 (2) 局部坐標擬合。對各局部鄰域Xi,計算正交投影矩陣V使各樣本到其投影的距離之和最小,即 (1) (2) (3) (4) LTSA算法在構(gòu)建樣本局部切空間中,將鄰域內(nèi)各點對切空間估計的貢獻列為一致,而實際上,依據(jù)歐式距離進行鄰域構(gòu)造,各點對局部流形結(jié)構(gòu)的貢獻有差別[9]。采用權(quán)值wij反映鄰域樣本xij對切空間估計的貢獻[10]。LTSA算法中局部坐標擬合的計算依據(jù)式(2)進行改進,如下: (5) LTSA是一種無監(jiān)督學習算法,在實際應用中,數(shù)據(jù)集存在標簽樣本和無標簽樣本,充分利用標簽樣本進行訓練,可提高得到的低維特征的可辨識性。線性判別分析(Linear Discriminate Analysis, LDA)是一種監(jiān)督學習算法,其目的是使得原始空間中的類分辨信息在降維后在低維中依然得以保持,其中,類內(nèi)散布矩陣Sw和類間散布矩陣Sb分別[11]為 (6) (7) (8) 既考慮高維數(shù)據(jù)的非線性結(jié)構(gòu),又考慮降維后低維坐標的判別特性,SLTSA算法的目標函數(shù)可進一步轉(zhuǎn)換為 min tr(Y(αB+(1-α)(βLw+(1-β)Lb))YT) (9) 式中:參數(shù)α和β分別表示樣本局部幾何結(jié)構(gòu)所占信息的比重和類內(nèi)類間判別比重因子。 樣本集X={x1,…,xN,xN+1,…,xN+L},前N個為訓練樣本,后L個為新增樣本,新增樣本加入數(shù)據(jù)集后,只改變部分訓練樣本的k近鄰。定義近鄰點變化了的訓練樣本點集合為XA,XA也包含了L個新增樣本,IAi=(i1,…,ik)是XA中樣本xi的k個近鄰下標。全局坐標矩陣B更新如下 (1)對于樣本集X中不屬于XA的樣本xj,Bnew(Ij,Ij)=B(Ij,Ij); (2)對于樣本集X中屬于XA的樣本xi,初始化Bnew(IAi,IAi)=0,更新全局坐標矩陣 (10) 由更新的全局坐標矩陣Bnew計算新增樣本低維坐標,目標函數(shù)如下 (11) (12) 將式(12)對YL求偏導,并使算式為0,有: (13) (14) 新增樣本將改變部分訓練樣本的鄰域,全局坐標矩陣Bnew也隨之部分變化,當新增樣本不斷增加,難以直接對Bnew進行特征分解獲取樣本集的全局低維坐標。利用Rayleigh-Ritz迭代算法可加速特征分解,但一般文獻中迭代初值的選擇是直接采用訓練樣本的低維坐標和新增樣本的低維坐標[12],實際上,新增樣本的加入會使訓練樣本低維坐標發(fā)生輕微的改變。本文中對訓練樣本的低維坐標進行更新,并作為迭代初值,將式(12)對YN求偏導,并使算式為0,有: (15) 采用類似Rayleigh-Ritz的迭代算法[13]對全局坐標矩陣Bnew的特征值進行迭代計算,實現(xiàn)訓練樣本和新增樣本的全局低維坐標的更新,迭代步驟如下 (2)由K·Zi=Qi-1,計算Zi; (3)對Zi進行QR分解,Zi=Vi·R; (4)令Vi=Vi(:,d+1),由(Vi)TK-1Vi=Ui∑(Ui)T計算Ui; (5)Qi=ViUi。 YN+L=Qi(:,2:d+1),即為更新后的全局低維坐標。由此,可將(N+L)×(N+L)階的Bnew矩陣轉(zhuǎn)化為(d+1)×(d+1)階的矩陣分解,提高了計算效率。 假設(shè)樣本集X={x1,…,xN,xN+1,…,xN+L},前N個為訓練樣本,后L個為新增樣本,計算新增L個樣本的全局低維坐標Yi(i=1,…,L),ISLTSA算法描述如下 步驟1:依據(jù)SLTSA算法,由式(9)對矩陣αB+(1-α)(βLw+(1-β)Lb)進行特征分解,得到N個訓練樣本的全局低維坐標Yi(i=1,…,N); 步驟2:依據(jù)ILTSA算法,對于新增L個樣本,由公式(11)更新全局坐標矩陣Bnew; 本文選取齒輪箱振動信號11個時域特征(均值、峭度、均方差等)和13個頻域特征(均方頻率、頻率方差、重心頻率等)組成高維特征集[14]。故障診斷實現(xiàn)過程如圖1所示,具體步驟為 圖1 齒輪箱故障診斷流程 (1) 采集齒輪箱不同狀態(tài)的原始振動信號作為訓練樣本,利用時頻分析提取高維特征,并使用SLTSA算法獲取低維嵌入坐標。 (2) 將齒輪箱狀態(tài)監(jiān)測過程中獲取的振動信號作為新增測試樣本,提取高維特征,并使用ILTSA算法獲取低維嵌入坐標。 (3) 使用支持向量機進行故障模式識別,判斷齒輪箱狀態(tài)。 選擇IEEE PHM Challenge[15]的齒輪箱振動數(shù)據(jù),齒輪箱結(jié)構(gòu)如圖2,部分齒輪故障如圖3所示。在齒輪箱輸入軸和輸出軸分別安裝振動加速度傳感器,采樣頻率為66.67 kHz,輸入軸轉(zhuǎn)速有五種工況,每種轉(zhuǎn)速下又分為高負載和低負載兩種工況,每種工況下有8種不同的狀態(tài)。本文選用3 000 r/min、低負載下齒輪箱輸出軸端的振動信號進行故障診斷,取6種不同狀態(tài)的振動信號,由單一故障或多類故障組成,如表1所示。其中,32T、96T、48T、80T分別表示輸入軸齒輪、中間軸齒輪1、中間軸齒輪2、輸出軸齒輪,IS、ID、OS表示輸入軸、中間軸、輸出軸。各狀態(tài)下的齒輪箱振動信號選取30組作為訓練樣本,每組采集4 096個數(shù)據(jù)點,另外,每種狀態(tài)分別取10組數(shù)據(jù)作為新增測試樣本。 圖2 齒輪箱結(jié)構(gòu)圖 圖3 齒輪故障:正常、缺齒、斷齒 齒輪箱在不同故障狀態(tài)下振動信號如圖4所示,分別提取時域、頻域的24維特征,為便于可視化,選取低維子空間的維數(shù)d=3,另外,本文所應用到的流形學習算法在構(gòu)建局部鄰域中均選取k=8。對于訓練樣本,分別采用KPCA、LTSA、SLTSA算法進行維數(shù)約簡,三種方法的低維嵌入坐標分別如圖5、6、7所示。其中,在SLTSA監(jiān)督局部切空間排列算法中有兩個參數(shù)α、β,結(jié)合支持向量機SVM優(yōu)化故障識別概率進行參數(shù)選擇,本文設(shè)置α=0.7,β=0.6。對于新增測試樣本,分別采用批量KPCA、SILTSA、批量SLTSA、ISLTSA四種增量維數(shù)約簡方法,低維嵌入坐標分別如圖8、9、10、11所示。其中,批量KPCA和批量SLTSA都是將新增樣本合并至訓練樣本進行降維;SILTSA也是監(jiān)督增量LTSA算法,監(jiān)督算法采用文獻[1]中由樣本標簽重新定義樣本間距離進行鄰域的選擇,新增樣本局部低維坐標計算也采用文獻[1]中由近鄰點全局低維坐標進行加權(quán),訓練樣本和新增樣本全局低維坐標的更新采用本文的迭代方法;ISLTSA是本文提出的增量監(jiān)督LTSA算法。 表1 齒輪箱故障狀態(tài) (a) 正常 (b) 故障1 (c) 故障2 (d) 故障3 (e) 故障4 (f) 故障5 由表2所示四種增量降維方法的故障識別率和算法所耗時間。文中仿真是在Windows7操作系統(tǒng)、Core i5-4590(3.3 GHz)環(huán)境下進行。批量KPCA方法耗時最少,但故障識別正確率最低。SILTSA和本文的ISLTSA方法故障識別正確率高,表明了充分利用樣本標簽能提高辨識度,相對于批量SLTSA算法,本文提出的增量方法耗時少,能減小算法復雜度。 圖5 KPCA降維結(jié)果 (16) 圖8 批量KPCA降維結(jié)果 Fig.8 Processing result of testing samples by KPCA 圖9 SILTSA降維結(jié)果 圖10 批量SLTSA降維結(jié)果 圖11 ISLTSA降維結(jié)果 降維方法新增測試樣本故障識別概率/%正常故障1故障2故障3故障4故障5平均識別率/%算法耗時/s批量KPCA1001008090100100950.071 8SILTSA1001001001001001001000.108 2批量SLTSA1001001009010010098.330.281 7ISLTSA1001001001001001001000.087 5 表3 各降維算法聚類度 如表3所示,SILTSA、批量SLTSA、ISLTSA算法的聚類度較小,KPCA聚類度大,結(jié)合圖9、10、11和圖5、6進行對比,KPCA、LTSA降維后樣本坐標類內(nèi)散度大,ISLTSA降維后樣本類內(nèi)散度小,也表明了本文提出的監(jiān)督降維方法能取得較好聚類效果。 本文提出了一種新的增量監(jiān)督局部切空間排列算法ISLTSA,在原始LTSA算法目標函數(shù)中融入了類內(nèi)散度和類間散度矩陣,充分利用標簽樣本,使得低維嵌入坐標同類聚集、異類分離,將初步更新的訓練樣本低維坐標和新增樣本低維坐標作為初始值,采用迭代的方法更新所有樣本全局低維坐標,既能獲取準確的高維樣本低維嵌入坐標,也能降低維數(shù)約簡的算法復雜度。通過與其它增量式降維算法對比,采用齒輪箱的故障數(shù)據(jù)驗證了本文所提出算法的高效性,適合在線監(jiān)測機械設(shè)備狀態(tài)。




1.2 監(jiān)督局部切空間排列算法(SLTSA)




1.3 增量局部切空間排列算法(ILTSA)

1.4 增量式監(jiān)督局部切空間排列(ISLTSA)算法步驟

2 基于ISLTSA算法的齒輪箱故障診斷實驗驗證
2.1 齒輪箱故障診斷流程

2.2 實驗數(shù)據(jù)


2.3 結(jié)果分析














3 結(jié) 論