唐徐佳, 盧偉鵬, 顏學峰
(華東理工大學能源化工過程智能制造教育部重點實驗室, 上海 200237)
隨著科學技術的進步,工業過程的生產規模不斷擴大并且生產環境變得更加復雜,人們對產品質量和安全生產提出了更高的要求,對復雜工業過程的監測尤為重要。工業分布式系統和傳感器的廣泛應用可以方便地收集大量數據[1],數據的存儲和傳輸更加高效,為數據驅動方法提供了數據基礎[2]。多元統計方法在實際故障監測中被廣泛應用,其基本方法有主成分分析(Principal Component Analysis, PCA)、偏最小二乘法、獨立成分分析和典型相關分析[3]。為了監測非線性工業過程,Lee 等[4]將核主成分分析(Kernel Principal Component Analysis, KPCA)應用于故障監測,而后基于該思想的監測方法相繼被提出。然而,在實際過程中,變量的線性和非線性特征有著復雜的聯系,需要進一步研究。為了解決這一問題,Jiang 等[5]提出了一種基于判別算法的并行PCA - KPCA 方法;首先將變量分為線性和非線性兩類,接著對變量分別使用PCA 和KPCA 進行監測。Jiang 等[6]進一步解釋為一些特征值大的特征可能對故障不敏感。
隨著海量數據和日益復雜的工業流程,在線特征選擇變得耗時。集成學習方法的出現為敏感特征提取提供了新的思路。集成建模的思想是通過形成和組合大量的基礎模型來提高系統性能。利用不同的數據集提取不同的變量,采用不同的組合方法都可以形成差異化子模型。在過程監控領域,Li 等[7]使用了11 種不同核參數的基模型來監控復雜的非線性過程。Zhan 等[8]發現不同的局部和全局占比系數會影響系統性能,而后,整合不同局部全局比例參數的子模型,可以提高模型的監測效果。
基于上述分析,為了提取對當前故障最有效的特征,提出了一種基于PCA 和KPCA方法的集成模型,即自適應集成殘差PCA (Adaptive Ensemble Residual Principal Component Analysis, AERPCA)。
KPCA 是最常用的非線性過程監測方法,對于一個標準的數據集X∈Rn×m(其中n和m分別是樣本數量及變量個數),對于第i個和第j個樣本,核矩陣K計算如下:
其中:K需要中心化為,ker 代表核函數,常用的核函數是高斯核函數,新的特征可以通過以下方式得到:
其中:n表示樣本個數, αi和di分別代表第i個特征向量和特征值。
通過計算累積百分率(Cumulative Percent Variance,CPV)方法,可以得到主成分數量kN。對于樣本點s,樣本數據xs∈Rm,其第i個主成分的計算方法為:
其中:t代表主成分;核向量ks∈Rn,其第i個元素為[ks]i=ker(xi,xs)。
為了進行系統監測,指標T2和Q分別用于主空間和殘差空間的監控,對于樣本點s,兩個指標的計算式分別如下:
其中: Λ=diag(di) ,控制限和Qlim都是通過核密度估計(Kernel Density Estimation, KDE)[4]計算得來。
圖1 示出了AERPCA 的整體結構,其中PL,dL表示將選出的特征放在前面,其余特征放在后面。圖2 示出了每個殘差空間對應的集成KPCA 子模型的計算步驟,其簡化了KPCA 子模型的挑選步驟,其中PN,i,dN,i表示在第i個殘差空間下KPCA 的特征值和特征向量。

圖1 AERPCA 的整體結構Fig.1 Overall structure of AERPCA

