余浩帥 湯寶平 張 楷 譚 騫 魏 靜
重慶大學(xué)機(jī)械傳動國家重點(diǎn)實(shí)驗(yàn)室,重慶,400044
深度學(xué)習(xí)由于其強(qiáng)大的非線性特征自適應(yīng)提取能力和表征能力而受到故障診斷等領(lǐng)域的廣泛重視[1-2],然而,基于深度學(xué)習(xí)的故障診斷方法達(dá)到較高準(zhǔn)確率的前提是需要通過大量的有標(biāo)簽數(shù)據(jù)構(gòu)建深層神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。在實(shí)際工程中,風(fēng)電齒輪箱的故障數(shù)據(jù)標(biāo)記依賴風(fēng)場故障分析報告和專家結(jié)論,收集大量精準(zhǔn)的有標(biāo)簽數(shù)據(jù)樣本十分困難且代價昂貴,導(dǎo)致許多風(fēng)場有標(biāo)簽故障樣本稀小,傳統(tǒng)深度學(xué)習(xí)網(wǎng)絡(luò)在小樣本情況下容易出現(xiàn)過擬合的問題,模型精度不高[3-4]。
近年來,部分學(xué)者已在小樣本故障診斷領(lǐng)域開展了相關(guān)研究,并取得一定成果。DING等[5]利用生成式對抗網(wǎng)絡(luò)(generative adversarial networks, GAN)通過隨機(jī)噪聲生成各類標(biāo)簽樣本從而達(dá)到擴(kuò)充數(shù)據(jù)的目的來解決標(biāo)簽樣本過少的問題。ZHANG等[6]利用深度半監(jiān)督網(wǎng)絡(luò)通過大量的無標(biāo)簽樣本輔助有標(biāo)簽樣本獲得分類性能更好的網(wǎng)絡(luò)模型。但上述方法自身均存在不足和限制,如生成對抗網(wǎng)絡(luò)模型訓(xùn)練困難,容易發(fā)生模型崩潰、生成器模型梯度消失等問題,而深度半監(jiān)督方法無法確認(rèn)無標(biāo)簽樣本數(shù)量是否存在不平衡,并且由于模型超參數(shù)過多而難以獲得最優(yōu)模型。
原型網(wǎng)絡(luò)(prototypical networks, ProNet)[7]是一種基于度量的小樣本學(xué)習(xí)方法,該方法旨在學(xué)習(xí)各類樣本在一個度量空間的原型表示,通過比較查詢樣本與各類原型的距離,將查詢樣本歸入距離最近的類別,從而達(dá)到分類的目的。相比生成式對抗網(wǎng)絡(luò)和深度半監(jiān)督網(wǎng)絡(luò)的小樣本故障診斷方法,原型網(wǎng)絡(luò)無需通過隨機(jī)噪聲或者無標(biāo)簽樣本擴(kuò)充數(shù)據(jù)集,也不存在模型崩潰、生成器模型梯度消失、無標(biāo)簽樣本數(shù)量是否存在不平衡等問題。但是,由于風(fēng)電齒輪箱工況波動較大,振動信號頻率成分復(fù)雜,時變性強(qiáng),ProNet網(wǎng)絡(luò)結(jié)構(gòu)容易忽略信號內(nèi)部的相關(guān)性,無法捕捉信號長距離依賴的特征[8-9],極大地抑制了其在風(fēng)電齒輪箱故障診斷的應(yīng)用。
針對上述問題,本文提出了一種混合自注意力原型網(wǎng)絡(luò)(mixed self-attention prototypical networks, MAS-ProNet)的風(fēng)電齒輪箱故障診斷方法。先通過原型網(wǎng)絡(luò)將原始振動信號映射到故障特征度量空間,以提高方法的泛化能力;再采用混合自注意力模塊建立振動信號的全局依賴關(guān)系,獲取更具判別性的特征信息,從而獲取風(fēng)電齒輪箱各健康狀態(tài)下更加精確的度量原型;最后利用度量分類器實(shí)現(xiàn)小樣本條件下風(fēng)電齒輪箱的故障診斷。
ProNet是一種基于度量的小樣本學(xué)習(xí)方法,與傳統(tǒng)深度學(xué)習(xí)方法不同,ProNet將訓(xùn)練數(shù)據(jù)集劃分為支持集和查詢集兩部分,其中支持集為包含K種健康狀態(tài)下總共N個有標(biāo)簽樣本的數(shù)據(jù)集s={(x1,y1),(x2,y2),…,(xN,yN)},其中xi∈RD是一個D維的特征向量,yi∈{1,2,…,K}為樣本標(biāo)簽,Sk代表標(biāo)簽為k的樣本數(shù)量;查詢集包含H個有標(biāo)簽數(shù)據(jù)。ProNet結(jié)構(gòu)如圖1所示,其中特征提取器為三層卷積網(wǎng)絡(luò),卷積層1參數(shù)為[16,13](16通道的13大小的卷積核),卷積層2參數(shù)為[64,7],卷積層3參數(shù)為[64,3],p為每類健康狀態(tài)的樣本數(shù)目。ProNet結(jié)構(gòu)主要包含特征嵌入、特征表示和距離度量三個部分,首先將支持集的各類數(shù)據(jù)輸入到ProNet網(wǎng)絡(luò)的特征提取器中,學(xué)習(xí)支持集到度量空間的非線性映射關(guān)系,得到各樣本數(shù)據(jù)在度量空間的M維的特征嵌入,然后通過每一類p個樣本特征嵌入的平均值得到各類健康狀態(tài)在度量空間的特征表示ck(即各類健康狀態(tài)的原型):
圖1 原型網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.1 Prototypical networks structure
(1)
其中fφ(xi)為向量xi在度量空間的特征嵌入,即向量xi通過三層卷積層提取到的特征。最后將查詢集的數(shù)據(jù)輸入到同一個ProNet網(wǎng)絡(luò)中,在度量空間得到M維的特征嵌入c*∈RM,分別得到c*與K個原型ck的歐氏距離dk,即為查詢集與各原型的距離度量,將dk取負(fù),通過Softmax轉(zhuǎn)化為每一類的概率,概率最大的標(biāo)簽類作為網(wǎng)絡(luò)輸出結(jié)果,如下式:
(2)
由于風(fēng)電齒輪箱工況復(fù)雜,載荷波動較大,又因振動信號傳遞路徑復(fù)雜,同時受到大量無規(guī)律強(qiáng)背景噪聲的影響,導(dǎo)致信號的故障特征極其微弱[10]。并且,風(fēng)電齒輪箱振動信號作為神經(jīng)網(wǎng)絡(luò)模型輸入時,由于ProNet中卷積計(jì)算的“權(quán)值共享與局部連接”特性,未考慮不同卷積核提取特征的通道信息與位置信息對度量分類器的影響,導(dǎo)致故障特征提取困難[11-12]。針對上述問題,本文引入自注意力機(jī)制,在振動信號樣本中,不同位置的局部信號具有不同的特征,位置自注意力機(jī)制通過掃描振動信號,獲取需要重點(diǎn)關(guān)注的局部信號所在的位置,賦予更大的權(quán)重;網(wǎng)絡(luò)中每個通道由一個卷積核與輸入特征計(jì)算獲得,不同卷積核提取到的特征對結(jié)果的貢獻(xiàn)度不同,通過在原型網(wǎng)絡(luò)中附加包含位置和通道自注意力的混合自注意力模塊,使得模型更擅長捕捉信號特征的內(nèi)部相關(guān)性,當(dāng)故障特征不明顯時,混合自注意力模塊通過網(wǎng)絡(luò)自適應(yīng)學(xué)習(xí)振動信號特征中的位置和通道的全局依賴關(guān)系,選擇性地賦予信號中具有相似特征的信息更大的權(quán)重,相比無規(guī)律的強(qiáng)噪聲背景信息,更突出故障特征信息,從而提取更具判別性的特征,提高度量分類器的準(zhǔn)確度。
1.2.1位置自注意力模塊
位置自注意力模塊重點(diǎn)關(guān)注信號中具有類似特征的位置,為其賦予一個更高的權(quán)重,提高信號特征的有效性,其結(jié)構(gòu)如圖2所示。
圖2 位置自注意力模塊Fig.2 Position self-attention module
圖2中,A∈RC×L為振動信號經(jīng)過卷積層得到的特征圖,C為通道數(shù),L為特征圖長度,為了增強(qiáng)其非線性表征能力,通過卷積核為1的卷積層分別生成特征圖B、H、W,{B,H,W}∈RC×L,然后將B的轉(zhuǎn)置矩陣與H作矩陣乘法,經(jīng)過Softmax層得到權(quán)重矩陣S∈RL×L:
(3)
其中,Sji用來度量位置i與j上特征點(diǎn)的相關(guān)程度,特征向量越相似,則距離和夾角就越小,所以乘積就越大,即兩個位置的特征越相似,相關(guān)性越大,則Sji越大。
然后將特征圖W和權(quán)重矩陣S的轉(zhuǎn)置矩陣作乘法得到維度為RC×L的位置自注意力矩陣。最后,位置自注意力模塊的輸出結(jié)果E為位置自注意力矩陣與原始特征矩陣的加權(quán)和,具體計(jì)算如下式所示:
(4)
其中,α為賦予位置自注意力矩陣的權(quán)重,初始值為0,然后逐漸學(xué)習(xí)到更多的權(quán)重。由式(4)可知,位置自注意力特征矩陣E包含了注意力矩陣和原始特征矩陣的所有信息。在位置自注意力矩陣中,相似程度更高的位置會互相增益得到一個更高的權(quán)重,使得網(wǎng)絡(luò)聚焦于更具相似特征的位置信息,從而提取更具故障特性的信息。
1.2.2通道自注意力模塊
傳統(tǒng)的深度神經(jīng)網(wǎng)絡(luò)并沒有考慮各通道之間的依賴性,通過加入通道自注意力模塊,可以自適應(yīng)地調(diào)整各通道之間的特征響應(yīng)值,建立通道的依賴關(guān)系,從而提高網(wǎng)絡(luò)的性能[13]。每一個通道都可看作一個類特有的特征響應(yīng),通過通道自注意力模塊,可以挖掘各個通道之間的權(quán)重關(guān)系,以獲取更有效的特征信息,通道自注意力模塊結(jié)構(gòu)如圖3所示。
圖3 通道自注意力模塊Fig.3 Channel self-attention module
首先將特征圖A∈RC×L與A的轉(zhuǎn)置矩陣AT進(jìn)行矩陣乘法得到維度為RC×C的通道權(quán)重矩陣,然后通過一個Softmax層得到通道自注意力矩陣X∈RC×C:
(5)
式中,Xji表示第i個通道對第j個通道的影響。
然后將X與A的轉(zhuǎn)置矩陣做乘法,將結(jié)果變形為維度為RC×H×W的矩陣,最后得到的通道注意力模塊的輸出結(jié)果如下:
(6)
其中,β為賦予通道自注意力矩陣的權(quán)重,初始值為0,然后逐漸學(xué)習(xí)到更多的權(quán)重。由式(6)可知,通道自注意力特征矩陣E包含了注意力矩陣和原始通道特征的所有信息。在通道自注意力矩陣中,相似度更高的通道會互相增益得到一個更高的權(quán)重,通過對各個通道的依賴性進(jìn)行建模,有助于提高特征的識別能力。
通過構(gòu)建圖4所示的混合自注意力模塊,將兩個注意力模塊的特征輸出進(jìn)行矩陣相加融合,得到的包含位置依賴和通道依賴的混合自注意力特征更具判別性。最終構(gòu)建的MAS-ProNet故障診斷模型如圖5所示,輸入的振動信號先通過原型網(wǎng)絡(luò)映射到故障特征度量空間,再通過混合自注意力模塊建立振動信號的全局依賴關(guān)系,利用支持集學(xué)習(xí)到風(fēng)電齒輪箱各健康狀態(tài)下的度量原型,然后計(jì)算查詢集在度量空間與各個原型的歐氏距離,將其輸入到Softmax分類器,得到模型的預(yù)測結(jié)果;最后,計(jì)算模型預(yù)測結(jié)果與真實(shí)標(biāo)簽的交叉熵?fù)p失,經(jīng)過多次更新模型參數(shù)得到最優(yōu)模型參數(shù)和各類健康狀態(tài)的原型。
圖4 混合自注意力模塊Fig.4 Mixed self-attention module
圖5 混合自注意力原型網(wǎng)絡(luò)故障診斷模型Fig.5 Mixed self-attention prototypical networks fault diagnosis model
MAS-ProNet的風(fēng)電齒輪箱故障診斷方法流程如圖6所示,分為3個步驟:信號的采集與截?cái)?、網(wǎng)絡(luò)模型的訓(xùn)練、故障診斷。
圖6 混合自注意力原型網(wǎng)絡(luò)的風(fēng)電齒輪箱故障診斷方法流程Fig.6 Process of fault diagnosis method for wind turbines gearbox based on Mixed self-attention prototypical networks
(1)信號的采集與截?cái)唷@谜駝觽鞲衅鞑杉L(fēng)電齒輪箱的振動信號,將信號進(jìn)行等長截?cái)嗟玫綐颖尽?/p>
(2)網(wǎng)絡(luò)模型的訓(xùn)練。使用支持集和查詢集數(shù)據(jù)進(jìn)行模型參數(shù)和各類原型的訓(xùn)練,并在訓(xùn)練過程中不斷地調(diào)整超參數(shù),直到達(dá)到較好的性能。
(3)故障診斷。網(wǎng)絡(luò)模型訓(xùn)練完成并且得到各類原型之后,使用驗(yàn)證集進(jìn)行故障診斷測試。
按照上述方法構(gòu)建MAS-ProNet,模型訓(xùn)練時將支持集和查詢集輸入到卷積層,然后通過位置自注意力模塊和通道自注意力模塊建立振動信號的全局依賴關(guān)系,獲取更具判別性的特征,再利用支持集的輸出學(xué)習(xí)到每類樣本標(biāo)簽的原型,最后,通過選取距離查詢集輸出最近的原型作為預(yù)測結(jié)果,直至訓(xùn)練到滿足要求的網(wǎng)絡(luò)模型以及標(biāo)簽原型。通過已保存的最優(yōu)MAS-ProNet實(shí)現(xiàn)故障診斷。
為了驗(yàn)證所提出算法模型的有效性,采用國內(nèi)某風(fēng)場通過振動狀態(tài)監(jiān)測系統(tǒng)(CMS系統(tǒng))采集到的某型號多臺2MW風(fēng)電機(jī)組的風(fēng)電齒輪箱振動數(shù)據(jù)對模型進(jìn)行驗(yàn)證。該風(fēng)場CMS系統(tǒng)采樣頻率為25 600 Hz,產(chǎn)生大量的振動數(shù)據(jù),考慮到風(fēng)電齒輪箱振動故障大多是漸變故障,受風(fēng)場數(shù)據(jù)存儲能力限制,故每天每個傳感器只存儲其中的一小段連續(xù)數(shù)據(jù),根據(jù)該風(fēng)場數(shù)據(jù)報告,每臺風(fēng)機(jī)每個傳感器每天存儲振動數(shù)據(jù)為131 072個數(shù)據(jù)點(diǎn)。該型號風(fēng)電機(jī)組齒輪箱主要包括輸入軸、一級行星輪系、二級平行齒輪等,其結(jié)構(gòu)簡圖如圖7 所示。
圖7 風(fēng)電齒輪箱結(jié)構(gòu)簡圖Fig.7 Wind turbines gearbox structure
在該風(fēng)場服役期間,通過布置在Z2齒輪軸承座的加速度傳感器共搜集到滿足要求的5種不同健康狀態(tài)的風(fēng)電齒輪箱實(shí)測振動信號數(shù)據(jù),分別為正常、齒損傷、保持架開裂、軸承滾珠掉落和軸承磨損。由于采樣頻率為25 600 Hz,根據(jù)風(fēng)場提供信息可知,Z2齒輪轉(zhuǎn)頻約為6.26 Hz,即轉(zhuǎn)動一圈用時0.1597 s,而4096個點(diǎn)采樣時間為0.16 s,恰好代表齒輪轉(zhuǎn)動一圈的信息,故選取4096個點(diǎn)為一個樣本,每臺風(fēng)機(jī)每個傳感器每天可產(chǎn)生32個樣本。根據(jù)風(fēng)場提供的風(fēng)機(jī)風(fēng)電齒輪箱故障報告,本文將發(fā)現(xiàn)各個故障時間點(diǎn)的前10天的數(shù)據(jù)樣本作為故障樣本數(shù)據(jù)集驗(yàn)證本文方法的診斷準(zhǔn)確率。圖8為部分狀態(tài)下的故障檢視圖,圖9為各類健康狀態(tài)的其中一個樣本數(shù)據(jù)的信號展示,它對應(yīng)的是齒輪旋轉(zhuǎn)一圈的信息。
(a)齒損傷 (b)保持架開裂
(c)軸承滾珠掉落 (d)軸承磨損圖8 風(fēng)電齒輪箱故障檢視圖Fig.8 Wind turbines gearbox fault inspection view
圖9 風(fēng)電齒輪箱各健康狀態(tài)及振動信號Fig.9 Wind turbines gearbox status and vibration signal
本次驗(yàn)證過程中,混合自注意力原型網(wǎng)絡(luò)(MAS-ProNet)分別選取10、20、50、100、200、300個數(shù)據(jù)作為訓(xùn)練樣本。由于不同特征對各故障的效果不同,為了減少故障診斷過程中的人工參與,更有效地提取特征,實(shí)現(xiàn)端對端的學(xué)習(xí),直接使用原始數(shù)據(jù)進(jìn)行診斷。驗(yàn)證集樣本數(shù)均為200,訓(xùn)練迭代次數(shù)設(shè)置為200次,為了降低偶然因素的影響,取最后10次準(zhǔn)確率的平均值作為評估標(biāo)準(zhǔn)。本次驗(yàn)證過程硬件配置為i7-10750HCPU、RTX2070GPU;系統(tǒng)環(huán)境為Windows10,Pytorch版本為1.5.0,CUDA版本10.2,cudnn版本為7.6.5。
模型設(shè)置參數(shù)如表1 所示,同時本文在每個卷積層輸出時都進(jìn)行了批歸一化和一個采樣核大小為2的最大池化層,能在緩解過擬合的同時加快收斂速度,激活函數(shù)均為ReLu。
表1 模型結(jié)構(gòu)參數(shù)
MAS-ProNet每次迭代過程中隨機(jī)從樣本中選取支持集,在10個樣本情況下,由于樣本個數(shù)限制,支持集各類樣本數(shù)量設(shè)置為5,在20、50、100、200和300個樣本數(shù)據(jù)情況下,支持集各類樣本數(shù)量均為10,剩下的數(shù)據(jù)作為查詢集,按照圖6所示的流程訓(xùn)練生成滿足要求的各類原型和模型,模型訓(xùn)練完成后,通過驗(yàn)證集驗(yàn)證模型在風(fēng)電齒輪箱實(shí)測數(shù)據(jù)上的故障診斷性能。
為了驗(yàn)證本文所提出的模型性能,在相同數(shù)據(jù)集的情況下,與CNN、WDCNN(deep convolutional neural networks with wide first-layer kernels)[14]、ProNet 3種深度學(xué)習(xí)方法進(jìn)行了對比。模型在不同的單個標(biāo)簽樣本量下的故障診斷效果如圖10所示,平均準(zhǔn)確率和標(biāo)準(zhǔn)差如表2所示。
表2 實(shí)驗(yàn)結(jié)果
圖10 不同方法的測試準(zhǔn)確度對比Fig.10 The test accuracy comparison of thedifferent methods
由圖10可知,在不同樣本數(shù)量下,本文所提出的方法MAS-ProNet在4種故障診斷方法中均取得了最高的準(zhǔn)確率。MAS-ProNet利用原型網(wǎng)絡(luò)的度量學(xué)習(xí)提高了網(wǎng)絡(luò)的泛化能力,同時,針對風(fēng)電齒輪箱振動信號受強(qiáng)背景噪聲影響、成分復(fù)雜的情況,通過混合自注意力模塊建立了信號的全局依賴關(guān)系,使得輸出的特征信息更具判別性。
隨著樣本數(shù)量的增多,網(wǎng)絡(luò)的過擬合得到緩解,4種方法的準(zhǔn)確率均得到了提高。特別地,在10個樣本情況下,CNN模型的準(zhǔn)確率較差,僅達(dá)到25.89%,WDCNN通過降低網(wǎng)絡(luò)訓(xùn)練過程中參數(shù)的權(quán)值來緩解過擬合,準(zhǔn)確率相較CNN提高了14.11%,ProNet則利用度量學(xué)習(xí)來創(chuàng)建各類健康狀態(tài)特征的原型,其泛化能力相比于WDCNN得到進(jìn)一步提高,準(zhǔn)確率相較于WDCNN提高了23.47%。在200個樣本情況下,網(wǎng)絡(luò)過擬合的問題已經(jīng)得到了很大的緩解,各方法的準(zhǔn)確率已經(jīng)逐漸接近,MAS-ProNet通過混合自注意力模塊能夠聚焦于故障特征信息,相比其他3種方法準(zhǔn)確度依然有一定的提高。在樣本數(shù)達(dá)到300時,MAS-ProNet的準(zhǔn)確率相較200個樣本時提高幅度不大,由于此時樣本數(shù)量已經(jīng)基本滿足傳統(tǒng)深度學(xué)習(xí)方法的需求,CNN的準(zhǔn)確率已經(jīng)超過了MAS-ProNet。以上結(jié)果表明本文提出的MAS-ProNet風(fēng)電齒輪箱故障診斷方法相比其他幾種深度學(xué)習(xí)故障診斷方法在小樣本條件下具有明顯優(yōu)勢。
為了觀察MAS-ProNet在各類的表現(xiàn),在樣本數(shù)量為50個情況下,繪制驗(yàn)證集上一次隨機(jī)測試結(jié)果的混淆矩陣,如圖11所示。其中,橫軸表示驗(yàn)證集真實(shí)標(biāo)簽,縱軸表示驗(yàn)證集的預(yù)測標(biāo)簽,主對角線為網(wǎng)絡(luò)模型預(yù)測的正確樣本數(shù),標(biāo)簽0表示正常,標(biāo)簽1表示保持架開裂,標(biāo)簽2表示軸承滾珠掉落,標(biāo)簽3表示軸承滾珠掉落,標(biāo)簽4表示軸承磨損??梢钥闯觯夯旌献⒁饬υ途W(wǎng)絡(luò)模型對風(fēng)電齒輪箱各類標(biāo)簽識別具有很高的準(zhǔn)確度,標(biāo)簽3與標(biāo)簽4由于均為軸承部位的故障類型,二者的相似度更高,所以誤判率相較其他幾類偏高。
圖11 驗(yàn)證結(jié)果混淆矩陣Fig.11 Sample test result distribution
(1)ProNet通過建立各類健康狀態(tài)在度量空間的特征原型,通過距離度量來分類查詢樣本的健康狀態(tài),能夠很好地緩解網(wǎng)絡(luò)的過擬合問題,提高小樣本情況下故障診斷的準(zhǔn)確率。
(2)引入的混合自注意力模塊使得網(wǎng)絡(luò)能夠聚焦于更具相似特征的信息,相比無規(guī)律強(qiáng)背景噪聲更突出故障特征信息,從而提取更具判別性的特征,獲得更加精確的類原型。
(3)通過對比CNN、WDCNN和原始ProNet方法,混合自注意力模塊的引入使得模型能夠建立振動信號的全局依賴關(guān)系,也使MAS-ProNet在小樣本條件下取得更好的風(fēng)電齒輪箱故障診斷效果。