梁秋金, 王 鐸, 王圣杰, 張 濤*
1. 清華大學(xué), 北京 100084
2. 北京控制工程研究所, 北京 100094
利用無監(jiān)督學(xué)習(xí)提取有效的特征表示在機器學(xué)習(xí)中是一個長期存在的熱點問題,無監(jiān)督學(xué)習(xí)技術(shù)廣泛應(yīng)用于圖像分類識別、自然語言處理和目標(biāo)檢測等領(lǐng)域.僅僅利用大量的無標(biāo)簽數(shù)據(jù),能夠?qū)崿F(xiàn)將龐雜的數(shù)據(jù)空間映射到簡潔的特征空間,并發(fā)掘出隱藏在數(shù)據(jù)中的隱性特征,并經(jīng)由遷移學(xué)習(xí)方法使之能夠應(yīng)用于目標(biāo)領(lǐng)域,為智能狀態(tài)辨識等工作提供數(shù)據(jù)基礎(chǔ)[1-5].
在航天領(lǐng)域中,大部分監(jiān)測數(shù)據(jù)為時序序列,其基本的故障診斷方法通常為基于傳統(tǒng)的數(shù)據(jù)驅(qū)動方法.傳統(tǒng)的數(shù)據(jù)驅(qū)動方法在訓(xùn)練模型的階段中,僅僅利用有標(biāo)簽數(shù)據(jù)來進行有監(jiān)督訓(xùn)練,而在實際的大部分故障診斷場景中,故障樣本所占的比例遠(yuǎn)遠(yuǎn)少于正常樣本[5].甚至在某些情況下,需要對設(shè)備的運行工況、運行條件與機理具有一定的專業(yè)知識才能進行故障的判別與數(shù)據(jù)標(biāo)注,這樣會帶來巨大的人工標(biāo)注成本.這導(dǎo)致在診斷環(huán)境中通常會存在大量的無標(biāo)簽數(shù)據(jù),是一個天然的適合開展無監(jiān)督學(xué)習(xí)的環(huán)境.目前,無監(jiān)督學(xué)習(xí)在時序序列故障診斷領(lǐng)域中的研究較少,因此有必要開展基于無監(jiān)督學(xué)習(xí)的時序序列故障診斷方法研究,研究如何充分的利用診斷環(huán)境中大量的無標(biāo)簽數(shù)據(jù)進行無監(jiān)督學(xué)習(xí),提取有效的隱性特征并提升診斷效果,從而使得基于數(shù)據(jù)驅(qū)動的故障診斷技術(shù)能夠進行進一步的大規(guī)模應(yīng)用[6-8].
目前的無監(jiān)督學(xué)習(xí)方法一般分為傳統(tǒng)無監(jiān)督學(xué)習(xí)方法和深度學(xué)習(xí)無監(jiān)督學(xué)習(xí)方法.傳統(tǒng)的無監(jiān)督學(xué)習(xí)方法主要有聚類(clustering)與降維(demensionality reduction)兩大類方法,聚類包括k-均值聚類(k-means)、層次聚類(hierarchical clustering)、DBSCAN等方法,降維包括主成分分析(PCA)、獨立成分分析(ICA)等[9-10].
深度學(xué)習(xí)無監(jiān)督學(xué)習(xí)方法主要包括生成式模型和判別式模型兩大類,生成式模型主要以自動編碼器(autoencoder)、變分自動編碼器(variational autoencoder)為主,生成式模型訓(xùn)練的核心思想是提取的特征經(jīng)過解碼器能夠重構(gòu)出原始數(shù)據(jù),數(shù)據(jù)重構(gòu)的思想與傳統(tǒng)的自動編碼器并沒有區(qū)別[6,11-13].但是,能夠完成數(shù)據(jù)重構(gòu)的特征并不一定是完成下游任務(wù)所需要的特征.判別式模型使用類似于有監(jiān)督學(xué)習(xí)的目標(biāo)函數(shù)來學(xué)習(xí)特征的表示,但訓(xùn)練網(wǎng)絡(luò)所采取的輸入數(shù)據(jù)與標(biāo)簽都來自于無標(biāo)簽數(shù)據(jù)集,其中基于潛在空間的對比學(xué)習(xí)(contrastive learning)的判別式方法在圖像領(lǐng)域得到了空前的發(fā)展,主要思想為學(xué)習(xí)到的特征要能夠與其他樣本進行區(qū)分[5,14].但其中如何構(gòu)建合適的正負(fù)樣本是一個非常棘手的問題,特別是對于非圖像數(shù)據(jù),對其進行類似于圖像的增強變換,可能會失去原始數(shù)據(jù)的實際意義,達(dá)不到提取特征的效果.基于最大化互信息(DIM)的判別式方法主要考慮盡可能最大化特征向量與中間特征圖的互信息[15-16],在圖像的特征提取中實現(xiàn)了非常好的效果,并避免了正負(fù)樣本構(gòu)造的問題,但在時序序列中還暫未展開應(yīng)用.
基于上述分析,本文主要面向時序序列故障診斷,針對診斷環(huán)境中大量無標(biāo)簽數(shù)據(jù)未被充分利用的問題,提出了一種基于無監(jiān)督學(xué)習(xí)的時序序列故障診斷方法,創(chuàng)新點在于:
1)通過改進最大化互信息這一判別式方法,對時序序列數(shù)據(jù)進行局部互信息估算時的損失函數(shù)進行了優(yōu)化;
2)針對無監(jiān)督訓(xùn)練的損失函數(shù),對超參數(shù)的選取進行了探索,并選取了最適合時序序列故障診斷的目標(biāo)函數(shù);
3)優(yōu)化其固定的模型訓(xùn)練模式,采用自適應(yīng)的訓(xùn)練過程,構(gòu)建了具有穩(wěn)定收斂性的無監(jiān)督特征提取模型.
該方法首先在公開的凱斯西儲大學(xué)軸承數(shù)據(jù)集[15]進行了驗證,在不同工況下,基于該診斷方法的故障診斷精度遠(yuǎn)遠(yuǎn)高于基于自動編碼器的故障診斷方法,精度均在95%以上;在該無監(jiān)督特征提取模型的基礎(chǔ)上采用KNN與SVM方法進行故障診斷,平均診斷精度達(dá)到了95%以上,遠(yuǎn)遠(yuǎn)高于直接在原始數(shù)據(jù)空間中進行診斷的精度;最后,我們在衛(wèi)星監(jiān)測時序數(shù)據(jù)上進行了驗證,采用可視化方法表明了該無監(jiān)督模型能夠很好的捕捉不同故障階段的數(shù)據(jù)特性,進一步在實際應(yīng)用中證明了該無監(jiān)督模型在時序序列故障診斷中的有效性.
信息論認(rèn)為,有效的編碼器應(yīng)該盡可能最小化輸入到特征向量之間的互信息,而解碼器應(yīng)該盡可能最大化特征向量與輸出之間的互信息,根據(jù)這一思想,近些年許多研究人員思考從互信息入手進行特征提取的方法.互信息是信息論中一種有用的信息度量,它可以看成是一個隨機變量中包含的關(guān)于另一個隨機變量的信息量,或者說是一個隨機變量由于另一個隨機變量而減少的不肯定性.隨機變量X與Y的互信息表示如下:
(1)
Donsker和Varadhan給出了互信息的下界,即基于KL散度的Donsker-Varadhan表示
(2)
但互信息的計算一直以來是一個非常困難的問題,因為計算互信息需要同時計算聯(lián)合分布和邊緣分布,因此精確估計互信息的大小是一個非常重要的問題.文獻(xiàn)[15]中提出了利用神經(jīng)網(wǎng)絡(luò)進行互信息估算的方法MINE(mutual Information neural estimation),其基于KL散度的Donsker-Varadhan表示給出了互信息的下限,公式如下:
(3)
其中對互信息估算的理論推導(dǎo),首先需要引入稱為f散度,定義如下:
(4)
互信息與KL散度之間的關(guān)系不難推導(dǎo),現(xiàn)給出如下公式:
=DKL(PXYPXPY)
(5)
可以看出,互信息的本質(zhì)含義就是兩個變量的聯(lián)合分布與兩個變量的邊緣分布之積的KL散度.利用凸函數(shù)的性質(zhì),容易證明f函數(shù)為凸函數(shù),而對于任意一個凸函數(shù),總存在一個凸共軛函數(shù)可以對其進行線性近似[14].假設(shè)凸函數(shù)f(u)的定義域為,對于任意一點ξ,y=f(u)在u=ξ處的切線為
y=f(ξ)+f′(ξ)(u-ξ)
(6)
原函數(shù)與該切線函數(shù)的差函數(shù)為
h(u)=f(u)-f(ξ)-f′(ξ)(u-ξ)
(7)
對于凸函數(shù)f(u),下式恒成立
f(u)-f(ξ)-f′(ξ)(u-ξ)≥0
(8)
進一步變換成
f(u)≥f(ξ)-f′(ξ)ξ+f′(ξ)u
(9)
由于可以取等,因此可進一步推導(dǎo)為
記t=f′(ξ),并令
G(t)=-f(ξ)+f′(ξ)ξ
得到凸函數(shù)f(u)的估計式
(10)
由于對于每個給定的u值,均需遍歷整個f′()尋求使得式(10)取得最大值的t,因此可以認(rèn)為t為u的函數(shù),即t=T(u),式(10)變換為
(11)
基于式(11)得到如下:
(12)
式(12)即為估算f散度的基本表達(dá)式,其基本思路為采用神經(jīng)網(wǎng)絡(luò)對T(x)進行擬合,優(yōu)化其參數(shù),不斷擴大分別從p(x)分布與q(x)分布中進行采樣的平均值的差,最終結(jié)果即為f散度的估計值.
以上完成了對互信息的估算,現(xiàn)在考慮如何對互信息估算結(jié)果進行最大化處理.編碼前后X與Z的互信息表達(dá)式如下:
I(X,Z)=KL(p(z,x)p(z)p(x))=KL(p(z|x)p(x)p(z)p(x))
(13)
目標(biāo)函數(shù)即為最大化互信息的負(fù)值
(14)
而KL散度并不存在上界,如果直接利用神經(jīng)網(wǎng)絡(luò)去擬合T(x)進行式(14)的最大值求解,可能會得到無窮大的值,結(jié)果并不收斂.因此,我們采取JS散度(15)進行估計,JS散度屬于之前討論的f散度,同樣可以使用式(12)進行估計計算.
(15)
其中P與Q的值為
P=p(z|x)p(x),Q=p(z)p(x)
(16)
根據(jù)JS散度對應(yīng)的凸共軛函數(shù)G(x),式(14)可以得到其對應(yīng)的估計結(jié)果如下所示:
(17)
(18)
文獻(xiàn)[16]針對圖像領(lǐng)域給出了全局最大化互信息的基本思路,首先將原始圖像經(jīng)過卷積層輸出的特征圖(一般為M×M塊)作為P(x)分布,而經(jīng)過編碼器的最終輸出向量y作為P(z)分布,將同一張圖像的特征圖與特征向量作為聯(lián)合分布P(z|x)P(x),另一張圖像的特征圖與該特征向量作為邊緣分布乘積P(z)P(x),之后引入判別網(wǎng)絡(luò)σ(T(x,z))最大化似然函數(shù).本文采用如下的思路進行模型搭建:首先將原始數(shù)據(jù)進行第一部分編碼得到原始特征圖,根據(jù)原始特征圖進行第二部分編碼得到特征向量,這兩者即為聯(lián)合分布p(z|x)p(z);將原始特征圖的第一維最后一層數(shù)據(jù)調(diào)換至第一層,得到類似隨機抽取的特征圖,與特征向量組合即為邊緣分布p(z)p(x).圖1中上面部分為全局互信息估算,原始特征圖、打亂的特征圖分別與特征向量構(gòu)造正負(fù)樣本對,直接進行互信息估算; 下面部分為局部互信息估算,原始特征圖、打亂的特征圖分別與擴充的特征向量構(gòu)造正負(fù)樣本對,將計算得到的局部互信息分?jǐn)?shù)進行平均得到互信息值.
在魏國,李悝主持了政治改革,他堅決反對奴隸主貴族的宗法世襲制度,建立了“食有勞而祿有功”的任官制度,主張“奪淫民之祿,以來四方之士”[16]P166,即剝奪奴隸主世襲的爵祿權(quán)力,把這些爵祿轉(zhuǎn)而賜給有那些軍功的人?!笆菚r,李悝為魏文侯作盡地力之教”[17]P1124與李悝改革中提出的“盡地力之教”的經(jīng)濟政策相輔相成,大力發(fā)展農(nóng)業(yè)生產(chǎn),提高土地產(chǎn)量。通過這次改革發(fā)展了了新興地主階級的勢力,促進了封建社會的發(fā)展。
圖1 互信息估算示意圖Fig.1 Schematic diagram of mutual information estimation
上述目標(biāo)函數(shù)(7)可用于最大化輸入和輸出之間的互信息,但根據(jù)下游任務(wù)的不同,這樣的方法可能是不可取的.例如,如果要對圖像進行分類,就沒有必要對像素局部的瑣碎噪聲進行編碼,這樣的編碼對最終提取的特征并沒有任何好處.由于全局最大化互信息會使得輸出特征向量與特征圖整個部分具有高互信息,因此編碼器會選擇輸入中傳遞給編碼器的信息類型,比如特定于局部部分或者像素的噪聲.然而,如果編碼器只選擇了輸入的部分類型數(shù)據(jù),那么編碼器并沒有起到提升最終提取的特征向量與不包含上述噪聲的區(qū)域部分?jǐn)?shù)據(jù)的互信息的作用,這樣可能會導(dǎo)致特征圖中的有效的、獨特的信息被忽略.因此,模型應(yīng)該考慮到編碼特征向量與整個輸入局部之間的互信息的計算.可以采取分別將M×M塊特征圖與編碼特征向量進行互信息的計算,具體計算方法如下:
(19)
如果為了獲得適合分類任務(wù)的表示模型,需要對圖像的最終特征表示與特征圖局部信息之間進行平均互信息的求取,文獻(xiàn)[16]的結(jié)果表明這種方法對于下游任務(wù)為分類任務(wù)的情形是非常有效的.聯(lián)合分布與邊緣分布的構(gòu)造為將特征向量在維度上擴充至與特征圖相同大小,并在第一個維度上進行拼接,最后得到每一個局部分塊的分?jǐn)?shù)值.具體過程如圖1所示.
以上為最大化互信息判別式方法的主要損失函數(shù)與模型介紹,該方法主要是針對于圖像領(lǐng)域,對整個特征提取過程中的特征圖與特征向量進行互信息的計算,其中包括全局與局部損失函數(shù),基于此訓(xùn)練得到特征提取模型.但是,面對故障診斷中的時序序列數(shù)據(jù),該模型仍存在以下幾個問題:
1)原模型針對的是二維圖像數(shù)據(jù),對于時序序列數(shù)據(jù),模型結(jié)構(gòu)需要進行調(diào)整修改;
2)原模型的最終損失函數(shù)是對全局和局部損失函數(shù)采取了適合圖像的最優(yōu)比例進行融合,但對于時序序列數(shù)據(jù),損失函數(shù)的選取仍需要進行實驗探索;
3)原模型的損失函數(shù)基于多重嵌套優(yōu)化,而且有全局與局部的參與,訓(xùn)練過程經(jīng)常出現(xiàn)收斂不穩(wěn)定的情況,因此需要針對故障診斷的時序序列數(shù)據(jù)提出合適的訓(xùn)練方式.
在圖像領(lǐng)域,基于最大化互信息(DIM)的無監(jiān)督特征提取模型在分類、回歸等任務(wù)取得了很好的實驗效果[16],但是在時序序列故障診斷任務(wù)上,仍存在一些問題需要進行改進.對DIM時序模型在模型結(jié)構(gòu)、優(yōu)化的損失函數(shù)以及訓(xùn)練方式層面做出改進,以使其適配時序序列故障診斷任務(wù),提高診斷精度.整體的故障診斷模型主要由兩部分組成,1)首先進行無監(jiān)督訓(xùn)練,構(gòu)建編碼器,目標(biāo)函數(shù)為基于最大化互信息的損失函數(shù),利用原始數(shù)據(jù)中的無標(biāo)簽數(shù)據(jù)進行訓(xùn)練,當(dāng)損失函數(shù)值減小到低于設(shè)置閾值或者迭代次數(shù)到達(dá)規(guī)定次數(shù)時該階段訓(xùn)練完成,得到特征提取模型.模型整體訓(xùn)練流程如圖2所示,其中的卷積層采用的是匹配時序數(shù)據(jù)的一維卷積網(wǎng)絡(luò).2)針對分類層進行有監(jiān)督訓(xùn)練,目標(biāo)函數(shù)為交叉熵?fù)p失函數(shù).首先,原始數(shù)據(jù)中的有標(biāo)簽數(shù)據(jù)經(jīng)過1)階段中訓(xùn)練完成的特征提取器,得到特征向量.其次,在特征空間中,將特征向量輸入分類器得到預(yù)測分類結(jié)果,計算損失函數(shù),利用反向梯度計算進行訓(xùn)練,當(dāng)損失函數(shù)值減小到低于設(shè)定閾值或者迭代次數(shù)到達(dá)規(guī)定次數(shù)時該階段訓(xùn)練完成.訓(xùn)練得到的特征提取環(huán)節(jié)與分類層進行具體的故障診斷.將原始數(shù)據(jù)中的待標(biāo)簽數(shù)據(jù)作為輸入,經(jīng)過特征提取器與分類層得到診斷結(jié)果,具體流程如圖3所示.
圖2 無監(jiān)督模型示意圖Fig.2 Schematic diagram of unsupervised training
圖3 故障診斷模型示意圖Fig.3 Schematic diagram of the fault diagnosis model
其中步驟(2)中的有監(jiān)督訓(xùn)練包括兩種形式:第一種為僅進行有監(jiān)督訓(xùn)練分類層,即不對特征提取器進行梯度計算、累加與網(wǎng)絡(luò)參數(shù)更新,僅對分類層進行參數(shù)更新,稱為最后微調(diào);第二種為全局有監(jiān)督訓(xùn)練,不僅對分類層進行網(wǎng)絡(luò)參數(shù)更新,也包括對特征提取器進行梯度計算與網(wǎng)絡(luò)參數(shù)更新以對其進行修正,稱為全局微調(diào).無監(jiān)督訓(xùn)練部分架構(gòu)的詳細(xì)信息如表1所示。
表1 無監(jiān)督訓(xùn)練架構(gòu)詳細(xì)信息Tab.1 Unsupervised training schema details
整體的無監(jiān)督目標(biāo)損失函數(shù)如式(20)所示,由兩部分組成,分別為全局互信息估算、局部互信息估算以及基于先驗分布的目標(biāo)函數(shù),三者通過α、β、γ三個超參數(shù)組成整體損失函數(shù).
(20)
考慮到時序序列故障診斷的特性,主要在以下部分進行改進:
1)對于無監(jiān)督訓(xùn)練神經(jīng)網(wǎng)絡(luò),對其原本針對圖像的卷積網(wǎng)絡(luò)進行了修改,采用了適用于提取時序序列數(shù)據(jù)特征的一維卷積網(wǎng)絡(luò),并對時序序列數(shù)據(jù)進行局部互信息估算時設(shè)計了合適的損失函數(shù);
2)對于無監(jiān)督訓(xùn)練的損失函數(shù),對超參數(shù)的選取進行探索,并在實驗仿真結(jié)果與分析這一章進行詳細(xì)的分析,最終選取了最適合時序序列故障診斷的目標(biāo)函數(shù);
3)在無監(jiān)督的訓(xùn)練方式上,采用自適應(yīng)的訓(xùn)練過程,在訓(xùn)練前100epochs僅使用全局互信息作為目標(biāo)函數(shù)進行訓(xùn)練,之后采用超參數(shù)構(gòu)成的完整損失函數(shù)作為目標(biāo)函數(shù),構(gòu)建具有穩(wěn)定收斂性的無監(jiān)督特征提取模型.
無監(jiān)督訓(xùn)練的具體算法如下所示:
算法1 無監(jiān)督訓(xùn)練/*Algorithm Unsupervised Learning輸入:原始空間無標(biāo)簽數(shù)據(jù)XM,訓(xùn)練迭代次數(shù)n1,學(xué)習(xí)率α1輸出:fFE(.)的最優(yōu)參數(shù)θ*FE步驟1: 初始化fFE(.)、flocal(.)和fprior(.)的參數(shù)初值:θoFE、θolocal和θoprior步驟2: 分批輸入無標(biāo)簽數(shù)據(jù)XMk∈XM,計算前向傳播結(jié)果,Losslocal為式(8)中的第二部分,Lossprior為式(8)中的第三部分:Lossilocal=flocal(FiM,Fi)、Lossiprior=fprior(Fi)Lossi1=Lossilocal+Lossiprior步驟3:執(zhí)行參數(shù)更新(前100epochs僅執(zhí)行全局互信息估算的參數(shù)更新),θi+1FE,θi+1local,θi+1prior←θiFE,θilocal,θiprior-α1Δθ Lossi1(XM) STEP4:重復(fù)STEP2、STEP3,i=1,2,3…n1
實驗1采用凱斯西儲大學(xué)(CWRU)軸承中心提供的軸承數(shù)據(jù)集[20],實驗平臺包括電機、加速度計和轉(zhuǎn)矩傳感器,如圖4所示.故障是人為采用電火花加工技術(shù)在軸承上布置,數(shù)據(jù)集為固定在電機外殼上的加速度計所采集得到.在軸承數(shù)據(jù)集中共有10個類別,分別為3個故障位置(軸承外圈、軸承滾珠和軸承內(nèi)圈)對應(yīng)3個不同的故障大小(0.007 in、0.014 in和0.021 in)共9個故障類別與一個正常類別.如圖5所示,依次分別為滾珠故障、外圈故障、正常軸承和內(nèi)圈故障的實物示例.所有數(shù)據(jù)在4個不同負(fù)載的情況下進行收集,共Load0到Load3 4類數(shù)據(jù),采樣頻率設(shè)置為12 khz,其中每個類別有500個樣本,每個樣本為2 048個點的振動信號.本文在實驗過程中為了增加故障診斷的難度,僅采用前1 024個點的振動信號,即原始數(shù)據(jù)為1 024維的數(shù)據(jù).圖6為不同故障位置對應(yīng)的不同故障大小與正常數(shù)據(jù)的共10種樣本示例.
圖4 CWRU測試臺[14]Fig.4 CWRU test bench
圖5 4種不同故障狀態(tài)的軸承[14]Fig.5 Bearings with four different fault states
圖6 10種故障樣本示意圖Fig.6 Schematic diagram of ten fault samples
實驗2采用的數(shù)據(jù)為某衛(wèi)星監(jiān)測到的電流信號數(shù)據(jù),原始數(shù)據(jù)為長時序列數(shù)據(jù),包括了正常運行階段與故障階段.該數(shù)據(jù)存在缺失、毛刺等問題,首先將原始數(shù)據(jù)進行了插值、平滑等預(yù)處理,之后在時間維度上進行了降采樣操作,每個階段隨機采樣若干個子序列樣本,每個樣本的序列長度為360,70%的樣本用于訓(xùn)練,剩下30%的樣本用于測試.
使用Adam優(yōu)化器來訓(xùn)練所有模型,對于特征提取器的無監(jiān)督訓(xùn)練,設(shè)置超參數(shù)β=1,γ=0.1,設(shè)置學(xué)習(xí)率為α1=0.000 1,每批次大小為batch_size1=128,訓(xùn)練迭代次數(shù)為200.對于分類層的訓(xùn)練,設(shè)置學(xué)習(xí)率為α2=0.000 1,每批次大小為batch_size2=128,訓(xùn)練迭代次數(shù)為epochs2=100.所有實驗均在含一臺Nvidia Titan RTX GPU、一臺Intel Core i9-10980XE 3.00 GHz CPU和128 GB內(nèi)存的計算機上進行.實驗設(shè)置的詳細(xì)列表見表2.
表2 具體實驗設(shè)置Tab.2 Specific experimental settings
此外,對超參數(shù)α與β進行了對比實驗,超參數(shù)α為全局互信息目標(biāo)函數(shù)的權(quán)值,超參數(shù)β為局部互信息目標(biāo)函數(shù)的權(quán)值.為了對不同的超參數(shù)進行合理的比較,進行如下的實驗設(shè)置:1)始終令α+β=1;2)γ=0.1保持不變.具體實驗設(shè)置如表3~4所示.
表3 超參數(shù)實驗設(shè)置Tab.3 Hyperparameter experiment setup
主要做了兩方面的實驗仿真對模型方法進行驗證,實驗安排如下:
1)采用3.1中介紹的凱斯西儲大學(xué)軸承數(shù)據(jù)集,做故障診斷實驗,采用故障診斷識別精度作為模型衡量標(biāo)準(zhǔn),并與自動編碼器、KNN和SVM等方法進行對比[11-12].
2)利用某衛(wèi)星的監(jiān)測數(shù)據(jù),對無監(jiān)督模型進行驗證,進行t-SNE可視化實驗,驗證特征提取模型的有效性.基于t-SNE算法的數(shù)據(jù)降維可視化方法其思想是降維前后數(shù)據(jù)間的關(guān)聯(lián)性應(yīng)保持不變,將數(shù)據(jù)關(guān)聯(lián)性通過樣本間相似性并進行歸一化轉(zhuǎn)換為概率分布模型,通過最小化降維前后數(shù)據(jù)關(guān)聯(lián)性概率模型的KL散度求解降維特征.將原始高維特征降到2維或3維便可進行可視化.
3.3.1 凱斯西儲大學(xué)軸承數(shù)據(jù)集實驗
為了保證實驗的準(zhǔn)確性與評價各種方法的公平性,做出如下數(shù)據(jù)安排.對于每一個負(fù)載情況下的實驗,關(guān)于DIM-FD與AE-FD訓(xùn)練與測試的數(shù)據(jù)安排如下:1)特征提取器的無監(jiān)督訓(xùn)練使用4 000個無標(biāo)簽數(shù)據(jù);2)分類層的有監(jiān)督訓(xùn)練使用1 000個有標(biāo)簽數(shù)據(jù);3)故障診斷測試使用1 000個待標(biāo)簽數(shù)據(jù).直接Knn方法與直接SVM方法均使用1 000個原始數(shù)據(jù)進行訓(xùn)練,之后使用1 000個原始數(shù)據(jù)進行故障診斷測試.特征Knn方法與特征SVM方法均使用在DIM-FD模型中已經(jīng)訓(xùn)練好的特征提取器進行特征的提取,使用1 000個有標(biāo)簽特征向量進行訓(xùn)練,之后使用1 000個無標(biāo)簽特征向量進行故障診斷測試.
在4種不同工況下的實驗結(jié)果如表4所示,可以從結(jié)果中分析出以下幾點結(jié)論:1)在4種工況下,DIM-FD(最后微調(diào))與DIM-FD(全局微調(diào))的故障診斷精度均遠(yuǎn)遠(yuǎn)高于AE-FD(最后微調(diào))與AE-FD(全局微調(diào))的精度;2)DIM-FD(全局微調(diào))的精度均接近100%.這表明DIM-FD模型構(gòu)建的特征空間遠(yuǎn)遠(yuǎn)優(yōu)于傳統(tǒng)的自動編碼器構(gòu)建的特征空間,在下游故障診斷任務(wù)中發(fā)揮了更好的作用.
表4 不同工況下不同方法故障診斷精度Tab.4 Fault diagnosis accuracy of different methods under different working conditions
其次,在4種工況下,在原始數(shù)據(jù)空間進行Knn方法與SVM方法進行故障診斷的診斷精度均遠(yuǎn)遠(yuǎn)低于在特征空間下進行相同方法故障診斷的精度,如圖7所示.其中,在該數(shù)據(jù)集中直接用SVM方法進行故障診斷的精度不足40%,直接用Knn方法進行故障診斷的精度甚至不足20%,這反映了該數(shù)據(jù)集的原始數(shù)據(jù)空間中數(shù)據(jù)具有高維、多噪聲等缺點,因此導(dǎo)致直接采用基線方法進行故障診斷的效果并不理想.而在基于DIM-FD的特征空間中使用Knn與SVM方法進行故障診斷,均達(dá)到了很好的效果,平均診斷精度達(dá)到了99.5%以上,其中在Load2與Load3兩種工況下,特征Knn方法與特征SVM方法診斷精度甚至達(dá)到了100%.這進一步證明了本文提出的DIM-FD方法在故障診斷中的良好性能.
圖7 診斷精度對比圖Fig.7 Diagnostic accuracy comparison chart
以工況Load0為例,設(shè)置不同超參數(shù)值的5個分組實驗結(jié)果如圖8所示.結(jié)果表明,隨著β不斷減小、α值不斷增加,會使得目標(biāo)函數(shù)中局部互信息所占的比例減小,對于故障診斷這樣的分類任務(wù)而言編碼器的效果越差.當(dāng)設(shè)置β=1、α=0時,編碼器特征提取的效果達(dá)到最佳,故障診斷率達(dá)到最高.進一步證明了,使用全局互信息的估計可能會選擇輸入的部分信息通過編碼器,例如含有噪聲的局部,這樣不會增加與其他無噪聲的局部互信息,導(dǎo)致部分有效的信息未被編碼器進行特征提取.而對于故障診斷這類分類任務(wù)來說,一些無用的噪聲數(shù)據(jù)對其是沒有任何幫助的,所以編碼器應(yīng)當(dāng)以最大化局部互信息為目標(biāo)函數(shù)才能使得編碼的效果達(dá)到最好.
圖8 不同分組診斷精度Fig.8 Diagnostic accuracy of different groups
3.3.2 衛(wèi)星監(jiān)測時序數(shù)據(jù)實驗
采樣得到的衛(wèi)星監(jiān)測數(shù)據(jù)為長序列數(shù)據(jù),為降低處理計算量,將原始數(shù)據(jù)在時間維度上降采樣15倍,每個階段隨機采樣若干個子序列樣本,每個樣本的序列長度為360,其中70%的樣本用于訓(xùn)練,剩下30%的樣本用于測試.將選取的3個特征數(shù)據(jù)在通道維度合并輸入網(wǎng)絡(luò),網(wǎng)絡(luò)提取的特征維度設(shè)為10維.將提取的特征通過t-SNE方法降維到2維進行可視化,用不同冷暖色調(diào)表示數(shù)據(jù)來源于不同的運行階段,其中由冷到暖色表示時間增加.
實驗結(jié)果如圖9~10所示,圖9為未經(jīng)過特征提取模型的原始數(shù)據(jù),圖10為經(jīng)過無監(jiān)督模型提取的特征,可以看出,不同階段數(shù)據(jù)特征分布具有顯著的漸變特性,體現(xiàn)出了運行數(shù)據(jù)從正常到故障的變化趨勢.不同階段數(shù)據(jù)仍有小部分重疊,這主要是由于兩階段是在時間上連續(xù)過渡的,過渡區(qū)域的數(shù)據(jù)特征比較接近,因此出現(xiàn)重疊的情況.總之,上述特征提取方法可以很好的捕捉不同故障階段的數(shù)據(jù)特性,證明了該無監(jiān)督模型的有效性.
本文主要面向時序序列故障診斷問題,提出了一種基于無監(jiān)督學(xué)習(xí)的時序序列故障診斷方法,通過改進最大化互信息這一判別式方法,優(yōu)化其固定的模型訓(xùn)練模式,并針對時序序列數(shù)據(jù)的特點優(yōu)化其局部損失函數(shù),構(gòu)建了具有穩(wěn)定收斂性的無監(jiān)督特征提取模型.在公開數(shù)據(jù)集的實驗結(jié)果表明,該方法能夠?qū)r序序列數(shù)據(jù)實現(xiàn)更高的診斷精度,并在某衛(wèi)星型號監(jiān)測數(shù)據(jù)上證實了該方法的有效性,為未來在航天器上實現(xiàn)智能化故障診斷與健康管理奠定了基礎(chǔ).