圖2 集成KPCA 的結構Fig.2 Structure of KPCA integration
該模型主要由以下3 個步驟組成:(1)在主空間中生成mL個PCA 子模型;(2)在每個殘差空間中生成對應的綜合KPCA 子模型;(3)通過使用自適應算法選擇最終模型。具體為:
(1)第1 層:PCA 特征層。對于第iL個PCA 子模型,隨機選擇fL個特征,用以形成主空間線性特征,剩余的殘差空間線性特征組成。由=可獲得由所選主成分(Principal Component, PC)所構成的得分矩陣,由此可將原始數據矩陣分解為以下兩部分:
對于第iL個線性子模型,在樣本點xs,其主空間的監測指標計算如下:
(2)第2 層:KPCA 特征層。考慮到有效信息分散在剩余空間中,為了聚集這些信息,就需要將提取得到的非線性特征做進一步劃分,以形成KPCA 子模型。對于第j個KPCA 子模型,在樣本點xs下,其監測指標為:
在獲得用于聚集有效殘差特征的殘差子空間之后,使用貝葉斯集成來組合這些子空間以獲得監測指標并監控整個殘差空間。貝葉斯推理方法將監控結果與加權平均相結合,以獲得最終概率結果[9]。在殘差空間的新樣本xs,其第j個KPCA 子模型發生故障的概率計算如下:
其中: F 和 N 分別表示異常和正常狀態;p(F) 和p(N)分別表示異常和正常狀態的先驗概率,值分別為 1?α 和 α ; α 表示置信水平,通常為95%~99%。異常和正常狀態的條件概率計算分別如下:
在獲得所有mN個KPCA 子模型的后,第i個集成KPCA 子模型的監測指標計算如下:
在本模型中,所有PCA 和KPCA 子模型都是由差異子模型生成策略產生的。在本小節中,將以第iL個PCA 子模型為例,說明子模型的生成原理,其中1 ≤iL≤mL。
對于PCA 方法,通過分解協方差矩陣 Σ ,將得到特征向量矩陣和特征向量通過隨機選擇fL∈[1,m] 個具有相同權重且不同的特征向量來獲得候選PCA 子模型。重復mCL次上述操作,其中mCL?mL,可以獲得mCL個候選PCA 子模型。
對于第iCL候選子模型,∈Rm表示挑選出的特征,其每個元素由0 和1 組成,其中1 表示相同位置的特征被選擇,若該特征不被選擇則值為0。表示兩個子模型之間的差異。在生成mCL個候選子模型之后,通過篩選機制,挑選出差異最大的mL個PCA 子模型。
篩選機制采用了一種自底向上的層次聚類算法single-linkage clustering[10]。首先,將每個候選模型用作基模型,然后在算法的每個步驟中將兩個最近的聚類進行聚合。其中,對于兩個簇A和B,其距離可以由式(14)計算得來:
當達到預設的聚類數量即預期的子模型數量mL時,將在每個類別中隨機選擇一個代表性模型作為PCA 子模型。
為了讓每個子模型對最終指標具有相同的影響,就需要將mL個PCA 子模型和mL個集成KPCA子模型的監測指標標準化。對于i個PCA 子模型,標準化后的監測指標如下:
自適應模型選擇的原理是:在該樣本點的滑動窗口w中,選擇具有最佳監測效果的模型。具體來說,使用故障檢測數(Fault Detection Number, FDN)判斷子模型的監測效果,如果子模型的故障報警率(Fault Alarm Rate, FAR)太高,那么此時的FDN 是無效的。因此,一部分驗證數據被用來挑選出FAR ≤1?α的子模型。當沒有達到窗口w的寬度時,則由所有模型的平均值作為此時的監測指標AT2。對于樣本xs,自適應模型選擇的公式為:
其 中 :best=index[max(FDN(pT12,s),FDN(PT22,s),···,FDN())],代表在區間 [s?w,s] 中具有最佳監測效果的模型編號。滑動窗口w是一個待定的參數,建議取值為 50 ~250[11]。
2.4.1 離線建模階段檢測步驟
(1)訓練集Xtr和驗證集Xver標準化,并確定模型的相關參數:置信度 α 、自適應選擇的窗口w、PCA 子模型的個數mL、每個殘差空間的KPCA 子模型個數mN。
(2)由訓練集Xtr計算得到協方差矩陣,而后對其特征值分解,以獲得PCA 的特征向量矩陣PL和特征值向量dL。
(3)使用子模型生成策略,生成mL個PCA 子模型,而后計算每個子模型的負載矩陣、得分矩陣和殘差空間,其中,i=1,2,···,mL。
(5)使用子模型生成策略,為每個殘差空間產生mN個KPCA 子模型,而后使用貝葉斯集成這mN個子模型,以形成該空間下的監測指標。
(6)使用驗證集Xver計算與,接著使用KDE 方法計算控制限。
(1)將在線數據標準化為Xte,而后輸入到模型中。
(2)使用Xte計算每個PCA 子模型的監測指標和殘差空間。
(4)使用式(15)~式(17),將PCA 子模型與集成KPCA 子模型集成起來,以形成最終的監測指標AT2。
(5)如果AT2>=1 ,代表故障已經發生了。
由文獻[4]提出的基于真實工業過程的田納西-伊士曼工廠(Tennessee Eastman Plant, TEP)過程已被學術界廣泛用作標準測試平臺。在過程數據中,有52 個變量和21 種故障,詳細描述可在文獻[12]中找到。數據集有兩種,分別是500 個樣本的正常數據和960 個樣本的測試數據,如果該數據集包含故障,則故障在第161 個樣本點引入。
本研究選擇了22 個測量變量XMEAS(1)~XMEAS(22)和11 個操縱變量XMV(1)~XMV(11)進行監測。500 個樣本的數據集用于訓練模型參數,960 個樣本的驗證集用于確定子模型的控制限。KPCA、串行PCA (serial PCA, SPCA)、自適應殘差PCA(Adaptive Residual PCA, ARPCA)和AERPCA 使用高斯核函數。文獻[13]指出,核的寬度為c=500m時,將取得較好的性能,其中m代表變量個數。SPCA、KPCA、PCA 和ARPCA的PC 數量為CPV=85%時的數量。為了消除噪聲的影響,選擇CPV 為99.9%的特征作為備選特征,PCA和KPCA 的備選特征數分別為26 和60。表1 列出了通過試錯法得到的AERPCA的具體參數。

