嚴文武,潘 豐
(江南大學輕工過程先進控制教育部重點實驗室,江蘇 無錫 214122)
基于ICA-ELM的工業過程故障分類
嚴文武,潘 豐
(江南大學輕工過程先進控制教育部重點實驗室,江蘇 無錫 214122)
基于獨立成分分析(ICA)的多變量統計過程監控主要用于故障檢測,不能有效地進行故障分類。為此,結合極限學習機(ELM),提出一種ICA-ELM的故障分類方法。利用ICA提取故障特征,通過ELM學習算法訓練神經網絡,從而實現故障分類。采用 TE過程數據進行驗證,實驗結果表明,與概率神經網絡和支持向量機相比,ICA-ELM算法的故障分類準確率更高,訓練速度更快。
獨立成分分析;極限學習機;故障分類;概率神經網絡;支持向量機;TE過程
DO I:10.3969/j.issn.1000-3428.2015.10.055
為了實現更大的產能和更高的產品質量,工業系統變得越來越復雜,隨之,現代工業過程監控受到越來越多的關注。目前比較流行的過程監控方法有多變量統計法、專家系統法和人工智能法等[1]。在多變量統計方法中最為普遍的是主成分分析法(Principal Component Analysis,PCA)和獨立成分分析法(Independent Component Analysis,ICA)等[2]。獨立成分分析最初是為了解決盲信號分離問題而被提出,后作為主成分分析法的延伸被引入多變量統計過程監控。與PCA方法相比,ICA方法不要求變量滿足高斯分布,能夠有效地利用信號中的高階統計信息,提取內在獨立特性成分,從而更有效地進行過程監控[3]。
ICA方法故障檢測性能較好,但在故障識別分類方面有所欠缺。在工業過程故障診斷中,快速準確地進行故障分類有重要的意義,及時地識別故障類型有助于盡早排除故障,恢復正常生產。傳統的智能故障分類方法有反向傳播神經網絡(Back Propagation Neural Network,BPNN)、概率神經網絡(Probabilistic Neural Network,PNN)等,對于小樣本分類有支持向量機(Support Vector Machine,SVM)。傳統神經網絡訓練時間大多過于冗長,且訓練參數選擇復雜。支持向量機分類同樣存在參數選擇復雜的問題,且隨著訓練數據量的增加,算法計算量急劇
增加,所需訓練時間過長,算法甚至難以實施。為此,本文提出一種ICA-ELM算法來實現快速簡單的故障分類。極限學習機(Extreme Learning Machine,ELM)是一種針對單隱藏層前饋神經網絡的快速機器學習算法,該算法訓練速度快、參數簡單易于實現,同時具有很好的范化能力[4]。本文通過TE化工過程仿真來測試ICA-ELM方法的可行性,并與PNN和SVM方法進行比較。
2.1 獨立成分分析
獨立成分分析(ICA)是信號處理領域在20世紀90年代后期發展起來的一項新處理方法,文獻[5]提出了基于ICA的過程監控方法。
多導觀測X是多個獨立信號S通過混合矩陣A組合而成(X=AS),ICA的任務就是在S和A均未知的情況下,求解混矩陣W,使得X通過W得到的輸出Y(Y=WX)是S的最優逼迫。
獨立成分分析算法有很多,其中快速ICA算法(FastICA)因為收斂速度快、效果好而被廣泛應用[6]。
2.2 極限學習機
極限學習機是一種針對于單隱含層前饋神經網絡(Single-hidden Layer Feedforward Neural Network,SLFN)的學習算法。由文獻[7-8]提出的極限學習機(ELM)算法克服了大多數基于梯度下降法神經網絡訓練慢、易陷入局部極小點、學習率敏感等缺點。該算法僅需設置隱含層神經元個數便可求得唯一最優解,整個算法一次完成,無須迭代,學習速度極快(通常是BPNN、SVM等速度10倍以上)。
ELM網絡結構如圖 1所示,是一個典型的SLFN結構,由輸入層、隱含層和輸出層構成,其神經元數分別為n,l,m。

