李元,楊東昇,趙麗穎,張成
(1 沈陽化工大學信息工程學院,遼寧沈陽110142; 2 沈陽化工大學理學院,遼寧沈陽110142)
隨著現(xiàn)代工業(yè)過程自動化與復雜化的增加,生產(chǎn)過程的故障檢測逐漸成為影響工業(yè)設(shè)備生產(chǎn)效率的重要因素[1-2]。由于工業(yè)過程歷史數(shù)據(jù)的可信度日益增強,目前基于數(shù)據(jù)驅(qū)動的故障檢測方法得到了廣泛關(guān)注[3-5]。其中,基于數(shù)據(jù)驅(qū)動的故障檢測方法包括主成分分析(principal component analysis,PCA),核主成分分析(kernel PCA,KPCA)與主多項式分 析(principal polynomial analysis, PPA)等[6-8]。PCA是一種線性假設(shè)模型,在線性過程中具有優(yōu)異的性能,但是當過程變量間存在較強的非線性特征時,其檢測性能表現(xiàn)較差[9]。為解決非線性問題,KPCA方法被引入到故障檢測領(lǐng)域中,通過核函數(shù)映射將數(shù)據(jù)映射至高維空間,然后在高維空間中使用PCA進行故障檢測[10-11]。核函數(shù)映射的性質(zhì)使得KPCA具有較高的計算量與較差的可解釋性等缺點[12]。因此,PPA被提出用于非線性故障檢測[13-14]。PPA是一種利用回歸函數(shù)擬合并消除非線性特征的多元分析方法,能夠有效克服基于核函數(shù)的非線性方法計算量高與解釋性差的缺點,近年來得到人們的廣泛關(guān)注[15-16]。
基于上述分析,PCA、KPCA 與PPA 方法均適用于單模態(tài)故障檢測,而應(yīng)用在多模態(tài)工業(yè)過程中具有較高的誤報漏報情況[17-18]。為了解決上述問題,高斯混合模型(Gaussian mixture model,GMM)及其改進的聚類方法被提出[19-20]。GMM假設(shè)過程數(shù)據(jù)由多個局部模型描述,且每個局部模型對應(yīng)多模態(tài)過程中的一個工作模態(tài)[21-22]。但是在實際過程中,由于對過程中模態(tài)數(shù)量的先驗知識了解不足,GMM 無法建立合理數(shù)量的局部模型。為了解決GMM 局部模型數(shù)量求解的問題,有限高斯混合模型(finite Gaussian mixture model, FGMM)與變分貝葉斯高斯混合模型(variational Bayesian Gaussian mixture model, VBGMM)被提出。其中,F(xiàn)GMM 利用最小信息長度準則(minimum message length, MML)選擇模型的最優(yōu)數(shù)量[23]。在FGMM 中,首先計算當前模型參數(shù)的極大似然估計,再對分布參數(shù)重新估計以獲得最大的數(shù)據(jù)似然,最后通過將混合系數(shù)設(shè)為0 以此消除無效的局部模型[24]。但是,當局部模型描述的數(shù)據(jù)范圍縮減至單個樣本時,協(xié)方差的奇異導致極大似然估計的迭代求解過程中止,使得模型無法被成功訓練。而在VBGMM 中,通過一組概率分布函數(shù)描述模型的參數(shù)[25-26]。首先,采用一組先驗分布描述各模型的參數(shù)[27];然后,通過變分推斷尋找一組變分概率分布近似觀測數(shù)據(jù)的后驗概率[28];最后,通過對聯(lián)合概率分布期望最大化的迭代過程確定最優(yōu)的模型參數(shù)分布函數(shù)[29]。由于VBGMM 是一種對模型參數(shù)近似推斷其概率分布的模型,因此避免了點估計中奇異矩陣的出現(xiàn),有效地提高其泛化能力且降低了過擬合發(fā)生的可能,故VBGMM 在多模態(tài)過程中具有準確的模態(tài)識別能力[30]。但是,當VBGMM 的初始模型參數(shù)少于實際過程中包含的工作模態(tài)數(shù)量時,將造成分解的局部模型數(shù)據(jù)中仍包含多個工作模態(tài),從而影響后續(xù)檢測模型的性能。
針對工業(yè)過程中包含的多模態(tài)與非線性特征問題,本文提出一種層次變分高斯混合模型與主多項式分析(fault detection based on hierarchical variational Gaussian mixture model and principal polynomial analysis,HVGMM-PPA)的多模態(tài)非線性故障檢測方法。首先,通過初始VBGMM 模型將過程數(shù)據(jù)分解為多個子塊;然后,利用具有多個局部模型的VBGMM 將各子塊再次分解為附屬子塊,并將附屬子塊的信息作為模型參數(shù)對VBGMM 進行重構(gòu);接下來,將重構(gòu)的VBGMM 作為初始模型重新分解原始過程數(shù)據(jù),重復上述步驟直到每個子塊均無法分解時停止;最后,在每個子塊內(nèi)建立局部PPA 模型將各子塊數(shù)據(jù)分解為主多項式空間與殘差空間,并分別在其各自的子空間中計算T2和SPE 統(tǒng)計量進行故障檢測。通過數(shù)值例子與Tennessee Eastman(TE)過程的仿真驗證本文方法的有效性。
假設(shè)過程數(shù)據(jù)X ∈?d×N含有N 個訓練樣本,d個變量,且X =[x1,x2,…,xN]。PPA 對數(shù)據(jù)的第p 步分解如下所示:
式中,p 的取值為κ~1,當p = κ 時xp= 0(d-ρ)×1。此外,以上統(tǒng)計量的控制限由核密度估計獲得[2]。
假設(shè)觀測數(shù)據(jù)X ={x1,x2,…,xN}包含N 個樣本,同時將潛在變量記作Z ={z1,z2,…,zN},其中zN為1-of-K 的二值向量。在VBGMM 中將觀測數(shù)據(jù)X 與潛在變量Z的聯(lián)合概率記為:
式中,π為混合系數(shù),μ為均值向量,Λ為精度矩陣。p(X|Z,μ,Λ)為給定潛在變量和參數(shù)下觀測數(shù)據(jù)X 的高斯分布,p(Z|π)為給定混合系數(shù)π 下潛在變量Z 的條件概率,p(π)為混合系數(shù)π 上的迪利克雷分布,p(μ|Λ)p(Λ)為高斯-Wishart 先驗分布。引入一個變分概率分布q(Z,π,μ,Λ)用于分解潛在變量與模型參數(shù),分解形式如下:
首先,通過變分推斷求解變分概率分布q(Z,π,μ,Λ)分別在各參數(shù)下的最優(yōu)更新形式如下:
式中,K 為模型假設(shè)的高斯分布數(shù)量,C(α)為迪利克雷分布歸一化系數(shù)且α ={α1,α2,…,αk},πk為第k個組分的權(quán)重系數(shù),mk和(βkΛk)-1分別為參數(shù)μk的高斯分布的均值與精度,vk為Wishart 分布的自由度,Wk為尺度矩陣。rnk為第n 個樣本屬于第k 個組分的響應(yīng)系數(shù),由式(14)解得:
然后,為使得概率分布的更新形式表示簡潔,定義觀測樣本與響應(yīng)系數(shù)相關(guān)的統(tǒng)計量,即:
式中,Nk表示第k 組分內(nèi)關(guān)于觀測樣本的累積響應(yīng)度,x~k為第k 個組分的均值,Sk為第k 個組分的協(xié)方差矩陣。
最后,利用樣本與響應(yīng)系數(shù)相關(guān)的統(tǒng)計量更新q(π)與q(μ|Λ)q(Λ)的分布參數(shù),更新形式如下:
當VBGMM 模型收斂后,對于解釋樣本無效的組分滿足rnk≈0,Nk≈0使得混合系數(shù)π的變分布未能與參數(shù)的先驗分布區(qū)分,而有效組分的π 變分布能夠偏離參數(shù)的先驗分布,從而得到混合數(shù)據(jù)中最優(yōu)組分數(shù)量。
通過上述步驟構(gòu)建的VBGMM,對過程數(shù)據(jù)X中的每個樣本x 計算所屬組分Ck的后驗概率,計算方式如下:
然后將過程數(shù)據(jù)X按所屬的組分劃分為多個子塊,如式(25)所示:
式中,n(xk)表示第k個子塊內(nèi)的樣本集合。
下面通過多模態(tài)數(shù)值例子對VBGMM 進行仿真實驗。假設(shè)有三個不同模態(tài)的數(shù)據(jù),其數(shù)值例子的生成模型如下[31]:
式中,e1~e3服從均值為0、方差為0.01 的高斯白噪聲,通過改變s1和s2來調(diào)整系統(tǒng)的操作模態(tài)。在 模 態(tài)1 中,變 量s1和s2分 別 服 從[20,0.8]、[1,1.3]的高斯分布;在模態(tài)2 中,變量s1和s2分別服從[5,0.6]、[20,0.7]的高斯分布;在模態(tài)3 中,變量s1和s2分別服從[16,1.5]、[30,2.5]的高斯分布。每個模態(tài)各生成400 個樣本,累計1200 個樣本作為訓練數(shù)據(jù)。
將VBGMM 應(yīng)用于上述多模態(tài)數(shù)值例子,由圖1(a)可以發(fā)現(xiàn),VBGMM 的初始參數(shù)選擇不當導致同一子塊(如子塊A)內(nèi)包含多個模態(tài)的數(shù)據(jù),使得模態(tài)識別的性能降低而給后續(xù)的檢測過程帶來不利影響。此外,由圖1(b)可以看出,VBGMM 分解的子塊內(nèi)存在多個子塊(如子塊B 與C)同時描述相同模態(tài)數(shù)據(jù)的情況。此時,由于子塊B 或C 內(nèi)不存在多模態(tài)特征,所以并未對檢測過程產(chǎn)生過多的不利影響。本文為了解決子塊內(nèi)存在多個模態(tài)數(shù)據(jù)的問題,提出一種HVGMM 方法用于確保每個子塊數(shù)據(jù)內(nèi)僅存在單一模態(tài)。
在HVGMM 中,首先使用隨機初始化的VBGMM 分析多模過程數(shù)據(jù)X 并得到各組分的信息。其次將X 分解為多個子塊,在各子塊數(shù)據(jù)中再使用VBGMM 分解子塊數(shù)據(jù)為附屬子塊,并統(tǒng)計各附屬子塊的均值、精度等信息。然后將上述步驟中附屬子塊的局部信息作為的模型參數(shù),對VBGMM 進行重構(gòu)。最后將重構(gòu)VBGMM 再應(yīng)用于原始過程數(shù)據(jù)X,重復上述迭代過程,直到每個子塊數(shù)據(jù)均無法再次分解。上述過程具體流程圖如圖2 所示。
將HVGMM 應(yīng)用于上述多模態(tài)數(shù)值例子,首先使用隨機初始化的VBGMM 對過程數(shù)據(jù)進行分解。若VBGMM 初始分解結(jié)果如圖1(a)所示,則分別在A與B 子塊內(nèi)再次利用VBGMM 分解。如圖3 所示,A子塊所包含的數(shù)據(jù)仍能被分解為兩個附屬子塊,而B 子塊僅能分解出單個附屬子塊且與原始B 子塊分布相同。此外,由圖3 還可以看出修訂后的子塊概率邊界已經(jīng)有效地描述了多模態(tài)數(shù)據(jù)的各模態(tài)特征。
若VBGMM的初始分解結(jié)果如圖1(b)所示,此時同一模態(tài)數(shù)據(jù)同時被多個子塊描述。但是子塊B與C 內(nèi)的數(shù)據(jù)經(jīng)過VBGMM 僅能再次分解出單個附屬子塊,其分解后的附屬子塊分布如圖4所示。由圖5可以看出,重構(gòu)后的VBGMM 中各個子塊數(shù)據(jù)已有效地去除了多模態(tài)特征。
圖1 初值選取對VBGMM的影響Fig.1 The initial value selection effect on VBGMM
圖2 HVGMM算法流程圖Fig.2 The flow diagram of HVGMM
圖3 HVGMM分解多模態(tài)數(shù)據(jù)的結(jié)果Fig.3 The result of HVGMM decomposition multimode data
通過以上分析,本文提出的HVGMM 能夠解決多模態(tài)工業(yè)過程模態(tài)識別困難的問題,降低錯誤的模態(tài)識別給檢測過程帶來的影響。但是將過程數(shù)據(jù)分解后變量間仍包含非線性特征,在這種情況下,傳統(tǒng)的線性故障檢測方法并不適用。而且HVGMM 本質(zhì)上是一種迭代求解的過程,具有較大的計算量,因此基于核函數(shù)的KPCA 方法同樣也不適用于后續(xù)的故障檢測。綜上所述,本文將HVGMM-PPA 方法用于故障檢測,提高PPA方法在多模態(tài)非線性過程中的檢測性能。該方法分為離線建模與在線檢測兩部分,具體步驟如下:
離線建模
(1) 獲得正常的多模態(tài)過程數(shù)據(jù)X,并使用zscore方法標準化;
(2) 使用HVGMM 將X 分解為K 個子塊數(shù)據(jù)集n(xk);
(3)分別在n(xk)子塊中構(gòu)造PPA模型;
(4)在各個子塊的主多項式空間和殘差空間計算統(tǒng)計量T2和SPE;
(5) 計算出各子塊檢測模型的控制限CLT2和CLSPE;
在線檢測
假設(shè)測試樣本xnew已經(jīng)過z-score標準化處理
(1) 計算測試樣本xnew屬于各個組分的后驗概率,并確定其所屬子塊;
(2)將xnew映射到主多項式空間和殘差空間,并計算和SPEnew統(tǒng)計量;
圖4 HVGMM分解各子塊數(shù)據(jù)的結(jié)果Fig.4 The results of HVGMM decomposition for each sub-block data
圖5 HVGMM的模態(tài)識別結(jié)果Fig.5 The mode recognition results of HVGMM
HVGMM-PPA的檢測流程如圖6所示。
圖6 HVGMM-PPA的故障檢測流程Fig.6 The fault detection flow chart of HVGMM
通過在第2節(jié)中的多模態(tài)數(shù)值例子中引入故障樣本驗證本文所提方法的有效性,其故障生成方式如下:
(1)在模態(tài)1的操作條件下,對變量x1從第201~400樣本上添加幅值為20%的階躍故障;
(2)在模態(tài)2的操作條件下,對變量x2從第201~400樣本上添加0.04(i - 200)的斜坡故障;
(3)在模態(tài)3的操作條件下,對變量x3從第201~400樣本上添加0.8(i - 200)的斜坡故障。
通過以上步驟在各個模態(tài)的操作條件下生成200 個不同類型的故障,將總共1200 個包含各模態(tài)故障的樣本作為測試數(shù)據(jù)用于對比實驗。
分別利用PCA、PPA 與HVGMM-PPA 對此數(shù)值例子進行建模分析。在PCA 中,通過計算方差85%累積貢獻率確定主元(principal components, PCs)個數(shù)為2。在PPA 與HVGMM-PPA 中根據(jù)交叉驗證得到PPC 為2,多項式系數(shù)為2。三種方法的控制限均設(shè)為99%,圖7 為VBGMM 對過程數(shù)據(jù)模態(tài)識別的結(jié)果。由圖7 可知VBGMM 受初值的影響,導致不同模態(tài)的樣本被分入相同的子塊中,使得檢測模型對數(shù)據(jù)分布的假設(shè)失效而造成檢測模型性能降低。圖8 是本文提出的HVGMM 的模態(tài)識別效果,由圖可知三個模態(tài)的過程數(shù)據(jù)被準確識別。
圖7 VBGMM的分類圖Fig.7 VBGMM classification chart
圖8 HVGMM的分類圖Fig.8 HVGMM classification chart
由圖9(a)、(b)可以看出在PCA 與PPA 的故障檢測中,由于受到單一模態(tài)的分布假設(shè)的影響,PCA與PPA 的檢測率較低。在HVGMM-PPA 中,通過HVGMM 消除過程數(shù)據(jù)中的多模態(tài)特征,使得每個PPA模型均建立在服從高斯分布的過程數(shù)據(jù)中。因此HVGMM-PPA 具有較高的檢測率,其檢測效果如圖9(c)所示。以上三種方法對此過程數(shù)據(jù)的檢測率如表1所示。
圖9 PCA、PPA和HVGMM-PPA檢測結(jié)果Fig.9 Fault detection results using PCA,PPA,and HVGMM-PPA
表1 三種方法的檢測率Table 1 Fault detection rates of three methods
此外,為了驗證同一模態(tài)數(shù)據(jù)被多個子塊描述給檢測模型帶來的影響。過程數(shù)據(jù)被HVGMMPPA 分解為4個子塊且各子塊內(nèi)的類別分布如圖10所示。當同一個模態(tài)的數(shù)據(jù)被多個子塊所描述時,各子塊內(nèi)的統(tǒng)計信息并未發(fā)生顯著變化。因此,在這種情況下,由圖11可以看出HVGMM-PPA依然能夠有效地檢測出過程中的故障。
圖10 各子塊數(shù)據(jù)的HVGMM的分類圖Fig.10 HVGMM classification chart for each sub-block data
圖11 HVGMM-PPA的檢測結(jié)果Fig.11 Fault detection results of HVGMM-PPA
TE 工業(yè)過程是由伊斯曼化學品公司創(chuàng)建,是為了評價過程控制和監(jiān)控方法提供的一個實際工業(yè)過程[32]。TE 過程包含12 個操作變量、22 個過程測量變量與19 個組成變量[2,13]。同時,TE 過程包括六種不同的工作模態(tài),具有不同的G/H 質(zhì)量比,其詳細描述見表2[18]。本節(jié)使用TE 過程生產(chǎn)模態(tài)1和3,并選擇11 個操作變量與22 個過程變量作為主要檢測變量,其詳細信息列于表3。此外,將兩個模態(tài)共1922 個正常樣本用作訓練數(shù)據(jù),不同操作條件下共1922 個包含故障的樣本作為測試數(shù)據(jù),其中每個操作條件下的第161~961 個樣本為故障。
利用PCA、PPA 與HVGMM-PPA 對TE 進行過程建模分析。在PCA 中,計算方差85%累積貢獻率確定的PC 為1。在PPA 與HVGMM-PPA 中,PPC 設(shè)為4,多項式系數(shù)設(shè)為4,其中HVGMM-PPA 建立的局部PPA檢測模型數(shù)量由HVGMM給出的子塊數(shù)量確定[13]。三種方法的統(tǒng)計量控制限均設(shè)為99%,表4給出PCA、PPA 和HVGMM-PPA 在TE 過程21 種故障中的檢測率。由表4 可以看出,HVGMM-PPA 能夠檢測出TE 過程的大多數(shù)故障,為了較好地描述,將表4中最優(yōu)檢測率加粗顯示。
表2 TE過程的工作模態(tài)Table 2 Six operation conditions of TE process
表3 用于故障檢測的過程變量Table 3 Process variables using in fault detection
由表4 可知,HVGMM-PPA 對TE 過程的21 種故障均具有較高的檢測率,同時可以看出PCA 與PPA 在故障1、4、6、8、13、14、17 中仍具有較高的檢測率。原因是此類故障中,各個模態(tài)數(shù)據(jù)間的差異并不明顯,使得PCA 與PPA 能夠識別出過程中的故障。而對于故障2 與故障10 而言,PCA 與PPA 的檢測效果較差,因此以下將對故障2 與故障10 進行詳細的分析。
故障2是由進料含量的變化使得相關(guān)變量偏離正常范圍的一種階躍故障,基于PCA 和PPA 方法均未有效地檢測到故障的發(fā)生。由圖12 可知PCA 的主元子空間中仍存在多模態(tài)特征,所以PCA 的檢測效果并不理想,其檢測結(jié)果如圖13所示。
表4 三種方法對TE過程的故障檢測率Table 4 Fault detection rates of TE process for three methods
圖12 主元空間變量散點分布圖Fig.12 The scatter plots of variable in principal component subspace
圖13 故障IDV2的PCA檢測結(jié)果Fig.13 Fault detection results of IDV2 using PCA
同樣地,通過圖14可以看出PPA 主多項式空間中也包含多模態(tài)特征,使得PPA 的檢測控制限明顯增大。由圖15 可以發(fā)現(xiàn),在第1122 個樣本之后,故障樣本具有偏離正常樣本的趨勢,但是由于增大的控制限使得模態(tài)2 的故障均在控制限之下未被檢測。而本文提出的HVGMM-PPA 方法克服了以上缺點,在保證模態(tài)識別正確的前提下,構(gòu)建多個PPA檢測模型,避免了多模態(tài)特征對檢測模型的影響。HVGMM-PPA 的檢測效果如圖16所示,其結(jié)果表現(xiàn)出比對比方法更好的性能。故障10 是一種由C 進料問題隨機變化產(chǎn)生的隨機故障,PCA、PPA 與HVGMM-PPA 的檢測效果如圖17 所示。由圖17 可以看出,PCA 與PPA 未能檢測出各個模態(tài)所包含的故障。以上仿真結(jié)果均表明,HVGMM-PPA 在多模態(tài)工業(yè)過程中能夠有效地進行故障檢測,進一步驗證了本文方法的有效性。
圖14 主多項式空間變量散點分布圖Fig.14 The scatter plots of variable in principal polynomial subspace
圖15 故障IDV2的PPA檢測結(jié)果Fig.15 Fault detection results of IDV2 using PPA
圖16 故障IDV2的HVGMM-PPA檢測結(jié)果Fig.16 Fault detection results of IDV2 using HVGMM-PPA
圖17 故障IDV10的PCA、PPA和HVGMM-PPA檢測結(jié)果Fig.17 Fault detection results of IDV10 using PCA,PPA,and HVGMM-PPA
本文提出了一種HVGMM-PPA 的故障檢測方法。HVGMM-PPA 不僅可以識別多模態(tài)過程的工作模態(tài)確定局部檢測模型的數(shù)量,還可以通過局部檢測模型的單變量回歸消除過程數(shù)據(jù)的非線性特征進行有效的多模態(tài)非線性過程故障檢測。仿真結(jié)果表明HVGMM-PPA 模型能夠有效避免受到初始模型參數(shù)的影響,提高VBGMM-PPA 在多模態(tài)非線性過程中工作模態(tài)與非線性特征的識別能力。通過數(shù)值例子和TE過程的仿真實驗,驗證了該方法的有效性。