郭金玉,王 哲,李 元
(沈陽化工大學 信息工程學院,遼寧 沈陽 110142)
在信息數字科技高度發(fā)達的今天,云計算、大數據分析、人工智能等全新概念促使每個行業(yè)都開始謀求技術迭代甚至商業(yè)模式的全面轉型。工業(yè)領域一向重視數據分析,尤其是在故障分析與診斷方面,數據分析起到了至關重要的作用。隨著化工過程規(guī)模的逐漸擴大,工業(yè)程序越發(fā)復雜,故障檢測變得尤為重要和困難。一個好的故障檢測算法不僅可以大大提高工業(yè)過程故障檢測的效率,也能保證故障排查的精度,尋找合適的故障檢測算法成為當前主要研究問題之一[1]。
最早最經典的故障檢測算法—主成分分析(principal component analysis, PCA)是隨著測量、數據存儲和計算設備的發(fā)展而出現的。PCA將數據信息投影到主元空間和殘差空間兩個子空間中,并構造了以馬氏距離和歐氏距離為代表的兩個統(tǒng)計量,以檢測兩個子空間中的變化。其算法實現簡潔、處理速度快,在處理高斯分布的高維檢測數據時可以取得非常好的檢測效果,因此使用最廣泛。但由于PCA假定過程數據是線性的,對于某些具有特定非線性特性的復雜工業(yè)過程性能較差。近年來,一種新的非線性PCA技術—核主成分分析(kernel PCA, KPCA)[2]出現并發(fā)展迅速,通過非線性映射將輸入空間映射到特征空間,然后計算高維特征空間中的主成分。與其他非線性方法相比,KPCA的主要優(yōu)點是通過引入核函數避免了非線性映射和內積計算。KPCA與常規(guī)PCA相似,均通過構造Hetelling T2和平方預測誤差(squared prediction error,SPE)兩個統(tǒng)計量來分別監(jiān)視主成分空間和殘差空間,且均在確定統(tǒng)計量的置信限時基于獲得的得分變量遵循高斯分布的假設,但這在非線性過程中難以滿足[3]。KPCA 只利用了過程變量的方差信息,缺乏有效處理非高斯數據的能力。但實際中,工業(yè)過程數據往往是高斯與非高斯分布共存。在此情況下,Jenssen[4-5]提出一種用于非線性化學過程監(jiān)測的新的多元統(tǒng)計數據轉換方法—核熵成分分析(kernel entropy component analysis, KECA),是一種基于角度的故障檢測方法,放寬了傳統(tǒng)PCA和KPCA方法中的高斯假設[6-8],可用于非線性工業(yè)過程監(jiān)控。相比于只考慮二階統(tǒng)計量方差的KPCA,KECA 試圖最大程度保留原始數據的熵值,有助于有效提取數據中的高階統(tǒng)計量即非高斯信息,對于某些故障的檢測卓有成效,但因為在數據處理過程中失去對數據高維信息的捕捉,對微小故障的檢測較傳統(tǒng)的分析方法相對弱勢。齊詠生等[9]改進了傳統(tǒng)的KECA方法,提出一種CS(Cauchy-Schwarz)統(tǒng)計量,該統(tǒng)計量在微小故障的檢測方面表現突出,但由于CS統(tǒng)計量是通過向量之間的夾角獲得的,對于樣本信息熵的處理不如互信息,導致檢測效果不穩(wěn)定?;バ畔?mutual information, MI)[10]是一種脫胎于信息論的信息度量方法,可被看成是一個隨機變量中包含關于另一個隨機變量的信息量,或者說是一個隨機變量由于已知另一個隨機變量而減少的不確定性,可以高效地估計出兩組隨機變量相互依賴的程度,還可以有效地考慮高維度統(tǒng)計量[11-12]。但這種方法目前很少應用在工業(yè)數據分析領域[13-14]。
本研究將KECA與MI結合起來,提出一種基于互信息和核熵成分分析的故障檢測算法,利用新型統(tǒng)計量—基于互信息的平方預測誤差(squared prediction error based on mutual information, MISPE),彌補KECA在故障檢測時過多丟失高維度信息的問題。相比于之前單純對向量夾角或距離的度量,MI的引入能夠更加精細地表達變量之間的關系,大大提升KECA方法對于非微小故障的檢測效率。
假設p(x)是生成數據集D:x1,x2,…,xN的概率密度函數,則瑞麗熵(Rényi entropy)[15]為:
(1)
(2)
式中:kσ(x,xt)是以xt為中心的Parzen窗,σ是窗口寬度。使用樣本均值來近似估計V(p),得到
(3)
式中:K是N×N的核矩陣;I是一個N×1的單位向量?;诳捎脴颖精@得的瑞麗熵估計量就是相應核矩陣的元素。
將核矩陣進行特征分解,K=EDET。其中:D為特征值矩陣;D=diag(λ1,λ2,…,λN);E=(e1,e2,…,eN)為特征向量矩陣。重寫式(3),得到:
(4)
在KPCA中,僅僅基于特征值的大小選擇特征值和特征向量來執(zhí)行降維,而從熵的角度來看,特征向量熵的估計值同時受特征值和特征向量的影響。因此在式(4)中,Ψi的值可以用作瑞麗熵的估計。
對于輸入數據集D:x1,x2,…,xN,給定一個核函數φ(·),定義從輸入空間到核特征空間的映射xi→φ(xi)(i=1,2,…,N),核特征空間的數據集表示為Φ=[φ(x1),φ(x2),…,φ(xN)]。本研究選用高斯核函數將樣本數據映射至高維空間,高斯核函數對于數據中的噪音有著較好的抗干擾能力,其參數決定了函數作用范圍,超過這個范圍,數據的作用就“基本消失”,通常是通過交叉驗證獲得有效的核參數。
KECA可以看作是將Φ投影到重要的子空間Us上所獲得的s維數據轉換,這個重要的子空間Us是由那些對數據的瑞麗熵估計貢獻最大的s個KPCA主軸組成的,不一定與前面的特征值相對應[17]。轉換如下:
(5)
式中,得分矩陣T=[t1,t2,…,ts]。新的測試數據通過函數Φ′投影到子空間上,即可得到得分矩陣
(6)
式中,K′=Φ′TΦ。定義輸入數據集的殘差矩陣
(7)
在兩個隨機變量之間的統(tǒng)計依賴性度量中,互信息由于其信息論背景而被引入。MI在估算KECA算法中每個樣本的實際統(tǒng)計獨立性中起著重要作用。一個連續(xù)隨機變量x=(x1,x2,…,xn)的香農(Shannon)熵定義為:
(8)
式中u(x)是x的概率密度函數。
對于隨機變量x和y,x中包含y的信息量可以由互信息度量,其定義為:
(9)
式中:ux,y(x,y)是聯合概率密度函數,ux和uy是x和y的邊緣概率密度函數。
根據變量的熵估計互信息為:
I(x,y)=H(x)+H(y)-H(x,y)。
(10)
式中:H(x)和H(y)是x和y的邊緣熵,H(x,y)是聯合熵。聯合熵的計算公式為:
(11)
值得注意的是,在實踐中通過計算積分和求和的互信息估計是密集且效率低的。為了減輕計算負擔,一種基于香農熵的Kozachenko-Leonenko估計量的最近鄰策略被提出,用于對互信息的數值估計[18-19]。首先,通過最近鄰技術估計聯合熵為:
(12)
假設zi=(xi,yi)代表空間中一個坐標點,則式(12)中的ε(i)/2是點zi到其第l個近鄰的距離;εx(i)/2和εy(i)/2分別表示相同點投影到X和Y子空間的距離,顯然ε(i)=max {εx(i),εy(i)}。此外,ψ(x)=Γ(x)-1dΓ(x)/dx為雙伽瑪函數,Γ(x)=(x-1)!是伽馬函數,其中dx和dy分別表示x和y的維數,cd=πd/2/Γ(1+d/2)/2d是歐幾里得范數的d維單位立方體的體積。對于邊緣熵H(x)或H(y),可以通過關節(jié)空間投影來估計:
(13)
式中,τx(i)是與xi的距離小于εx(i)/2的點數。式(10)減去式(12)、(13),得:
I(x,y)=ψ(l)-〈ψ[τx(i)]+ψ[τy(i)]〉+ψ(n)。
(14)
式中〈·〉表示隨機樣本所有可能實現的平均值。在MI的最終方程式中減去用于度量近鄰子空間大小的參數ε(i)和cd,說明互信息的估算結果與近鄰空間的數據規(guī)模無關。這種方法可以擴展到計算任意維的變量x和y之間的多維互信息。因此,對于基準數據集的殘差矩陣FR和監(jiān)視數據集的殘差矩陣FM,多維互信息的計算公式為:
I(FR,FM)=ψ(l)-〈ψ[τR(i)]+ψ[τM(i)]〉+ψ(n)。
(15)
式中:n代表殘差空間中樣本的大小,τR(i)和τM(i)分別代表由εx(i)/2和εy(i)/2確定的近鄰空間中的點數。式(15)說明FM和FR之間的互信息值越小,相異指數值越大。換句話說,如果相異指數較大,則當前監(jiān)視的操作模式明顯不同于基準條件,被視為異常。
相比KPCA,KECA雖然考慮了數據信息熵丟失的問題,但沒有充分考慮高階統(tǒng)計量。因此,本研究通過兩個近鄰空間之間基于多維互信息的統(tǒng)計獨立性來表征差異性。由于KECA所提取的熵成分可以是非線性、非高斯的,而互信息可以同時捕捉數據中的非高斯統(tǒng)計關系和各種隱藏信息,因此本研究將互信息和傳統(tǒng)KECA方法中的SPE統(tǒng)計量結合,得到一個可以面向幾乎所有類型數據分布形式且對于高維統(tǒng)計信息更加敏感的新統(tǒng)計量—MISPE。每個樣本的MISPE統(tǒng)計量定義為:
(16)
式中
(17)
本研究選用核密度估計(kernel density estimation,KDE)確定樣本統(tǒng)計量的控制限。核密度估計是一種非參數估計,既不需要數據的先驗知識,也不做任何假設,被廣泛用于確定數據分布非正態(tài)或未知時的控制限。公式為:
(18)
式中:h為帶寬,K代表高斯核函數。
基于MIKECA的故障檢測步驟包括兩部分:離線建模和在線監(jiān)控。
1) 離線建模
正常數據用D(N×M)表示,其中N代表樣本數量,M代表每個樣本所含變量的個數。將數據集D作為訓練數據按照以下步驟進行處理。
Ⅰ 給定核函數以及核參數,利用樣本數據構建KECA模型,利用式(6)求出得分矩陣T=[t1,t2,…,ts],并利用式(7)計算殘差矩陣F(N×M);
Ⅱ 利用式(17)計算樣本數據的監(jiān)測統(tǒng)計量SPE;
Ⅲ 從F中選出一個樣本作為標準樣本FR,求出F中各個樣本與標準樣本的互信息,利用式(16)得到新的監(jiān)測統(tǒng)計量MISPE;
Ⅳ 計算監(jiān)測統(tǒng)計量的控制限MISPElim。
2) 在線監(jiān)控
Ⅰ 對測試數據集Dnew,按離線建模數據的均值與方差對測試數據標準化;
Ⅱ 把當前測試數據投影到KECA模型中,利用式(6)提取得分向量Tnew,利用式(7)計算殘差矩陣FM;
Ⅲ 利用式(17)計算測試數據的監(jiān)測統(tǒng)計量SPEnew;
Ⅳ 根據式(16),利用殘差矩陣FM得到新的監(jiān)測統(tǒng)計量MISPEnew;
Ⅴ 與控制限MISPElim進行比較,如果統(tǒng)計量超出相應的控制限,即可判斷工業(yè)過程發(fā)生了故障;反之,則認為測試數據正常,返回繼續(xù)進行下一個測試數據的監(jiān)測。
田納西-伊斯曼(Tennessee Eastman,TE)過程是評估本研究提出的監(jiān)測方法有效性和實用性的重要實驗對象,其工藝流程圖如圖1所示,由5個主要單元操作組成,包括化學反應器、冷凝器、循環(huán)壓縮機、氣/液分離器和汽提塔。TE過程由4種氣態(tài)反應物A、C、D、E和惰性的氣態(tài)組分B參與反應,生產出兩種液態(tài)產物G和H以及副產物F。反應器產物流通過部分冷凝器冷卻,并進料至氣/液分離器中進行組分分離。此外離開分離器的蒸汽流通過壓縮機再循環(huán)至反應器進料流。凈化一部分循環(huán)物流以防止過程中惰性和副產物的積累[20]。同時,來自分離器冷凝的組分(物流10)被泵入汽提塔。離開汽提塔的產品G和H在下游操作中進一步處理。
圖1 TE過程流程圖
TE過程包括1種正常工況和21種可操作的故障工況。表1為TE過程21種故障的說明。正常和故障工況下的采樣時間間隔為3 min。在正常工況下,過程運行48 h產生的960個數據被采集作為正常數據樣本,21種故障工況是在過程穩(wěn)定運行8 h后引入,故采集的960個數據中前160個數據不含故障,后800個數據含有故障。將正常工況下的960個數據作為訓練樣本,所有含故障數據作為測試樣本。
表1 TE過程的故障說明
選取TE過程中的故障7、11、17和21作為測試數據集,將KPCA、KECA的SPE、CS統(tǒng)計量與本研究提出的MIKECA進行對比, 通過故障檢測率(fault detection rate,FDR)和誤報率(false alarm rate,FAR)兩個指標評估算法的好壞。
以故障17為例,圖2是4種方法進行故障檢測的仿真結果。對于故障17,4種方法都對故障樣本和正常樣本進行了大致上的甄別。KPCA的誤報現象最為嚴重,同時也有一定數量的漏報。KPCA在選取主成分時僅考慮了特征值的大小,沒有充分考慮高階統(tǒng)計量,因此KPCA無法有效提取過程數據中的非高斯特征,導致檢測效果差。相比KPCA,KECA的誤報有了明顯改善,但是KECA也漏報了相當一部分的故障樣本。KECA盡可能地保留原有數據的熵值,改善了誤報現象嚴重的問題,但是沒有考慮投影后數據的結構特征,因此總體檢測效果沒有大幅度地提升。與KECA相比,CS統(tǒng)計量彌補了基于距離的監(jiān)測指標對那些故障幅度較小、數據結構變化不明顯的故障監(jiān)測效果較差的不足,一定程度上提高了KECA算法的檢測率,降低了誤報率。但是這種基于向量夾角計算得出的統(tǒng)計量無法兼顧到樣本的高維信息,誤報率也相對偏高。對比其他3種方法,本研究的MIKECA算法的誤報率最低,而且故障檢測率最高。MIKECA不僅結合了KECA選取主成分的優(yōu)勢,還利用互信息捕捉樣本高維信息,因此總體檢測效果明顯優(yōu)于其他算法。
圖2 4種算法對故障17仿真結果對比圖
表2列出4種算法的FDR與FAR對比。由表2可知,對比其他3種方法,MIKECA算法對4個故障檢測的誤報率較低,而且檢測率最高,驗證了該方法在故障檢測中的有效性和優(yōu)勢。
表2 4種故障檢測算法的結果對比
本研究提出一種基于互信息和核熵成分分析的故障檢測算法MIKECA,并將其應用于田納西-伊斯曼過程的故障檢測。該方法與原來基于角度的CS統(tǒng)計量不同,不僅充分捕捉了過程的非高斯特征,而且通過互信息的計算,更兼顧了各種維度的數據統(tǒng)計信息。監(jiān)測結果表明,MIKECA的故障檢測效果優(yōu)于KPCA、KECA算法,具有最可靠的故障檢測能力。
未來的工作集中在故障診斷部分,通過基于差異的模式識別來隔離故障變量。因此,調整所提出的方法以適應更復雜的批量操作環(huán)境值得進一步研究。此外,該方法在其他化工過程中的應用也需要進一步探討。