周麗春,劉毅,金福江
(1華僑大學信息科學與工程學院,福建 廈門 361021;2浙江工業大學過程裝備及其再制造教育部工程研究中心,浙江 杭州310014)
系統辨識是研究建立系統數學模型的理論和方法[1-6]。神經網絡、小波網絡、模糊系統等非線性系統辨識方法得到了廣泛的研究與應用[1-7]。但是,這些方法在模型結構選取及訓練上仍存在問題,限制了其實際應用。針對非線性系統的在線辨識問題,傳統神經網絡的學習速度緩慢且不容易遞推,因此,亟需一種簡單、快速且運算復雜度小的非線性建模方法。極限學習機(extreme learning machine, ELM)是一種新型單隱層前饋神經網絡(single-hiddenlayer feedforward neural networks, SLFNs)的學習方法。與傳統神經網絡不同的是,其隱層中的參數沒有直接的關聯,只要隨機賦予輸入權值和隱層節點的閾值,并且應用 Moore-Penrose(MP)方法獲得隱層輸出矩陣的廣義逆,通過一步計算即可確定網絡的輸出權值。ELM既能保證網絡有較好的建模準確程度,又很大提高了學習速度,因此,最近引起了不小的關注[8-14]。
對于ELM而言,通常采用MP廣義逆或最小二乘回歸算法求解輸出權值。但是,當自變量之間存在復共線性關系時,易導致病態解問題,將會得到幅值較大的輸出權值,從而出現過擬合。引入嶺回歸方法,通過選擇適當的嶺參數可處理此問題,以建立更可靠的模型[15-16]。
在 ELM 模型中,隱層節點數是唯一需要人為設定的參數,傳統的 ELM 是通過反復的試驗來確定節點的數目。但是針對在線非線性系統辨識,離線模型并不適合,需要在線更新以融合新的信息。因此,有必要提出一種遞推方法以有效更新模型。Feng等[11]提出了ELM節點數增加的遞推算法,但是當自變量之間存在復共線性時,容易出現病態解問題以及過擬合的現象。基于此,本文提出了嶺參數極限學習機(ridge ELM, RELM)節點數增加的遞推算法,以更有效地用于非線性系統的在線辨識;并提出采用預測誤差準則來選擇性地增加節點,以獲得簡單并可快速遞推的辨識模型。

其中,ai為第i個隱層節點與輸入節點間的權值,bi為第i個隱層節點的閾值,〈ai,xj〉為ai與bi的內積。


其中,H為隱層輸出矩陣,hi是由第i個隱層節點而生成的矩陣。此時非線性的系統可以通過式(2)轉化成一個線性表達式,則可以通過MP廣義逆,或最小二乘線性回歸算法求解,得[8-11]

為了避免由于自變量之間存在的復共線性關系而導致病態解問題,可以在式(6)當中加入適當的嶺參數k,式(6)可進一步表示為

其中,k為嶺參數,I為單位矩陣。


其中,Ht是根據測試樣本的輸入Xt而生成的隱層輸出矩陣,為預測值。

步驟1:隨機賦值輸入權值ai和閾值bi;
步驟2:計算隱層輸出矩陣H;
步驟3:通過預測。
傳統的RELM和ELM算法當中,當獲得新節點時,模型都需要重新計算隱層輸出矩陣,以獲得新的輸出權值,重新建立模型,這樣存在兩個缺點:(1)不斷初始化模型會導致預測的不可靠;(2)每次都重建模型,計算量相對更多且缺乏效率。因此,本節提出RELM的遞推方法以有效更新模型。
當隱層節點數確定為L,相應的隱層輸出矩陣可以表示為

應用RELM的求解方法,可獲得輸出權值

當有新節點加入原模型時,式(9)變為




當隱層節點數設定為L時,如式(10)所示,求解RELM模型的主要計算量在于求一個L維方陣的逆,計算復雜度為O(L3);當增加一個節點重新建立模型時,如式(12)所示,直接計算復雜度為O[(L+1)3]。采用遞推算法,當節點數從L增加到L+1時,采用式(14)和式(15),原來涉及求L+1維方陣的逆轉化成只有兩個L+1維向量相乘,計算的復雜度從原來的O[(L+1)3]減至O[(L+1)2],有效提高了計算效率,更適合過程的在線辨識;而且,避免了RELM方法隨機初始化的缺點。
在建立 ELM 的初始模型時,需要設定隱層節點數,初始的節點數通常采用反復的試驗獲得[8-14],過程較為煩瑣。因此,本文采用留一(leave-one-out,LOO)交叉驗證預報誤差最小來自動獲得初始節點數。當模型基于N個訓練樣本時,LOO預報誤差的表達式如下[18]



