本發(fā)明屬于工業(yè)過程控制領域,尤其涉及一種基于集成半監(jiān)督費舍爾判別的工業(yè)過程故障分類方法。
背景技術:
作為過程系統工程的重要組成部分,過程監(jiān)測技術對于保障過程安全及提高產品質量等現代流程工業(yè)的核心目標而言,具有重大的研究意義和應用價值。得益于過程工業(yè)控制技術的不斷發(fā)展,集散控制系統(DCS)在流程工業(yè)中得到了廣泛應用,流程工業(yè)因而采集到了海量的過程數據。因此,基于多變量統計和模式識別的過程監(jiān)測技術受到了學術界和工業(yè)界的普遍關注,成為過程監(jiān)測領域的研究熱點。近二十年來,大量的研究成果和應用隨之產生。
雖然傳統的模式識別的故障分類方法,如基于聚類或分類的方法在過程監(jiān)測領域已經取得了不錯的進展,可是工業(yè)過程的實際數據往往是比理想的假設前提要復雜得多。其中,現代工業(yè)過程廣泛存在如故障數據數目與正常數據數目極其不均衡,訓練樣本的標簽丟失或者變量丟失等問題?;诒O(jiān)督學習的故障分類方法在面對訓練樣本較少的情況,會出現學習得到的特征空間對少量樣本過擬合的問題。可是,實際工業(yè)過程會有大量無標簽數據伴隨產生,這些數據含有對于分析過程信息的有用信息,如果能夠有效利用這些信息,那么數據驅動的故障分類方法會得到更優(yōu)的結果,因此半監(jiān)督算法的引入是解決這一問題的重要途徑。但實際問題是,半監(jiān)督學習的表現并不穩(wěn)定,在特定的數據下表現可能還不如有監(jiān)督學習的效果。集成學習是使用一系列學習器進行學習,并使用某種規(guī)則把各個學習結果進行整合從而獲得比單個學習器更好的學習效果的一種機器學習方法。分類器融合中的度量層融合屬于集成學習的一個分支。本發(fā)明采用將半監(jiān)督學習和集成學習相結合的方法,通過半監(jiān)督算法利用無標簽數據中所包含的大量信息,用集成算法的泛化能力提高半監(jiān)督算法表現不穩(wěn)定的缺陷,兩種算法的結合可以互為補充泛化出更穩(wěn)定更準確的學習模型,提高工業(yè)過程故障分類的準確率。
技術實現要素:
本發(fā)明的目的在于針對現有方法的假設局限,提供一種基于集成半監(jiān)督費舍爾判別的工業(yè)過程故障分類方法。
本發(fā)明的目的是通過以下技術方案來實現的:一種基于集成半監(jiān)督費舍爾判別的工業(yè)過程故障分類方法,包括以下步驟:
(1)利用系統收集過程正常工況的數據以及各種故障數據組成建模用的有標簽訓練樣本集:假設故障類別為C,在加上一個正常類,建模數據的總類別為C+1,即Xi=[x1;x2;…;xn]i=1,2,…,C+1。其中Xi∈Rn×m,n為訓練樣本數,m為過程變量數,R為實數集,Rn×m表示X滿足n×m的二維分布。所以完整的有標簽訓練樣本集為Xl=[X1;X2;…;XC+1],X∈R((C+1)*n)*m,記錄所有數據的標簽信息,正常工況下標記標簽為1,故障1標簽為2,以此類推,即Yi=[i;i;…;i]i=1,2,…,C+1,完整的標簽集為Yl=[Y1,Y2,…,YC+1],Yl∈R1×((C+1)*n)*m。將這些數據存入歷史數據庫作為有標簽數據集。
(2)利用系統收集若干工況及故障情況未知的數據組成建模用的無標簽訓練樣本集:Xu=[xu1;xu2;…;xuq],Xu∈Rq×m,其中q為訓練樣本數,m為過程變量數,R為實數集,Rq×m表示X滿足q×m的二維分布。將這些數據存入歷史數據庫作為無標簽數據集。
(3)從數據庫中調用訓練用的有標簽數據和無標簽數據數據Xl,Xu,對其進行預處理和歸一化,使得各個過程變量的均值為零,方差為1,得到新的數據矩陣集為
(4)設定迭代次數即弱分類器個數為G,每次在無標簽數據矩陣集中隨機抽取α%的數據和有標簽數據矩陣集組成訓練子集在每個訓練子集下建立不同的半監(jiān)督費舍爾判別分類器模型。
(5)在有標簽數據矩陣集下,利用不同的分類器模型和參數,計算每個樣本xi的度量矩陣Pi,i=1,2,…,(C+1)*n,并且Pi∈Rg×(C+1)。
(6)將建模數據和各個模型參數以及各個有標簽數據的度量層矩陣存入歷史數據庫中備用。
(7)在線收集新的過程數據Xnew,并對其進行預處理和歸一化使得各個過程變量的均值為零,方差為1,得到分別采用不同的半監(jiān)督費舍爾判別模型對其進行監(jiān)測得到度量層矩陣。
(8)將在線過程數據的度量層矩陣和之前得到的有標簽數據度量層矩陣及其標簽進行K近鄰融合,得到待分類過程數據的最終分類結果。
本發(fā)明的有益效果是:本發(fā)明通過對每一個故障數據分別進行不同分類器方法下的分析和建模。然后,通過層次分析法對不同分類器的分類效果做出打分評價,最后結合模糊融合方法將不同分類器方法下的分類結果進行集成融合,得到最終的分類結果。相比目前的其他故障分類方法,本發(fā)明不僅提高了工業(yè)過程的監(jiān)測效果,增加了分類的準確性,使工業(yè)生產更加安全可靠,而且在很大程度上改善了單一故障分類方法的局限性,以及分類方法對過程知識的依賴性,增強了過程操作員對過程狀態(tài)的掌握,更加有利于工業(yè)過程的自動化實施。
附圖說明
圖1為FDA處理的結果示意圖;
圖2為SFDA處理的結果示意圖;
圖3為迭代次數G為7時的半監(jiān)督費舍爾判別度量層融合算法(ESFDA)的分類結果圖。
具體實施方式
本發(fā)明針對工業(yè)過程的故障分類問題,該方法,首先利用集散控制系統收集正常工作狀態(tài)下的數據以及幾種故障數據作為訓練數據集,先進行離線建模,對大量的無標簽數據進行隨機采樣,并與全部的有標簽數據組成若干個隨機訓練子集,然后進行半監(jiān)督費舍爾降維,獲得多個費舍爾判別矩陣(由r個費舍爾判別向量組成,r為降維后的維度)。將降維后的樣本數據進行貝葉斯分類得到一系列的后驗概率矩陣,將有標簽數據的后驗概率矩陣和對應的標簽作為度量層融合算法K近鄰的訓練樣本。最后,在線分類時調用上述各個半監(jiān)督費舍爾判別分類器得到每個樣本的后驗概率矩陣,輸入到度量層融合K近鄰分類器中得到最終的故障分類結果。
本發(fā)明采用的技術方案的主要步驟分別如下:
第一步 利用系統收集過程正常工況的數據以及各種故障數據組成建模用的有標簽訓練樣本集:假設故障類別為C,在加上一個正常類,建模數據的總類別為C+1,即Xi=[x1;x2;…;xn]i=1,2,…,C+1。其中Xi∈Rn×m,n為訓練樣本數,m為過程變量數,R為實數集,Rn×m表示X滿足n×m的二維分布。所以完整的有標簽訓練樣本集為Xl=[X1;X2;…;XC+1],X∈R((C+1)*n)*m,記錄所有數據的標簽信息,正常工況下標記標簽為1,故障1標簽為2,以此類推,即Yi=[i;i;…;i]i=1,2,…,C+1,完整的標簽集為Yl=[Y1,Y2,…,YC+1],Yl∈R1×((C+1)*n)*m。將這些數據存入歷史數據庫作為有標簽數據集。
第二步 利用系統收集若干工況及故障情況未知的數據組成建模用的無標簽訓練樣本集:Xu=[xu1;xu2;…;xuq],Xu∈Rq×m,其中q為訓練樣本數,m為過程變量數,R為實數集,Rq×m表示X滿足q×m的二維分布。將這些數據存入歷史數據庫作為無標簽數據集。
第三步 從數據庫中調用訓練用的有標簽數據和無標簽數據數據Xl,Xu,對其進行預處理和歸一化,使得各個過程變量的均值為零,方差為1,得到新的數據矩陣集為
第四步 設定迭代次數即弱分類器個數為G,G的選取視具體工況數據表現而定,每次在無標簽數據矩陣集中隨機抽取α%的數據和有標簽數據矩陣集組成訓練子集在每個訓練子集下建立不同的半監(jiān)督費舍爾判別分類器模型。
具體步驟如下:
a)根據FDA算法計算有監(jiān)督FDA的類間散度矩陣Sb和類內散度矩陣Sw,計算方法如下所示:
其中權值矩陣與定義為
b)根據無監(jiān)督降維方法PCA進行全局散度矩陣的計算,整理成與FDA的對應形式,計算方法如下所示:
其中為n×n維矩陣,且
c)計算半監(jiān)督費舍爾判別(SFDA)的正則化類間散度矩陣Srb與正則化類內散度矩陣Srw,計算方法如下所示:
Srb=(1-β)Sb+βSt (5)
Srw=(1-β)Sw+βIm (6)
其中其中Im是m維的單位對角矩陣,β∈[0,1]是調整參數,負責設置SFDA的平滑性。當β的值比較大時,SFDA更傾向于無監(jiān)督學習的PCA。反之,則SFDA更接近FDA。當β的值為兩種極端時,會比較特殊:當β=0,SFDA退化為FDA;當β=1,SFDA退化為PCA。
d)進行半監(jiān)督費舍爾判別向量求解,計算方法如下所示:
半監(jiān)督費舍爾判別向量同樣可以通過求解下面的優(yōu)化問題得到:
上述的優(yōu)化問題同樣可等價于廣義特征值問題
其中是廣義特征值,而向量w是對應的廣義特征向量。將所求得的廣義特征值降序排列為相應廣義特征向量為w1,w2,…,wm即為半監(jiān)督費舍爾判別向量q1,q2,…,qm,而這些向量的分類性能依次減弱。
e)選取前r個特征向量,得到費舍爾判別子空間Qr=[q1,q2,…,qr]。
f)對每個子訓練集重復以上a)-e)步驟,得到G個子分類器的費舍爾判別子空間。
第五步 在有標簽數據矩陣集下,利用不同的分類器模型和參數,利用不同子分類器的費舍爾判別子空間進行降維分類,計算每個樣本xi的度量矩陣Pi,i=1,2,…,(C+1)*n,并且Pi∈Rg×(C+1)。具體步驟如下:
a)通常情況下,正常工況下的數據可假設是滿足多變量高斯分布,故障如某些變量階躍變化或者變量值隨機增加的所引發(fā)的故障數據也可以認為是滿足高斯分布的。假設樣本屬于每一類的先驗概率相等為計算的條件概率密度函數,方法如下:
其中是Ck類樣本的均值向量。
b)根據貝葉斯準則,計算屬于第i類型的后驗概率,方法如下:
c)將每個樣本用不同子分類器的半監(jiān)督費舍爾判別矩陣Qr進行上述運算,計算每個樣本xi的度量矩陣Pi,i=1,2,…,(C+1)*n,并且Pi∈Rg×(C+1)。
其中pgj表示待分類樣本被第g個子分類器判斷成第j類的概率。最終得到所有樣本的度量層矩陣集合Pl=[P1,P2,…,PC+1],P∈Rg×(C+1)×((C+1)*n)。
第六步 將建模數據和各個模型參數以及各個有標簽數據的度量層矩陣存入歷史數據庫中備用。
第七步 收集新的在線過程數據Xnew,并對其進行預處理和歸一化使得各個過程變量的均值為零,方差為1,得到將新得到的每一個過程數據采用不同的半監(jiān)督費舍爾判別模型對其進行監(jiān)測得到度量層矩陣,具體方法和步驟(5)相同。
第八步 將之前得到的有標簽數據度量層矩陣及其標簽作為K近鄰的訓練樣本集,將待測在線過程數據的度量層輸出進行K近鄰融合,得到待分類過程數據的最終分類結果。具體步驟如下:
a)初始化k值,如果對于二分類問題k取奇數。將有標簽數據的度量矩陣集Pl=[P1,P2,…,PC+1],P∈Rg×(C+1)×((C+1)*n)和數據相應標簽Yl=[Y1,Y2,…,YC+1],Y∈R((C+1)*n)*m作為度量層K近鄰融合算法的訓練集。
b)對于待分類的過程樣本xnewi的度量層輸出Pnewi,計算其與訓練集所有樣本的歐氏距離Dij,在其中找出最近的k個樣本點。
Dij=||Pnewi-Pj||F
其中Dij為第i個待分類樣本與第j個訓練樣本間的歐氏距離。
c)計算這k個樣本中屬于C=(c1,c2,…,cC+1)類的樣本個數ki,顯然則該待分類樣本屬于最大值ki的那一類ci。
以下結合一個具體的工業(yè)過程的例子來說明本發(fā)明的有效性。該過程的數據來自美國TE(Tennessee Eastman——田納西-伊斯曼)化工過程實驗,原型是Eastman化學公司的一個實際工藝流程。目前,TE過程己經作為典型的化工過程故障檢測與診斷對象被廣泛研究。整個TE過程包括41個測量變量和12個操作變量(控制變量),其中41個測量變量包括22個連續(xù)測量變量和19個成分測量值,它們每3分鐘被采樣一次。其中包括21批故障數據。這些故障中,16個是己知的,5個是未知的。故障1~7與過程變量的階躍變化有關,如冷卻水的入口溫度或者進料成分的變化。故障8~12與一些過程變量的可變性增大有關系。故障13是反應動力學中的緩慢漂移,故障14、15和21是與粘滯閥有關的。故障16~20是未知的。為了對該過程進行監(jiān)測,一共選取了44個過程變量,如表1所示。接下來結合該具體過程對本發(fā)明的實施步驟進行詳細地闡述:
1.采集正常數據以及4種故障數據作為訓練樣本數據,進行數據預處理和歸一化。本實驗中分別選擇了正常工況以及故障1、2、5、6作為訓練樣本,故障1和故障2都是流4中的成分變化。故障6是由流1中的A進料損失所引起的,但是最終會對流4中的A成分產生影響。故障5與上面3種故障都不一樣,它是由冷凝器冷卻水的入口溫度階躍變化所引發(fā)的。采樣時間為3min,其中正常工況含有標簽樣本120個樣本,其余故障分類分別選擇有標簽樣本20個。
2.采集無標簽數據,使樣本的標簽率σ=20%,設置迭代次數G,將無標簽數據隨機采樣G次,每次取70%的無標簽數據,和有標簽數據一起組成子分類器訓練集。
3.對每個子訓練集進行模型訓練,求得半監(jiān)督費舍爾判別向量矩陣,實驗中選取r=5。
4.對訓練樣本集中的有標簽數據進行半監(jiān)督費舍爾判別分類,得到所有有標簽數據的度量層矩陣。將有標簽度量層矩陣和其標簽集作為度量層融合算法K近鄰的訓練集。
5.在線分類測試
收集與訓練數據不同的樣本數據作為在線分類的測試數據,包括正常工況數據共C+1類,每一類數據為Xtj=[xt1;xt2;…;xtN],j=1,2,…,C+1,實驗中C為4。其中正常測試樣本取100個,其余各工況各選50個。
先對在線測試數據進行歸一化處理,將處理后的樣本輸入到每個子分類器中,得到測試樣本的度量層矩陣。將測試樣本的度量層矩陣放入K近鄰方法中進行度量層融合得到最終的分類結果。
從圖1和圖2中可以看出,半監(jiān)督算法的引入對傳統的有監(jiān)督FDA分類算法的分類效果有一個明顯的提升。圖3為迭代7次的半監(jiān)督費舍爾判別度量層融合算法(ESFDA)的分類結果,可以看出算法的錯分率相較于SFDA有更好的表現。
由不同迭代次數G下的ESFDA算法的表現可見,在一定范圍內隨著迭代次數的增加,算法的分類結果越好。
表1:監(jiān)控變量說明
上述實施例用來解釋說明本發(fā)明,而不是對本發(fā)明進行限制,在本發(fā)明的精神和權利要求的保護范圍內,對本發(fā)明做出的任何修改和改變,都落入本發(fā)明的保護范圍。