龔沛文,李春富,葛 銘
(杭州電子科技大學自動化學院,浙江杭州310018)
部分最小二乘方法自Wold提出以來,作為一種基于數據回歸模型的軟測量建模方法,已廣泛地應用于化學計量學、工業(yè)過程的建模等領域[1]?;趥鹘y(tǒng)PLS出現(xiàn)的問題,目前出現(xiàn)了一系列遞推算法來更加有效的更新PLS模型。該文研究了PLS回歸的一種快速算法—改進的PLS核心算法,并在此基礎上重新推導出遞推的PLS算法,此算法提高了模型的運算速度。最后對煤氣化爐合成氣組分濃度的軟測量建模進行了應用分析。
PLS模型參數的計算通常采用非線性迭代部分最小二乘算法。然而對于大的數據矩陣,迭代算法效率比較低,而且NIPALS算法在迭代過程中需要存貯原始數據矩陣X和Y、殘差矩陣E和F、得分矩陣T和負荷矩陣P、Q,當數據矩陣很大時將占用大量內存,且計算時很耗費時間。
針對這個問題提出來一種核算法,有效地改善了計算大數據矩陣的PLS參數問題[2]。對于“矮胖”的數據矩陣,PLS模型參數可以用協(xié)方差矩陣XXT和XTY來計算。當計算下一組參數時,只需要更新XXT和XTY。而兩矩陣維數遠遠小于原矩陣X和Y的維數,計算速度可有較大提高。該算法的詳細步驟:
(1)首先,令(XXT)1=XXT,(XTY)1=XTY,a=1。再計算協(xié)方差矩陣XXT和XTY;
(2)計算核矩陣(XTYYTX)a,這是由矩陣(XTY)a乘以其轉置得到的;
(3)根據XXT和XTY計算負荷向量pa和qa
式中,向量wa代表PLS權值向量,它是對應于矩陣(XTYYTX)a最大特征值的特征向量,可以通過冪法或者其它方法計算得到;
(4)更新XXT和 XTY
(5)令a=a+1,返回第二步,直到計算出所有需要的特征向量。
該文在原始的PLS核心算法基礎上,提出了一種遞推的部分最小二乘算法。該算法是利用新數據和PLS模型參數組合起來更新模型,使得新模型在并不完全遺忘舊信息的基礎上適應過程的新變化。
假設數據矩陣{X,Y}具有m個輸入變量,p個輸出變量,n個樣本,采用如下形式表達對應于數據矩陣的 PLS 模型結果{T,W,P,B,Q}:
式中,假設 X 的秩為 r,T=[t1,t2,…,tr]為輸入的得分矩陣,W=[w1,w2,…,wr]為輸入的權值矩陣,P=[p1,p2,…,pr]和 Q=[q1,q2,…,qr]為輸入和輸出的負荷矩陣,B=diag{t1,t2,…,tr}為對角矩陣。
為了方便推導,將特征向量tx(x=1,2,…,r)歸一化,把T標準正交。于是則有:
又矩陣Fr與T正交,由式9、10可推導出:
當加入新數據{X1,Y1}和舊數據 {X,Y}共同更新模型時,數據矩陣可寫為:則有以下公式:
同理可得:
因此,由式10、11可以得知,對現(xiàn)有全部數據的回歸等價于對新數據結合老數據而得到的PLS模型參數回歸。由此很容易推導出RPLS算法,步驟如下:
(1)確定過程變量,選擇模型參數;
(2)采集數據,構造原始數據矩陣{X,Y},并對其進行數據預處理;
(3)采用PLS的核心算法計算出PLS模型{X,Y}—PL→S{T,W,P,B,Q};
(4)加入新數據后,根據步驟1進行數據預處理,然后利用遺忘因子法對舊參數矩陣進行加權,即用遺忘因子可用遺忘因子λ(0<λ≤1)與舊參數矩陣相乘從而達到削弱舊數據對建模的影響的作用,再和舊參數組成新數據矩陣,最后返回步驟3。
該文以煤氣化爐裝置為建模對象,根據現(xiàn)場工藝以及反應機理的分析,一共選擇11個過程變量作為模型的輸入變量,合成氣組分CO作為模型的輸出變量。首先取43個初始數據集合建立PLS模型,同時為了在更新模型時不丟失原數據的信息,在建立PLS模型時需要保留的特征向量數目要足夠多,可根據對響應變量的解釋程度來確定。當新增加的特征向量對響應變量的解釋程度小于某個閾值,或者新增一個特征向量之后,對響應變量總的解釋程度大于某個閾值,比如90%,則停止增加特征向量,利用已經提取的特征向量進行預測。
然后取第44到第64的數據為第二組數據,預測結果如圖1所示,虛線為實際值,實線為模型預測值。仿真表明預測結果誤差較大,尤其是第58個數據點的值突然變大,因此,模型需要及時更新。該文采用遞推的PLS算法來對模型進行更新。在新數據到來后,和舊模型參數矩陣進行PLS回歸,得到更新后的模型再對第二組數據進行預測,結果如圖2所示。兩種不同模型的性能比較如表1所示??梢钥闯?,模型更新后的預測均方根誤差有較大減小,模型的預測精度有了很大的提高。
圖1 模型對第二組數據的預測結果
圖2 更新后的模型對第二組數據的預測結果
表1 兩種模型的性能比較
該文以一種新的推導方式,提出了遞推的部分最小二乘算法。該算法可以根據新的數據和舊的PLS模型參數更新模型,而不需采用全部數據。仿真結果表明該算法可以有效的更新模型,使模型適應過程的變化。然而,在建立模型時所確定的特征向量個數不一定是最優(yōu)的。因此,在線更新模型時,如何確定用于預測的最優(yōu)特征向量數,還有待進一步研究。
[1] Wold H.Nonlinear estimation by iterative least squares procedures[J].Research Papers in Statistics,1966,12(5):134-139.
[2] Lindgren F,Geladi P,Wold S.The kernel algorithm for PLS[J].Chemometrics,1993,7(22):45 -59.
[3] 張杰,陽憲惠.多變量統(tǒng)計過程控制[M].北京:化學工業(yè)出版社,2000:2-67.
[4] 李凡,吳強,楊英華,等.基于遞推PLS的自適應鋼溫軟測量模型[J].控制工程,2007,8(2):147-150.
[5] Helland I S.On the structure of partial least squares regression[J].Comm.Statist.B-Simulation Compute,1988,17(3):581-607.
[6] Lakshminarayanan S,Shah S L,Nandakumar K.Modeling and control of multivariable processes:dynamic PLS approach[J].AIChE Journal,1997,43(9):2 307 -2 322.