圖1 ELM網絡結構
設連接隱含層的輸入連接權矩陣為 w,隱含層閾值矩陣為b,輸出權值矩陣為β,分別表示為:

其中,wi=[wi1,wi2,…,win];βi=[βi1,βi2,…,βim]。
設有 q組輸入輸出,則輸入和輸出矩陣分別為X=[χ1,χ2,…,χQ]n×q,T=[t1,t2,…,tQ]m×q,則有:

其中,χj=[χ1j,χ2j,…,χnj]T;g()為隱含層神經元激活函數(該函數無限可微)。可將式(2)表示成如下形式:

其中,TT為T的轉置;H為神經網絡的隱含層輸出矩陣,形式如下:

ELM算法步驟如下:
(1)確定神經元個數。
(2)隨機選取 w和 b,并計算隱含層輸出矩陣H。
由上述算法步驟可以看出,ELM算法不需要在訓練過程中調整 w和 b,只需設置好神經元個數,按以上算法一次性就能得到唯一全局最優解β^,不存在會陷入局部最優的問題。整個ELM算法參數選擇簡單,沒有迭代過程,所以算法速度得到了極大提升。
ICA-ELM故障分類方法,首先利用獨立成分分析提取獨立故障特征,將所提取的故障特征作為神
經網絡的輸入,再通過ELM學習算法訓練神經網絡,從而實現故障分類。
ICA-ELM故障分類主要分為4大步,依次為數據預處理、ICA建模、ELM建模和分類測試,算法流程如圖2所示。

圖2 ICA-ELM故障分類
ICA-ELM具體算法如下:
(1)對所有數據作標準化處理,去均值后除標準差得到數據矩陣X。正常狀態數據Xnormal經PCA去相關得Znormal:

其中,Q為PCA白化矩陣。
(2)對Znormal進行ICA分析,得到解混矩陣W。

其中,Snormal為正常狀態獨立成分;B采用FastICA算法[9]求得,則有解混矩陣W=BTQ。
(3)故障數據Xfault經W可得到故障特征Sfault= WXfault。設故障標簽為 t=[0,0,…,1,0,0,…,0]T(即ELM網絡輸出),若為故障i,則對應故障標簽第i個元素為1,其余為0。將Sfault和故障標簽t分別作為單隱含層神經網絡的輸入和輸出,采用ELM學習算法訓練網絡,得到相應網絡參數。
(4)進行故障分類。待分類故障數據 Xtest經 W得到待分類故障特征Stest=WXtest,再由ELM網絡分類得到故障標簽,從而判斷故障類型。
4.1 實驗數據來源
實驗數據來自Tennessee Eastman(TE)化工過程,該過程由美國伊斯曼化學品公司過程控制部提出,被廣泛應用于連續過程的監視診斷研究。
TE過程包括41個測量變量和12個控制變量,預設有21個故障,具體見文獻[10]。該實驗選取前16個測量變量進行過程監控,并取正常狀態和故障1,2,6,8,13,14數據作為實驗數據。這6種故障的描述如表1所示。

表1 TE中的6種故障描述
4.2 ICA特征提取
從TE過程數據中選取前16個監控量進行ICA建模。首先對正常狀態數據進行預處理,標準化得到 Xnormal,后用 PCA去相關化得到 Znormal,再使用FastICA算法求得解混矩陣W,最后得到正常狀態獨立成分Snormal=WXnormal。故障數據Xfault通過W可得故障狀態獨立成分Sfault=WXfault。將Sfault故障狀態特征數據結合ELM算法實現故障分類。
ICA特征提取采用500組TE正常狀態數據用于求得分離矩陣W。所選6種TE故障數據分為訓練集和測試集,其中訓練集每種故障有480組數據,測試集每種故障數據有800組數據。由此,可提取到故障訓練集和測試集特征數據,分別記為 Sf-train和Sf-test。
4.3 ICA-ELM模型
為了實現ELM分類功能,給每類故障定義一個故障標簽作為神經網的輸出值t。設第i類故障標簽為[0,0,…,1,0,0,…,0]T,該向量第 i個元素為 1,其余均為0。
ELM算法唯一需要確定的參數是神經元的個數,理論上神經元個數等于訓練樣本個數時,ELM網絡可零誤差逼近訓練樣本。在實際應用中,出于減少計算量和實際效果考慮,神經元個數都遠小于樣本數。
為了分析ELM隱含層神經元個數l對實際分類效果的影響,令l=100,110,120,…,1 000(一次增加10),分別進行10次測試,其中,ELM訓練集和測試集分別為Sf-train和Sf-test,網絡激活函數采用常用的S型函數為:

