王樹宇,袁嫣紅,張建義
(浙江理工大學(xué)機(jī)械與自動(dòng)控制學(xué)院,浙江杭州 310018)
旋轉(zhuǎn)機(jī)械是一種主要依靠旋轉(zhuǎn)動(dòng)作來實(shí)現(xiàn)特定功能的機(jī)械設(shè)備。典型的旋轉(zhuǎn)機(jī)械包括汽輪機(jī)、燃?xì)廨啓C(jī)、離心壓縮機(jī)和高速離心泵等。這些機(jī)器廣泛應(yīng)用于電力、石化、冶金、航天等行業(yè)。石油化工等流程工業(yè)的生產(chǎn)過程都是連續(xù)化大生產(chǎn),大功率高速流程離心泵作為流體輸送的關(guān)鍵動(dòng)力設(shè)備,除了具備優(yōu)越的動(dòng)力性能指標(biāo),更重要的是在運(yùn)行過程中必須具有很好的可靠性。由于大功率設(shè)備智能化水平普遍不高,在實(shí)際運(yùn)行過程中經(jīng)常出現(xiàn)故障,嚴(yán)重影響連續(xù)化大生產(chǎn),造成巨大的經(jīng)濟(jì)損失。因此,及時(shí)發(fā)現(xiàn)設(shè)備的故障具有重要意義。
目前在工業(yè)生產(chǎn)過程中主要依靠定期巡查來評(píng)估旋轉(zhuǎn)機(jī)械的運(yùn)行狀態(tài)。這種方法無法及時(shí)發(fā)現(xiàn)設(shè)備的故障,同時(shí)非常依賴評(píng)估員的實(shí)踐經(jīng)驗(yàn),因此需要一套針對(duì)旋轉(zhuǎn)機(jī)械設(shè)備的有效在線故障診斷方法。目前,主要借助支持向量機(jī)(SVM)、小波包樣本熵和HHT等算法對(duì)設(shè)備進(jìn)行故障診斷。但這些算法是有監(jiān)督機(jī)器學(xué)習(xí)方法,需要大量已知的樣本標(biāo)簽,然而實(shí)際工況下缺少大量故障樣本,故限制了這些方法的廣泛應(yīng)用?;诖?,無監(jiān)督機(jī)器學(xué)習(xí)方法更具有實(shí)際應(yīng)用價(jià)值。
2006年HINTON等發(fā)表的關(guān)于深度學(xué)習(xí)的文章中也提到了無監(jiān)督方法,其中著名的有受限玻爾茲曼機(jī)、自編碼網(wǎng)絡(luò)、對(duì)抗生成網(wǎng)絡(luò)。
HINTON等提出了受限玻爾茲曼機(jī),堆疊形成深度信念網(wǎng)絡(luò),其主要用于特征提取和預(yù)訓(xùn)練。自編碼模型更是廣泛應(yīng)用于圖像分類、模式識(shí)別、視頻異常檢測(cè)。生成對(duì)抗網(wǎng)絡(luò)是由GOODFELLOW等在2014 年提出的一種新型網(wǎng)絡(luò)結(jié)構(gòu),是一種基于博弈場(chǎng)景的半監(jiān)督特征學(xué)習(xí)算法,隨后更是廣泛應(yīng)用于圖像生成。
2019年,Google Brain和OpenAI合作的文章Adversarial Autoencoders(AAE)中提出了一種對(duì)抗自編碼的方法,該架構(gòu)中訓(xùn)練一個(gè)新網(wǎng)絡(luò)來有區(qū)分地預(yù)測(cè)樣本是自編碼的隱藏代碼還是來自用戶確定的先驗(yàn)分布。本文作者基于對(duì)抗自編碼模型,通過優(yōu)化網(wǎng)絡(luò)機(jī)構(gòu)建立故障檢測(cè)模型。將一臺(tái)高速泵作為研究對(duì)象,并與傳統(tǒng)方法作對(duì)比,驗(yàn)證所提方法在機(jī)械系統(tǒng)異常檢測(cè)中的優(yōu)越性。
GAN網(wǎng)絡(luò)分為兩部分:生成器和鑒別器,本質(zhì)上為兩個(gè)多層感知機(jī)網(wǎng)絡(luò)。生成器可以生成偽造的圖像,通過訓(xùn)練鑒別器將生成器生成的虛假圖像與數(shù)據(jù)集區(qū)分開。最初因?yàn)闄?quán)重是隨機(jī)的,生成器會(huì)產(chǎn)生一些隨機(jī)噪聲,通過訓(xùn)練可使鑒別器能分辨出這種隨機(jī)噪聲和真實(shí)圖像,鑒別器能力提高后,通過權(quán)值反向傳遞促使生成器生成虛假圖像的能力提高,使它生成更好的偽圖像,生成器產(chǎn)生圖像效果的提高又繼續(xù)反作用于判別器,繼續(xù)執(zhí)行此過程,直到生成器能夠很好地生成偽圖像為止,從而使鑒別器不再能夠分辨?zhèn)螆D像中的真實(shí)圖像。最終訓(xùn)練好的生成器,在生成隨機(jī)數(shù)字集作為輸入的情況下,該生成器可以生成看起來真實(shí)的偽圖像,GAN就是這樣一個(gè)博弈的過程。
在深度學(xué)習(xí)中,自動(dòng)編碼器(Autoencoder,AE)是一種無監(jiān)督的神經(jīng)網(wǎng)絡(luò)模型,它可以學(xué)習(xí)到輸入數(shù)據(jù)的隱含特征,這一結(jié)構(gòu)稱為編碼(Encoder),同時(shí)用學(xué)習(xí)到的新特征可以重構(gòu)出原始輸入數(shù)據(jù),這一結(jié)構(gòu)稱之為解碼(Decoder)。直觀上看,自動(dòng)編碼器可以用于特征降維,類似主成分分析PCA,但是它比PCA性能更強(qiáng),這是因?yàn)樯窠?jīng)網(wǎng)絡(luò)模型可以提取更有效的新特征。除了進(jìn)行特征降維,自編碼模型學(xué)習(xí)到的新特征可以送入有監(jiān)督學(xué)習(xí)模型中,所以自動(dòng)編碼器可以起到特征提取器的作用。旋轉(zhuǎn)機(jī)械的振動(dòng)信號(hào)中往往包含著很多復(fù)雜的成分,有效的特征夾雜在復(fù)雜的成分中,但早期故障的振動(dòng)成分往往比較微弱,人工提取難度較大,而采用自編碼模型可使神經(jīng)網(wǎng)絡(luò)自動(dòng)提取振動(dòng)特征,有利于更好地進(jìn)行故障判斷。
針對(duì)實(shí)際機(jī)械故障診斷工作中難以獲取故障狀態(tài)下數(shù)據(jù)樣本的問題,基于異常檢測(cè)的實(shí)際情況,提出一種故障檢測(cè)方法。
本文作者所采用的對(duì)抗自編碼模型如圖1所示。編碼器和解碼器組成了自編碼器結(jié)構(gòu),將大量正常的機(jī)械設(shè)備振動(dòng)信息送入編碼器進(jìn)行特征學(xué)習(xí),生成被壓縮后的特征向量,然后通過解碼器將壓縮后的特征重新解碼重建振動(dòng)圖像。然而,單一的自編碼模型生成的壓縮特征分布不均,不利于后續(xù)數(shù)據(jù)重建。因而,引入對(duì)抗生成網(wǎng)絡(luò)模型,編碼器作為對(duì)抗生成網(wǎng)絡(luò)的一部分,因本身能夠產(chǎn)生和輸入數(shù)據(jù)相關(guān)的特征數(shù)據(jù),編碼器作為生成器不再如傳統(tǒng)GAN網(wǎng)絡(luò)那樣最初產(chǎn)生的是隨機(jī)數(shù)據(jù),可以減少訓(xùn)練難度,同時(shí)也使模型更容易被理解;模型中添加了新的網(wǎng)絡(luò)結(jié)構(gòu)作為鑒別器,鑒別器最終通過Softmax層直接判斷數(shù)據(jù)的真實(shí)性。
圖1 對(duì)抗自編碼模型
本文作者將同時(shí)訓(xùn)練編碼器和解碼器,以最大程度地減少重建損失。在編碼階段,給定輸入數(shù)據(jù),編碼器將輸入變換為特征向量:
()=[()]=[x()+]
(1)
(2)
式中:()為每一個(gè)輸入()經(jīng)過編碼器得到的隱藏層的特征表達(dá);=(,)為網(wǎng)絡(luò)參數(shù),為輸入層到隱藏層之前的權(quán)值矩陣,為隱藏層神經(jīng)元的偏置量;()為激活函數(shù),文中選用式(2)為激活函數(shù):
′()=[()]=[′()+′]
(3)
式中:′()為隱藏層經(jīng)過解碼后得到的重構(gòu)表達(dá);=(′,′)為網(wǎng)絡(luò)參數(shù),′為隱藏層到輸出層的權(quán)值矩陣,′為輸出層神經(jīng)元的偏置量。
將輸入傳遞給編碼器,該編碼器將提供輸入特征的潛在特征,將這個(gè)潛在特征傳遞給解碼器以獲取輸入數(shù)據(jù)曲線。通過反向調(diào)整編碼器和解碼器的權(quán)重,減少重建損失。AE的學(xué)習(xí)目標(biāo)是最小化重構(gòu)誤差,使得輸入與輸出盡可能接近,損失函數(shù)選擇式(4)所示的均方差損失函數(shù):
=(-′)
(4)
進(jìn)入訓(xùn)練的第二部分,訓(xùn)練鑒別器對(duì)編碼器輸出和一些隨機(jī)輸入′(實(shí)驗(yàn)中采用標(biāo)準(zhǔn)正態(tài)分布)進(jìn)行分類。因此,如果傳入具有期望分布的隨機(jī)輸入,則判別器輸出True;當(dāng)傳入編碼器輸出時(shí),輸出為False。直觀地,編碼器的輸出和鑒別器的隨機(jī)輸入都應(yīng)具有相同的大小。
將編碼器輸出作為輸入連接到鑒別器,目的是迫使編碼器輸出具有給定先驗(yàn)分布的值。使用編碼器(|)作為生成器,使用鑒別器來判斷樣本是來自先驗(yàn)分布()還是來自編碼器(|),解碼器(|)返回原始輸入圖像。
生成器訓(xùn)練時(shí)應(yīng)保持鑒別器的權(quán)重固定為當(dāng)前的權(quán)重,并在鑒別器的輸出端將目標(biāo)固定。之后將圖像傳遞到編碼器,并找到鑒別器輸出,然后將它用于查找損耗(交叉熵代價(jià)函數(shù))。僅通過編碼器權(quán)重進(jìn)行反向傳播,會(huì)使編碼器學(xué)習(xí)所需的分布并產(chǎn)生具有該分布的輸出(將鑒別器目標(biāo)固定為1會(huì)導(dǎo)致編碼器通過查看鑒別器權(quán)重來學(xué)習(xí)所需的分布)。
判別器在這里是一種分類器,用于區(qū)分樣本的真?zhèn)危虼顺J褂媒徊骒?Cross Entropy)判別分布的相似性。交叉熵公式;
(()))]
(5)
鑒別器訓(xùn)練時(shí)保持生成器權(quán)重不變,盡可能地讓鑒別器能夠最大化地判別出樣本來自于真實(shí)數(shù)據(jù)還是生成的數(shù)據(jù)。
輸入的振動(dòng)信息不僅含有單純的機(jī)械振動(dòng)信息,還包含大量的無用振動(dòng),為能夠讓網(wǎng)絡(luò)更好地學(xué)習(xí)振動(dòng)數(shù)據(jù)的特征以及加快網(wǎng)絡(luò)學(xué)習(xí)效率,該模型在編碼器部分以及鑒別器部分加入了Dropout層,通過在每次訓(xùn)練時(shí),隨機(jī)讓每層小部分神經(jīng)元停止工作,每次輸入網(wǎng)絡(luò)的有效數(shù)據(jù)只是部分?jǐn)?shù)據(jù),以此達(dá)到去噪聲的目的,以提高網(wǎng)絡(luò)的泛化能力。
本文作者選用的實(shí)驗(yàn)設(shè)備是某熱電廠運(yùn)行的型號(hào)為HTD250-160X10的多級(jí)離心泵,為工藝上的給水泵,基本工作參數(shù):10級(jí)離心泵,額定流量為250 m/h,額定揚(yáng)程為1 500 m,額度轉(zhuǎn)速為2 950 r/min,額定功率為1 273 kW。實(shí)際設(shè)備如圖2所示。自制的數(shù)據(jù)采集器,采樣頻率為50 kHz,單次采樣個(gè)數(shù)是1 000點(diǎn);選用的傳感器為電渦流振動(dòng)位移傳感器,通過電渦流效應(yīng),對(duì)泵的振動(dòng)信息進(jìn)行無接觸、連續(xù)的采集。數(shù)據(jù)采集完成后通過4G網(wǎng)絡(luò)上傳到自建的云平臺(tái)系統(tǒng),采集器24 h在線運(yùn)行。
圖2 實(shí)驗(yàn)設(shè)備
在云平臺(tái)中隨機(jī)抽取1 024組數(shù)據(jù)作為訓(xùn)練樣本,每組數(shù)據(jù)有1 000個(gè)振動(dòng)數(shù)據(jù)作為特征。訓(xùn)練batch size取64,自編碼learning rate為0.001,對(duì)抗生成網(wǎng)絡(luò)learning rate設(shè)置為0.000 5,epoch取2 000。每次迭代將(64,1 000)的振動(dòng)數(shù)據(jù)輸入構(gòu)造的對(duì)抗自編碼模型中進(jìn)行訓(xùn)練。對(duì)抗自編碼模型在原有模型的基礎(chǔ)上加入了dropout層,神經(jīng)元丟棄率為0.2,在損失函數(shù)中加入交叉熵,進(jìn)一步約束、指導(dǎo)神經(jīng)網(wǎng)絡(luò)進(jìn)行特征學(xué)習(xí)。最后,將梯度信息反向傳播并更新梯度,以最小化損失函數(shù)。圖3所示為損失函數(shù)曲線。
圖3 損失函數(shù)曲線
在對(duì)抗部分中,模型輸入了正態(tài)分布的數(shù)據(jù)指導(dǎo)自編碼部分的隱藏層學(xué)習(xí)其分布。圖4顯示了從最初到訓(xùn)練結(jié)束過程中隱藏層數(shù)據(jù)分布的變化,直觀地表示出數(shù)據(jù)從最初分布極為不均到最后分布接近標(biāo)準(zhǔn)正態(tài)分布的過程。
圖4 隱藏層數(shù)據(jù)分布
將云平臺(tái)下載的數(shù)據(jù)分別輸入對(duì)抗編碼模型,實(shí)際輸入的振動(dòng)圖像信息與編碼解碼后重建振動(dòng)圖像的對(duì)比如圖5所示??芍褐亟▓D像很好地學(xué)習(xí)了輸入信息的特征并加以復(fù)現(xiàn)。
圖5 數(shù)據(jù)重建
為檢驗(yàn)?zāi)P陀?xùn)練后的實(shí)際效果,同時(shí)選取未曾訓(xùn)練過某一時(shí)刻泵的振動(dòng)數(shù)據(jù)作為模型的輸入,由兩種數(shù)據(jù)重構(gòu)情況的不同鑒別泵的運(yùn)行狀態(tài)。選取未曾訓(xùn)練過的數(shù)據(jù)點(diǎn),其中包含200個(gè)正常數(shù)據(jù)點(diǎn)和20個(gè)異常數(shù)據(jù)點(diǎn),以此測(cè)試訓(xùn)練好的模型。數(shù)據(jù)點(diǎn)輸入模型后,將重構(gòu)數(shù)據(jù)點(diǎn)與原數(shù)據(jù)進(jìn)行對(duì)比,通過二者的誤差區(qū)別數(shù)據(jù)的狀態(tài),同時(shí)選用傳統(tǒng)自編碼網(wǎng)絡(luò)模型進(jìn)行對(duì)比,結(jié)果如圖6所示??芍簜鹘y(tǒng)自編碼器模型雖然能夠重建部分圖像,但是并不能將異常數(shù)據(jù)和正常數(shù)據(jù)進(jìn)行明確的區(qū)分;對(duì)抗自編碼模型通過在隱藏層生成的均勻數(shù)據(jù)分布大大提高了模型的自適應(yīng)性,即使是未曾訓(xùn)練過的數(shù)據(jù)點(diǎn),通過對(duì)比也可以看出,異常數(shù)據(jù)點(diǎn)分布于圖像上方,正常值數(shù)據(jù)點(diǎn)位于圖像的下側(cè)??赏ㄟ^設(shè)定閾值來進(jìn)行實(shí)際工況下泵的健康狀態(tài)評(píng)判。
圖6 誤差對(duì)比
為直觀評(píng)價(jià)模型效果,引入混淆矩陣?;煜仃囀嵌诸悊栴}的多維衡量指標(biāo)體系,在樣本不平衡時(shí)極其有用。在混淆矩陣中,將少數(shù)類認(rèn)為是正例,多數(shù)類認(rèn)為是負(fù)例。
TP(True Positive)為在預(yù)測(cè)正樣本中,預(yù)測(cè)正確的數(shù)目;FP(False Positive)為在預(yù)測(cè)正樣本中,預(yù)測(cè)錯(cuò)誤的數(shù)目;TN(True Negative)為在預(yù)測(cè)負(fù)樣本中,預(yù)測(cè)正確的數(shù)目;FN(False Negative)為在預(yù)測(cè)負(fù)樣本中,預(yù)測(cè)錯(cuò)誤的數(shù)目。準(zhǔn)確率是所有預(yù)測(cè)正確的樣本除以總樣本的值,越接近1越好。精準(zhǔn)率又叫查準(zhǔn)率,表示所有被預(yù)測(cè)為少數(shù)類的樣本中,真正的少數(shù)類所占的比例。假正率表示模型將多數(shù)類判斷錯(cuò)誤的能力。
取不同閾值,模型對(duì)泵異常檢測(cè)的準(zhǔn)確率、精準(zhǔn)率、假正率如表1所示。
表1 不同閾值下模型效果對(duì)比
本文作者將基于自編碼器的神經(jīng)網(wǎng)絡(luò)模型應(yīng)用于高速泵故障檢測(cè)領(lǐng)域,通過優(yōu)化對(duì)抗自編碼的網(wǎng)絡(luò)結(jié)構(gòu)使模型在故障檢測(cè)中具有更好的適用性;提出了一種誤差閾值的故障檢測(cè)方法,該方法利用機(jī)械振動(dòng)信號(hào)的高維特征參數(shù),通過自編碼網(wǎng)絡(luò)自動(dòng)提取特征并學(xué)習(xí),依據(jù)模型輸出的變化,實(shí)現(xiàn)故障預(yù)警。結(jié)果表明:基于AAE模型的誤差閾值檢測(cè)方法在特定閾值下準(zhǔn)確率可達(dá)100%,明顯優(yōu)于傳統(tǒng)自編碼模型,具有一定的研究?jī)r(jià)值。