郭洪鵬,劉 斌,肖 堯
(蘭州交通大學(xué) 交通運(yùn)輸學(xué)院,甘肅 蘭州 730070)
鐵路貨運(yùn)量預(yù)測(cè)是鐵路運(yùn)輸企業(yè)合理規(guī)劃運(yùn)輸資源、提高運(yùn)輸效率的重要手段。目前針對(duì)鐵路貨運(yùn)量預(yù)測(cè)的研究主要是以年為單位的長期預(yù)測(cè),采用的預(yù)測(cè)方法有多元回歸預(yù)測(cè)、灰色馬爾科夫模型、反向傳播(Back-Propagation,BP)神經(jīng)網(wǎng)絡(luò)等[1-5],以年為時(shí)間粒度所得結(jié)果預(yù)測(cè)精度有限,無法作為鐵路日常工作計(jì)劃的主要編制依據(jù),而短期貨運(yùn)量(日、月貨運(yùn)量)預(yù)測(cè)的結(jié)果更有助于日常工作計(jì)劃的編制。為了實(shí)現(xiàn)鐵路貨運(yùn)物流化高質(zhì)量發(fā)展,鐵路運(yùn)輸企業(yè)需掌握短期精確的貨運(yùn)量預(yù)測(cè)方法,如自動(dòng)回歸模型、基于季節(jié)分解的時(shí)間序列模型[6-9],以及深度學(xué)習(xí)(Deep Learning)等[10-13]。湯銀英等[7]通過Holt-Winters乘法模型預(yù)測(cè)貨運(yùn)量,經(jīng)實(shí)例驗(yàn)證,所得的結(jié)果高于灰色預(yù)測(cè)、回歸預(yù)測(cè)等傳統(tǒng)預(yù)測(cè)模型。譚雪等[10]通過研究結(jié)構(gòu)簡單且具有高效記憶功能的門控循環(huán)單元(Gated Recurrent Unit,GRU)深度網(wǎng)絡(luò),分別建立單步和多步預(yù)測(cè)模型進(jìn)行短期貨運(yùn)量預(yù)測(cè),然后將預(yù)測(cè)結(jié)果與支持向量機(jī)回歸、BP神經(jīng)網(wǎng)絡(luò)和長短時(shí)記憶網(wǎng)絡(luò)(Long Short-Term Memory,LSTM)等模型的預(yù)測(cè)結(jié)果在準(zhǔn)確率和均方根誤差指標(biāo)方面比較,證明GRU深度網(wǎng)絡(luò)的優(yōu)異性。
短期貨運(yùn)量具有高度非線性、不確定性和序列依賴性的特征,而深度神經(jīng)網(wǎng)絡(luò)對(duì)時(shí)序數(shù)據(jù)有強(qiáng)大的學(xué)習(xí)能力,能較好擬合短期貨運(yùn)量的非線性特性。研究將雙向長短時(shí)記憶網(wǎng)絡(luò)(Bi-directional Long Short-Term Memory,Bi-LSTM)引入鐵路短期貨運(yùn)量預(yù)測(cè)中[11],因其具備前向計(jì)算和后向計(jì)算能力,雙向LSTM的輸出層不僅依賴之前的輸入,還會(huì)依賴后面的數(shù)據(jù),這樣可以增加信息的交流與維持,使數(shù)據(jù)的利用更為充分。通過實(shí)際數(shù)據(jù)驗(yàn)證并與傳統(tǒng)預(yù)測(cè)模型的預(yù)測(cè)結(jié)果進(jìn)行比較,驗(yàn)證Bi-LSTM網(wǎng)絡(luò)的預(yù)測(cè)性能和泛化性能。
LSTM網(wǎng)絡(luò)是循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)的變體,改善了RNN存在的無法解決長期依賴的問題。LSTM單元結(jié)構(gòu)如圖1所示。其中,ct,ht分別表示模型的記憶狀態(tài)和隱層狀態(tài),xt,yt分別表示模型的輸入與輸出,σ表示sigmoid激活函數(shù)。LSTM的單元內(nèi)存在4個(gè)不同的全連接層,全連接層的每一個(gè)結(jié)點(diǎn)都與上一層的所有結(jié)點(diǎn)相連,其主要用途是把模型提取到的特征綜合起來。主層是圖中輸出為c~t的層,其基本作用是分析當(dāng)前輸入xt和前一個(gè)隱狀態(tài)ht-1。其他3個(gè)層是門限控制器,分別是:由ft控制的忘記門限,控制著哪些記憶狀態(tài)應(yīng)被丟棄;由it控制的輸入門限,控制著c~t的哪些部分會(huì)被加入到記憶狀態(tài);由ot控制的輸出門限,控制著哪些記憶狀態(tài)應(yīng)在這個(gè)時(shí)間迭代被讀取和輸出。隨著記憶狀態(tài)ct-1從左到右貫穿網(wǎng)絡(luò),它首先經(jīng)過一個(gè)忘記門限丟棄一些記憶,然后通過輸入門限選擇添加一些新的記憶。因此,在每個(gè)時(shí)間迭代中,一些記憶被丟棄,同時(shí)一些記憶被增加。另外,經(jīng)過額外操作,記憶狀態(tài)被復(fù)制并傳入tanh函數(shù),然后其結(jié)果被輸出門限過濾,從而產(chǎn)生新的隱狀態(tài)ht。LSTM就是在這樣的循環(huán)之下,學(xué)習(xí)哪些記憶需要儲(chǔ)存,哪些記憶需要丟棄,以及從哪些記憶中去讀取,從而結(jié)合輸入變量去預(yù)測(cè)輸出變量。
圖1 LSTM單元結(jié)構(gòu)Fig.1 LSTM cell structure
式中:tanh表示雙曲正切激活函數(shù);Wxc,Wxf,Wxi,Wxo表示每一層連接到輸入向量xt的權(quán)重矩陣;Whc,Whf,Whi,Who表示每一層連接到前一個(gè)隱狀態(tài)ht-1的權(quán)重矩陣;bc,bf,bi,bo表示每一層的偏置項(xiàng)。
單向LSTM網(wǎng)絡(luò)在信息推測(cè)時(shí)采用的原理是由前向后推測(cè)信息,在單向LSTM網(wǎng)絡(luò)基礎(chǔ)之上,提出同時(shí)考慮前期信息和后期信息的雙向長短時(shí)記憶網(wǎng)絡(luò)——Bi-LSTM網(wǎng)絡(luò),可以有效保證時(shí)間序列預(yù)測(cè)所得結(jié)果的精確性[14]。
Bi-LSTM網(wǎng)絡(luò)的計(jì)算方式分為前向計(jì)算和后向計(jì)算,水平軸表示時(shí)間序列的雙方向流動(dòng),豎直軸表示信息從輸入層到隱藏層和從隱藏層到輸出層的單方向流動(dòng)。Bi-LSTM網(wǎng)絡(luò)結(jié)構(gòu)圖如圖2所示。
圖2 Bi-LSTM網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.2 Diagram of Bi-LSTM network structure
另外,為了控制神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)過程中出現(xiàn)的過擬合現(xiàn)象,引入Dropout方法以改善模型的適用性。該方法通過使部分神經(jīng)元隨機(jī)失去活性,保證所有訓(xùn)練都具有不同的弱分類器的性質(zhì),從而使得模型的泛化能力有所保證。
1.2.1 預(yù)測(cè)流程
Bi-LSTM模型預(yù)測(cè)時(shí),假設(shè)一個(gè)樣板數(shù)據(jù)時(shí)間窗步長為3,則其輸入為xt-1,xt,xt+1。對(duì)于2個(gè)分離的LSTM單元,其前向計(jì)算樣本按照xt-1,xt,xt+1輸入,得到第一組輸出狀態(tài)為其后向計(jì)算樣本按xt+1,xt,xt-1輸入,得到另一組輸出狀網(wǎng)絡(luò)計(jì)算流程圖如圖3所示。
圖3 Bi-LSTM 網(wǎng)絡(luò)計(jì)算流程圖Fig.3 Flowchart of Bi-LSTM network calculation
由于得到的2組狀態(tài)輸出每個(gè)元素的特征維度是相同的,將前向計(jì)算和后項(xiàng)計(jì)算所得的結(jié)果進(jìn)行拼接進(jìn)而對(duì)于每個(gè)輸入的xt,都可以得到維度為2的輸出向量Yt=
1.2.2 評(píng)估指標(biāo)
為評(píng)價(jià)模型預(yù)測(cè)結(jié)果的精確度以及與其他算法的預(yù)測(cè)結(jié)果進(jìn)行比較,采用均方根誤差RMSE、平均絕對(duì)值誤差MAE和平均絕對(duì)百分比誤差MAPE 3種評(píng)價(jià)指標(biāo)作為模型預(yù)測(cè)精確度的評(píng)估指標(biāo)以及與其他模型比較的標(biāo)準(zhǔn),RMSE,MAE和MAPE計(jì)算公式如下。態(tài)為
式中:ARMSE表示均方根誤差;AMAE表示平均絕對(duì)值誤差;AMAPE表示平均s絕對(duì)百分比誤差;m表示預(yù)測(cè)結(jié)果個(gè)數(shù);Y^
i表示真實(shí)值;Yi表示預(yù)測(cè)值。
以某鐵路局集團(tuán)公司為例,對(duì)鐵路短期貨運(yùn)量進(jìn)行預(yù)測(cè)。研究數(shù)據(jù)來源于2010年1月1日—2021年4月14日共4 122 d、136個(gè)月的貨物發(fā)送量,某鐵路局集團(tuán)公司裝車數(shù)如圖4所示。鐵路裝車數(shù)是指在一定時(shí)期內(nèi)鐵路營業(yè)線和臨時(shí)營業(yè)線上的車站承運(yùn),并填制貨票以運(yùn)輸車運(yùn)送的發(fā)送貨物裝車完了的車數(shù),或者是計(jì)劃期間發(fā)送貨物所需要的車數(shù)。由于裝車數(shù)指標(biāo)在日常掌握中比貨物發(fā)送噸數(shù)指標(biāo)簡便明確,所以在考核下達(dá)各級(jí)運(yùn)輸單位運(yùn)輸計(jì)劃執(zhí)行情況時(shí),經(jīng)常使用裝車數(shù)作為指標(biāo),以便各單位組織車流和貨流計(jì)劃,因而研究采用日、月裝車數(shù)作為實(shí)驗(yàn)數(shù)據(jù)。其中,日裝車數(shù)在8 000車上下浮動(dòng),月裝車數(shù)在200 000車上下浮動(dòng)。由圖4可以看出,某鐵路局集團(tuán)公司近年來貨運(yùn)量走勢(shì)基本趨于平穩(wěn),受國家經(jīng)濟(jì)轉(zhuǎn)型、鐵路貨運(yùn)組織改革等宏觀經(jīng)濟(jì)環(huán)境變化的影響,2013—2015年出現(xiàn)下降,在2017年開始逐漸回暖,貨運(yùn)量整體呈上升趨勢(shì)。
機(jī)器學(xué)習(xí)中普遍的做法是將樣本按7 : 3的比例從同一個(gè)樣本集中隨機(jī)劃分出訓(xùn)練集和測(cè)試集。因此,將月貨運(yùn)量數(shù)據(jù)集分為訓(xùn)練集(2010年1月—2018年12月)和測(cè)試集(2019年1月—2021年3月),日貨運(yùn)量數(shù)據(jù)集分為訓(xùn)練集(2010年1月1日—2018年12月31日)和測(cè)試集(2019年1月1日—2021年4月14日)。訓(xùn)練集和預(yù)測(cè)集數(shù)據(jù)分集如表1所示。
表1 訓(xùn)練集和預(yù)測(cè)集數(shù)據(jù)分集Tab.1 Training set and data subset of prediction set
(1)參數(shù)設(shè)置。選擇使用adam作為模型參數(shù)優(yōu)化器,選擇mse作為損失函數(shù),并對(duì)模型中的其他超參數(shù)進(jìn)行設(shè)置。超參數(shù)設(shè)置如表2所示。
表2 超參數(shù)設(shè)置Tab.2 Superparameter setting
(2)實(shí)驗(yàn)結(jié)果。貨運(yùn)量預(yù)測(cè)結(jié)果如圖5所示,Bi-LSTM網(wǎng)絡(luò)測(cè)試集評(píng)估指標(biāo)如表3所示。由表3可知,基于日貨運(yùn)量數(shù)據(jù)的Bi-LSTM網(wǎng)絡(luò)貨運(yùn)量預(yù)測(cè)結(jié)果的MAE為471,MAPE為5.30%,RMSE為616?;谠仑涍\(yùn)量數(shù)據(jù)的Bi-LSTM網(wǎng)絡(luò)貨運(yùn)量預(yù)測(cè)結(jié)果的MAE為18 364,MAPE為6.92%,RMSE為20 129。一般認(rèn)為MAPE在10%以內(nèi)預(yù)測(cè)結(jié)果有效,2組數(shù)據(jù)的預(yù)測(cè)結(jié)果均較為精確,表明Bi-LSTM網(wǎng)絡(luò)具有較為可觀的泛化能力。
表3 Bi-LSTM網(wǎng)絡(luò)測(cè)試集評(píng)估指標(biāo)Tab.3 Evaluation indexes of Bi-LSTM network test set
圖5 貨運(yùn)量預(yù)測(cè)結(jié)果Fig.5 Freight volume prediction
(1)隨機(jī)森林(Random Forest,RF)。作為bagging法中的特殊情況,隨機(jī)森林將決策樹用作bagging中的模型,以保證更準(zhǔn)確地找到最優(yōu)解。主要原理如下:①用bootstrap法生成m個(gè)訓(xùn)練集。②針對(duì)所有的訓(xùn)練集,構(gòu)造對(duì)應(yīng)每一個(gè)訓(xùn)練集的決策樹。在節(jié)點(diǎn)搜索特征進(jìn)行分裂時(shí),并不是對(duì)所有特征進(jìn)行搜索而使得指標(biāo)最大,而是在特征中隨機(jī)抽取一部分特征,在抽到的特征中找到最優(yōu)解,應(yīng)用于節(jié)點(diǎn),進(jìn)行分裂。正是因?yàn)閎agging的存在,隨機(jī)森林法實(shí)際上相當(dāng)于對(duì)所有樣本和每一個(gè)特征都進(jìn)行采樣,以此實(shí)現(xiàn)避免過擬合的目的。
(2)支持向量機(jī)(Support Vector Machines,SVM)。作為二分類模型中的一種特殊類型,SVM使結(jié)構(gòu)的復(fù)雜性得到有效的降低,保證在解決樣本數(shù)量少、線性、非線性及高維模式識(shí)別中呈現(xiàn)出諸多獨(dú)有的優(yōu)勢(shì)[15]。這一特點(diǎn)還能在函數(shù)擬合等各類機(jī)器學(xué)習(xí)問題中得到推廣和應(yīng)用。由于SVM以統(tǒng)計(jì)學(xué)習(xí)理論中的VC理論和結(jié)構(gòu)風(fēng)險(xiǎn)最小原理為建立依據(jù),因而在泛化能力上有明顯的提高。通過對(duì)數(shù)據(jù)維度的提升,以保證做回歸時(shí)可以實(shí)現(xiàn)高維空間構(gòu)造線性函數(shù)并實(shí)現(xiàn)線性回歸。
(3)極端梯度提升(eXtreme Gradient Boosting,XGBoost)。由 于XGBoost具有顯著的預(yù)測(cè)精確度而得到廣泛的應(yīng)用。XGBoost的本質(zhì)是梯度增強(qiáng)決策樹(Gradient Boosting Decision Tree,GBDT)算法的改進(jìn)。因此,XGBoost既可以用于分類也可以用于回歸問題中,具有計(jì)算速度快、模型表現(xiàn)好的特點(diǎn)。
(4)LSTM網(wǎng)絡(luò)。在以往的時(shí)間序列預(yù)測(cè)中,RNN已經(jīng)得到廣泛的運(yùn)用,但數(shù)據(jù)隨著時(shí)間序列的不斷增加,梯度爆炸和消失的問題也隨之而來。LSTM網(wǎng)絡(luò)就是為解決梯度爆炸和消失這一弊端專門設(shè)計(jì)的一種特殊類型的RNN。
為驗(yàn)證Bi-LSTM網(wǎng)絡(luò)預(yù)測(cè)結(jié)果的精確度,同樣采用Bi-LSTM網(wǎng)絡(luò)的數(shù)據(jù)分集和參數(shù)設(shè)置,分別使用RF,SVM,XGBoost和LSTM 4種機(jī)器學(xué)習(xí)算法對(duì)日裝車數(shù)及月裝車數(shù)進(jìn)行預(yù)測(cè)。
(1)預(yù)測(cè)結(jié)果評(píng)估指標(biāo)比較。5種模型預(yù)測(cè)結(jié)果評(píng)估指標(biāo)比較如表4所示。通過分析比較表4中的數(shù)據(jù)可知,Bi-LSTM網(wǎng)絡(luò)的日、月貨運(yùn)量預(yù)測(cè)結(jié)果,較RF而言在日貨運(yùn)量預(yù)測(cè)結(jié)果MAPE低1.34%、月貨運(yùn)量預(yù)測(cè)結(jié)果MAPE低2.93%,較SVM而言在日貨運(yùn)量預(yù)測(cè)結(jié)果MAPE低4.6%、月貨運(yùn)量預(yù)測(cè)結(jié)果MAPE低4.89%,其RMSE有較為明顯的降低,說明Bi-LSTM網(wǎng)絡(luò)預(yù)測(cè)性具有較為明顯的優(yōu)勢(shì)。與XGBoost模型相比,在日貨運(yùn)量預(yù)測(cè)上,平均絕對(duì)百分比誤差比較接近,但在月貨運(yùn)量預(yù)測(cè)上Bi-LSTM網(wǎng)絡(luò)誤差更低。與LSTM網(wǎng)絡(luò)相比,兩者預(yù)測(cè)誤差較為接近,但Bi-LSTM網(wǎng)絡(luò)采用雙向計(jì)算的原理,同時(shí)考慮前后期信息,使得預(yù)測(cè)結(jié)果更為精確。
表4 5種模型預(yù)測(cè)結(jié)果評(píng)估指標(biāo)比較Tab.4 Comparison of evaluation indexes of prediction by five models
(2)月貨運(yùn)量預(yù)測(cè)比較。5種模型月貨運(yùn)量預(yù)測(cè)比較如圖6所示。從圖6可以看出Bi-LSTM網(wǎng)絡(luò)和LSTM網(wǎng)絡(luò)在趨勢(shì)上與實(shí)際月貨運(yùn)量最為接近,但Bi-LSTM網(wǎng)絡(luò)在2020年5月開始具有和實(shí)際貨運(yùn)量相同的上升趨勢(shì),說明Bi-LSTM網(wǎng)絡(luò)具有更高的預(yù)測(cè)精度,模型在泛化能力上具有更好的表現(xiàn)。
圖6 5種模型月貨運(yùn)量預(yù)測(cè)比較Fig.6 Comparison of monthly freight volume prediction by five models
(3)日貨運(yùn)量預(yù)測(cè)比較。以實(shí)際日貨運(yùn)量為橫坐標(biāo)、預(yù)測(cè)值為縱坐標(biāo)建立5種模型日貨運(yùn)量預(yù)測(cè)效果散點(diǎn)圖,5種模型日貨運(yùn)量預(yù)測(cè)效果如圖7所示。通過觀察斜率和散點(diǎn)密集度可以發(fā)現(xiàn),Bi-LSTM網(wǎng)絡(luò)的預(yù)測(cè)結(jié)果斜率更接近1且更密集,說明Bi-LSTM網(wǎng)絡(luò)的預(yù)測(cè)結(jié)果精確度更高。
圖7 5種模型日貨運(yùn)量預(yù)測(cè)效果Fig.7 Daily freight volume prediction by five models
短期貨運(yùn)量預(yù)測(cè)研究是鐵路運(yùn)輸企業(yè)編制日常工作計(jì)劃的重要依據(jù),準(zhǔn)確的貨運(yùn)量預(yù)測(cè)結(jié)果對(duì)鐵路貨運(yùn)組織工作具有積極意義。研究結(jié)合實(shí)際情況,建立基于Bi-LSTM網(wǎng)絡(luò)的鐵路短期貨運(yùn)量預(yù)測(cè)模型,并與RF,SVM,XGBoost和LSTM 4種模型進(jìn)行比較,驗(yàn)證Bi-LSTM網(wǎng)絡(luò)的預(yù)測(cè)精確度和泛化能力均高于其他4種模型,為鐵路短期貨運(yùn)量預(yù)測(cè)提供一種新的思路。在接下來的研究中,還可以改進(jìn)Bi-LSTM模型,以進(jìn)一步提高模型的預(yù)測(cè)精度。