□蔡兆暉 曾 凱 陳秋強(qiáng)
由于新冠疫情的持續(xù)影響,國(guó)際供應(yīng)鏈及國(guó)際商品市場(chǎng)秩序受到了極大的沖擊;同時(shí),中美貿(mào)易戰(zhàn)、俄烏局部沖突等地緣政治矛盾也對(duì)國(guó)際大宗商品市場(chǎng)帶來(lái)了較大的長(zhǎng)期影響。因此,在國(guó)際經(jīng)貿(mào)關(guān)系中針對(duì)大宗商品的價(jià)格預(yù)測(cè)領(lǐng)域,若仍遵循傳統(tǒng)的預(yù)測(cè)方法,無(wú)法克服時(shí)間序列過(guò)分強(qiáng)調(diào)長(zhǎng)期記憶給價(jià)格波動(dòng)預(yù)測(cè)帶來(lái)的負(fù)面影響,同樣也無(wú)法綜合考慮多變的國(guó)際環(huán)境給時(shí)間序列帶來(lái)的短期沖擊。例如,觀察大宗商品鎳和錫2013年1月—2022年6月在英國(guó)LME的官方現(xiàn)貨價(jià)格波動(dòng)趨勢(shì)(見(jiàn)圖1)均可以發(fā)現(xiàn),在2014年克里米亞危機(jī)、2020年新冠疫情蔓延、2022年俄烏沖突期間,大宗商品價(jià)格均出現(xiàn)了與長(zhǎng)期趨勢(shì)不符的情況,但是并未根本背離長(zhǎng)期趨勢(shì)的異常波動(dòng),并且該波動(dòng)帶入了短期沖擊所帶來(lái)的長(zhǎng)期趨勢(shì)的變化,給價(jià)格曲線引入了額外的波動(dòng)動(dòng)力。
因此,本文從當(dāng)前國(guó)際經(jīng)貿(mào)環(huán)境出發(fā),結(jié)合企業(yè)實(shí)際和我國(guó)相關(guān)公司迫切的大宗商品尤其是大宗金屬原料價(jià)格的科學(xué)預(yù)測(cè)需求,引入深度學(xué)習(xí)理論中最新的LSTM神經(jīng)網(wǎng)絡(luò)模型,借助該模型適當(dāng)兼顧短期波動(dòng)并納入長(zhǎng)期記憶模型特征,對(duì)大宗商品的價(jià)格預(yù)測(cè)機(jī)制進(jìn)行研究。
長(zhǎng)短期記憶網(wǎng)絡(luò)——通常被稱為L(zhǎng)STM,是一種特殊的循環(huán)神經(jīng)網(wǎng)絡(luò)(簡(jiǎn)稱RNN),能夠?qū)W習(xí)長(zhǎng)期依賴性。公共LSTM單元由單元、輸入門(mén)、輸出門(mén)、忘記門(mén)組成。該單元可記住任意時(shí)間間隔內(nèi)的值,并且由3個(gè)門(mén)控制進(jìn)出單元的信息流。LSTM網(wǎng)絡(luò)非常適合基于時(shí)間序列數(shù)據(jù)進(jìn)行分類、處理和預(yù)測(cè),因?yàn)樵跁r(shí)間序列中的重要事件之間可能存在未知持續(xù)時(shí)間的滯后。開(kāi)發(fā)LSTM是為了處理在訓(xùn)練傳統(tǒng)RNN時(shí)可能遇到的爆炸和消失的梯度問(wèn)題。對(duì)于間隙長(zhǎng)度的相對(duì)不敏感性是LSTM相對(duì)于RNN、隱馬爾可夫模型和其他序列學(xué)習(xí)方法在許多應(yīng)用中的優(yōu)勢(shì)。
如圖2所示,LSTM的單個(gè)循環(huán)結(jié)構(gòu)(又稱為細(xì)胞)由輸入門(mén)、遺忘門(mén)、輸出門(mén)和單元狀態(tài)組成。其中,輸入門(mén)決定當(dāng)前時(shí)刻網(wǎng)絡(luò)的輸入數(shù)據(jù)有多少需要保存到單元狀態(tài),遺忘門(mén)決定上一時(shí)刻的單元狀態(tài)有多少需要保留到當(dāng)前時(shí)刻,輸出門(mén)控制當(dāng)前單元狀態(tài)有多少需要輸出到當(dāng)前的輸出值。
圖2 LSTM核心結(jié)構(gòu)
LSTM是一種特殊的RNN,兩者的區(qū)別在于普通的RNN單個(gè)循環(huán)結(jié)構(gòu)內(nèi)部只有1個(gè)狀態(tài)。而LSTM的單個(gè)循環(huán)結(jié)構(gòu)(又稱為細(xì)胞)內(nèi)部有4個(gè)狀態(tài)。相比于RNN,LSTM循環(huán)結(jié)構(gòu)之間保持一個(gè)持久的單元狀態(tài)不斷傳遞下去,用于決定哪些信息要遺忘、哪些信息要繼續(xù)傳遞。
大宗商品價(jià)格時(shí)間序列中所包含的預(yù)測(cè)信息往往同時(shí)存在于長(zhǎng)期信息和短期信息中,因此LSTM兼顧長(zhǎng)期信息傳遞和短期信息影響的結(jié)構(gòu),對(duì)于在外部環(huán)境較為復(fù)雜、系統(tǒng)外沖擊較多的新時(shí)代大宗商品價(jià)格預(yù)測(cè)具有較好的應(yīng)用意義。
基于經(jīng)驗(yàn)?zāi)B(tài)分解理論,在當(dāng)前復(fù)雜經(jīng)濟(jì)形勢(shì)下,任何大宗商品價(jià)格序列作為非線性、非平穩(wěn)、高信噪比的時(shí)間序列,都可以被分解為若干個(gè)頻率特征不一樣的、對(duì)稱的、局部均值為零、過(guò)零點(diǎn)和極值點(diǎn)數(shù)目相同的本征模函數(shù)(簡(jiǎn)稱IMF),從而實(shí)現(xiàn)對(duì)該時(shí)間序列的平穩(wěn)化處理。經(jīng)過(guò)本文實(shí)踐發(fā)現(xiàn)大宗商品價(jià)格時(shí)間序列數(shù)據(jù)的經(jīng)驗(yàn)?zāi)B(tài)分解(簡(jiǎn)稱EMD)后IMF信號(hào)中出現(xiàn)了不同的時(shí)間尺度,由此,為了使時(shí)間序列的IMF分量能夠?qū)崿F(xiàn)單一模態(tài)分解,本文參考集合經(jīng)驗(yàn)?zāi)B(tài)分解(簡(jiǎn)稱EEMD)理論,將正態(tài)分布的白噪聲加到原始時(shí)間序列中,經(jīng)過(guò)EEMD分解后的大宗商品價(jià)格時(shí)間序列在各個(gè)IMF本征模分量上可在不同尺度上呈現(xiàn)更加清晰的特征和規(guī)律,從而為L(zhǎng)STM神經(jīng)網(wǎng)絡(luò)挖掘原時(shí)間序列的內(nèi)在規(guī)律和波動(dòng)特征提供有效幫助。
因此,針對(duì)大宗商品價(jià)格預(yù)測(cè)的應(yīng)用,本文使用自適應(yīng)的EEMD方法對(duì)大宗商品價(jià)格時(shí)間序列進(jìn)行分解之后,對(duì)每個(gè)分解后的IMF序列進(jìn)行LSTM建模分析。本文定義σ為門(mén)單元控制函數(shù)sigmoid函數(shù),W為該神經(jīng)網(wǎng)絡(luò)的權(quán)重矩陣,b為偏置向量。
由此,基于該定義,首先本文借助LSTM網(wǎng)絡(luò),設(shè)計(jì)大宗商品價(jià)格信息的遺忘門(mén)f t,見(jiàn)式(1)。
其中ht-1表示上一個(gè)時(shí)間單位的隱藏層狀態(tài),x t是當(dāng)前t時(shí)刻的時(shí)間序列數(shù)據(jù),通過(guò)該遺忘門(mén)函數(shù)確定上一時(shí)刻大宗商品價(jià)格信息的保留范圍,并將其作用于上一時(shí)刻的大宗商品價(jià)格規(guī)律記憶信息ct-1。
其次,結(jié)合遺忘門(mén)的機(jī)制,本文設(shè)計(jì)輸入門(mén)來(lái)確定保留多少當(dāng)前時(shí)刻的大宗商品價(jià)格信息輸入到當(dāng)前時(shí)刻的神經(jīng)網(wǎng)絡(luò)單元狀態(tài)。本文以上一時(shí)刻的隱藏層狀態(tài)h t-1和當(dāng)前時(shí)刻大宗商品價(jià)格時(shí)間序列數(shù)據(jù)x t,通過(guò)1個(gè)tanh函數(shù)來(lái)得到1個(gè)(-1, 1)的取值作為輸入門(mén)閾值,得到此刻的備選大宗商品價(jià)格規(guī)律記憶信息,見(jiàn)式(2):
同時(shí)h t-1和xt通過(guò)輸入門(mén)確定輸入范圍作用于,通過(guò)遺忘門(mén)對(duì)上一刻的大宗商品價(jià)格記憶信息的保留和輸入門(mén)對(duì)備選記憶信息的選擇,得到了當(dāng)前時(shí)刻的新的大宗商品價(jià)格規(guī)律記憶信息ct,見(jiàn)式(3):
其中:i t=σ·(Wi·[h t-1,xt]+bi)。
最后,本文以輸出門(mén)確定大宗商品價(jià)格規(guī)律信息輸出h t,見(jiàn)式(4):
即上一時(shí)刻的隱藏層狀態(tài)h t-1和當(dāng)前時(shí)刻大宗商品價(jià)格時(shí)間序列數(shù)據(jù)xt先通過(guò)輸出門(mén)后確定輸出范圍,再通過(guò)1個(gè)tanh函數(shù)對(duì)當(dāng)前大宗商品價(jià)格信息記憶信息ct進(jìn)行部分選取,經(jīng)過(guò)輸出門(mén)確定信息輸出h t。模型設(shè)計(jì)結(jié)果如圖3所示。
圖3 面向大宗商品價(jià)格預(yù)測(cè)的LSTM模型設(shè)計(jì)
基于EEMD和LSTM融合的模型,本文以Python語(yǔ)言為基礎(chǔ),首先借助PyEMD系統(tǒng)工具包構(gòu)建了對(duì)時(shí)間序列進(jìn)行EEMD經(jīng)驗(yàn)?zāi)B(tài)分解的程序,在分解后序列基礎(chǔ)上,使用Keras構(gòu)建LSTM神經(jīng)網(wǎng)絡(luò)對(duì)大宗商品時(shí)間序列數(shù)據(jù)進(jìn)行深度學(xué)習(xí),在形成分別針對(duì)高頻序列、低頻序列和趨勢(shì)序列的預(yù)測(cè)模型后,以該模型外推獲取對(duì)3個(gè)序列的未來(lái)值估計(jì),最后將其反向EEMD合并為時(shí)間序列數(shù)據(jù),從而作出對(duì)大宗商品時(shí)間序列未來(lái)值的預(yù)測(cè)。
在EEMD實(shí)現(xiàn)過(guò)程中,首先在添加正態(tài)分布白噪聲的基礎(chǔ)上,針對(duì)大宗商品價(jià)格時(shí)間序列xt,找出局部最大值和局部最小值點(diǎn)。然后利用3次樣條函數(shù)分別對(duì)這些局部最大值和局部最小值點(diǎn)進(jìn)行插值得到xt的上包絡(luò)線u t和下包絡(luò)線l t,獲取上下包絡(luò)線的均值:m t=(u t+l t)/2,則m t為上下包絡(luò)線的均值。最后令h t=xt-m t;檢查h t是否滿足IMF 的條件,如果不滿足,則繼續(xù)上述迭代過(guò)程至到某h t符合IMF 的條件。
以英國(guó)LME交易所鎳金屬官方現(xiàn)貨價(jià)格指數(shù)為例,本文對(duì)2013年1月—2022年6月鎳現(xiàn)貨價(jià)格時(shí)間序列每日數(shù)據(jù)共2388項(xiàng)進(jìn)行EEMD分解之后,得出10個(gè)IMF 本征模分量和1個(gè)剩余分量,LME交易所鎳金屬官方現(xiàn)貨價(jià)格EEMD分解結(jié)果見(jiàn)圖4。
圖4 LME交易所鎳金屬官方現(xiàn)貨價(jià)格EEMD分解結(jié)果
從圖4中可以發(fā)現(xiàn),IMF 1~I(xiàn)MF 10為頻率從高到低的10個(gè)本征模分量,而Res剩余分量代表了大宗商品價(jià)格的長(zhǎng)期走勢(shì),即趨勢(shì)項(xiàng)。
基于對(duì)IMF各個(gè)本征模分量的波峰間距觀測(cè)可以發(fā)現(xiàn)各個(gè)不同頻率序列的時(shí)間寬度,因此以該時(shí)間寬度作為預(yù)測(cè)窗口長(zhǎng)度,分別構(gòu)建LSTM神經(jīng)網(wǎng)絡(luò)來(lái)學(xué)習(xí)各個(gè)高頻、低頻和趨勢(shì)序列的規(guī)律,從而分別預(yù)測(cè)這些序列的未來(lái)值。
以上文鎳金屬現(xiàn)貨價(jià)格為例,經(jīng)過(guò)分析可以發(fā)現(xiàn),除了周期未達(dá)到1個(gè)周期而無(wú)法判定時(shí)間寬度的IMF 9和IMF10以外,各個(gè)本征模分量的時(shí)間寬度如表1所示。
表1 各IMF分量時(shí)間周期寬度
由于IMF9、IMF10、Res趨勢(shì)項(xiàng)這3個(gè)分項(xiàng)均為低頻項(xiàng)并反映大宗商品價(jià)格時(shí)間趨勢(shì),其波動(dòng)趨勢(shì)與IMF8相似,因此本文將其時(shí)間窗口寬度設(shè)定為與IMF8相同以簡(jiǎn)化處理過(guò)程。
基于該時(shí)間周期寬度的設(shè)定,本文為每個(gè)IMF分量都構(gòu)建了LSTM神經(jīng)網(wǎng)絡(luò),以8∶2的比例分割原始數(shù)據(jù)集,其中90%歷史數(shù)據(jù)作為訓(xùn)練數(shù)據(jù),10%作為驗(yàn)證數(shù)據(jù),取MSE作為預(yù)測(cè)誤差評(píng)判指標(biāo)。借助Keras庫(kù)搭建了1個(gè)按照各個(gè)IMF分量時(shí)間周期為輸入層,32個(gè)神經(jīng)元的LSTM層和1個(gè)將32個(gè)中間結(jié)果集合到1個(gè)預(yù)測(cè)值上的Dense層的3層LSTM神經(jīng)網(wǎng)絡(luò),對(duì)各個(gè)IMF分量的值進(jìn)行預(yù)測(cè),并將驗(yàn)證集中的預(yù)測(cè)結(jié)果和真實(shí)值做比較的建模結(jié)果如圖5所示。
圖5 LME交易所鎳金屬官方現(xiàn)貨價(jià)格IMF序列LSTM預(yù)測(cè)結(jié)果
通過(guò)考察各IMF分量中驗(yàn)證集預(yù)測(cè)序列與真實(shí)值序列的預(yù)測(cè)結(jié)果(MSE) (見(jiàn)表2)可以發(fā)現(xiàn),將大宗商品價(jià)格時(shí)序數(shù)據(jù)進(jìn)行IMF分解后進(jìn)行LSTM預(yù)測(cè)的效果較好,能較好地挖掘出大宗商品價(jià)格在各個(gè)不同頻率周期中的規(guī)律。
表2 各IMF分量LSTM預(yù)測(cè)結(jié)果(MSE)
最后,針對(duì)殘差序列所代表的趨勢(shì)項(xiàng),本文同樣采用LSTM神經(jīng)網(wǎng)絡(luò)對(duì)其發(fā)展趨勢(shì)進(jìn)行預(yù)測(cè),得到的結(jié)果如圖6所示,預(yù)測(cè)結(jié)果MSE為2.707 0e-04,反映了LSTM算法的預(yù)測(cè)精度較好。
圖6 LME交易所鎳金屬官方現(xiàn)貨價(jià)格Res殘差序列LSTM預(yù)測(cè)結(jié)果
由于本文所采用的EEMD分解在進(jìn)行EMD分解前,加入了與大宗商品價(jià)格時(shí)間序列中的高斯分布白噪聲相抵消以完成去噪功能的白噪聲序列,因此在信號(hào)重構(gòu)過(guò)程中,本文直接選取全部IMF分量進(jìn)行重構(gòu),以保證算法的普適性,避免主觀選取部分IMF帶來(lái)的噪聲放大問(wèn)題。
基于本文所獲得的IMF預(yù)測(cè)序列和Res殘差預(yù)測(cè)序列,直接對(duì)所有分量序列進(jìn)行加和重構(gòu)后得到的預(yù)測(cè)結(jié)果序列與驗(yàn)證集中真實(shí)值對(duì)比如圖7所示,通過(guò)該圖可以發(fā)現(xiàn)基于EEMD和LSTM進(jìn)行預(yù)測(cè)得到的預(yù)測(cè)結(jié)果較為可靠。
為了對(duì)比不同算法模型在大宗商品價(jià)格時(shí)間序列預(yù)測(cè)的效果,本文以未進(jìn)行EEMD分解的原始價(jià)格序列進(jìn)行LSTM神經(jīng)網(wǎng)絡(luò)建模和傳統(tǒng)的ARIMA模型分別對(duì)LME交易所金屬價(jià)格進(jìn)行預(yù)測(cè),在驗(yàn)證集得到的預(yù)測(cè)結(jié)果與原數(shù)據(jù)對(duì)比得到的MSE如表3所示。可以發(fā)現(xiàn),經(jīng)過(guò)EEMD分解后進(jìn)行LSTM神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)的效果明顯優(yōu)于其他傳統(tǒng)算法和直接使用原始時(shí)間序列進(jìn)行建模預(yù)測(cè)的效果。
表3 不同模型驗(yàn)證集預(yù)測(cè)結(jié)果(MSE)
針對(duì)國(guó)際動(dòng)蕩環(huán)境下受外部沖擊較多的大宗商品價(jià)格時(shí)間序列所存在的預(yù)測(cè)難點(diǎn),本文根據(jù)該時(shí)間序列特點(diǎn)引入了集合經(jīng)驗(yàn)?zāi)B(tài)分解方法EEMD對(duì)時(shí)間序列進(jìn)行分解,并對(duì)分解后的IMF 時(shí)間序列分量和Res殘差序列分別構(gòu)架不同的LSTM網(wǎng)絡(luò)進(jìn)行訓(xùn)練,借助深度學(xué)習(xí)算法挖掘其中的變化規(guī)律并進(jìn)行預(yù)測(cè),從而克服了傳統(tǒng)時(shí)間序列算法存在的不同頻率序列窗口重疊帶來(lái)的干擾,得到的結(jié)果更加科學(xué)可靠,對(duì)于大宗商品價(jià)格的預(yù)測(cè)有科學(xué)的指導(dǎo)意義。○