這是因為為初始樣本集的LOO誤差,在統計意義上近似代表了 RELM 模型能夠達到的相對辨識精度。如果測試數據點的相對預測精度不大于,那么說明RELM模型能夠較好描述當前工況,因此,無須增加節點以提高模型的復雜度。反之,當過程發生變化時(如新工況、時變特性等),模型的預報才會不準確,此時才有必要對模型進行遞推更新,盡可能將新信息融合進入模型。
綜上所述,針對非線性系統的在線辨識,本文提出了兩種方法,分別記為遞推 RELM(recursive RELM, RRELM)和選擇性遞推 RELM(selective recursive RELM, SRRELM)。RRELM和SRRELM主要的算法步驟如圖1所示。RRELM的主要優點在于通過遞推提高計算效率,而且避免了RELM模型不斷初始化帶來的預測可靠性問題。進一步,SRRELM 方法以選擇性增加節點的方式引入過程的新信息,能有效限制模型的節點數,更適用于實際過程的在線辨識。

圖1 在線辨識RRELM與SRRELM示意圖Fig. 1 Flowchart of RRELM and SRRELM for online identification

RRELM算法的初始節點范圍設置為3~100,即從 3個節點開始遞增。圖 2給出了 RRELM 與RELM算法應用于此過程時,節點數增加的計算復雜度比較。從中可知,隨著節點的增加,兩算法均要耗費更多的訓練時間,相比之下,RRELM 較RELM有效提高了計算效率。當節點數越多時,模型訓練可節約更多的計算時間。
圖3給出了節點數增加時RRELM與RELM的RMSE比較。從中可知,當節點數增加時,RRELM與 RELM 幾乎可獲得同樣的預測精度。此外,RRELM 的預測效果更加可靠,因為對于傳統的RELM算法,當獲得新的節點數時,其隱藏層必須重新構建,輸出權值要重新計算[8-9,12],而所提出的RRELM 直接根據現有模型進行遞推更新,可以有效避免此問題。因此,RRELM 不僅可以降低模型的計算復雜度,而且還保證了其預測性能,更適用于在線的非線性系統辨識。

圖2 節點增加時RRELM與RELM算法計算復雜度比較Fig. 2 Computational complexity comparison of RRELM and RELM with nodes increasing

圖3 節點增加時RRELM與RELM的RMSE比較Fig. 3 RMSE comparison of RRELM and RELM algorithms with nodes increasing


圖4 在線辨識RRELM模型與離線RELM模型測試相對誤差的比較Fig. 4 Relative prediction error comparison of online identification RRELM model and offline RELM model
針對實際非線性系統的在線辨識,雖然RRELM 方法能夠快速更新模型,但一直增加節點進行更新會導致模型結構趨向復雜。實際上,在過程建模和控制中總希望獲得簡單的模型。鑒于此,所提出的 SRRELM 在線方法,以 LOO預報誤差為判斷準則,當對新樣本的預報誤差滿足式(17)時,模型才需要增加節點。仍舊針對該過程,采用如上所述低頻采集的1500組數據,前1000組為訓練集,其余為測試集。
首先討論不同誤差限的選擇對 SRRELM 模型復雜度及控制精度的影響,表1給出了在3%高斯噪聲條件下,人為設定誤差限為0.01、0.05、0.2、0.4時與對 SRRELM 方法預測性能影響的比較。從中可知,當誤差限選擇較小值時,辨識模型會增加更多的節點,耗費更多的時間,誤差限選擇較大值時,被控對象的精度會降低。然而,實際過程數據總是有噪聲的,過多的節點會導致過復雜的模型,且不會提高精度,這也是普通RELM的一個缺點。此外,過程的噪聲通常并不知道,因此,人為設定誤差限具有一定的盲目性。而選取為模型遞推的選擇準則,不僅能有效地限制模型的節點數,減小計算量,而且能夠保證模型的預測精度,更適合實際過程遞推辨識。

表1 不同誤差限對SRRELM辨識模型效果的影響Table 1 Effect of different prediction error bound on performance of SRRELM identification model

表2 SRRELM和RRELM辨識方法結果的比較Table 2 Comparison of identification results with SRRELM and RRELM methods
最后,比較在線SRRELM辨識方法與RRELM辨識方法分別在1%、2%、3%高斯噪聲條件下的預測性能。其中初始節點數根據 LOO自動獲得,遞推準則根據判斷,而當誤差限為 0時,即為RRELM方法,這也說明了SRRELM是RRELM的廣義形式。表2列出了兩種方法的結果,可看出在不同的高斯噪聲條件下,采用準則的SRRELM辨識方法在更新模型時可有效降低模型的復雜度,很大減小了計算量,并且提高了模型的預測精度。進一步,圖5和圖6分別給出了在5%高斯噪聲條件下,SRRELM與RRELM的在線辨識效果圖。其中 SRRELM 最終節點有效地控制在 191個,而RRELM在節點數增加到一定程度時(第470~500個樣本點),反而出現了較大的誤差。這表明在過程噪聲幅度較大時,SRRELM可以有效控制節點數,從而獲得更好的辨識效果。

