周華鋒, 程培源, 邵思羽, 趙玉偉
(空軍工程大學 防空反導學院,西安 710051)
隨著工業4.0時代的到來,海量的數據、智能化信息處理方法、面向未來技術的工廠不斷涌現[1],互聯網與物聯網技術快速發展需要更為智能化的狀態監測與故障診斷系統。利用智能工廠內的各類傳感器采集狀態信息,構建深度學習網絡模型,可以有效地對設備運行狀態進行監測[2]。許多專家學者也將智能識別算法應用到故障診斷任務之中,實現端到端的診斷,并且取得了較好的診斷效果[3-7]。然而,其較好的診斷效果往往要求訓練數據和測試數據來源于同一概率分布且均有大量可靠的標簽信息[8]。在實際工程應用中,這兩種設定是難以滿足的。一方面,由于機械設備運行時的轉速、負載、環境噪聲等工況在時刻變化,傳感器所收集到的數據分布也將發生改變;另一方面,機械設備從正常到發生故障需要一定的時間且故障不易察覺,收集標簽信息并進行有效標注是一項費時費力的工作。
為了解決上述問題,許多專家學者將無監督域自適應算法引入到智能故障診斷領域當中[9]。通過尋找機械系統在數據空間上的相似性,實現故障診斷任務中知識的遷移。例如Cheng等[10]提出基于Wasserstein距離的深度遷移學習(WD-DTL)網絡模型,通過最小化源域和目標域之間的分布差異,學習兩個領域間的不變特征。Han等[11]將聯合分布適應(JDA)應用于故障診斷領域,使源域和目標域的條件分布對齊,提高故障的識別準確率。Qian等[12]提出了基于高階Kullback-Leibler(HKL)散度的分布差異測量算法,構建了在變工況情況下具有魯棒性的故障診斷網絡。An等[13]提出了一個基于多層多核最大平均差異的網絡模型,將來自不同領域的特征映射到再生核希爾伯特空間,最小化特征分布差異。Wang等[14]利用相關對齊(CORAL)進行非線性變換來對齊兩個分布的二階統計量,以此來最小化源域與目標域之間的差異,提取域不變特征,實現無監督域自適應故障診斷。
綜上所述,大多數已有文獻都是利用距離度量函數度量源域與目標域的差異,并最小化該差異以實現源域和目標域的全局對齊,使網絡模型同時在源域和目標域上均有較好的診斷效果,如圖1(a)所示。但由于其對整個域進行對齊,忽略了不同類之間的差異,沒有考慮到每個類別的細粒度信息,使得模型在類的邊界處分類誤差變大,模型整體的識別準確率有待提高。為了更好地利用每個類別的決策邊界,提高模型的識別精度,本文提出了一種子域自適應對抗網絡(subdomain adaptive adversarial network,SAAN)。通過考慮相關任務的決策邊界來調整領域分布,同時將局部最大平均差異引入到模型結構中,對齊源域和目標域中的每個類空間,實現子域自適應,如圖1(b)所示。

(a) 全局域自適應

(b) 子域自適應圖1 領域自適應Fig.1 Domain adaptation
同時,本文在兩個數據集上對SAAN模型的有效性進行驗證,并與現有的域自適應算法進行比較。SAAN方法解決了不同工況下因其數據分布不同而導致診斷精度下降的問題,提高了模型在不同工況下的泛化性能,診斷性能優于其他域自適應算法,有著更高的診斷精度。

針對變工況下故障診斷精度下降和目標域無標簽的問題,無監督域自適應算法可以利用在A工況下收集旋轉零部件的有標簽數據和B工況下未標記的數據訓練網絡模型,提取兩種工況下數據中的相似特征,使網絡模型在變工況的條件下表現出良好的泛化能力,能夠同時有效識別A、B兩種工況下旋轉零部件的運行狀態,以實現對無標簽變工況下軸承的健康狀態進行識別。
最大平均差異(maximum mean discrepancy,MMD)[15-16]被廣泛應用于領域自適應和遷移學習中,提取源域與目標域的相似特征,并取得了一定的效果。但MMD只關注了整個域的全局分布對齊,而忽略了相關子域間的關系。為了進一步提高域自適應方法的分類準確率,需要充分考慮每個子類的細粒度信息。Zhu等[17]在最大平均差異的基礎上提出了局部最大平均差異,將局部最大平均差異應用到深度子域適應網絡(deep subdomain adaptation network,DSAN),并探究得到結論,即大多數前饋網絡模型均可使用局部最大平均差異(local maximum mean discrepancy,LMMD)實現子域自適應。
本文將局部最大平均差異引入到對抗網絡中以實現子域的對齊,保證模型有更高的診斷精度。為了更好的表述LMMD,將其距離定義如式(1)所示
(1)

