劉毅,金福江,高增梁
(1.特種裝備制造與先進加工技術教育部/浙江省重點實驗室 浙江工業大學化工機械設計研究所,杭州310032;2.華僑大學信息科學與工程學院,福建廈門361021)
隨著DCS在化工過程的普遍應用,數據驅動的軟測量建模方法被廣泛用于估計產物等難以在線測量的質量信息。常用的方法有偏最小二乘回歸等多變量統計方法、神經網絡、支持向量機回歸SVR(Support Vector Regression)等[1-2]。在解決小樣本情況下的非線性建模問題方面,SVR等稀疏核學習SKL(Sparse Kernel Learning)方法的推廣性能更好[3],是目前化工過程軟測量建模較為有效的途徑之一[1,4-9]。
大部分化工過程都是非線性的,過程變量間相關且含有噪聲[1-2]。因此,建模前進行有效的變量選擇和信息提取能降低模型的復雜度。常用的方法有用于提取高斯信息的主元分析PCA(Principal Component Analysis);用于提取非高斯信息的獨立成分分析ICA(Independent Component Analysis);在高維特征空間處理高斯信息的核主元分析KPCA(Kernel PCA)等[7-9]。文獻[7]指出變量間的相關性會降低SVR的推廣能力,并比較了這三種方法在SVR降維預處理的應用,結果表明KPCA和ICA能提取更高階的信息,效果優于PCA,仿真結果表明KPCA結果最好。文獻[8—9]將KPCA或ICA等方法用于SVR軟測量模型的輸入變量選擇,也提高了模型的預報精度。然而,KPCA只能在高維特征空間提取二階統計量等高斯信息,ICA只能在原變量空間提取非高斯信息。因此,為了在高維特征空間提取高階統計量等非高斯信息,文獻[10]提出了核獨立成分分析KICA(Kernel ICA)。最近,KICA被引入化工過程監控和故障診斷等領域,以求獲得更好的監測效果[11-14]。
近年來,為適應多品種、小批量和高質量的市場競爭需求,間歇過程在精細化工和生物制藥等行業得到廣泛應用[15]。間歇過程為非穩態操作,其動態和非線性特性較連續過程更為顯著。同時,間歇過程的很多重要變量通常無法在線測量,且沒有準確的機理模型可利用,研究如何及時獲得間歇過程的狀態信息對保障其產品質量具有重要意義。因此,筆者將KICA用于間歇過程軟測量建模輸入變量的特征提取,以在高維特征空間提取更能反映過程特征的非高斯信息,從而為進一步建立更為簡單和有效的軟測量模型奠定基礎。
一大類非線性過程可表示為[5-6]

式中:uk,yk——k時刻過程的調節變量和被控變量;nu,ny——相應階次;f(·)——未知的非線性函數;xk——過程的廣義輸入變量。
與神經網絡相比,以SVR為代表的SKL辨識方法采用結構風險最小化原則,能夠保證在小樣本情況下建立的非線性辨識模型推廣性能較好,且模型較容易獲得[3-9]。根據統計學習理論[2],采用SKL辨識模型獲得f(·)的預測輸出:

式中:αk——SKL模型的參數,可離線學習得到固定的參數,或在線自適應調整參數[4],亦可兩者相結合。SKL的主要方法包括SVR或稀疏最小二乘SVR(Sparse Least Squares-SVR,SLSSVR)[9]或關聯向量機[2]等,可統一表示為[5]

式中:NSV——支持向量個數;K〈xi,xk〉——滿足Mercer定理的核函數[2];b——偏置。為便于和文獻[7—9]等提出的建模方法比較,筆者在具體的應用中采用常用的離線SVR算法。
ICA作為一種新的統計信號處理方法,較PCA更有效利用了高階信息統計量,可在統計獨立意義下分離混合信號。因此,ICA在盲源信號分離、混合語音分離、生物醫學信號處理、圖像處理、人臉識別等領域已獲得了成功的應用[7],但在化工過程的應用還相對較少。
ICA的基本思想是假設過程測量信號是由一些相互獨立的信號源、過程噪聲及干擾混合疊加而成的,依照信息論準則從中分離或提取出盡可能相互獨立的特征信號。假設k時刻的輸入變量xk=[xk,1,…,xk,n]T∈Rn×1(數據已經過白化處理[7])是m 個非高斯分布的獨立源信號sk=[sk,1,…,sk,m]T∈Rm×1的線性組合,即:

式中:A=[a1,…,an]T∈Rn×m——混疊系數矩陣。ICA主要思想是在盡量少的假設條件下(假設各成分均統計獨立且服從非高斯分布)估計出A和sk。在A和獨立成分向量sk都未知的情況下,求取一分離矩陣W,以便從觀測信號中分離出源信號,即:


式中:z——概率密度函數為f(z)的隨機變量;zG——與z具有相同方差特性的高斯變量;H(·)——隨機變量的微分熵;η——正常數;G(·)——非二次函數[7]。為得到所有獨立成分,需最大化函數JG[7],即:

區別于傳統的PCA等多變量統計方法,ICA提取的獨立成分不僅是不相關的,而且是統計獨立的。此外,它提取了過程的高階統計量信息,從而能更好描述過程變量的特征。
ICA本質上是一種線性變換方法,KICA[10-14]等核方法的主要思想是通過非線性映射Ф(·)將原空間中的向量xk映射到高維特征空間H,然后在H里構建線性算法以解決非線性問題。如果xk各坐標分量間的相互作用僅限于內積<·,·>,就可使用滿足Mercer條件的核函數來代替內積運算,即K(xi,xj)=〈Φ(xi),Φ(xj)〉,從而無需計算Ф(·)以避免維數災難。
將訓練樣本集S中的N個輸入變量xi∈Rn×1(i=1,…,N)通過非線性映射Ф(·)映射到高維特征空間H,先利用KPCA進行白化處理,即在特征空間H對協方差矩陣進行PCA處理[10-14]。定義Θ=[Ф(x1),…,Ф(xN)],則相應的協方差矩陣如下[12]:

采用核函數來代替內積運算以避免維數災難,即定義核矩陣K,其元素可表示為Ki,j=K(xi,xj)=〈Ф(xi),Ф(xj)〉,?i,j=1,…,N,則對CH特征值分解可轉化為對核矩陣K進行。首先需要對K進行標準化處理,即中心化[12]:

其次,進行壓縮處理[12]:



對某一映射到特征空間的測試變量xq,經過標準化處理后,可按照如下白化處理[12]:

數據變量在H中白化后,按照2.1節的ICA處理方法獲得分離矩陣W,即可獲得H中的獨立成分。ICA在處理接近高斯分布的觀測數據時性能下降,且對于離群點較敏感。KICA從近高斯分布的數據中提取獨立成分的能力較強,因而對各種非高斯分布(尤其是近高斯分布)具有魯棒性。此外,KICA在高維空間的白化處理采用的是KPCA算法。因此,在一定程度上可以認為,KICA的信息提取能力相當于KPCA與ICA的綜合。
KICA在化工過程的應用還較少,主要限于過程監測與故障診斷領域[11-14]。筆者以常見的發酵過程為例,將其用于間歇過程軟測量建模輸入變量的信息提取,目的是為了在簡化輸入變量后,提高后續軟測量模型的性能。所提出的軟測量建模方法稱為KICA-SKL(相應的,以下仿真中采用SVR模型的方法記為KICA-SVR),其流程如圖1所示。

