修妍
摘 要:針對傳統(tǒng)相空間重構(gòu)參數(shù)的選取無統(tǒng)一標(biāo)準(zhǔn),影響混沌時序相空間重構(gòu)質(zhì)量及預(yù)測精度問題,提出了相空間重構(gòu)優(yōu)化參數(shù)動態(tài)神經(jīng)網(wǎng)絡(luò)預(yù)測模型的新方法。該方法在重構(gòu)相空間的基礎(chǔ)上利用動態(tài)神經(jīng)網(wǎng)絡(luò)模型對混沌時序進(jìn)行預(yù)測,由預(yù)測誤差綜合確定預(yù)測模型的參數(shù)設(shè)置,并反推出重構(gòu)相空間的最佳嵌入維數(shù)和延遲時間。通過對Lorenz混沌系統(tǒng)的仿真,證明文章提出的方法是有效的。
關(guān)鍵詞:相空間重構(gòu);動態(tài)神經(jīng)網(wǎng)絡(luò);預(yù)測
中圖分類號:TP27 文獻(xiàn)標(biāo)志碼:A 文章編號:2095-2945(2017)23-0013-03
1 概述
混沌時間序列分析與預(yù)測已經(jīng)在天氣預(yù)報、經(jīng)濟預(yù)測、電力負(fù)荷預(yù)測等方面得到了廣泛的應(yīng)用。相空間重構(gòu)是進(jìn)行混沌時間序列分析與預(yù)測的基礎(chǔ),而進(jìn)行相空間重構(gòu)的嵌入維數(shù)和延遲時間參數(shù)對重構(gòu)后的相空間質(zhì)量有很大的影響,相空間重構(gòu)的質(zhì)量將直接影響到混沌時間序列的預(yù)測精度以及預(yù)測時長。相空間重構(gòu)的嵌入維數(shù)如果選取的較小,則不能完全展現(xiàn)混沌系統(tǒng)的細(xì)微結(jié)構(gòu);其嵌入維數(shù)如果選取的較大,則會使計算工作復(fù)雜化,引起噪聲。相空間重構(gòu)的延遲時間如果選取的較小,通過重構(gòu)的系統(tǒng)相軌跡由于相關(guān)性較強而在相空間主方向壓縮,使相空間中的相鄰延遲坐標(biāo)元素差別太小,造成信息冗余;其延遲時間如果選取的較大,則系統(tǒng)中某一時刻的狀態(tài)與其后的狀態(tài)在因果關(guān)系上變得不相關(guān),導(dǎo)致相鄰延遲坐標(biāo)元素之間的信息丟失,信號軌跡可能會出現(xiàn)折疊現(xiàn)象。因此,對相空間進(jìn)行重構(gòu)的嵌入維數(shù)和延遲時間的參數(shù)選擇成為研究者的重要研究課題。
目前,相空間重構(gòu)參數(shù)的確定方法有兩類。一類為分別計算兩個參數(shù),其中對延遲時間的選取主要有自相關(guān)函數(shù)法、平均互信息法、平均位移法等,對嵌入維數(shù)的選取主要有關(guān)聯(lián)維數(shù)法、虛假鄰點法等。另一類為同時計算兩個參數(shù),如時間窗口法、C-C法等。此外,還有一些學(xué)者對相空間重構(gòu)參數(shù)的常見方法進(jìn)行了改進(jìn)研究[1-5]。雖然各種研究方法都取得了一定的效果,而且大部分研究都以經(jīng)典混沌系統(tǒng)Lorenz混沌時序為例進(jìn)行了驗證研究,但是不同的研究人員得到的研究結(jié)果并不一致。由于有研究表明應(yīng)用神經(jīng)網(wǎng)絡(luò)進(jìn)行建模預(yù)測時,獲得最優(yōu)預(yù)測結(jié)果所對應(yīng)的相空間重構(gòu)參數(shù)并不是應(yīng)用傳統(tǒng)方法獲得的嵌入維數(shù)和延遲時間[6]。因此,為了提高混沌時間序列的預(yù)測精度和預(yù)測時長,本文綜合考慮相空間重構(gòu)和預(yù)測算法之間的內(nèi)在聯(lián)系,研究在相空間重構(gòu)以后,從對未來時序進(jìn)行預(yù)測的預(yù)測模型誤差的大小反推嵌入維數(shù)和延遲時間以及預(yù)測模型的參數(shù)選擇是否為最佳選擇,從而使相空間重構(gòu)參數(shù)和預(yù)測模型的參數(shù)選擇可以同步進(jìn)行,并運用Lorenz混沌時序進(jìn)行仿真實驗,以驗證本文方法的可行性和優(yōu)越性。
2 混沌時序相空間重構(gòu)
2.1 相空間重構(gòu)
設(shè)觀測到的混沌時間序列為x1,x2,...,xn,按照Takens[7]的延遲嵌入理論,可選用適當(dāng)?shù)难舆t時間和嵌入維數(shù)m,將混沌時間序列重構(gòu)為如下的m維相空間:
2.2 延遲時間和嵌入維數(shù)m的確定
由于在工程實踐及金融經(jīng)濟研究中所獲取的時間序列都是有限長且含有噪聲的,也無法事先預(yù)知此類系統(tǒng)的非線性特征,采用分別計算其相空間重構(gòu)參數(shù)的方法并不可行。此外,大量實驗表明,嵌入維數(shù)m和延遲時間的關(guān)系與重構(gòu)相空間的時間窗W密切相關(guān), 因此,m和的聯(lián)合算法更適合實際應(yīng)用。其中,1999年,H.S.Kim、R.Eykholt和J.D.Salas提出的C-C算法[8]由于方法相對簡單,易于在計算機上實現(xiàn),能夠同時得到和W而得到了廣泛的應(yīng)用。該方法將整個時間序列分成t個不相交的時間序列,序列長度l=N/t,當(dāng)N→∞時,
3 相空間重構(gòu)優(yōu)化參數(shù)動態(tài)神經(jīng)網(wǎng)絡(luò)預(yù)測模型
本文利用相空間重構(gòu)和動態(tài)神經(jīng)網(wǎng)絡(luò)對混沌時間序列進(jìn)行預(yù)測,相空間重構(gòu)參數(shù)的選取對于相空間重構(gòu)的質(zhì)量以及動態(tài)神經(jīng)網(wǎng)絡(luò)對未來時序的預(yù)測精度和預(yù)測時長的影響較大。因此,本文綜合考慮相空間重構(gòu)和預(yù)測算法之間的內(nèi)在聯(lián)系,從預(yù)測模型誤差的大小來反推嵌入維數(shù)和延遲時間以及預(yù)測模型的參數(shù)選擇是否為最佳,從而同步確定相空間重構(gòu)的參數(shù)和預(yù)測模型的參數(shù),得到未來時序預(yù)測的精確值。具體過程如下:
第一步:對混沌時序數(shù)據(jù)進(jìn)行歸一化處理,歸一化方法可采用最大最小化方法,避免因為輸入輸出數(shù)據(jù)數(shù)量級差別較大而造成網(wǎng)絡(luò)預(yù)測誤差較大。
第二步:用C-C算法即公示(2)、(3)、(4)和(5)對第一步歸一化處理后的混沌時序初步計算其嵌入維數(shù)m和延遲時間。
第三步:將第二步計算出的嵌入維數(shù)m和延遲時間帶入公示(1),將原混沌時序重構(gòu)為m維相空間。
第四步:將第三步得到的相空間重構(gòu)數(shù)據(jù)作為動態(tài)神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù),建立動態(tài)神經(jīng)網(wǎng)絡(luò)NARX預(yù)測模型。NARX(Nonlinear Auto-Regressive models with Exogenous Inputs) 神經(jīng)網(wǎng)絡(luò)被稱為帶外部輸入的非線性自回歸模型[10],它是非線性動態(tài)系統(tǒng)中應(yīng)用最廣泛的一種神經(jīng)網(wǎng)絡(luò),NARX模型非常適合混沌時序的預(yù)測。在應(yīng)用前一般要事先確定輸入和輸出的延時階數(shù)、隱層神經(jīng)元個數(shù)等。再將輸入數(shù)據(jù)經(jīng)NARX神經(jīng)網(wǎng)絡(luò)隱含層的tansig激活函數(shù),以及輸出層的purelin傳遞函數(shù),得到輸出向量,然后將輸出向量延時反饋引入網(wǎng)絡(luò)訓(xùn)練中,形成新的輸入向量。在訓(xùn)練、驗證及測試過程中,網(wǎng)絡(luò)模型的輸入不僅包括原始輸入數(shù)據(jù),還包含經(jīng)過訓(xùn)練后的輸出數(shù)據(jù),網(wǎng)絡(luò)的泛化能力得到提高。NARX神經(jīng)網(wǎng)絡(luò)的數(shù)學(xué)模型可以表示為:
其中f(·)表示用神經(jīng)網(wǎng)絡(luò)實現(xiàn)的非線性函數(shù)。
第五步:運用第四步建立好的NARX神經(jīng)網(wǎng)絡(luò)預(yù)測模型對混沌時序進(jìn)行滾動外推多步預(yù)測。以絕對預(yù)測誤差(APE)和標(biāo)準(zhǔn)均方根誤差(RMSE)衡量模型的預(yù)測性能,計算方法如下:
式中ytrue,i為實際觀測值,ypredict,i為模型預(yù)測值,n為測試樣本個數(shù)。絕對預(yù)測誤差值和均方根誤差值越小,表明預(yù)測效果越好。為達(dá)到期望的預(yù)測效果,需要對第四步NARX預(yù)測模型的隱層神經(jīng)元個數(shù)和延時階數(shù)的具體數(shù)值反復(fù)調(diào)試,并結(jié)合第三步計算出的嵌入維數(shù)m和延遲時間經(jīng)過篩選對比,選擇預(yù)測誤差最小時對應(yīng)的參數(shù)作為最佳的相空間重構(gòu)參數(shù),而最佳相空間重構(gòu)參數(shù)對應(yīng)的預(yù)測值即為所需要的預(yù)測結(jié)果。
第六步:對第五步的預(yù)測結(jié)果作反歸一化,得到混沌時序的最終預(yù)測值。
4 仿真研究
本文以Lorenz系統(tǒng)進(jìn)行仿真研究, 以驗證本文提出方法的有效性。Lorenz混沌時序方程如下:
由C-C算法得到延遲時間的值為10,其嵌入維數(shù)m的參考值為6,分別取嵌入維數(shù)m的值為3、4、5和6,進(jìn)行相空間重構(gòu),然后設(shè)置NARX預(yù)測模型的延遲階數(shù)為3,隱層神經(jīng)元個數(shù)為10,對Lorenz混沌系統(tǒng)的將來值進(jìn)行滾動外推50步預(yù)測,絕對預(yù)測誤差如圖1所示。由圖1可看出當(dāng)延遲時間?子的值為10,其嵌入維數(shù)m的值為5時,其絕對預(yù)測誤差較小,標(biāo)準(zhǔn)均方根誤差值為0.78419。
重復(fù)以上過程,只是改變NARX預(yù)測模型的延遲階數(shù)和隱層神經(jīng)元個數(shù)的設(shè)置,得到一系列預(yù)測值,比較預(yù)測值的標(biāo)準(zhǔn)均方根誤差,選取最小的均方根誤差所對應(yīng)的參數(shù)值為最佳。研究結(jié)果表明,當(dāng)NARX預(yù)測模型的延遲階數(shù)設(shè)置為3,隱層神經(jīng)元個數(shù)設(shè)置為20,相空間重構(gòu)延遲時間的值為10,其嵌入維數(shù)m的值為6時,Lorenz混沌時序滾動外推預(yù)測50步時的均方根誤差最小,其值為0.07098。為了驗證本文方法的有效性,采用偽近鄰方法確定嵌入維數(shù)m=3和互信息方法確定延遲時間=19重構(gòu)相空間,與本文方法用同樣的NARX神經(jīng)網(wǎng)絡(luò)進(jìn)行預(yù)測誤差對比,證明了本文方法的預(yù)測效果較好,如表1所示。
5 結(jié)束語
本文結(jié)合相空間重構(gòu)和動態(tài)神經(jīng)網(wǎng)絡(luò)NARX對混沌時序的預(yù)測進(jìn)行了研究,提出了相空間重構(gòu)優(yōu)化參數(shù)動態(tài)神經(jīng)網(wǎng)絡(luò)預(yù)測模型的新方法。該方法在重構(gòu)相空間的基礎(chǔ)上利用動態(tài)神經(jīng)網(wǎng)絡(luò)模型進(jìn)行預(yù)測,由預(yù)測誤差綜合確定預(yù)測模型的參數(shù)設(shè)置,并反推出重構(gòu)相空間的最佳嵌入維數(shù)和延遲時間,由于在確定參數(shù)的過程中已經(jīng)進(jìn)行了預(yù)測計算,因此直接選擇最佳參數(shù)對應(yīng)的預(yù)測結(jié)果即為最終預(yù)測值。通過對Lorenz混沌系統(tǒng)的仿真,證明本文提出的方法是有效的。
參考文獻(xiàn):
[1]馬紅光,李夕海,王國華,等.相空間重構(gòu)中嵌入維和時間延遲的選擇[J].西安交通大學(xué)學(xué)報,2004,38(4):335-338.
[2]姚洪興,姜桂仁,耿霞.相空間重構(gòu)中參數(shù)確定方法的新探討[J].江蘇大學(xué)學(xué)報自然科學(xué)版,2005,26(s1):82-85.
[3]陸振波,蔡志明,姜可宇.基于改進(jìn)的C-C方法的相空間重構(gòu)參數(shù)選擇[J].系統(tǒng)仿真學(xué)報,2007,19(11):2527-2529.
[4]張春濤,馬千里,彭宏.基于信息熵優(yōu)化相空間重構(gòu)參數(shù)的混沌時間序列預(yù)測[J].物理學(xué)報,2010,59(11):7623-7629.
[5]王一頡,韓敏.基于優(yōu)化相空間重構(gòu)的多變量混沌時間序列預(yù)測[C].中國控制會議,2007.
[6]Dulakshi S.K.Karunasinghe, Long Shieyui. Chaotic time series prediction with a global model: Artificial neural network[J]. Journal of Hydrology, 2006,323:92-105.
[7]F. Takens, in: D.A. Rand, L.S. Young ..Dynamical Systems and Turbulence[J].Lecture Notes in Mathematics, vol. 898 Springer, Berlin,1981:336.
[8]H.S.Kim, R. Eykholt, J.D.Salas. Nonlinear dynamics delay times, and embedding windows [J]. Physica D 127(1999):48-60.
[9]秦奕青,蔡衛(wèi)東,楊炳儒.非線性時間序列的相空間重構(gòu)技術(shù)研究[J].系統(tǒng)仿真學(xué)報,2008,20(11):2969-2973.
[10]王小川,史峰,等.MATLAB神經(jīng)網(wǎng)絡(luò)43個案例分析[M].北京:北京航空航天大學(xué)出版社,2013:354-365.