為了適應對應層的輸出特征,將上式重新表述為式(2),以此來計算對應層的局部最大平均距離。

(2)

在普通卷積中,其卷積核參數經訓練后對所有輸入樣本都是確定的。普通卷積神經網絡(convolutional neural networks,CNN)特征提取能力的提高,依賴于卷積神經網絡深度(卷積層數)和寬度(通道數)的增加。然而通過上述方法必然會使網絡模型的計算復雜度增加。為了可以在不增加網絡深度和寬度的情況下,提高網絡的整體計算能力,動態卷積[18]通過多卷積核融合提高模型的特征提取能力,并結合注意力機制,動態聚合多個并行卷積核。通過注意力權重以非線性方式進行聚合,使其具有強大的特征提取能力。為便于介紹動態卷積,先介紹動態感知機,其計算公式如式(3)所示
(3)


圖2 動態卷積層結構Fig.2 Dynamic convolutional layer structure
模型具有k個卷積核,它們共享相同的核大小和輸入輸出尺寸,同時借鑒通道注意力機制產生注意力權重{πk(x)},通過使用注意力權重{πk(x)}進行聚合,最后對聚合之后的特征使用批量歸一化(batch normalization,BN)和激活函數(ReLu)來構建動態卷積層。
本文提出的SAAN網絡主要由特征生成網絡、兩個分類器網絡以及局部最大平均差異距離度量結構組成,結構如圖3所示。

圖3 SAAN網絡結構Fig.3 The network structure of SAAN

為了更好實現源域和目標域的子域自適應,捕獲類別的細粒度信息。一方面,因為兩個分類器在網絡初始化時采用隨機初始化,設定不同的隨機種子,保證了網絡初始化及訓練完成后的權重是不一致,使得源域之外的目標域樣本被兩個分類器以不同方式進行分類,所以可以通過最大化兩個分類器之間局部最大平均差異dH(p,q)來檢測遠離源域的目標域樣本;另一方面為了使生成器生成的特征都在源域內,通過最小化局部最大平均差異dH(p,q),能夠使源域和目標域的子域對齊,從而完成子域自適應。該方法成功實現主要有兩個關鍵點:① 網絡模型能夠很好的識別遠離源域的目標域樣本,使得經過源域樣本學習的分類器不容易將其誤分類;② 目標域樣本使生成器生成的特征盡可能在源域的范圍之內,通過考慮類邊界和目標域樣本之間的關系,對齊源域和目標域。
實現源域和目標域的子域自適應,使模型具有較好的泛化性能,能夠準確識別不同工況下軸承的健康狀態。模型訓練和參數更新可分為三個階段,每個階段都有不同的損失函數與之對應,其示意如圖4所示。圖中G代表生成器,C代表分類器,xs和xt分別代表源域樣本與目標域樣本,下面將分別介紹訓練過程。

