付星星 張 軍 秦 巖 宋元超
1(山東理工大學管理學院 山東 淄博 255000) 2(山東卓創(chuàng)資訊股份有限公司 山東 淄博 255000)
隨著我國在國際經濟貿易中的地位提升,我國已經成為全球最大的大宗商品需求國。除了石油、礦石及各種農產品外,化工產品也是大宗商品的重要組成部分。它可以直接或間接地給能源、紡織、制藥、儀器設備等眾多行業(yè)提供原材料,在我國國民經濟發(fā)展中處于重要的基礎性地位。由于產業(yè)鏈上下游產品數(shù)量眾多,產業(yè)鏈中上下游產品價格和收益率波動變化往往存在著一定的關聯(lián)性,具有顯著的聯(lián)動效應[2],并且價格波動往往表現(xiàn)為復雜的非線性關系,政府對此進行監(jiān)管有一定的難度。因此,分析產品及其上下游的歷史數(shù)據(jù)和各項技術指標,并依據(jù)相關理論和算法模型來預測產業(yè)鏈產品價格走勢具有重要的理論意義和社會價值[3]。
目前商品價格預測方法的研究經歷了從定性到定量,從對數(shù)據(jù)的簡單統(tǒng)計到經濟計量,發(fā)展到現(xiàn)在基于大數(shù)據(jù)背景下的對歷史數(shù)據(jù)的學習算法[4-8]。當前的經典計量經濟學方法如ARIMA、Garch和VAR大多直接選取產品市場數(shù)據(jù)為研究對象,可以合理地在特征提取方面對數(shù)據(jù)進行降維和轉換等操作,但是不能有效地將產業(yè)聯(lián)動效應下多產品價格之間的潛在關聯(lián)因素考慮在內,更不能針對產業(yè)鏈整體價格走勢作出判斷。并且這些方法在非線性時間序列預測準確性和時序信息利用方面也存在一定的不足。
近年來,一些學者將神經網(wǎng)絡等算法應用于圖結構數(shù)據(jù)的分析。Yu等[9]將卷積神經網(wǎng)絡和遞歸神經網(wǎng)絡引入對交通流的預測中,結果表明該算法具有更高的準確率。Tai等[10]針對自然語言表現(xiàn)出將單詞自然地組合成短語的句法特性,提出不同于鏈結構(chain-structured)LSTM的tree-LSTM,將其運用于語句間的語義關聯(lián)程度和語句情感分類的預測,通過與LSTM預測結果對比,表明tree-LSTM的準確率更高。Zitnik等[11]將不同的藥作為節(jié)點,藥與藥之間的影響為邊構建出藥物間互相作用的網(wǎng)絡結構圖,引入卷積神經網(wǎng)絡預測多藥的副作用。實驗結果表明該模型能夠自動學習多藥副作用的表征,對多藥副作用的預測準確率達到了目前最高的69%。Battaglia等[12]針對近年來針對圖結構數(shù)據(jù)的運算模型提出了一個基于實體和關系推理的算法框架-圖網(wǎng)絡(Graph Network,GN)框架。該模型[12-15]對非線性序列預測的準確率更高,不僅可以網(wǎng)絡中全部節(jié)點屬性,還可以對節(jié)點之間的關系進行推理,對圖的全局運作規(guī)律進行挖掘。
因此,本文考慮產業(yè)鏈上下游產品間價格存在的聯(lián)動效應出發(fā),以聚丙烯產業(yè)鏈產品為網(wǎng)絡節(jié)點,產品間的生產依賴關系為網(wǎng)絡中的連邊,聚丙烯產業(yè)鏈產品網(wǎng)絡抽象為有向無權圖G(V,E)。利用圖深度學習算法對非線性時間序列良好的擬合預測能力開展預測研究。此外,將模型預測結果與傳統(tǒng)的機器學習方法進行分析對比,檢驗本文模型的有效性。
圖深度學習算法是針對非線性時間序列數(shù)據(jù)設計的一種機器學習算法。圖結構數(shù)據(jù)模型如圖1所示。在圖數(shù)據(jù)結構中,實體表示成節(jié)點,而節(jié)點之間的關系被表示成邊,系統(tǒng)層面的特征用全局屬性表示。
圖1 圖結構數(shù)據(jù)模型
圖網(wǎng)絡結構的主要計算單元是GN模塊,以圖為輸入,在GN模塊內執(zhí)行計算,并返回一個圖作為輸出。vi表示節(jié)點,ek表示節(jié)點之間相連的邊,u表示全局屬性。sk和rk分別表示邊ek的發(fā)送節(jié)點和接收節(jié)點。
完整的圖網(wǎng)絡模塊的內部結構包含三個更新函數(shù)φ1、φ2、φ3,以及三個聚合函數(shù)ρ1、ρ2、ρ3:
(1)
(2)
(3)
(4)
(5)
(6)
整個算法過程如下:(1) 利用當前的邊信息E、節(jié)點信息V、全局信息U來生成新的邊的信息;(2) 利用新的邊信息,生成新的節(jié)點信息;(3) 利用新的節(jié)點和邊信息,生成新的全局信息U,即完成整個更新過程。
GN模塊關鍵的設計原則是:第一,多個實體和實體間的復雜關系可以靈活地表征;第二,模塊內部結構可根據(jù)需要配置;第三,可組合的多模塊框架,節(jié)點、邊、全局屬性的狀態(tài)更新所需信息、更新順序及更新函數(shù)和聚合函數(shù)的選用均根據(jù)實際情況進行設計[12]。
大宗商品包括能源商品、基礎原材料和農副產品三個類別。傳統(tǒng)的農副產品和基礎原材料并不能依據(jù)生產依賴關系建立起完備的生產關系網(wǎng)絡。
數(shù)量眾多的大宗化工產品之間存在直接或間接的生產關系,構成了一個完備的圖結構。鑒于此本文以產業(yè)鏈內產品為網(wǎng)絡節(jié)點,產品間的生產依賴關系為網(wǎng)絡中的連邊,將整個化工產品網(wǎng)絡抽象為有向無權圖G(V,E)。其中V={v1,v2,…}中的每一個節(jié)點代表了一種化工產品,E={eij∈E|eij
圖2 聚丙烯產業(yè)鏈網(wǎng)絡結構圖
圖3 價格預測模型GN模塊
2.2.1輸入層
輸入層負責對節(jié)點輸入的節(jié)點屬性、邊屬性、全局屬性進行相應的處理,滿足網(wǎng)絡輸入的要求。根據(jù)聚丙烯產業(yè)鏈中各產品市場特征,獲得不同節(jié)點的現(xiàn)貨價格(sp)、期貨價格(fp)、產量(op)等作為節(jié)點屬性。全局屬性選取中國大宗商品指數(shù)(CCPI)、生產價格指數(shù)(PPI)作為對產業(yè)鏈產品所處市場宏觀環(huán)境變化情況[16];此外,根據(jù)文獻[17],本文選取產品網(wǎng)絡結構熵(se)作為邊屬性,計算公式如下:
(7)
式中:p(i)為節(jié)點i的度概率分布。節(jié)點度是指和該節(jié)點相連的邊的條數(shù),網(wǎng)絡結構熵衡量的是網(wǎng)絡中某一節(jié)點的節(jié)點度的網(wǎng)絡節(jié)點度分布中的重要性[17]。
2.2.2更新計算
步驟1在wind數(shù)據(jù)庫中選取各產品數(shù)據(jù),并按照節(jié)點屬性、邊屬性、全局屬性對數(shù)據(jù)進行分類,結合LSTM對輸入數(shù)據(jù)的要求,對數(shù)據(jù)進行歸一化處理。
步驟5訓練完成后,將測試數(shù)據(jù)作為輸入,輸出值即為現(xiàn)貨價格的預測值。
N表示節(jié)點的個數(shù),更新函數(shù)LSTM1、LSTM2、LSTM3均在Keras框架下進行實現(xiàn),分別進行單獨訓練,均選取MAE作為訓練目標函數(shù),Adam作為優(yōu)化函數(shù)。
2.2.3輸出層
將歸一化數(shù)據(jù)還原到原始尺度,t+1時刻產品預測價格為:
(8)
根據(jù)聚丙烯產業(yè)鏈中各產品市場特征的不同,從wind數(shù)據(jù)庫中獲得2014年1月—2018年12月的不同節(jié)點的節(jié)點屬性、邊屬性、全局屬性的月度數(shù)據(jù),如表1所示。選取2014年1月—2018年3月的51個月的統(tǒng)計數(shù)據(jù)作為訓練集;2018年4月—11月的產品價格作為測試集。
表1 t時刻輸入數(shù)據(jù)
續(xù)表1
采用min-max歸一化對原始數(shù)據(jù)處理,消除量綱差異。對原始數(shù)據(jù)的線性變換,使結果落到[0,1]區(qū)間。轉換公式如下:
(9)
式中:xmax表示樣本數(shù)據(jù)屬性中的最大值;xmin表示樣本數(shù)據(jù)屬性中的最小值;x為屬性原始數(shù)據(jù);X為歸一化后的數(shù)據(jù)。
LSTM的網(wǎng)絡結構和參數(shù)設置決定著模型最終的預測性能。經過調優(yōu)最終確定的三組實驗內LSTM的參數(shù)如表2所示。
表2 各實驗LSTM參數(shù)設定
本文選取平均絕對誤差(MAE)、均方根誤差(RMSE)和平均絕對百分比誤差(MAPE)作為評價指標對模型預測結果進行定量評價。MAE、RMSE、MAPE的數(shù)值越小,表明模型預測結果與真實值偏差越小,結果越準確[18]。具體公式定義如下:
(10)
(11)
(12)
為了驗證該模型的預測性能,設置兩組對照實驗:第一組是單變量LSTM價格預測,輸入為產品現(xiàn)貨價格,更新函數(shù)為LSTM,輸出為產品現(xiàn)貨價格預測值;第二組是多變量LSTM價格預測,輸入為產品的多個屬性值,更新函數(shù)為LSTM,輸出為產品現(xiàn)貨價格預測值。
相關模型的預測結果如圖4所示。
(a) 聚丙烯預測值比較
(b) 原油預測值比較
注:1英熱=1 055.055 85焦耳
(d) 煤炭預測值比較
(e) 甲醇預測值比較
注:1加侖≈3.785升。
(g) 丙烯預測值比較
(h) bopp預測值比較
(i) cpp預測值比較
(j) PP注塑預測值比較圖4 聚丙烯產業(yè)鏈各產品預測結果比較
由圖4(a)-圖(c)的對聚丙烯、原油、天然氣現(xiàn)貨價格的預測可見,圖深度學習模型預測值在整體走勢與真實值較為符合,但在真實值曲線波動劇烈處,預測準確度表現(xiàn)較差。在產業(yè)鏈價格波動單向傳導的情況下,對產業(yè)鏈上游價格進行預測時,圖深度學習預測模型無法獲得更多的市場信息,因此無法對產品價格的波動進行有效的預測。觀察中下游產品價格預測值可知,在對甲醇、丙烯的預測中,圖深度學習模型的預測結果在8個月的時間段上非常接近真實值,對產品丙烯、cpp、PP注塑的預測表現(xiàn)優(yōu)越,可見當充分掌握產業(yè)鏈上游產品信息,產品價格穩(wěn)定時,圖網(wǎng)絡模型的預測更加精確。在對bopp的預測中,由于缺少產品自身市場信息,當產品價格發(fā)生波動時,圖深度學習預測模型預測數(shù)值偏差較大。
根據(jù)表3所示的評價結果,在對產業(yè)鏈上原油、甲醇、丙烯、PP注塑產品的預測中,預測誤差在MAE、RMSE、MAPE評價標準下均優(yōu)于其他兩種預測模型。在MAE評價標準下,圖深度學習模型對天然氣、cpp產品價格的預測表現(xiàn)稍差于其他預測模型,對產業(yè)鏈上其他產品的預測均優(yōu)于其他預測模型。在RMSE評價標準下,單變量LSTM預測模型僅對bopp產品價格預測具有微弱優(yōu)勢;對產業(yè)鏈上其他產品的價格預測,圖網(wǎng)絡價格預測模型均表現(xiàn)優(yōu)越,表明了深度學習模型在獲取足夠的市場信息的情況下,能夠準確預測因市場環(huán)境變化帶來的價格的異常變化。在MAPE評價標準下,對聚丙烯及上游產品天然氣、煤炭、丙烷的預測中,圖網(wǎng)絡模型表現(xiàn)出微弱的劣勢,而對下游產品丙烯、cpp、PP注塑其預測效果顯著。
表3 各預測模型評價指標比較
由此可見,對于產業(yè)鏈上大宗商品的價格預測,在整體表現(xiàn)上,基于圖深度學習的價格預測模型表現(xiàn)更好、預測精度更高。
本文針對大宗商品價格預測問題,在考慮大宗商品價格波動的非線性和上下游聯(lián)動的基礎上,在一般的單變量LSTM和多變量LSTM價格預測模型上加入了產品的邊屬性及全局屬性,提出了基于圖深度學習的價格預測模型。使用wind數(shù)據(jù)庫中的產品數(shù)據(jù)進行實驗,結果表明從產業(yè)鏈全局視角出發(fā),建立產品價格關系圖基于圖深度學習的價格預測模型對產業(yè)鏈上的多種產品價格預測具有更高的準確度。
下一步工作一方面將在產業(yè)鏈上游價格波動向下游單向傳導的基礎上,考慮價格波動的雙向傳導,設計實驗;另一方面,由于化工行業(yè)主要產品種類繁多,完整的產品網(wǎng)絡體系結構龐大,現(xiàn)階段尚未獲取更多的產品數(shù)據(jù),因此將在實驗中加入產業(yè)鏈上產品的其他屬性,完善圖網(wǎng)絡結構,進一步擴大實驗的數(shù)據(jù)規(guī)模,達到更好的訓練效果。