寇艷廷,范濤濤,劉 晨,閻紅燦
(河北聯(lián)合大學(xué) 理學(xué)院,河北 唐山 063000)
希爾伯特—黃變換HHT(Hilbert-Huang Transform)是1998年由Huang等人[1-2]提出的一種信號(hào)分析方法,它通過(guò)經(jīng)驗(yàn)?zāi)B(tài)分解EMD(Empirical Mode Decomposition)基于信號(hào)的局部特征時(shí)間尺度將信號(hào)分解成有限數(shù)目的本征模態(tài)函數(shù) IMF(Intrinsic Mode Functions)之和,對(duì)每個(gè)IMF進(jìn)行Hilbert變換可以求得具有物理意義的瞬間頻率,非常適合對(duì)非平穩(wěn)信號(hào)處理。所以許多研究學(xué)者將該技術(shù)應(yīng)用于數(shù)據(jù)波的時(shí)頻分析[3-4]和時(shí)間序列的預(yù)測(cè)研究[5-6],取得了顯著的成果。
時(shí)間序列模型適合于線性時(shí)序的預(yù)測(cè),當(dāng)用于預(yù)測(cè)非線性時(shí)間序列時(shí),準(zhǔn)確性較差;小波分析方法中數(shù)據(jù)基本假定為平穩(wěn)序列,當(dāng)用于非平穩(wěn)時(shí)間序列預(yù)測(cè)時(shí)準(zhǔn)確性不高;神經(jīng)網(wǎng)絡(luò)具有逼近非線性的能力,然而當(dāng)用神經(jīng)網(wǎng)絡(luò)來(lái)預(yù)測(cè)股價(jià)時(shí)間序列時(shí),其結(jié)果不是很理想;中國(guó)證券市場(chǎng)的混沌性暗示著金融時(shí)間序列的長(zhǎng)期不可預(yù)測(cè)性和短期預(yù)測(cè)的可行性,但混沌模型與其他方法對(duì)股市進(jìn)行預(yù)測(cè)時(shí),也未能得到令理論界和實(shí)務(wù)界較滿意的效果。在研究金融數(shù)據(jù)預(yù)測(cè)時(shí)提出了將EMD與神經(jīng)網(wǎng)絡(luò)結(jié)合的預(yù)測(cè)模型,就是利用EMD處理非平穩(wěn)數(shù)據(jù)的優(yōu)勢(shì)。
在EMD過(guò)程中,最為關(guān)鍵的就是如何擬合成與原始數(shù)據(jù)逼近的函數(shù),即構(gòu)造函數(shù)的算法問(wèn)題。而要想構(gòu)造較為準(zhǔn)確的函數(shù),關(guān)鍵是包絡(luò)線的選取算法?,F(xiàn)有的EMD分解算法一般應(yīng)用三次樣條插值法,雖然能夠得到較為理想的結(jié)果,但仍然有些偏差,特別是邊緣數(shù)據(jù)(拐點(diǎn))誤差較大。本文系統(tǒng)分析了三次樣條插值算法和分段冪函數(shù)插值算法的特點(diǎn),將其結(jié)合找到一種更好的求包絡(luò)線的算法,從而提出了一種更為有效的數(shù)據(jù)擬合函數(shù)構(gòu)造方法。
EMD算法的目的就是將復(fù)雜數(shù)據(jù)(信號(hào))分解為有限個(gè)本征模態(tài)函數(shù)IMFs,這里IMF須滿足如下兩個(gè)性質(zhì):
(1)信號(hào)的極值點(diǎn)(極大值或極小值)數(shù)目和過(guò)零點(diǎn)數(shù)目相等或最多相差一個(gè);
(2)由局部極大值構(gòu)成的上包絡(luò)線和由局部極小值構(gòu)成的下包絡(luò)線的平均值為零。
EMD算法步驟如下:
(1)計(jì)算出信號(hào) s(t)所有的局部極值點(diǎn)。
(2)求所有的極大值點(diǎn)構(gòu)成的上包絡(luò)線和所有的極小值點(diǎn)構(gòu)成的下包絡(luò)線,分別極為 u0(t)和 v0(t)。
(3)記上、下包絡(luò)線的均值為:
(4)判斷 h0(t)是否滿足 IMF的上述兩條性質(zhì)。若滿足,則 h0(t)為 IMF;否則,記 h0(t)為 s(t)。 重復(fù)步驟(1)~步驟(3),直到得到一個(gè) IMF,記為 C1(t)。
(5)記 r1(t)=s(t)-C1(t)為新的待分析信號(hào),重復(fù)步驟(1)~步驟(4),以得到第二個(gè) IMF,記為 C2(t),此時(shí)余項(xiàng) r2(t)=r1(t)-C1(t)。 重復(fù)上述步驟,直至得到的余項(xiàng) rn(t)是一個(gè)單調(diào)信號(hào)或 rn(t)的值小于預(yù)先給定的閾值,分解結(jié)束。
如此,最終可得到 n 個(gè) IMFs,C1(t),C2(t),…,Cn(t)余項(xiàng)為 rn(t)。 因此,原信號(hào) s(t)可表示為:
EMD算法的核心部分就是求解包絡(luò)線算法,現(xiàn)有的技術(shù)一般采用三次樣條插值法。由于邊緣數(shù)據(jù)(端點(diǎn))選取直接影響數(shù)據(jù)擬合效果,如果樣條插值中端點(diǎn)的選取再精確些,就會(huì)得到更好的擬合數(shù)據(jù)點(diǎn),而分段冪函數(shù)具有端點(diǎn)延拓的特點(diǎn),對(duì)邊緣端點(diǎn)有平滑處理功能,彌補(bǔ)了樣條插值法的缺陷。本節(jié)詳細(xì)討論分段冪函數(shù)插值在求解包絡(luò)線中的應(yīng)用。
記所有的插值點(diǎn) P1(x1,y1),P2(x2,y2),…,Pn(xn,yn),插值函數(shù) y=f(x)。對(duì)任意 3 個(gè)相鄰點(diǎn) Pi-1(xi-1,yi-1),Pi(xi,yi),Pi+1(xi+1,yi+1)進(jìn)行冪函數(shù)插值:
分段冪函數(shù)插值算法的誤差范圍隨β的增大而減小,且誤差的最大范圍為[Mh2/2.5,5Mh2/2]。
結(jié)合實(shí)際數(shù)據(jù),利用Matlab數(shù)學(xué)軟件進(jìn)行實(shí)驗(yàn)仿真,表1是實(shí)驗(yàn)仿真的測(cè)試數(shù)據(jù)。
表1 數(shù)據(jù)記錄表
選擇Matlab內(nèi)置函數(shù)spline,先編寫主函數(shù),核心代碼如下:
以文件名yangtiao_main.m保存。運(yùn)行程序,得到運(yùn)行結(jié)果如圖1和圖2所示。
主函數(shù)核心代碼: %分段三次Hermite插值法主函數(shù)
圖1 三次樣條插值采樣點(diǎn)
圖2 三次樣條插值擬合結(jié)果
運(yùn)行程序,結(jié)果如圖3和圖4所示。
圖3 分段冪函數(shù)采樣點(diǎn)
圖4 分段冪函數(shù)擬合結(jié)果
從圖1可以看出,經(jīng)過(guò)分段冪函數(shù)的端點(diǎn)延拓處理,插值擬合的函數(shù)更接近于原始數(shù)據(jù),大大提高了EMD中數(shù)據(jù)擬合的效果。為下一步數(shù)據(jù)分析和預(yù)測(cè)提供了技術(shù)保證。
本文在分析經(jīng)驗(yàn)?zāi)B(tài)分解算法的基礎(chǔ)上,討論了三次樣條插值求解包絡(luò)線的弊端,引入分段冪函數(shù)端點(diǎn)延拓技術(shù),提高了數(shù)據(jù)擬合精度。實(shí)驗(yàn)表明,對(duì)數(shù)據(jù)擬合算法的改進(jìn)極大提高了EMD過(guò)程中函數(shù)擬合的效果,有利于提高時(shí)間序列分析和預(yù)測(cè)精度。
[1]HUANG N E, Shen Zheng, LONG S R, et al.The empirical mode decomposition and the Hilbert spectrum for non-linear and non-station time series analysis[J].Proc R SocLond,1998,45(4):903-995.
[2]HUANG N E, Shen Zheng, LONG S R.A new view of non-linear water waves.The hilbert spectrum [J].Annual Review of Fluid Mechanics,1999,31:417-457.
[3]蓋強(qiáng).局域波時(shí)頻分析方法的理論研究與應(yīng)用 [D].大連:大連理工大學(xué),2001:52-54.
[4]徐世艷.經(jīng)驗(yàn)?zāi)B(tài)分解的時(shí)頻分析方法及其應(yīng)用[J].吉林大學(xué)學(xué)報(bào),2009,9(27-5):487-492.
[5]劉慧婷,倪志偉,李建洋.經(jīng)驗(yàn)?zāi)B(tài)分解方法及其應(yīng)用[J].計(jì)算機(jī)工程及應(yīng)用,2006,32(1):44-47.
[6]玄兆燕,楊公訓(xùn).EMD在地面氣溫預(yù)測(cè)中的應(yīng)用 [J].微計(jì)算機(jī)信息,2008,2(24-3):230-232.