圖4 訓練步驟Fig.4 Training steps
步驟1把生成器和分類器作為一個網絡進行訓練,以源域樣本作為輸入,使其能夠正確地分類源域樣本。讓分類器和生成器構成的網絡能夠對故障特征進行正確分類,這一步是至關重要的。其優化的目標函數是使多分類的交叉熵損失函數最小。如式(4)所示
(4)
式中:I[ys=k]表示標簽函數,即若類別是k,則I[ys=k]=1,否則等于0;p(y|xs)指以xs為輸入相對應的類別k的輸出概率,即由網絡最后的Softmax層計算而來;(xs,ys)~(Xs,Ys)表示對其總和取平均值。
步驟2凍結生成器的可訓練參數,以源域樣本和目標域樣本作為輸入,通過最大化兩個分類器之間的局部最大平均差異(LMMD)來更新分類器網絡的可訓練參數,以發現遠離源域的目標樣本。同時為了使其能夠對源域樣本進行正確分類,保證網絡的分類性能不下降,其優化目標不僅包括兩個分類器的局部最大平均差異的損失,也包括在源域樣本上的分類損失。如式(5)所示
(5)
式中:L(Xs,Ys)與式(4)的計算方式一致;dH(p,q)即上文提到的LMMD損失,與式(1)的計算方式一致;p和q分別表示源域與目標域最終分類時的輸出概率向量。
步驟3凍結兩個分類器C1與C2的網絡可訓練參數,用目標域樣本訓練網絡,通過最小化兩個分類器之間的局部最大平均差異(LMMD),使生成器生成的特征能夠落在源域的范圍內,其優化的目標損失函數如式(6)所示
(6)
本文的試驗環境配置:CPU為Intel(R) Core(TM) i5-10200H,GPU為NVIDIA GeForce GTX 1650Ti,操作系統為Windows 10,深度學習框架為Pytorch 1.7,軟件平臺為python。模型訓練批次大小設為16,訓練次數為50次。模型訓練過程中使用自適應動量(Adam)隨機優化算法應用于梯度下降過程中,優化網絡權重參數。其初始學習率設置為lr=0.015,按照lr=lr×γ進行衰減,衰減間隔為10,衰減因子γ=0.9,即每訓練10次,學習率按照γ=0.9在上一次學習率的基礎上衰減一次。Adam優化器其它參數保持默認,即一階矩估計的指數衰減率為0.9,二階矩估計的指數衰減率為0.999,權重衰減(L2正則化)為0。
每次訓練都重復以上三個步驟,通過最大最小化兩個分類器之間的局部最大平均差異損失,使生成器和分類器進行對抗訓練,最終能夠使源域和目標域的子域對齊,對故障樣本進行正確的分類。
為了得到較為理想的故障診斷結果,在進行試驗驗證之前,首先需要進行數據預處理和數據分割。SAAN網絡是將實測振動信號轉換為頻域信號作為模型的輸入。具體的數據預處理方式如圖5所示。

圖5 數據預處理Fig.5 Data preprocessing
首先,對樣本進行不重疊的切分,切分后每個樣本的時域信號長度為1 024個采樣點,將切分得到的時域樣本通過快速傅里葉變換(FFT)變換到頻域,由于頻譜系數的對稱性,每個樣本的長度變為512;此后,對經過FFT變換后的數據樣本幅值進行Z分數標準化,使輸入值保持在一定的范圍內。如式(7)所示
(7)
式中:x為經過FFT變換后的幅值特征向量;μx與σx分別為幅值特征向量x的均值和標準差,經過Z分數標準化后的結果Zx的均值為0,標準差為1。
為了使模型的故障診斷性能達到最佳,并且要避免在訓練網絡模型過程中發生測試泄漏問題,需要將訓練集、測試集按照8∶2的比例進行隨機劃分,測試集只用于評估模型而不參與訓練過程。
凱斯西儲大學(Case Western Reserve University, CWRU)軸承數據集是從CWRU提供的軸承試驗平臺收集而來的[19]。本文使用了采樣頻率為12 kHz的驅動端的傳感器數據,根據不同故障類型和故障尺寸共分為十類,如表1所示。

表1 凱斯西儲大學軸承數據集故障狀態信息Tab.1 Bearing data set failure status information of CWRU
此外CWRU數據集分別從四種不同的工況(0HP、1HP、2HP、3HP)下收集而來,本文將不同工況視為不同的遷移任務,如表2所示。例如0→1表示,源域為0HP工況下向目標域為1HP下進行遷移,所以該試驗共有12組遷移試驗任務。

表2 CWRU數據集工況信息Tab.2 CWRU data set working condition information
為了驗證SAAN模型方法的有效性,避免試驗的偶然性,每個遷移任務采取10次重復試驗并對結果進行統計分析。每次試驗訓練50個批次,取每次試驗最后一個批次測試集在模型上的故障識別精度作為該次試驗的最終結果。在試驗過程中發現,由于SAAN模型在源域上的識別準確率都高達100%,因此在結果展示上只考慮在目標域上的識別結果。試驗結果如圖6所示。本文所提出的方法在目標域上的故障識別精度可達99%以上,試驗結果證實了SAAN模型的有效性。