分析結果如圖3所示,l值越大,訓練集分類正確率越高,但測試集分類效果并非l越大越好。l= 450時,效果最好。因此,ELM需要在訓練集和測試
集正確率間折中選擇合適的隱含層神經元個數l。

圖3 神經元個數對分類結果的影響
ICA-ELM模型整體流程如下:
(1)TE正常狀態原始數據經標準化和PCA去相關化得到Znormal。
(2)Znormal經FastICA算法求得解混矩陣W。
(3)提取故障特征數據,得到訓練集數據 Sf-train和測試集數據Sf-test,并在ELM網絡訓練之前作歸一化處理。
(4)確定ELM神經元個數l=450。
(5)設ELM激活函數為g(χ)=1/(1+e-χ),隨機選取輸入層與隱含層連接權w和隱含層神經元閥值b,選定后不改變。
(7)測試集通過所得網絡可求得對應輸出t,由t可知故障類別數。
4.4 ICA-ELM分類效果
通過結合ELM算法,彌補了基于ICA多變量統計過程監控在故障分類方面的不足。ICA-ELM實際分類效果如圖4所示。ICA-ELM故障分類正確率接近90%,效果較為理想。

圖4 ICA-ELM分類結果
除了ICA-ELM方法進行故障分類外,其他方法也可實現故障分類的目的,比如ICA可結合概率神經網絡(PNN)和支持向量機(SVM),這3種方法分類效果如表2所示。

表2 測試集分類效果 %
從表2可以看出,ICA-ELM,ICA-PNN和ICA-SVM這3種方法都能夠有效地進行故障分類。其中,結合ELM方法的分類效果最好,平均分類正確率最高,達到90.0%。對于階躍類型和閥粘滯型的故障,如故障1、故障2、故障6和故障14,3種方法都有97%以上的分類正確率。對于隨機變量型的故障8,結合SVM方法的效果較好,這是由于SVM對于不易區分的類別(如故障8和故障13)有所偏重,故障8分類正確率高,而故障13分類正確率低,其中故障13更多地被錯誤歸類為故障8。對于慢偏移型的故障13,結合ELM方法的效果較好。
表3為3種算法的分析。ELM算法結構簡單,參數選擇方便,無需迭代學習,所以故障訓練和測試時間用時少,3種算法中最快。PNN算法是一種結合概率密度分類估計的并行處理神經網絡[11],具有快速學習能力,PNN算法比ELM速度稍慢,速度也很快。PNN算法中隱含層神經元個數等于樣本個數,而ELM神經元個數一般都遠小于樣本數。PNN樣本個數越多,隱含層神經元個數越多,網絡的逼近精度就越高,但也將導致網絡復雜度隨之提高。SVM算法參數較多,合理地選擇參數對分類效果有重要的作用,為了確定這些參數以達到理想的分類效果,需要花費大量時間[12]。