圖5 SRRELM在線辨識效果Fig. 5 Online identification performance of SRRELM

圖6 RRELM在線辨識效果Fig. 6 Online identification performance of RRELM
針對非線性系統的在線辨識問題,提出了選擇性遞推嶺參數極限學習機方法,該方法可根據預測誤差有選擇地增加模型的隱層節點數,并以在線遞推方式快速地更新模型,提高了模型的計算效率;而且在限制模型復雜度的同時,保證了辨識的精度。仿真比較結果表明,SRRELM方法是一種簡單有效的非線性在線遞推辨識方法。進一步的研究方向包括:如何有效處理實際非線性系統辨識存在的非高斯噪聲、離群點等數據不確定問題。
[1]Zhu Qunxiong(朱群雄), Ma Dexian(麻德賢). Recognition of neural network process model [J].Journal of Chemical Industry and Engineering(China)(化工學報), 1997, 48(5): 547-552
[2]Ljung L, Hjalmarsson H. Four encounters with system identification[J].Eur. J. Control, 2011, 17(5/6): 449-471
[3]So¨derstro¨m T. System identification for the errors-in-variables problem [J].Trans. Inst. Meas. Control, 2012, 34: 780-792
[4]Hong X, Mitchell R J, Chen S, Harris C J, Li K, Irwin G W. Model selection approaches for non-linear system identification: a review [J].Int. J. Syst. Sci., 2008, 39: 925-946
[5]Zhu Y C. Multivariable System Identification for Process Control[M].United Kingdom: Elsevier Science & Technology Books, 2001
[6]Narendra K S, Parthasarathy K. Identification and control of dynamical systems using neural networks [J].IEEE Trans. Neural Networks, 1990(1): 4-27
[7]Liu Y, Chen J. Correntropy kernel learning for nonlinear system identification with outliers [J].Ind. Eng. Chem. Res., 2014, 53(13):5248-5260
[8]Huang G B, Zhu Y, Siew C K. Extreme learning machine: theory and applications [J].Neurocomputing, 2006, 70: 489-501
[9]Huang G B, Wang D H, Lan Y. Extreme learning machines: a survey[J].Int. J. Mach. Learn. & Cyber., 2011, 2: 107-122
[10]Huang G B, Chen L. Convex incremental extreme learning machines[J].Neurocomputing, 2007, 70: 3056-3062
[11]Feng G, Huang G B, Lin Q P. Error minimized extreme learning machine with growth of hidden nodes and incremental learning [J].IEEE Trans. Neural Networks, 2009, 20(8): 1352-1356
[12]Miche Y, Sorjamaa A, Bas P.OP-ELM: optimally pruned extreme learning machine [J].IEEE Trans. Neural Networks, 2010, 21(1):570-578
[13]Huang G B, Li M B, Chen L. Incremental extreme learning machine with fully complex hidden nodes [J].Neurocomputing, 2008, 71: 1-7
[14]Huang G B, Zhou H M, Ding X J Extreme learning machine for regression and multiclass classification [J].IEEE Trans. Syst.,Man,Cybern.B,Cybern., 2012, 42(2): 513-529
[15]Golub G H, Heath M, Wahha G. Generalize cross-validation as a method for choosing a good ridge parameter [J].Technometrics, 1979,21(2): 215-223
[16]Yu Q, Miche Y. Rugularized extreme learning machine for regression with missing data [J].Neurocomputing, 2013, 102: 45-51
[17]Liu Y, Wang H Q, Yu J, Li P. Selective recursive kernel learning for online identification of nonlinear systems with NARX form [J].J.Process Control, 2010, 20(2): 181-194
[18]Liu Xueyi(劉學藝), Li Ping(李平), Gao Chuanhou(郜傳厚). Fast leave one out cross validation algorithm of extreme learning machine[J].J. Shanghai Jiao Tong Univ.(上海交通大學學報), 2011, 45(8):1140-1145
[19]Nikravesh M, Farell1 A E, Stanford T G. Control of nonisothermal CSTR with time-varying parametersviadynamic neural network control (DNNC)[J].Chem. Eng. J., 2000, 76(1): 1-16
[20]ftp://ftp.esat.kuleuven.ac.be/pub/SISTA/espinosa/datasets/cstr.Dat[DB]