圖6 不同遷移任務下的目標域識別精度Fig.6 Target domain recognition accuracy under different tasks
本文進行對比試驗,分別與相關對齊[20](CORAL)、多核最大平均差異[21](MK-MMD)、聯合最大平均差異[22](JMMD),域對抗網絡[23](DANN)和條件域對抗網絡[24](CDAN)五種域自適應方法進行對比,其中相關對齊(CORAL)、多核最大平均差異(MK-MMD)、聯合最大平均差異(JMMD)都是通過距離函數來度量源域與目標域之間的差異,并在訓練過程中最小該距離差異以實現特征分布對齊;其中DANN是將額外的一個域分類器連接到特征提取器,通過最小化標簽預測損失和域分類損失,提取域不變特征用于分類。CDAN通過鑒別器與生成器對抗訓練,對齊特征與類別的聯合分布,實現無監督領域自適應,從而對軸承的健康狀態進行分類。SAAN網絡不僅利用了新穎的LMMD距離度量兩個分類器之間的差異,并最小化該距離,縮小源域與目標域的類間距離,同時通過生成器與兩個分類器之間對抗學習的方式來調整決策邊界。各種不同遷移方法在目標域下的故障識別準確率如圖7所示。

圖7 CWRU數據集不同域適應方法故障識別準確率對比Fig.7 Comparison of fault recognition accuracy of different domain adaptation methods in CWRU data set
結果表明,上述域自適應方法在所有遷移任務中的平均準確率都可達85%以上,都具有一定的域自適應能力。SAAN域自適應方法相較于其他五種域自適應方法而言,在所有遷移任務中的故障診斷準確率都高達99%以上,說明SAAN網絡模型的故障識別準確率優于其他五種域自適應方法,具有良好的泛化能力。
為了驗證模型的抗噪性能,本文采取對所有樣本數據按照SNR(dB)=10lg(Psignal/Pnoise)加入信噪比SNR(dB)=-5,-2,0,2,5的高斯噪聲進行試驗,其中Psignal和Pnoise分別為原始信號和噪聲的功率大小。原始信號、噪聲信號及加入噪聲后的復合信號如圖8所示。

圖8 原始信號、-5 dB噪聲信號及復合信號Fig.8 Original signal,-5 dB noise signal and composite signal
對添加噪聲后的復合信號采用上述相同的數據預處理方法,每個遷移任務都進行10次重復試驗,計算其平均值與標準差。在加入不同的噪聲強度后,SAAN網絡在各個遷移任務下的試驗結果如圖9所示。



圖9 不同噪聲強度在各遷移任務下的準確率Fig.9 Accuracy of different noise intensities under transfer task
通過試驗結果我們可以發現,添加-5 dB的強噪聲,SAAN網絡模型在所有遷移任務上的準確率都能夠達到85%以上,能夠有效的抵抗噪聲的干擾。此外,為了進一步驗證SAAN網絡模型優越的抗噪性能,在0HP→1HP的遷移任務上進行抗噪試驗,加入不同強度的噪聲,與本文提到的其他域自適應方法進行對比,試驗結果如表3、圖10所示。

表3 0HP→1HP下不同域自適應方法在不同噪聲強度下的準確率Tab.3 Accuracy of adaptive methods in different domains under different noise intensities under 0HP→1HP

圖10 0HP→1HP下不同域自適應方法在不同噪聲強度下的準確率Fig.10 Accuracy of adaptive methods in different domains under different noise intensities under 0HP→1HP
由圖10可以清晰的看出SAAN網絡的抗噪性能在各個噪聲強度下的故障診斷準確率都高于其他域自適應方法,在-5 dB的強噪聲環境下,更是比其他域自適應方法的準確率高出10%左右,充分的說明了SAAN網絡有良好的抗噪性能。
為了進一步驗證本文提出的SAAN模型,本文將在東南大學數據集上進一步試驗。東南大學(SEU)數據集是由東南大學提供的變速箱數據集[25],該數據集由兩個子數據集組成,包括軸承數據集和齒輪數據集,共有10種故障類別,如表4所示。