表1 AERPCA 中的參數設置Table 1 Parameter setting of AERPCA
通過模型不同層級間的比較實驗,來顯示每層特征選取與集成的作用,其比較實驗結果如表2 所示。自適應PCA(Adaptive PCA, APCA)表示通過選擇不同的線性特征形成不同的模型。ARPCA 表示將每個殘差空間中的Q指標也作為子模型,監測指標為FAR 與FDR。根據TEP 數據的特點,可進一步定義為:

表2 每個層級之間的比較Table 2 Comparison between each level
其中 FF 和 TF 分別表示過程正常但被診斷為故障與過程有故障且被診斷為故障的樣本數。MFDR(Mean FDR)和MFAR (Mean FAR)分別代表21 個故障的平均FDR 和FAR。
由表2 可知,首先,APCA 的檢測效果優于PCA,PCA 使用正常運行數據來選擇特征。而APCA 選擇差異化的特征來形成模型,這樣就可以選擇特征值小但對故障敏感的特征。
其次,ARPCA 的檢測效果優于僅集成PCA 主空間子模型的APCA。原因是APCA 的殘差空間中的故障信息沒有被使用。而某些故障在殘差空間呈現,但在主空間中很難檢測到。因此,在子模型中加入殘差空間的監測,也有助于提高監測效果。
最后,AERPCA 的檢測效果優于ARPCA。具體來說, AERPCA 的MFDR 比ARPCA 的MFDR 高3.78,而AERPCA 的MFAR 相比ARPCA 略微下降了2.05。在ARPCA 中,對故障敏感的特征在殘差空間中的比例很小,這就降低了Q指標的故障監測效果。鑒于殘差空間具有很強的非線性,KPCA 可以提取更有效的特征。
故障10 是由物料溫度導致的隨機故障。圖3和圖4 分別顯示了PCA、KPCA 和AERPCA 的監測圖。在故障監測圖中,藍色表示正常狀態,紅色表示此時發生故障,虛線表示控制限,在PCA、KPCA 監測圖中,Q指數的監測性能最好。AERPCA 進一步提高了監測性能:當誤報率為1.2%時,83.6%的故障可以被發現。

圖3 TEP 故障F10 的監測圖Fig.3 Monitoring charts for the TEP fault F10

