陳孝文,蘇 攀,吳彬溶,成 承,王 林
(1.湖北中煙工業(yè)有限責(zé)任公司,湖北 武漢 430040;2.華中科技大學(xué) 管理學(xué)院,湖北 武漢 430074)
準(zhǔn)確的時間序列預(yù)測有助于管理者提前做好布局和決策,所以時間序列預(yù)測得到了廣泛的關(guān)注和應(yīng)用,例如共享單車租賃需求預(yù)測[1]、匯率預(yù)測[2]、客運量預(yù)測[3]、期貨價格預(yù)測[4]等領(lǐng)域。時間序列數(shù)據(jù)可以描述為一組按時間順序的觀察結(jié)果,類型可以分為單變量時間序列和多變量時間序列,具有數(shù)據(jù)規(guī)模大、維度高等特點。時間序列預(yù)測問題采用的模型大致分為經(jīng)典統(tǒng)計模型(ARIMA、VAR模型)和機器學(xué)習(xí)模型(如支持向量機、人工神經(jīng)網(wǎng)絡(luò)模型)[5]。經(jīng)典統(tǒng)計模型通過研究時間數(shù)據(jù)的演化,預(yù)測未來的走勢。機器學(xué)習(xí)模型具有強大的非線性擬合能力,近年來也被廣泛應(yīng)用到時間序列預(yù)測中。隨著大數(shù)據(jù)時代的到來,多變量、多通道的海量時間序列數(shù)據(jù)呈爆炸式增長,多元時間序列數(shù)據(jù)具有高維和時空相關(guān)性特征,或包含噪聲數(shù)據(jù),使經(jīng)典統(tǒng)計方法難以有效建模。此外,傳統(tǒng)的方法在處理大數(shù)據(jù),特別是海量、復(fù)雜的多變量時態(tài)數(shù)據(jù)時也存在局限性。而深度學(xué)習(xí)模型具有較強的自適應(yīng)能力、靈活的非線性建模能力以及海量的學(xué)習(xí)和并行計算能力,是求解復(fù)雜非線性系統(tǒng)的有效方法[6]。因此,數(shù)據(jù)驅(qū)動的深度學(xué)習(xí)預(yù)測方法越來越受到研究者的青睞。
作為常用的深度學(xué)習(xí)模型之一,長短期記憶網(wǎng)絡(luò)(long short-term memory,LSTM)能夠分析長跨度的時間序列并預(yù)測,有效解決傳統(tǒng)循環(huán)神經(jīng)網(wǎng)絡(luò)梯度消失的問題。目前,LSTM已被廣泛應(yīng)用于文本識別、語音識別、疾病診斷、時間序列預(yù)測等多個領(lǐng)域[7-8]。為研究更加高效、精確的時間序列預(yù)測模型,筆者將基于注意機制的雙向LSTM應(yīng)用于時間序列預(yù)測。雙向機制可以從順序和逆序充分挖掘輸入變量的有效信息,防止長輸入時的部分前段輸入信息的缺失[9]。同時,通過注意力機制,對不同的輸入變量賦予不同的權(quán)重,從而LSTM可以突出更關(guān)鍵的影響因素[10]。目前國內(nèi)外已有研究使用注意力機制或雙向機制優(yōu)化LSMT,比如高華睿等[8]使用考慮注意力機制的雙向長短時記憶神經(jīng)網(wǎng)絡(luò),應(yīng)用于預(yù)測高速公路短時交通流,并取得了不錯的效果;PENG等[10]使用了基于注意力機制的LSTM預(yù)測國內(nèi)外能源消耗量,進(jìn)一步證實注意力機制給LSTM模型帶來的性能提升。然而,LSTM的許多參數(shù)都會影響預(yù)測性能,但確定合適的參數(shù)組合通常是困難的。因此,筆者采用帶有外部歸檔的自適應(yīng)差分進(jìn)化算法(adaptive differential evolution with optional external archive,JADE)確定LSTM的超參數(shù)。
目前很多時間序列預(yù)測研究都是基于數(shù)據(jù)分解方法的,比如奇異譜分析、變分模態(tài)分解、經(jīng)驗?zāi)B(tài)分解和集合經(jīng)驗?zāi)B(tài)分解等。數(shù)據(jù)分解方法有助于去除原始時間序列的隨機干擾,提高時間序列預(yù)測的性能。變分模態(tài)分解(variational mode decomposition,VMD)作為一種新的信號分解方法,在大部分情況下其分解性能都優(yōu)于基于經(jīng)驗?zāi)B(tài)分解和奇異譜分析等分解技術(shù),能更充分地分解原始信號[11]。因此,筆者在時間預(yù)測框架中引入了VMD。
通過兩個數(shù)值算例驗證了所提出VMD-JADE-基于注意力的雙向LSTM模型的可行性。實證結(jié)果表明,與其他常用方法相比,VMD-JADE-基于注意力的雙向LSTM模型可以提高時間序列預(yù)測的準(zhǔn)確性。主要貢獻(xiàn)如下:①通過人工智能技術(shù),提出了一種有效且新穎的時間序列預(yù)測模型,即VMD-JADE-基于注意力的雙向LSTM模型,該模型結(jié)合了VMD的降噪能力、注意力機制的關(guān)鍵信息捕獲能力、雙向機制的輸入變量的信息提取能力、JADE的智能高效搜索參數(shù)能力和LSTM對時間序列的精確預(yù)測能力。②利用注意力機制的權(quán)重對分解后的子序列和其他多元輸入變量的重要性進(jìn)行了評估。從而識別時間序列預(yù)測中的重要變量,為決策者提供有說服力的時間序列預(yù)測分析和決策支持。
VMD-JADE-基于注意力機制的雙向LSTM模型的預(yù)測框架如圖1所示。在VMD-JADE-基于注意力機制的雙向LSTM的預(yù)測框架中,VMD將原始時間序列數(shù)據(jù)分解為若干個子序列,JADE對基于注意力機制的雙向LSTM的幾個關(guān)鍵參數(shù)進(jìn)行優(yōu)化,再將子序列和其他相關(guān)影響因素輸入到改進(jìn)的LSTM中進(jìn)行預(yù)測。VMD-JADE-基于注意力機制的雙向LSTM模型結(jié)合了VMD、JADE和基于注意力機制的雙向LSTM的優(yōu)點。最后使用VMD-JADE-基于注意力機制的雙向LSTM模型對單因素每日紙漿期貨價格及多因素每周玉米期貨價格進(jìn)行預(yù)測,并使用注意力權(quán)重分析每個預(yù)測算子的重要性。下面將詳細(xì)介紹使用VMD、JADE和基于注意力機制的雙向LSTM。
圖1 VMD-JADE-基于注意力機制的雙向LSTM模型的預(yù)測框架圖
(1)變分模態(tài)分解VMD。VMD是一種非遞歸的、自適應(yīng)的信號處理方法,對非線性和非平穩(wěn)信號有很好的處理效果,也可用于確定時間序列的周期性。VMD將實信號分解為有限數(shù)量的子信號,稱為分量,這些分量被認(rèn)為是緊湊圍繞相應(yīng)中心頻率的。VMD的優(yōu)點是在處理數(shù)據(jù)噪聲和分解時序數(shù)據(jù)時穩(wěn)健、高效。對歷史時間序列進(jìn)行分解,分解后的子序列再輸入到預(yù)測模型中,有利于篩選子序列中的無用信息,以此提升時間序列預(yù)測的精確度。
在分解技術(shù)中,基于EMD和基于WT的方法應(yīng)用最為廣泛?;贓MD的技術(shù)是自適應(yīng)的,需要調(diào)整的參數(shù)更少,對噪聲和采樣更敏感,更容易分解,但分解的不夠充分?;赪T的方法在時域和頻域具有突出的局部化特性,但是其性能在很大程度上取決于分解層數(shù)和分解二叉樹的結(jié)構(gòu)。相比之下,VMD由于具有較強的數(shù)學(xué)理論基礎(chǔ)[12],可以實現(xiàn)信號的精確分離,具有較高的計算性能。相關(guān)實驗表明,VMD技術(shù)的分解性能優(yōu)于基于EMD和基于WT的分解技術(shù)[13]。VMD能夠?qū)⒃紩r間序列數(shù)據(jù)充分分解成若干個子序列,最大限度地降低由于原始序列波動性大、隨機性強而導(dǎo)致的預(yù)測難度。同時,LSTM可以很好地選擇對預(yù)測貢獻(xiàn)較大的子序列。因此,筆者利用VMD對原始時間序列數(shù)據(jù)進(jìn)行分解。
VMD分解中最重要的一步就是確定分解子序列的具體數(shù)目,如果子模態(tài)數(shù)量少,則原始序列可能不能被完全分解,導(dǎo)致預(yù)測不準(zhǔn)確。如果信號被過度分解,那么子模態(tài)之間的差異就會變得非常小,增加了不必要的計算開銷。利用剩余能量的比例rres來確定VMD輸出的適當(dāng)數(shù)量。rres的公式如下:
(1)
式中:f(t)為原始時間序列數(shù)據(jù);Ns為樣本數(shù);K為分解的子模態(tài)數(shù)量;uk(t)為已分解的模式。rres小于百分之三且沒有明顯的下降趨勢,則可以確定最佳的子模態(tài)數(shù)量[14]。
(2)帶有外部歸檔的自適應(yīng)差分進(jìn)化算法JADE。DE算法是一種常用的智能優(yōu)化算法,具有實現(xiàn)簡單、效率高的優(yōu)點[15]。大量研究表明,DE在很多問題上都優(yōu)于其他常用算法,例如全局優(yōu)化問題[16]。ZHANG等[17]提出的JADE是一種具有可選外部存檔的自適應(yīng)差分進(jìn)化算法。仿真結(jié)果表明,在大多數(shù)情況下,JADE算法的收斂性能優(yōu)于其他自適應(yīng)DE算法。JADE作為DE的變體之一,具有更好的全局搜索能力和搜索效率。因此,筆者使用JADE優(yōu)化的LSTM。
利用JADE確定基于注意力機制的雙向LSTM的參數(shù)。所選參數(shù)為時間步長、隱藏層神經(jīng)元個數(shù)、批量大小和迭代次數(shù)。JADE是DE算法的一個極好的變體,在高維問題上顯示了極好的結(jié)果。與基本的DE相比,JADE有3個主要的改進(jìn):①實現(xiàn)了新的“DE/current-to-pbest”突變策略;②增加了一個可選的外部存檔;③參數(shù)自適應(yīng)更新?!癉E/current-to-pbest”和可選的歸檔操作可以分散存儲空間,提高收斂性能。參數(shù)自適應(yīng)將控制參數(shù)自動更新到合適的值,提高了算法的魯棒性。
(3)基于注意力機制的雙向LSTM。HOCHREITER等[18]提出了長短期神經(jīng)網(wǎng)絡(luò)LSTM。LSTM是一種RNN變體,用于解決簡單RNN的長期記憶不足,特有的門控機制使其擁有持久化的信息類型、持久化的持續(xù)時間以及從存儲單元讀取信息日期的能力。因此,LSTM可以保留輸入信號中的重要信息,忽略不太重要的分量。這個存儲單元有一個遞歸的自連接線性單元,稱為“常量誤差傳遞”,可以長時間維護(hù)依賴關(guān)系。因此,與簡單的RNN相比,LSTM在網(wǎng)絡(luò)中保留了信息并傳播了更長鏈的誤差,從而克服了梯度消失的問題。
筆者使用基于注意力機制的雙向LSTM作為可靠高效的預(yù)測模型,其結(jié)構(gòu)如圖2所示。雙向LSTM即指同時考慮輸入的順序序列和逆序序列,因輸入序列過長時預(yù)測模型更偏向輸入末端的信息而忽視了前段的有效信息,導(dǎo)致部分輸入信息的缺失,而雙向LSTM可以很好地解決這個問題,從而提升LSTM模型的特征提取能力和預(yù)測能力。雙向LSTM包含前向LSTMF(Forward LSTM)和后向LSTMB(Backward LSTM)。在每一層時間維度上,將雙向LSMT的輸入分別用兩個相反方向的LSTM處理,隨后將兩個LSMT的最終輸入連接在一起作為下一層的輸入。雙向LSTM的傳遞機制如下:
Ft=f(w1xt+w2Ft-1)
(2)
(3)
(4)
圖2 基于注意力機制的雙向LSTM的結(jié)構(gòu)圖
雙向機制可以從順序和逆序兩個方向挖掘輸入變量的重要信息,注意機制通過對輸入的特征賦予不同的權(quán)重來捕獲重要的因素,因此,結(jié)合了注意機制和雙向機制的優(yōu)點,設(shè)計基于注意力機制的雙向LSTM。
2.1.1 數(shù)據(jù)集及數(shù)據(jù)預(yù)處理
受新冠疫情、國際局勢、供求關(guān)系等多重因素影響,2020年11月—2022年3月紙漿價格波動劇烈,對下游造紙企業(yè)及供應(yīng)鏈下游企業(yè)(如煙草企業(yè)白卡紙的采購)等產(chǎn)生了較大沖擊?;诖?,準(zhǔn)確地預(yù)測紙漿價格對于下游企業(yè)的采購、庫存等決策至關(guān)重要。
每日紙漿期貨價格來自于“英為財情”(www.investing.com),全稱為漂白針葉木硫酸鹽紙漿(bleached softwood kraft pulp futures,SSPK2),時間跨度為2020年9月1日—2022年3月25日。訓(xùn)練集為2020年9月1日—2021年12月31日,共325個交易日數(shù)據(jù);驗證集為2022年1月1日—2022年2月28日,共35個交易日數(shù)據(jù);測試集為2022年3月1日—2022年3月25日,共19個交易日數(shù)據(jù)。訓(xùn)練集用來訓(xùn)練模型,驗證集用來調(diào)整參數(shù),測試集用來測試預(yù)測模型的性能。紙漿價格走勢如圖3所示。
圖3 紙漿價格走勢圖
2.1.2 預(yù)測性能評估指標(biāo)
利用兩個尺度相關(guān)誤差(MAE和RMSE)和一個百分比誤差(MAPE)評估模型的預(yù)測性能,3個指標(biāo)的計算方法如下:
(5)
(6)
(7)
2.1.3 對比模型及參數(shù)設(shè)置
為驗證所提出的預(yù)測模型的穩(wěn)定性和準(zhǔn)確性,將其與長短期神經(jīng)網(wǎng)絡(luò)、循環(huán)神經(jīng)網(wǎng)絡(luò)、門控循環(huán)單元、反向傳播神經(jīng)網(wǎng)絡(luò)、DE-基于注意力機制的雙向LSTM、JADE-基于注意力機制的LSTM、JADE-雙向LSTM、EMD-JADE-基于注意力機制的雙向LSTM進(jìn)行比較。其中,長短期神經(jīng)網(wǎng)絡(luò)、循環(huán)神經(jīng)網(wǎng)絡(luò)、門控循環(huán)單元、反向傳播神經(jīng)網(wǎng)絡(luò)是常用的時間序列預(yù)測模型[20]。為了對比JADE算法在搜索參數(shù)時的優(yōu)越性,采用DE和JADE作為不同的智能優(yōu)化算法,對基于注意力機制的雙向LSTM模型的參數(shù)進(jìn)行搜索。此外,筆者比較了VMD與其他分解方法的分解效果,即使用經(jīng)驗?zāi)B(tài)分解(EMD)處理原時間序列數(shù)據(jù),并輸入到預(yù)測模型中與VMD分解后輸入到預(yù)測模型中的結(jié)果進(jìn)行對比。
利用VMD將原始時間序列數(shù)據(jù)分解為數(shù)個子模態(tài),以減少原始數(shù)據(jù)的非平穩(wěn)特性。合適的子模態(tài)數(shù)目可以由剩余能量的比值rres來確定,不同子模態(tài)數(shù)量時rres的值如表1所示。當(dāng)子模態(tài)數(shù)目為5時rres值小于3%且無明顯下降趨勢,說明其為最合適的分解數(shù)量。分解后的紙漿價格子序列如圖4所示,相對低頻的子模態(tài)代表了原始紙漿價格的總體趨勢;中頻的子模態(tài)表示紙漿價格的局部波動趨勢;高頻的子模態(tài)表示紙漿價格序列的殘差。提取的中低頻子序列比原始數(shù)據(jù)更加平滑,有利于提高紙漿價格預(yù)測性能。
表1 不同子模態(tài)數(shù)量對應(yīng)的rres值
圖4 VMD分解后的紙漿價格子序列
采用高效、簡單的網(wǎng)格搜索方法對DE、JADE的參數(shù)進(jìn)行優(yōu)化。這些進(jìn)化算法隨后被用來尋找所提出模型的最優(yōu)參數(shù)?;谧⒁饬C制的雙向LSMT的參數(shù)搜索范圍為:時間步長數(shù)的范圍為[2,10];批量數(shù)量范圍為[16,64];迭代次數(shù)為[100,500];隱藏層神經(jīng)元數(shù)量范圍為[2,32]。經(jīng)過JADE搜索得到的所提出模型的最佳參數(shù)組合為:時間步長為4,批量大小為51,迭代次數(shù)為432,隱藏層神經(jīng)元數(shù)量為15。
2.1.4 預(yù)測結(jié)果和討論
使用MAPE、MAE和RMSE對VMD-JADE-基于注意力機制的雙向LSTM模型的預(yù)測結(jié)果與其他預(yù)測方法進(jìn)行比較,各模型的預(yù)測結(jié)果如表2所示。測試集上各模型的預(yù)測值與真實值的擬合情況如圖5所示??芍狫ADE-基于注意力機制的雙向LSTM模型的結(jié)果更貼近真實值。與其他模型相比,VMD-JADE-基于注意力機制的雙向LSTM模型在3個指標(biāo)上都取得了最佳的表現(xiàn)。JADE優(yōu)化后的LSTM模型的預(yù)測性能比DE優(yōu)化后的LSTM的預(yù)測模型就MAPE而言降低了14.10%,說明JADE在尋找LSTM模型的最佳參數(shù)組合時優(yōu)于基本的DE算法,進(jìn)一步證明了JADE算法的高效性。VMD分解后的子序列輸入到所提出的預(yù)測模型中比EMD分解輸入到預(yù)測模型的結(jié)果就MAPE而言降低了20.24%,說明VMD比EMD分解原始序列更加充分,更適用于時間序列預(yù)測的分解和降噪。
表2 不同模型的預(yù)測結(jié)果
圖5 各模型預(yù)測值與真實值的擬合情況
滯后階數(shù)為1時的S1~S5的注意力權(quán)重如圖6所示。注意力權(quán)重表示注意力層計算時各個神經(jīng)元的參數(shù)值,反映了輸入變量在紙漿價格預(yù)測中的作用,權(quán)重越大,在預(yù)測中發(fā)揮的作用越大??芍琒1~S3對于紙漿價格預(yù)測的貢獻(xiàn)較大,而S4和S5在預(yù)測中發(fā)揮的作用較小。分解的頻率越低,越能反映紙漿價格的大致趨勢,分解頻率適中可以很好反映紙漿價格的拐點,也在預(yù)測中發(fā)揮了重要作用,而高頻序列如S4和S5則包含了較大噪音,所以在紙漿價格預(yù)測中發(fā)揮的作用偏低。
圖6 輸入變量的注意力權(quán)重值
受新冠疫情、國際政治局勢、國內(nèi)供求關(guān)系、大宗商品上漲等因素的影響,近年來我國玉米期貨價格波動幅度較大,而準(zhǔn)確的玉米期貨價格預(yù)測不僅有助于國內(nèi)農(nóng)產(chǎn)品基準(zhǔn)價格定價,發(fā)揮期貨市場的調(diào)節(jié)作用,也有助于種植業(yè)、農(nóng)產(chǎn)品加工業(yè)及生豬養(yǎng)殖業(yè)的良性發(fā)展。參考近年來玉米期貨價格研究文獻(xiàn)[19],筆者綜合考慮了玉米價格的歷史波動趨勢、供求關(guān)系、國際影響方面的因素,構(gòu)建影響因子指標(biāo),如表3所示,時間跨度為2019年1月4日—2022年3月25日,共164個交易周數(shù)據(jù)。其中,訓(xùn)練集為2019年1月7日—2021年10月31日,共144個交易周數(shù)據(jù);驗證集為2021年11月1日—2021年12月31日,共9個交易周數(shù)據(jù);測試集為2022年1月1日—2022年3月25日,共11個交易周數(shù)據(jù)。
為清晰地展示中國玉米期貨價格與其他輸入變量之間的關(guān)系,將各指標(biāo)線性縮放至0.1~0.9之間,如圖7所示,中國玉米期貨價格與其他輸入變量的波動具有一定的相似性或滯后性,說明選中的其他輸入指標(biāo)對玉米期貨價格有一定的影響,可用于玉米期貨價格的預(yù)測研究。
算例二的對比模型和進(jìn)化算法的搜索范圍都與算例一相同。不同子模態(tài)數(shù)下對應(yīng)的rres值如表4所示。由表可知,當(dāng)子模態(tài)數(shù)目為7時rres小于3%且無明顯下降趨勢,說明其為最合適的分解數(shù)量。受篇幅限制,VMD分解后的子序列圖不做展示。經(jīng)過JADE搜索所提出模型的最佳參數(shù)組合為:時間步長為3,批量大小為43,迭代次數(shù)為312,隱藏層神經(jīng)元數(shù)量為19。
表4 算例二中不同子模態(tài)數(shù)量對應(yīng)的rres值
利用多因素玉米期貨價格數(shù)據(jù)驗證VMD-JADE-基于注意力機制的雙向LSTM模型的可行性和有效性,不同模型的預(yù)測結(jié)果如表5所示,各模型預(yù)測值與真實值的擬合情況如圖8所示,所提出模型在所有使用的模型中取得了最佳的預(yù)測性能,其預(yù)測值與實際值最為貼合,證明了所提出模型的精準(zhǔn)性。對比所提出模型與DE-基于注意力機制的雙向LSTM,所提出模型較DE-基于注意力機制的雙向LSTM模型的MAPE、MAE、RMSE分別改善了58.62%、58.78%和66.42%,證明了JADE算法在搜索神經(jīng)網(wǎng)絡(luò)最佳參數(shù)組合時的優(yōu)越性。實驗結(jié)果還表明只考慮單一的改善LSTM的方法,即JADE-基于注意力機制的LSTM或JADE-雙向LSTM,雖然較基礎(chǔ)的LSTM取得一定的改進(jìn),但綜合兩者優(yōu)勢的JADE-基于注意力機制的雙向LSTM表現(xiàn)更加突出。
表5 不同模型的預(yù)測結(jié)果
輸入變量的注意力權(quán)重值及各個輸入變量在玉米期貨價格中發(fā)揮的作用圖9所示??芍?,S1、國際玉米期貨價格、S4、國際原油期貨價格和生豬價格指數(shù)分別為對價格預(yù)測影響最大的5個輸入變量,說明VMD分解的低頻序列能很好地反映原始數(shù)據(jù)波動的大致趨勢,中頻序列能很好地反映原始數(shù)據(jù)的拐點,都對時間序列的預(yù)測產(chǎn)生較大作用;國際玉米期貨價格、國際原油期貨價格和生豬價格指數(shù)的變化對我國玉米期貨價格都有較大的沖擊,因為其反映國際環(huán)境、供求關(guān)系等我國玉米期貨的影響。
圖9 算例二中的輸入變量的注意力權(quán)重值
筆者提出了一種基于數(shù)據(jù)分解、注意力機制、雙向機制、JADE算法優(yōu)化超參數(shù)的改進(jìn)LSMT模型。注意力機制可以捕獲關(guān)鍵信息,提高多因素預(yù)測的準(zhǔn)確性,雙向機制可以從順序序列和逆序序列兩個方向充分挖掘數(shù)據(jù)特征,防止部分前段有效信息的丟失。以單因素紙漿價格預(yù)測和多因素玉米期貨價格預(yù)測為例,驗證了所提出的VMD-JADE-基于注意力機制的雙向LSTM模型的有效性和優(yōu)越性。結(jié)果表明,VMD-JADE-基于注意力機制的雙向LSTM模型效果優(yōu)于其它對比模型,且通過分析注意力權(quán)重能夠給輸入變量進(jìn)行重要性排序,能夠為管理者提供決策支持,所提出的方法適用于時間序列預(yù)測。
模型也存在一定的局限性。首先,僅考慮了單個分解模型的效果,二次分解模型也可用于時間序列分解,能否取得更好的分解效果尚需進(jìn)一步研究。其次,多目標(biāo)優(yōu)化算法或者其他智能算法,如果蠅優(yōu)化算法和鯨魚優(yōu)化算法,也可以用于識別合適的LSTM參數(shù)組合。