高藝晉,童紀新,代 杰
(河海大學 商學院,南京 211100)
原油價格的準確預測能夠有效規(guī)避能源風險,在此課題上,國內(nèi)外專家學者從不同的角度提出了眾多的預測方法與理論,主要包括ARIMA、GARCH等傳統(tǒng)的計量經(jīng)濟學方法[1,2]以及近些年來流行的所屬機器學習類的多種模型。
各類原油時間序列數(shù)據(jù)具有高度非線性、非平穩(wěn)、影響因子多而復雜且難以確定的特點,而傳統(tǒng)計量經(jīng)濟學方法存在著模型參數(shù)設(shè)置困難,函數(shù)選擇不盡如人意的問題。相比之下,人工神經(jīng)網(wǎng)絡(luò)在時間序列預測領(lǐng)域準確率高、泛化能力出眾以及其固有的非線性特點被認為是一種合適的油價預測方法[3]。BP網(wǎng)絡(luò)的出現(xiàn)有效地解決了神經(jīng)網(wǎng)絡(luò)的學習機制問題,因而在油價預測領(lǐng)域得到了廣泛的應(yīng)用。Imad Haidar[4]使用單一隱含層的BP神經(jīng)網(wǎng)絡(luò),準確預測了石油現(xiàn)貨價格短期走勢。為了優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的輸入的模式,賈振華等[5]使用主成分分析的方法對油價多影響因子進行有效約減,在解決BP神經(jīng)網(wǎng)絡(luò)“維數(shù)災難”的同時有效消除信息噪聲,簡化BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),提高了BP神經(jīng)網(wǎng)絡(luò)的預測精度。
有研究證明,相比于BP神經(jīng)網(wǎng)絡(luò),小波神經(jīng)網(wǎng)絡(luò)在逼近能力,泛化能力和收斂速度上更加優(yōu)秀[6]。范麗偉[7]使用主成分分析的方法對油價影響因素數(shù)據(jù)進行預處理,再將所提取到的多個主成分輸入小波神經(jīng)網(wǎng)絡(luò)來實現(xiàn)對WTI現(xiàn)貨價格的準確預測,研究結(jié)果表明相比于BP神經(jīng)網(wǎng)絡(luò)和基于主成分的BP神經(jīng)網(wǎng)絡(luò),基于主成分分析的小波神經(jīng)網(wǎng)絡(luò)預測精度更高,預測穩(wěn)定性更強,泛化能力更出眾。而主成分分析作為獨立成分分析白化步驟的一部?分,分離所得到的信號源僅僅是不相關(guān)的,范麗偉已經(jīng)說明獨立成分分析相比于主成分分析更能發(fā)現(xiàn)復雜問題的獨立源影響因素,有利于后續(xù)的數(shù)據(jù)處理[8]。因此在使用主成分分析方法做預處理的研究基礎(chǔ)上,本文選擇基于獨立成分分析預處理的小波神經(jīng)網(wǎng)絡(luò)(ICA-WNN)來對WTI現(xiàn)貨價格的預測做進一步的研究。
獨立成分分析方法(ICA)是一種基于高階統(tǒng)計獨立性,以非高斯源數(shù)據(jù)作為研究對象,實現(xiàn)多種混合數(shù)據(jù)分離問題的數(shù)學算法。任何復雜數(shù)據(jù)都可以看成由多維源數(shù)據(jù)和噪聲數(shù)據(jù)混合而成的,ICA可以在源數(shù)據(jù)和混合方法參數(shù)未知的情況下,僅由觀測到的混合數(shù)據(jù)恢復出源數(shù)據(jù)的各個獨立分量。
該方法適用于對復雜數(shù)據(jù)進行預處理,在預測問題中,可能面臨影響預測目標因素多而復雜的困難,同時各個影響因素之間存在著相關(guān)性與一定的信息重疊,這樣不僅增加了分析問題的難度,也會影響到模型預測的精確度與求解迭代速度,在這種情況下,對數(shù)據(jù)進行獨立成分分析,有助于去除數(shù)據(jù)冗余,減少信息噪聲。
在ICA方法中定義:
P=(p1,p2,...,pn)T為觀測到的n維混合數(shù)據(jù),S=(s1,s2,...,sm)T為m維源數(shù)據(jù)即為獨立成分,A為n×m維混合矩陣。ICA方法的目的就是通過求解解混矩陣C來實現(xiàn)對獨立成分Y的準確估計。
當然,進行獨立成分分析的前提是假設(shè)源數(shù)據(jù)服從非高斯分布以及各個獨立成分是統(tǒng)計獨立的。
近些年來快速獨立成分分析方法(FastICA)得到廣泛運用,該算法基于非高斯性最大原理,使用固定點迭代理論尋找非高斯性最大值,它采用牛頓迭代算法對混合信號進行批處理,每次從觀測信號X中分離出一個獨立成分,是獨立成分分析的一種快速算法。該算法的非高斯性函數(shù)為[9]:
在式(4)中,v為標準高斯隨機向量,函數(shù)G的2種方式可以為[10]:
在式(5)中,a1∈[1 , 2],F(xiàn)astICA算法具有收斂速度快,不需要對源信號概率密度函數(shù)進行估計,不需要選擇步長參數(shù)以及適用面廣的優(yōu)點。本文采用基于負熵的Fast-ICA算法,以最大化負熵為求解方向,逐步估計出獨立成分Y。整個Fast-ICA算法過程概述如下:
步驟1:中心化混合數(shù)據(jù)P,使其均值為零;
步驟2:對中心化后的數(shù)據(jù)進行白化處理得到結(jié)果Z;
步驟3:初始化一個單位向量c,滿足‖C‖=1;
步驟4:更新c←[E { z g (cTz)}]-E{g '(cTz)}c;
步驟5:標準化c,c←c/‖c‖;
步驟6:如果c尚未收斂,則返回步驟(4);
步驟7:根據(jù)式(3)計算獨立成分。
在每一次迭代之前都要對 cn+1和 c1,c2,...,cn進行正交化與單位化處理。在獲得n個獨立成分 c1,c2,...,cn的基礎(chǔ)上,計算第n+1個獨立成分cn+1,首先做正交化處理,...,cn正交;再做單位化處理,有cn+1=cn+1/‖cn+1‖ ,接著使用步驟4與步驟5對cn+1進行迭代。
小波變換是根據(jù)傅里葉變換的不足發(fā)展而來的,它的核心優(yōu)勢在于具有可以獲取非平穩(wěn)數(shù)據(jù)的時頻局域性質(zhì),其實質(zhì)是將待分析的數(shù)據(jù)分解為一系列小波函數(shù)的疊加。而小波函數(shù)是由一個母小波函數(shù)經(jīng)過平移與尺寸伸縮而得到的,將母小波函數(shù)平移一定單位之后,在不同尺度下與待分析的數(shù)據(jù)做內(nèi)積,能夠?qū)崿F(xiàn)對待分析數(shù)據(jù)的多尺度分析,有效提取數(shù)據(jù)的局部特征。
小波神經(jīng)網(wǎng)絡(luò)將小波分析與BP神經(jīng)網(wǎng)絡(luò)緊致結(jié)合,在BP神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)基礎(chǔ)上,用小波基函數(shù)替代傳統(tǒng)的Sigmoid函數(shù)作為神經(jīng)元節(jié)點的傳遞函數(shù)。
神經(jīng)元節(jié)點是整個神經(jīng)網(wǎng)絡(luò)模型的基本組成單位,設(shè)(x1,x2,…,xn)是隱含層第 j個神經(jīng)元節(jié)點從上一層的神經(jīng)元節(jié)點所接收的輸入信號,(w1j,w2j,…,wnj) 分別是這n個輸入信號所對應(yīng)的權(quán)重,w0為神經(jīng)元節(jié)點的閾值,其值為θj,本文研究的WNN模型將小波基函數(shù)作為神經(jīng)元節(jié)點的傳遞函數(shù),該函數(shù)與傳統(tǒng)的S型傳遞函數(shù)相比多了兩個計算參數(shù):伸縮因子與平移因子。該隱含層神經(jīng)元的輸出為:
其中,f(x)為小波基函數(shù),bj為第 j個神經(jīng)元所選取小波基函數(shù) f(x)的平移因子,aj為第 j個神經(jīng)元所選取小波基函數(shù) f(x)的伸縮因子。
本文所選取的小波基函數(shù)為morlet母小波函數(shù),其函數(shù)表達式為:
(1)信息的正向傳遞
輸入層的神經(jīng)元接受訓練數(shù)據(jù)的輸入,在第t次迭代中,隱含層的第 j個神經(jīng)元節(jié)點hj以一定的連接權(quán)重從輸入層的每一個神經(jīng)元處獲得輸入數(shù)據(jù),加權(quán)求和后再減去閾值,與伸縮因子,平移因子一同作為小波基函數(shù)的自變量,代入式(8)得到隱含層神經(jīng)元hj的輸出值。
考慮從小波神經(jīng)網(wǎng)絡(luò)的n維輸入到k*維輸出建立完整的映射關(guān)系,設(shè)輸入層有n個神經(jīng)元,隱含層有m神經(jīng)元,可以得到小波神經(jīng)網(wǎng)絡(luò)完整的映射方程:
(2)誤差的逆向傳播
在第一階段得到輸出結(jié)果后,小波神經(jīng)網(wǎng)絡(luò)將輸出層的輸出結(jié)果與預期結(jié)果進行對比,并算出輸出結(jié)果與預期結(jié)果之間的差值e,對于有k個節(jié)點的輸出層:
如果該值小于預定誤差ε則表示整個WNN神經(jīng)網(wǎng)絡(luò)訓練完畢;如果該值大于預定誤差ε,則將網(wǎng)絡(luò)學習調(diào)整進入誤差逆向傳播階段,在誤差逆向傳播階段中將誤差信號按原正向傳遞相反的路徑傳回,并不斷根據(jù)誤差,使用最快速下降法調(diào)整網(wǎng)絡(luò)權(quán)值與小波函數(shù)的伸縮因子與平移因子[8],在第t+1步訓練下,各參數(shù)的調(diào)整過程為:
其中,η為學習速率,其值滿足0<η<1,在訓練過程中,η的值越大,各個參數(shù)在梯度方向上的改變數(shù)值越大。β為動量項,其值也在0到1之間,常被用來改進網(wǎng)絡(luò)學習算法中參數(shù)調(diào)整振蕩和收斂速度慢的缺陷[11]。WNN神經(jīng)網(wǎng)絡(luò)通過多次迭代調(diào)整網(wǎng)絡(luò)的權(quán)重值,平移因子與伸縮因子,直到誤差結(jié)果e最終收斂于預定誤差ε,完成整個WNN神經(jīng)網(wǎng)絡(luò)的訓練過程。
本文選用使用獨立成分分析方法進行預處理的小波神經(jīng)網(wǎng)絡(luò)來實現(xiàn)對國際油價的準確預測。整個ICA-WNN網(wǎng)絡(luò)模型的預測過程如圖1所示。
圖1 ICA-WNN網(wǎng)絡(luò)模型預測過程
首先,運用獨立成分分析的方法消除源信號各個變量之間的相關(guān)性,可以得到不多于源信號維數(shù)的若干獨立成分(ICs)。將這些獨立成分輸入到小波神經(jīng)網(wǎng)路中,根據(jù)輸入數(shù)據(jù)進行多次迭代訓練,不斷調(diào)整網(wǎng)絡(luò)參數(shù)直至訓練結(jié)束。訓練完成的神經(jīng)網(wǎng)絡(luò)模型可以對未來數(shù)據(jù)進行預測,最后需要對神經(jīng)網(wǎng)絡(luò)模型的預測結(jié)果進行評價。
本文為以主成分分析進行預處理的小波神經(jīng)網(wǎng)絡(luò)油價預測的拓展研究,為了達到結(jié)果對比與最優(yōu)模型選擇的
圖2 分析對象與材料
圖2從上至下的六項數(shù)據(jù)序列依次為2001年1月到2015年2月的美國石油產(chǎn)量、美國原油庫存量、美國煉油能力、美元指數(shù)、美國石油產(chǎn)品銷售量與WTI期貨價格數(shù)據(jù),從圖2中可以看出,油價影響因子數(shù)據(jù)大多呈現(xiàn)雜亂無章,規(guī)律性不明顯的特點,如果直接將這些數(shù)據(jù)信號直接作為預測模型的輸入,不僅會使神經(jīng)網(wǎng)絡(luò)面臨巨大的計算量,延長訓練時間,各個變量之間還存在著數(shù)量級的差異,影響到模型預測的準確度。因此,在模型進行預測之前,需要對原始數(shù)據(jù)進行預處理。
在使用影響因子數(shù)據(jù)對WTI現(xiàn)貨價格進行預測之前,選用固定點迭代理論(Fixed-point)尋找非高斯性最大的快速獨立成分分析方法(Fast-ICA)對原始數(shù)據(jù)進行二次重構(gòu),得到WTI現(xiàn)貨價格影響因子的多個獨立成分。
在實際運用Fast-ICA方法對原始數(shù)據(jù)進行重構(gòu)之前,首先要確定獨立成分的個數(shù),目前,學術(shù)界尚不存在統(tǒng)一確定獨立成分個數(shù)的方法,考慮到獨立成分分析中數(shù)據(jù)白化的過程與主成分分析有相似之處,本次研究參考主成分分析中確定主成分個數(shù)的方法來確定獨立成分個數(shù)。
根據(jù)表1的結(jié)果,前三個成分的特征根都超過了1,并且前三個成分的累計方差貢獻率達到了92.854%,因此可以確定本文所要重構(gòu)的獨立成分是三個。使用Fast-ICA工具包對原始數(shù)據(jù)進行重構(gòu),得到獨立成分分析的結(jié)果。
表1 總方差解釋
三項獨立成分的趨勢和波動特征各不相同,代表著不同的影響因素,見圖3。
圖3 3個獨立成分圖像
第一項獨立成分波形具有高頻波動,先上升再下降的特點,可以看成是圖2中由美國石油產(chǎn)量的高頻波動特征與美國石油庫存量的波動趨勢重構(gòu)而成,高頻的特點表示自然災害,戰(zhàn)爭等突發(fā)因素對原油價格短時間內(nèi)的劇烈影響,這類突發(fā)因素能夠在短時間內(nèi)破壞原油供需平衡,因此,第一項獨立成分可以解釋為市場的突發(fā)影響項。
第二項獨立成分波形具有低頻,長期下降趨勢,由圖2中美元指數(shù)的長期波動趨勢與美國煉油能力的低頻波動特征重構(gòu)而成,可以有效地解釋為石油供給能力對于原油價格的影響。
第三項獨立成分波動趨勢呈現(xiàn)周期性特點,以12個月為一個周期,在一個周期內(nèi)波形的頭部與尾部振幅大于波形中部的振幅,與圖2中美國石油產(chǎn)品消費量數(shù)據(jù)的波動趨勢具有一致性特點??梢越忉尀樵谀瓿跖c年末因為天氣寒冷,取暖用石油的消費量與夏季相比出現(xiàn)明顯增長。整體來看,第三個獨立成分波形在前100個月時保持周期性平穩(wěn)變化,在第100個月時出現(xiàn)下降趨勢與圖2中前期保持平穩(wěn)在第100個月時出現(xiàn)下降的美元匯率波形相似,究其原因,是受2008年的美國次貸危機的影響。因此,第三個獨立成分可以解釋為常規(guī)性需求對于國際油價的影響。
在使用小波神經(jīng)網(wǎng)絡(luò)對油價多影響因素數(shù)據(jù)進行訓練之前,運用Fast-ICA方法對數(shù)據(jù)進行預處理,一方面可以找到隱含在多影響因素中的內(nèi)在影響因素,另一方面,該方法克服了傳統(tǒng)數(shù)據(jù)驅(qū)動預測方法可解釋性差的缺陷,證明了使用獨立成分分析方法分解與重構(gòu)油價影響因素數(shù)據(jù)的合理性與必要性。
3.3.1 神經(jīng)網(wǎng)絡(luò)層數(shù)確定
含多隱含層的神經(jīng)網(wǎng)絡(luò)與單一隱含層的神經(jīng)網(wǎng)絡(luò)相比,理論上泛化能力強,預測精度高,但是多隱含層的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)復雜,訓練時間較長。有理論證明單一隱含層結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)可以以任意精度逼近所需擬合的目標函數(shù)[11],并且可以通過適當選取隱含層節(jié)點數(shù)的方式來替代增加隱含層層數(shù)所帶來的優(yōu)勢?;谏鲜鲈颍诒敬晤A測中,最終選擇單一隱含層的WNN模型。
3.3.2 神經(jīng)網(wǎng)絡(luò)各層節(jié)點數(shù)確定
在確定小波神經(jīng)網(wǎng)絡(luò)層數(shù)的基礎(chǔ)上,進一步需要確定神經(jīng)網(wǎng)絡(luò)各層神經(jīng)元節(jié)點數(shù)。根據(jù)獨立成分分析的結(jié)果,本次預測為三維輸入,固輸入層含有三個神經(jīng)元節(jié)點;輸出結(jié)果為單步預測,輸出層只含有一個神經(jīng)元節(jié)點;目前,尚不存在統(tǒng)一的標準規(guī)定隱含層節(jié)點數(shù)目,本次預測采用“試錯法”探尋最合理的隱含層節(jié)點數(shù)目,具體做法是,在選取隱含層可能有4、6、8、10、12個節(jié)點的情況下,比較小波神經(jīng)網(wǎng)絡(luò)在1000次迭代條件下的訓練誤差和,最終確定小波神經(jīng)網(wǎng)絡(luò)隱含層有8個神經(jīng)元節(jié)點的條件下訓練誤差和最小。由此構(gòu)建一個3-8-1的小波神經(jīng)網(wǎng)絡(luò)模型。
3.3.3 預測結(jié)果評價
將2001年1月到2014年4月從WTI現(xiàn)貨價格影響因素數(shù)據(jù)中所提取的三個獨立成分與同期的WTI月度現(xiàn)貨價格共同作為訓練集對小波神經(jīng)網(wǎng)絡(luò)進行訓練。運用訓練完畢的網(wǎng)絡(luò)對2014年5月到2015年2月的WTI現(xiàn)貨價格進行10個月的數(shù)值預測。同時為了說明ICA-WNN模型的預測性能,將ICA-WNN模型與PCA-WNN神經(jīng)網(wǎng)絡(luò)以及BP神經(jīng)網(wǎng)絡(luò)的同期預測結(jié)果進行對比,以均方根誤差(RMSE)作為預測模型的評價函數(shù),以度量預測值對真實值的偏離程度,其誤差計算的公式為:
其中,ti為第i個時間節(jié)點WTI現(xiàn)貨價格的預測值,為第i個時間節(jié)點的WTI現(xiàn)貨價格真實值。
同時,原油產(chǎn)品作為一稀缺資源,其價格走勢的方向在金融市場上受到投資者的關(guān)注,本文選用預測方向正確率DS來評估預測模型對原油價格走勢方向的預測能力:在10次隨機實驗中,記錄每次實驗下3種預測模型的均方根誤差。
根據(jù)對10個月的WTI現(xiàn)貨價格的月度數(shù)據(jù)的10次隨機預測結(jié)果,得到三種模型預測方向正確率的結(jié)果(見表2)。
表2 預測方向正確率結(jié)果 (單位:%)
在每一次的隨機預測中,可以得到對10個月的WTI現(xiàn)貨價格的預測值,在10個月數(shù)值的9次方向比較中,BP神經(jīng)網(wǎng)絡(luò)預測對5次方向,而PCA-WNN與ICA-WNN模型預測對7次方向。體現(xiàn)出小波函數(shù)對非平穩(wěn)油價數(shù)據(jù)的局部“聚焦優(yōu)勢”,同時ICA-WNN模型對于國際油價的未來走勢方向判斷較為準確,可以有效輔助投資人進行決策。
圖4 隨機實驗結(jié)果匯總
下頁圖4為3種預測模型在10次實驗中,每次實驗的10個預測結(jié)果的均方根誤差結(jié)果,從圖4中可以得出如下結(jié)論:首先,在10次隨機預測實驗中,ICA-WNN神經(jīng)網(wǎng)絡(luò)與BP神經(jīng)網(wǎng)絡(luò)以及PCA-WNN神經(jīng)網(wǎng)絡(luò)相比在9次隨機試驗中均方根誤差值最小,總體預測精度最高;另外2種小波神經(jīng)網(wǎng)絡(luò)模型的預測精度均明顯高于BP神經(jīng)網(wǎng)絡(luò)的預測精度,事實上,小波神經(jīng)網(wǎng)絡(luò)隱含層所選取的morlet母小波函數(shù)與BP神經(jīng)網(wǎng)絡(luò)所選取的S型傳遞函數(shù)相比,非線性特點更加顯著,這一差異也就決定了小波神經(jīng)網(wǎng)絡(luò)在描述非線性關(guān)系領(lǐng)域比BP神經(jīng)網(wǎng)絡(luò)更加準確;另一方面,使用獨立成分分析的方法對原始數(shù)據(jù)進行預處理的效果優(yōu)于主成分分析,這是因為主成分分析只能去除多維數(shù)據(jù)間的相關(guān)性,而獨立成分分析可以得到相互獨立的多維數(shù)據(jù),更有效地保留原有信息量,降低數(shù)據(jù)維數(shù)。
國際原油價格的影響因素多而復雜,并且各個影響因素之間存在信息相關(guān)性。本文選用獨立成分分析的方法對原油價格的多個顯著影響因素進行分解和重構(gòu)成為3個獨成分,并在分析3個獨立成分數(shù)據(jù)波形的基礎(chǔ)上,將3個獨立成分分別解釋為市場突發(fā)影響項、石油供給能力和常規(guī)需求三個隱含影響因素,克服了常規(guī)數(shù)據(jù)驅(qū)動方法缺乏經(jīng)濟學解釋的缺陷。在此基礎(chǔ)上,將各個獨立成分作為小波神經(jīng)網(wǎng)絡(luò)的訓練數(shù)據(jù),構(gòu)建ICA-WNN預測模型。WTI現(xiàn)貨價格預測的結(jié)果證明將獨立成分分析的方法與小波神經(jīng)網(wǎng)絡(luò)緊致結(jié)合構(gòu)建的ICA-WNN模型能夠有效地刻畫原油價格上漲或是下跌的趨勢,并且相比于單一BP網(wǎng)絡(luò)以及PCA-WNN網(wǎng)絡(luò)在預測精度上提升顯著。