表3 3種算法性能比較
本文提出一種將獨立成分分析與極限學習機相結合的工業過程故障分類方法。利用ICA的故障提取能力和ELM的快速學習能力實現故障的快速分類。通過TE故障數據進行實驗,結果表明,ICAELM方法分類效果和速度都較好,結構簡單且參數選擇方便,唯一參數隱含層神經元個數對分類效果有一定的可控性。但ICA-ELM方法仍有一定的改進空間。本文算法主要是針對線性獨立成分分析,可以考慮采用非線性獨立成分分析的方法來提取故障特征。本文ELM算法為離線固定型,當建模完成后,不能根據新的數據更新模型,可使用可在線更新的ELM算法。
[1] 李 晗,蕭德云.基于數據驅動的故障診斷方法綜述[J].控制與決策,2011,26(1):1-9.
[2] 周東華,李 鋼,李 元.數據驅動的工業過程故障診斷技術——基于主元分析與偏最小二乘的方法[M].北京:科學出版社,2011.
[3] 樊繼聰,王友清,秦泗釗.聯合指標獨立成分分析在多變量過程故障診斷中的應用[J].自動化學報,2013,39(5):494-501.
[4] 鄧萬宇,鄭慶華,陳 琳,等.神經網絡極速學習方法研究[J].計算機學報,2010,33(2):279-287.
[5] Kano M,Tanaka S,Hasebe S,et al.Monitoring Independent Components for Fault Detection[J].AIChE Journal,2003,49(4):969-976.
[6] 張 杰,劉 輝,歐倫偉.改進的FastICA算法研究[J].計算機工程與應用,2014,50(6):210-218.
[7] Huang Guangbin,Zhu Qinyu,Siew C K.Extreme Learning Machine:A New Learning Scheme of Feed Forward Neural Networks[C]//Proceedings of IEEE International Joint Conference on Neural Networks. Washington D.C.,USA:IEEE Press,2004:985-990.
[8] Huang Guangbin,Zhu Qinyu,Siew C K.Extreme Learning Machine:Theory and Applications[J].Neurocomputing,2006,70(1):489-501.
[9] Hyv?rinen A,Oja E.Independent Component Analysis:Algorithm s and Applications[J].Neural Networks,2000,13(4):411-430.
[10] Chiang L H,Braatz R D,Russell E L.Fault Detection and Diagnosis in Industrial Systems[M].Berlin,Germany:Springer,2001.
[11] 繆素云,張 峰,李 蕊,等.基于概率神經網絡的 TE過程故障診斷[J].自動化技術與應用,2011,30(5):78-80.
[12] 丁 勇,秦曉明,何寒暉.支持向量機的參數優化及其文本分類中的應用[J].計算機仿真,2010,27(11):187-190.
編輯顧逸斐
Industry Process Fault Classification Based on ICA-ELM
YAN Wenwu,PAN Feng
(Key Laboratory of Advanced Control for Light Industry Process,Ministry of Education,Jiangnan University,Wuxi 214122,China)
The process monitoring method with multivariate statistics based on Independent Component Analysis(ICA)is mainly used for fault detection,but it is not effective for fault classification.For this reason,combining with Extreme Learning Machine(ELM),a method called ICA-ELM for fault classification is proposed.ICA-ELM extracts the fault features with ICA,and then trains the networks with ELM,so as to realize fault classification.ICA-ELM is tested with Tennessee Eastman(TE)process data and compared with Probabilistic Neural Network(PNN)and Support Vector Machine(SVM).Experimental result show s that the accuracy of ICA-ELM is higher,training speed of ICA-ELM is faster.
Independent Component Analysis(ICA);Extreme Learning Machine(ELM);fault classification;Probabilistic Neural Network(PNN);Support Vector Machine(SVM);Tennessee Eastman(TE)process
嚴文武,潘 豐.基于ICA-ELM的工業過程故障分類[J].計算機工程,2015,41(10):290-294.
英文引用格式:Yan Wenwu,Pan Feng.Industry Process Fault Classification Based on ICA-ELM[J].Computer Engineering,2015,41(10):290-294.
1000-3428(2015)10-0290-05
A
TP39
國家自然科學基金資助項目(61273131);江蘇省產學研聯合創新基金資助項目(BY 2013015-39)。
嚴文武(1989-),男,碩士研究生,主研方向:控制理論與控制工程;潘 豐,教授、博士生導師。
2014-09-30
2014-11-03E-mail:yanw enwu1989@outlook.com