圖1 KICA-SKL軟測量建模方法流程
從圖1給出的流程可知,所提出的KICASKL建模方法分成兩個階段:先將輸入變量的信息在高維特征空間有效地提取出來,去除輸入變量的相關性;然后再進行建模,最終可以獲得更好的建模效果。
鏈激酶SK(streptokinase)是β-溶血性鏈球菌的一些菌株產生的血纖維蛋白酶原的活化劑之一,在臨床上用于溶血栓藥物時有廣闊前景,也是歐洲主要使用的溶血栓藥物。由于發酵過程的復雜性,且缺乏關鍵生化變量的在線檢測儀器,對SK流加發酵過程進行有效的在線控制存在一定的困難[4]。因此,建立活性菌體質量分數(Xa)和SK產物質量分數(P)的在線預報模型,能夠給SK流加發酵過程的在線控制和優化提供重要的信息[4,15]。
SK流加發酵過程的數學模型和補料策略詳見文獻[4]。在此基礎上,對仿真實驗進行如下設計,以更加符合實際的發酵過程:
a)將批次反應時間由默認的12h變為10h~13h,Xa和P每1h化驗一次。
b)每批次設置的初始條件不同,補料策略亦有相應變化以增強批次間的不確定性,所以過程變量均包含白噪聲。
c)考慮的輸入變量包括發酵罐體積、底物質量分數、總菌體質量分數以及它們相應的滯后[4];
d)只考慮8批次培養以檢驗KICA-SVR對小樣本的建模能力,其中前5批次訓練,后3批次測試。
為了驗證KICA對帶有噪聲的輸入變量的信息提取能力,并和文獻[7—9]的方法比較,同時構造了ICA-SVR,KPCA-SVR,PCA-SVR等軟測量模型。值得指出的是,由于考慮了輸入變量的滯后,故所比較的實際上是文獻[9]提出的動態ICASVR和動態PCA-SVR等方法。如圖1所示,所有相應的SVR軟測量模型都采用常用的交叉驗證法進行訓練。
表1給出了KICA-SVR,ICA-SVR,KPCASVR,PCA-SVR,SVR共5種建模方法針對SK發酵過程Xa和P的在線預報性能比較。以預報的均方誤差RMSE(Root Mean Squares Error, RMSE作為性能指標,最小的誤差以粗體并加下劃線表示。
從表1可知采用信息提取的模型都比普通的SVR方法預報精度更高,KICA-SVR都能夠獲得比KPCA-SVR,ICA-SVR和PCA-SVR更好的效果,這和文獻[7]指出的結論類似(即核信息提取方法優于普通低維空間的信息提取方法)。其中,KPCA-SVR和ICA-SVR的效果差不多,這是由于不同批次反映出來的非線性特性和非高斯特性并不一致。針對非線性特性表現較強而非高斯特性表現較弱的批次時,KPCA會優于ICA;反之,ICA會優于KPCA。然而,在實際過程中,間歇過程的非線性特性以及批次與批次間的不確定性等信息并無法得到,變量的噪聲特性往往比較復雜且事先很難知道。由于KICA可大致等同于在KPCA處理后再進行ICA信息提取,因而能夠更有效處理未知噪聲情況下的輸入變量。

表1 不同方法對SK發酵過程生化變量的建模性能比較
圖2和圖3分別給出了5種方法在預測第8批次(該批次發酵時間最長)Xa的結果,圖2為預測結果,圖3為預測絕對誤差結果比較。

圖2 KICA-SVR和其他方法預報Xa的比較

圖3 KICA-SVR和其他方法預報Xa誤差的比較
從圖中可知沒有預處理的結果最差,尤其是在發酵過程的后半階段。PCA-SVR波動較大,沒有明顯的規律。KPCA-SVR和ICA-SVR總體的預測情況較好,其中KPCA-SVR在終點處預測結果較好;ICA-SVR則在前期和中期預測結果較好。這是因為該批次長度最長,終點處的樣本點和訓練樣本差異較大,表現出來的非線性程度也較大,故而核方法處理非線性的優勢能夠體現。KICA-SVR的預測結果總體是較穩定的,且在發酵過程末端的預測結果最好,這能為實際發酵過程的放罐提供有用的信息。該批次預報P也有類似的結果,限于篇幅不再列出。以上分析進一步驗證了使用KICA進行預處理是一種比較好的選擇,更加符合化工過程,尤其是間歇過程的實際情況。
有效選擇輸入變量能夠建立更好的軟測量模型。筆者將KICA用于間歇過程軟測量建模輸入變量的信息提取,便于在高維空間提取它們的高階統計信息,從而消除輸入變量中的自相關與互相關等特性。在發酵過程軟測量建模的結果表明,KICA優于傳統ICA或KPCA等其他信息提取方法,所提出的KICA-SKL建模方法也更加適合間歇過程的軟測量建模。
[1] KADLEC P,GABRYS B,STRANDT S.Data-driven Soft Sensors in the Process Industry[J].Computers and Chemical Engineering,2009(33):795-814.
[2] 金福江,周麗春.化工軟測量技術研究與進展[J].化工進展,2005,24(12):1379-1383.
[3] BISHOP C M.Pattern Recognition and Machine Learning[M].New York:Springer,2006.
[4] DESAI K,BADHE Y,TAMBE S S,et al.Soft-sensor Development for Fed-batch Bioreactors Using Support Vector Regression[J].Biochemical Engineering Journal,2006,27(03):225-239.
[5] LIU Yi,GAO Yanchen,GAO Zengliang,et al.Simple Nonlinear Predictive Control Strategy for Chemical Processes Using Sparse Kernel Learning with Polynomial Form[J].Industrial &Engineering Chemistry Research,2010,49(17):8209-8218.
[6] LIU Yi,WANG Haiqing,YU Jiang,et al.Selective Recursive Kernel Learning for Online Identification of Nonlinear Systems with NARX Form[J].Journal of Process Control,2010,20(02):181-194.
[7] CAO Lijia,CHUA K S,CHONG W K,et al.A Comparison of PCA,KPCA and ICA for Dimensionality Reduction in Support Vector Machine[J].Neurocomputing,2003,55(01):321-336.
[8] 李哲,田學民.基于輔助變量KNN分析的軟測量建模方法[J].化工學報,2008,59(04):941-946.
[9] 陳愛軍.最小二乘支持向量機及其在工業過程建模中的應用[D].杭州:浙江大學,2006.
[10] BACH F R,JORDAN M I.Kernel Independent Component Analysis[J].Journal of Machine Learning Research,2002(03):1-48.
[11] LEE J M,QIN S J,LEE I B.Fault Detection of Non-linear Processes Using Kernel Independent Component Analysis[J].The Canadian Journal of Chemical Engineering,2007,85(08):526-536.
[12] ZHANG Yingwei,QIN S J.Fault Detection of Nonlinear Processes Using Multiway Kernel Independent Component Analysis[J].Industrial and Engineering Chemistry Research,2007,46(23):7780-7787.
[13] ZHANG Yingwei.Fault Detection and Diagnosis of Nonlinear Processes Using Improved Kernel Independent Component Analysis(KICA)and Support Vector Machine(SVM)[J].Industrial and Engineering Chemistry Research,2008,47(18):6961-6971.
[14] 鄧曉剛,田學民.基于SKICA的非線性過程緩變故障檢測方法研究[J].儀器儀表學報,2009,30(07):1359-1362.
[15] ALFORD J S.Bioprocess Control:Advances and Challenges[J].Computers and Chemical Engineering,2006,30(10):1464-1475.