表4 東南大學齒輪箱數據集故障狀態信息Tab.4 Fault status information of SEU gearbox data set
數據集具有轉速和負載配置兩種不同的工況分別設置為20 Hz-0 V和30 Hz-2 V,任務0→1表示源域是數據具有20 Hz轉速、0 V負載,目標域是具有30 Hz旋轉速度和2 V負載的數據。因此,該數據集共有0→1和1→0兩種遷移任務。
在東南大學數據集(SEU)訓練SAAN網絡模型,在不同遷移任務上訓練過程如圖11所示。通過訓練曲線我們可以發現,模型在0→1和1→0遷移任務上具有較高的故障診斷精度,在源域上可達99%以上的識別準確率,在目標域上也能夠達到95%以上的準確率,證明了SAAN模型方法的有效性,能夠對無標簽目標域的健康狀態進行正確識別。

圖11 訓練過程的診斷精度Fig.11 Diagnostic accuracy during training
此外,為了說明SAAN模型采用的動態卷積結構能夠提升模型的性能,提高故障類別的識別精度,將其中的動態卷積結構更換為普通卷積進行對比試驗。同時,為了避免試驗的偶然性,分別進行10次獨立試驗且觀察在不同任務下目標域上的故障識別準確率,并計算10次試驗下的標準偏差作為該遷移任務下的誤差,其試驗結果如圖12所示。通過結果可以發現動態卷積的性能明顯優于其普通卷積。

圖12 普通卷積與動態卷積的性能對比Fig.12 Performance comparison between ordinary convolution and dynamic convolution
另一方面,采用不同的域自適應方法進行了對比試驗,MK-MMD、CORAL、JMMD、DANN、CDAN五種域自適應方法不同遷移任務下目標域的識別精度對比如表5、圖13所示。通過圖表可以清晰的看到SAAN模型在不同遷移任務下的識別精度都要高于其他五種域自適應方法。

圖13 SEU數據集不同域適應方法故障識別準確率對比Fig.13 Comparison of fault recognition accuracy of different domain adaptation methods in SEU data set

表5 不同域自適應方法在SEU數據集上的診斷準確率Tab.5 Diagnosis accuracy rate of different domain adaptive methods on SEU data set
為了從視覺上直觀了解SAAN網絡模型對目標域特征的影響,對SAAN網絡模型在東南大學(SEU)數據集上0→1和1→0遷移任務上的結果進一步分析,使用t分布隨機鄰域嵌入(t-SNE)技術將高維特征映射到二維空間內,并將二維特征進行可視化展示,如圖14所示。通過可視化分析,相較于未遷移網絡而言,可以清楚看出SAAN網絡能夠較好的實現每個類別的子域自適應,使故障類別在類空間的角度實現了對齊。此外,通過與其他五種域自適應方法的可視化特征圖進行對比,如圖15所示,可以從特征圖中看出,SAAN模型得到特征圖的可分性要優于其他域自適應方法,有著更為明顯決策邊界,進一步說明其故障識別精度要高于其他域自適應方法。

1→0 SAAN遷移圖14 不同遷移任務下源域和目標域的t-SNE可視化Fig.14 The t-SNE visualization of source domain and target domain under different migration tasks

圖15 不同域自適應方法在0→1任務下目標域的t-SNE可視化Fig.15 The t-SNE visualization of the target domain under the 0→1 task with different domain adaptive methods
本文將無監督子域自適應方法應用到軸承智能故障診斷任務中,提出了一種新的SAAN模型,用于不同工況下的軸承智能故障診斷方法。通過2個數據集,共14個遷移任務證實了SAAN模型的有效性。同時,根據試驗結果得出以下三個結論。
(1) SAAN模型在不增加卷積網絡深度和寬度的情況下,利用動態卷積提取更多的有效特征,相比普通卷積而言能夠在目標域獲得更高的識別精度;
(2) SAAN模型與大多數域自適應方法不同,通過捕獲類別的細粒度信息,充分利用每個故障類別的決策邊界,使源域和目標域在類空間上實現對齊,避免了源域與目標域樣本在決策邊界附近出現類混淆。
(3) SAAN模型不僅在不同工況下具有良好的泛化性能,有效地解決了目標域無標簽和變工況下因數據分布不同而導致模型診斷準確率下降的問題,同時具有良好的抗噪性能。相較于其他域自適應方法,具有一定的優越性。