圖4 TEP 故障F10 的AERPCA 監測圖Fig.4 Monitoring charts of AERPCA for the TEP fault F10
為了進一步解釋子模型的作用,圖5 和圖6 分別顯示了自適應模型挑選策略選擇的模型編號及每個子模型的監測圖。其中圖5 縱軸編號1~4 代表PCA 子模型1~4,5~8 代表集成KPCA 模型1~4。由圖5 可見主空間的模型沒有被選擇。

圖5 TEP 故障F10 的自適應挑選子模型過程Fig.5 Adaptive process of each base model for the TEP fault F10

圖6 TEP 故障F10 的每個子模型的監測圖Fig.6 Monitoring charts of each sub-model for the TEP fault F10
與KPCA 和PCA 的監測圖類似,剛開始主空間的監測效果也不理想。因此,自適應算法所選擇的在線模型都來自于殘差空間,而且在不同的時間選擇不同的模型。為了進一步分析這種不同選擇的原因,分別選擇了樣本453、454、455 和樣本873、874、875,分析TEP 故障F10 在樣本區間的監測圖,如圖7所示。

圖7 TEP 故障F10 在不同樣本區間的監測圖Fig.7 Monitoring charts for the different sample intervals of the TEP fault F10
在453~455 區間,所有殘差模型的監測效果都比主空間中的PCA 子模型效果明顯。因此,在線挑選的是殘差模型。然而,同一故障在不同的時刻會發生變化,因此并不是由一個特定的模型完成所有時間的監測,而是出現了模型間的切換,最終由不同的模型監測。對于873 號樣本,選擇了殘差空間中的KPCA2。對于873、874、875 號樣本,只有PCA3子模型和KPCA1 子模型可以同時監測這3 個樣本點的故障。所選出來的殘差模型更敏感,確實可以更好地監測當前過程。
為了進一步驗證所提出的AERPCA 模型的有效性,將該方法與經典的KPCA 集成方法(Ensemble KPCA (EKPCA)[7]和Ensemble Global Local Preserving Projections (EKGLPP)[8])進行比較,并同時比較了PCA 整合方法 (CPCA)[14],以及PCA和KPCA 組合方法如SPCA[15]。表3 示出了這些模型的MFAR 和MFDR,其中較好的數據用粗體字表示。

表3 相關方法實驗對比Table 3 Result comparison with relevant methods
由表3 可知,SPCA 取得了良好的效果,在殘差空間的MFDR 為78.55%。該方法使用PCA 和KPCA來表達特征信息。然而,基于離線數據的建模不能適應不斷變化的故障。
CPCA 是PCA 集成方法,在殘差空間有更好的識別效果。其MFDR 為73.30%,表明殘差空間中存在更多的故障信息。然而,為殘余空間建立一個整體的Q指數不能完全突出有效信息,而且可能會受到噪聲的干擾。此外,僅從PCA 的角度提取故障信息并不適合監測復雜的工業過程。
EKPCA 和EKGLPP 是KPCA 的集成方法。與單一KPCA 相比,集成模型有一定優勢。然而,與本研究中的方法相比,僅有KPCA 模型的集成有一定的缺陷。原因是KPCA 方法對某些故障信息的提取可能沒有簡單的PCA 方法好。在AERPCA 中,主空間的PCA 子模型是通過使用差異化的特征來構建的,每個殘余空間都由差異化的KPCA 模型來監控。AERPCA 模型不僅從不同角度提取故障信息,而且還考慮了故障敏感特征,使用自適應算法,能夠選擇最符合當前故障的模型,因而獲得了更好的結果。
本文提出了一種基于集成思想的雙層特征提取模型AERPCA,以充分提取復雜工業過程中的故障信息。在雙層特征提取中,首先選擇不同的PCA 特征來構建子模型,以聚合具有小特征值卻對故障敏感的特征。然后考慮到殘差空間的有效特征分散與非線性,使用集成KPCA 模型完成殘差空間的劃分和聚合。在得到不同的特征組合后,采用自適應方法,根據在線數據選擇具有最佳監測性能的模型。最后,不僅與自身不同層級間的實驗比較,還與現有方法,如基于集成思想的模型和混合等方法進行了比較。實驗結果顯示了所提出模型在復雜工業監測中的優勢。