陳淑梅, 余建波
(同濟(jì)大學(xué) 機(jī)械與能源工程學(xué)院, 上海 201804)
在過程監(jiān)控與故障診斷中,高維過程信號的特征表達(dá)對故障模式的匹配和識別至關(guān)重要[13]. 近年來,相繼開展了基于特征學(xué)習(xí)的故障檢測方法的研究[14-15]. 基于深度學(xué)習(xí)(deep Learning)的特征提取方法能自動學(xué)習(xí)大數(shù)據(jù)中的特征,顯著地提高了故障檢測和診斷的準(zhǔn)確率[16]. 深度神經(jīng)網(wǎng)絡(luò)(deep neural networks, DNN)在計(jì)算機(jī)視覺、自然語言處理和語音識別等領(lǐng)域取得了巨大的成功[17-25]. 近年來主要開發(fā)了基于DNN的機(jī)械故障診斷方案[21-23]. 但是,基于DNN的過程故障診斷的研究較少[24-25].
卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)[26]以非監(jiān)督或半監(jiān)督的學(xué)習(xí)方式獲取圖像數(shù)據(jù)的高層抽象化表達(dá),克服了傳統(tǒng)的手工提取特征人力成本大、精度不高和不可泛化的缺點(diǎn). 近年來,CNN在計(jì)算機(jī)視覺領(lǐng)域取得了突破性進(jìn)展[27-29]. Lee等[30]用卷積神經(jīng)網(wǎng)絡(luò)從半導(dǎo)體的傳感信號中自動提取故障的內(nèi)部結(jié)構(gòu)特征,開發(fā)了基于CNN的晶圓表面缺陷識別模型.
雖然基于CNN算法的機(jī)械或半導(dǎo)體的故障診斷方法近年來被廣泛研究[26, 30-33],將機(jī)械或半導(dǎo)體產(chǎn)生的信號轉(zhuǎn)為圖像信號輸入CNN進(jìn)行故障診斷,但是,基于CNN特征學(xué)習(xí)的過程故障診斷還未見報(bào)道.
本文嘗試將多變量過程信號轉(zhuǎn)為圖像信號,開發(fā)基于CNN的過程故障診斷方案,設(shè)計(jì)了一個輕量級的CNN模型,適用于樣本量不大的多變量過程的特征學(xué)習(xí). 本文的主要貢獻(xiàn)有以下幾個方面:1)提出了基于CNN的多變量過程特征學(xué)習(xí)模型(CNN-based feature learning for multivariate process,簡稱MPCNet);2)將一維過程信號轉(zhuǎn)為二維的圖像信號,以MPCNet提取的圖像特征表征多變量過程狀態(tài);3)基于MPCNet提取的有效過程特征,提出了多變量過程故障診斷模型,顯著地提高了系統(tǒng)的故障診斷性能.
MPCNet是一種由多層卷積濾波器與子采樣濾波器交替構(gòu)成的輕量級CNN網(wǎng)絡(luò),其特殊性表現(xiàn)為兩個方面,即本地連接和權(quán)重共享. MPCNet的核心原理:輸入圖像通過局部感受和權(quán)值共享的下采樣方式,映射到隱含層空間的有用信息具有某種尺度的不失真性. 在MPCNet中,神經(jīng)元之間的一些連接在整個層上被復(fù)制,它們具有相同的權(quán)重和偏差.
如圖1所示,MPCNet共有7層,包含兩個卷積層,兩個池化層,兩個全連接層和一個輸出層,卷積層和池化層的堆疊構(gòu)成具有深層結(jié)構(gòu)的CNN模型. 輸入圖像的像素為208,通道為3,卷積層卷積核的大小為3,通道數(shù)為16. 全連接層的神經(jīng)元數(shù)為128,激活函數(shù)為ReLu,輸出層的激活函數(shù)為Softmax,用于圖像的分類.
圖1 MPCNet網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Network structure of MPCNet
1)卷積層. 卷積層即特征提取層,MPCNet采用大小為3×3的卷積核從前一層中提取208×208圖像的局部特征,作為卷積層中神經(jīng)元的輸入,卷積層確定了所有提取特征之間的位置關(guān)系. 傳統(tǒng)神經(jīng)網(wǎng)絡(luò)層與層之間全連接的方式易占用計(jì)算空間,且執(zhí)行任務(wù)效率不高. 而通過特征映射,提取輸入圖像的主要特征,通過卷積核的特征提取操作,圖像由原來的208×208減少至104×104,實(shí)現(xiàn)了參數(shù)的降維,在降低計(jì)算成本的同時也提高了準(zhǔn)確度. 在進(jìn)行卷積操作時,圖像每一維的步長均為2. 填充圖像的方法為相同填充,即超出邊界的區(qū)域使用0填充. 卷積計(jì)算過程如圖2所示. 在訓(xùn)練過程中,用一個卷積核fx將圖像中的局部區(qū)域通過特征提取和卷積核的權(quán)重Wx作用,以及偏置bx構(gòu)成卷積層神經(jīng)元的輸入Cx,因此卷積核也被稱為濾波器. 濾波器的學(xué)習(xí)參數(shù)(Wx和bx)可通過訓(xùn)練過程的迭代優(yōu)化得到.
圖2 卷積和下采樣過程Fig.2 Convolution and down-sampling process
2)池化層. 池化層即特征映射層,MPCNet采用2×2的池化矩陣用以減少數(shù)據(jù)特征,移動步長為2,使用全0填充. 受到人腦視覺皮層抑制效用的啟發(fā),池化層在降低分辨率的同時使特征圖中的重要信息得到最大化的保留,減少主要特征發(fā)生的位移和失真. 下采樣過程如圖2所示,MPCNet使用最大值下采樣方式對圖像上不同區(qū)域內(nèi)的特征進(jìn)行聚合統(tǒng)計(jì),得到低維的概要統(tǒng)計(jì)特征,在提高性能的同時不容易產(chǎn)生過擬合. 其他下采樣方式還包括權(quán)值可訓(xùn)練下采樣、平均值下采樣、高斯池化下采樣.
3)全連接層. MPCNet輸出層之前設(shè)置兩個128全連接層,將原始數(shù)據(jù)經(jīng)過特征映射層提取到的隱含特征全連接,對數(shù)據(jù)進(jìn)行重新分類. 全連接層以矩陣乘法的形式對隱層特征進(jìn)行空間提取整合,在降低維度的同時,最大化地保留有用信息. 理論上,多個全連接層可通過激活函數(shù)實(shí)現(xiàn)多種非線性變化,從復(fù)雜多變量過程的輸入圖像中學(xué)習(xí)數(shù)據(jù)特征的表達(dá)方法.
MPCNet在前向傳播階段通過卷積核對輸入圖像進(jìn)行卷積操作而獲得局部特征映射,通過反向傳播方式更新網(wǎng)絡(luò)參數(shù). 輸入層通過特征映射與內(nèi)核卷積,在激活函數(shù)的非線性轉(zhuǎn)化下形成輸出特征映射. 卷積核可與多個輸入映射組合形成對應(yīng)的輸出映射,計(jì)算過程如下:
(1)
子采樣層提取輸入映射的下采樣特征,N個輸入映射對應(yīng)N個輸出特征,輸出特征的維度可能較小. 下采樣計(jì)算過程如下:
在MPCNet的末端為具有8個神經(jīng)元的全連接層用于執(zhí)行8個過程故障類分類任務(wù),輸出層前的級聯(lián)特征映射作為輸出層的輸入,記特征向量為fv,輸出為
O=f(bo+wofv).
本文通過圖像處理的方法將原始一維過程向量轉(zhuǎn)為圖像信號,從而可為MPCNet提供圖像數(shù)據(jù)輸入,構(gòu)建具有多層結(jié)構(gòu)的MPCNet模型(參數(shù)見表1)對輸入圖像進(jìn)行特征提取,提取到的特征進(jìn)一步輸入至Softmax分類器中,以有監(jiān)督的方式學(xué)習(xí)與過程狀態(tài)匹配的顯著性特征. 過程的異常狀態(tài)可通過各類控制圖(比如基于局部和全局主成分分析法(Local and global principle component analysis, LGPCA)構(gòu)造的T2和Q2統(tǒng)計(jì)值加以判別[34]). 對于識別為異常狀態(tài)的樣本,則進(jìn)一步進(jìn)行故障診斷,判斷樣本所屬的故障類別.
表1 MPCNet的模型參數(shù)Tab.1 Parameters of MPCNet model
基于MPCNet模型的復(fù)雜多變量過程的特征學(xué)習(xí)過程如圖3所示.
圖3 基于MPCNet的復(fù)雜多變量過程特征學(xué)習(xí)與故障診斷
Fig.3 Feature learning and fault diagnosis in complex multivariate process based on MPCNet
與一般故障診斷方法不同,本文將多變量高維過程信號轉(zhuǎn)換為圖像作為MPCNet的輸入. CNN在圖像識別中應(yīng)用廣泛,但收斂速度慢,對數(shù)據(jù)進(jìn)行預(yù)處理可防止梯度彌散. 本文對數(shù)據(jù)進(jìn)行歸一化預(yù)處理,以加快模型收斂. 如圖3所示,在一維過程向量轉(zhuǎn)化為圖像的過程中,為防止模型梯度爆炸,首先對訓(xùn)練數(shù)據(jù)進(jìn)行歸一化處理,用matlab繪圖工具為每個過程信號樣本生成一張圖片,構(gòu)成樣本圖片的訓(xùn)練集和測試集. 同時為提高模型的運(yùn)算速度,在繪圖時固定圖片的大小和背景,并將圖片的像素設(shè)為208×208. MPCNet采用大小為3×3的卷積核從前一層中提取圖像的局部特征,通過卷積核的特征提取操作,圖像由原來的208×208減少至104×104. 下采樣過程用2×2的池化矩陣對圖像進(jìn)一步進(jìn)行參數(shù)降維,使圖像縮減至原來的1/4. 卷積層和下采樣層構(gòu)成特征映射平面,MPCNet采用兩個特征映射平面提取輸入圖像的主要特征,實(shí)現(xiàn)了參數(shù)的降維,在降低計(jì)算成本的同時也提高了準(zhǔn)確度. 后一個特征平面的卷積核尺寸和池化矩陣的大小與前面相同. 在MPCNet輸出層前設(shè)置兩個大小為128的全連接層,將原始數(shù)據(jù)經(jīng)過特征映射層提取到的隱含特征全連接,作為分類層的輸入. MPCNet通過Softmax層有監(jiān)督的微調(diào)方式學(xué)習(xí)故障特征,與無監(jiān)督學(xué)習(xí)方式相比,有監(jiān)督的學(xué)習(xí)方式能通過提供有標(biāo)簽的訓(xùn)練樣本數(shù)據(jù)提取更有效、穩(wěn)定和抽象化的數(shù)據(jù)特征.
基于MPCNet的多變量過程故障識別的過程包含離線建模和在線識別兩個過程. 離線建模過程包含以下4個步驟:
步驟 1收集各類過程樣本,構(gòu)建訓(xùn)練集;
步驟 2對訓(xùn)練集樣本進(jìn)行歸一化處理,并將過程信號生成圖像,作為MPCNet的輸入;
步驟 3MPCNet從過程圖像中提取故障模式特征;
步驟 4MPCNet將提取到的數(shù)據(jù)特征輸入分類器,以有監(jiān)督的學(xué)習(xí)方式調(diào)整和優(yōu)化網(wǎng)絡(luò)參數(shù).
在線故障診斷過程包含以下5個步驟:
步驟1待測試樣本進(jìn)行歸一化處理;
步驟2將過程信號轉(zhuǎn)化為圖像信號;
步驟3將圖像輸入到MPCNet產(chǎn)生過程特征;
步驟4輸入特征到故障識別器,輸出過程故障識別結(jié)果;
步驟5根據(jù)故障診斷結(jié)果制定過程維護(hù)決策.
田納西過程是復(fù)雜多變量過程故障診斷應(yīng)用最為典型的一種化工生產(chǎn)仿真系統(tǒng),具有5個操作單元,分別為反應(yīng)器、冷凝器、循環(huán)壓縮機(jī)、分離器和汽提塔. TEP有52個變量,其中包括12個操縱變量和40個測量變量. 在實(shí)際的工業(yè)過程中,TEP常見的故障模式有21種,本文選取8種故障模式進(jìn)行研究,如表2所示. 在實(shí)驗(yàn)中,通常以3 min的采樣間隔時間收集數(shù)據(jù),構(gòu)造訓(xùn)練集和測試集. 訓(xùn)練集包含500個正常樣本和10 080個故障樣本,其中每種故障類型的樣本數(shù)為480. 在測試集中,正常樣本和每種故障類型的樣本數(shù)均為960個,每種故障類型在第161個樣本開始引入異常. 本文選取的TEP故障類型為4、5、11、13、14、16、19和21共8種故障類型,如表2所示. 每個樣本的數(shù)據(jù)維度為52. 每種故障的訓(xùn)練集和測試集的樣本數(shù)量分別為480和800.
表2 TEP故障描述Tab.2 Description of faults in TEP
在選取故障類別時,首先用常見的故障診斷方法(BPN, SDAE和SVM)測試21種故障數(shù)據(jù)的識別率. 故障類別依次增加,當(dāng)故障類別增加到8類時,上述方法難以區(qū)分本文選取的8種故障類型. 本文選取的8種故障類型的數(shù)據(jù)特征具有相似性,在空間上表現(xiàn)為部分重疊,一般分類方法難以對這8種故障類型的數(shù)據(jù)進(jìn)行區(qū)分. 本文利用CNN強(qiáng)大的特征學(xué)習(xí)能力提取這8種故障類型的內(nèi)部結(jié)構(gòu)特征,提高模型的故障識別率. 表3為MPCNet故障類型識別結(jié)果的混淆矩陣. 由于8種故障的數(shù)據(jù)特征在空間上交互重疊,MPCNet在對每種故障類型進(jìn)行識別時均有一定程度的“類別混淆”情況. 除了在對故障4和故障5進(jìn)行識別時,MPCNet將一小部分樣本混淆為故障16和故障19外,在對其他類型的故障進(jìn)行識別時,MPCNet基本能正確識別出特征模式所屬的故障類別. 圖4為MPCNet對TEP故障類型的識別結(jié)果,橫坐標(biāo)上的8類樣本對應(yīng)縱坐標(biāo)上的故障4到故障21. 圖中點(diǎn)的縱坐標(biāo)代表對應(yīng)樣本的分類結(jié)果,點(diǎn)分布得越密集,每類樣本屬于對應(yīng)類別的可能性越大. 如圖4所示,每類樣本的分類結(jié)果大都集中于對應(yīng)類別的位置,有少數(shù)樣本分布在其他類別. 因此,每種故障類型均有少數(shù)的“誤分類”現(xiàn)象,但大多數(shù)的樣本能被正確歸類到所屬的故障類別中.
表3 基于混淆矩陣的MPCNet故障識別結(jié)果Tab.3 Confusion matrix for fault diagnosis results based on MPCNet %
圖4 基于MPCNet特征學(xué)習(xí)的TEP故障分類結(jié)果
Fig.4 Fault classification for TEP based on MPCNet feature learning
為進(jìn)一步驗(yàn)證基于特征提取的MPCNet模型對數(shù)據(jù)分類的有效性,本文比較了傳統(tǒng)分類器(分別為SDAE、BPN、SVMLK、SVMRBF、LVQ、KNN和DT分類器)對8種故障的類別識別性能. SDAE和BPN均采用“52-70-45-8”的網(wǎng)絡(luò)結(jié)構(gòu),激活函數(shù)均為Sigmoid;SVMLK和SVMRBF采用的核函數(shù)分別為線性函核(linear kernel, LK)和徑向基函數(shù)(radial basic function, RBF);LVQ的隱藏層大小為100. 表4為MPCNet模型和一般機(jī)器學(xué)習(xí)方法對所選取的8種故障類型識別準(zhǔn)確率的比較結(jié)果. 除故障19外,基于特征學(xué)習(xí)的MPCNet模型對故障類型的識別率均顯著高于其他分類器,且MPCNet模型的故障類別平均識別率高于其他機(jī)器學(xué)習(xí)方法,顯著地提高了識別器的故障診斷能力.
表4 MPCNet與典型識別器的故障識別率比較Tab.4 Comparison of fault recognition rates between MPCNet and conventional classifiers %
為進(jìn)一步說明MPCNet模型對高維數(shù)據(jù)的特征提取性能,本文通過t-SNE方法[35]將MPCNet模型第二層池化層提取到的圖像特征進(jìn)行二維平面可視化,如圖5所示.
圖5 MPCNet模型對故障數(shù)據(jù)的特征可視化Fig.5 Feature visualization for faulty data using MPCNe
MPCNet模型強(qiáng)大的特征提取能力使得每種故障類型的數(shù)據(jù)特征在空間上具有良好的聚簇性和可分性,這顯著提高分類器對故障數(shù)據(jù)的分類精度.
本文將MPCNet提取到圖像特征作為傳統(tǒng)分類器KNN、BPN和SVM的輸入,得到的識別率如表5所示. 比較表4與5可知,這些分類器的故障識別率均有大幅度提升,表明有效地過程特征提取有助于準(zhǔn)確率更高、消耗更低的識別器的構(gòu)建,在降低經(jīng)驗(yàn)風(fēng)險最小化的同時,也降低了模型的復(fù)雜度. MPCNet以分層提取的方式獲得數(shù)據(jù)特征的抽象化表達(dá),這種結(jié)構(gòu)化特征提高了傳統(tǒng)分類器對數(shù)據(jù)類別屬性的理解,表現(xiàn)為故障識別準(zhǔn)確率的顯著提升.
表5 基于MPCNet提取特征的典型識別器識別率Tab.5 Fault recognition rates of conventional classifiers based on features extracted by MPCNet %
為了進(jìn)一步證明MPCNet模型提取特征的有效性,本文進(jìn)行了五折交叉實(shí)驗(yàn),對本文提出的MPCNet與深度學(xué)習(xí)方法(DBN和SDAE)[36]、最近幾年流行的CNN結(jié)構(gòu)(Vgg16、Vgg19、Resnet50)[37]和輕量級CNN模型(Mobilenet[38])進(jìn)行故障識別率的比較,結(jié)果見表6.
表6 MPCNet與典型深度神經(jīng)網(wǎng)絡(luò)的五折交叉對比實(shí)驗(yàn)Tab.6 Comparison of five-cross validation between MPCNet and conventional deep network models %
本文提出的MPCNet的平均故障識別率顯著高于其他分類器,說明MPCNet模型具有從圖像中提取更高級特征的能力,這些對原始數(shù)據(jù)的抽象化表征使模型能迅速捕捉到數(shù)據(jù)所屬類別標(biāo)簽間的區(qū)別,從而提高對數(shù)據(jù)的分類精度. DBN和SDAE分類器識別率非常低,無法應(yīng)用于TEP故障診斷. Vgg16、Vgg19與Resnet50模型具有相似的平均故障識別率. Mobilenet的故障識別率與本文提出的MPCNet最為相似. Vgg16、Vgg19、Resnet50和Mobilenet是近幾年較為流行的深度較大的CNN網(wǎng)絡(luò),網(wǎng)絡(luò)模型使用的卷積核較小,瓶頸層和模塊化的使用降低了計(jì)算量,從而提高了模型的運(yùn)算效率. 但這幾種CNN模型對TEP故障類型的識別率不高,原因在于網(wǎng)絡(luò)訓(xùn)練所采用的數(shù)據(jù)集過小,不足以支持龐大網(wǎng)絡(luò)進(jìn)行正常的訓(xùn)練. 因此在訓(xùn)練樣本集不大的情況下,使用較小的CNN網(wǎng)絡(luò)識別TEP故障類型往往能取得更為理想的結(jié)果. 通過CNN中的局部連接、對權(quán)值共享和下采樣的參數(shù)進(jìn)行約束,可實(shí)現(xiàn)“較小”的CNN結(jié)構(gòu). MPCNet采用大小為3×3的卷積核、2×2的池化矩陣和大小為128的全連接層,減少了網(wǎng)絡(luò)參數(shù),使網(wǎng)絡(luò)訓(xùn)練過程容易,不易過學(xué)習(xí),這種輕量級的CNN模型更適合用于小樣本數(shù)據(jù)量的過程診斷. CNN常用于處理圖像數(shù)據(jù)[17,28, 38], 用于計(jì)算機(jī)視覺設(shè)計(jì)的CNN具有龐大的網(wǎng)絡(luò)結(jié)構(gòu),如AlexNet,參數(shù)共計(jì)62 378 344個. MPCNet的參數(shù)量為2 085 072,與大型網(wǎng)絡(luò)相比,MPCNet明顯具有較小的網(wǎng)絡(luò)結(jié)構(gòu),適用于樣本量不大的多變量過程的故障診斷.
1)本文提出的基于CNN的多變量過程故障診斷方法,將過程信號轉(zhuǎn)為圖像信號,利用MPCNet從圖像中提取故障特征向量進(jìn)行模式識別,克服了傳統(tǒng)人工提取特征主觀性大、依賴性強(qiáng)和效率低等缺點(diǎn).
2)與經(jīng)典的分類器相比,基于MPCNet提取的特征進(jìn)行故障模式識別可以得到更理想的結(jié)果,充分證明了MPCNet強(qiáng)大的特征學(xué)習(xí)能力.
3)本文為以CNN為代表的深度學(xué)習(xí)方法在多變量過程故障診斷的應(yīng)用提供了較為充分的參考依據(jù),也為將來開發(fā)更有效的多變量監(jiān)測方案奠定了基礎(chǔ).
下一步工作可用MPCNet提取故障數(shù)據(jù)特征,并結(jié)合多變量統(tǒng)計(jì)過程方法開發(fā)多變量過程的過程監(jiān)控方法.