劉 銘, 魚 昕
(長春工業大學 數學與統計學院, 長春 130012)
及時準確的短時交通預測是智能交通系統中交通誘導、 事故檢測、 交通分配的前提, 常見的短時交通流量預測方法可以簡略分為以下3種: ①基于線性模型的方法。線性模型主要包括: 歷史平均模型(historical average, HA)、 卡爾曼濾波模型(Kalman filtering, KF)及求和自回歸滑動平均模型(autoreg ressive integrated moving average, ARIMA)。如Emami等將卡爾曼濾波模型應用到短時交通流量預測中[1], Kumar等使用季節性ARIMA模型進行交通流量預測[2], 并且取得了不錯的預測結果。但從總體的預測結果來分析, 這類預測方法的大多數理論基礎都是線性估計模型, 抗外界干擾能力差, 當交通流變化的隨機性和非線性增強后, 模型的預測性能逐漸變差, 并且上述線性模型大多只考慮了交通流本身的規律, 沒有考慮其他的因素(例如天氣因素)。②基于非線性模型方法。非線性模型主要包括: 非參數回歸預測模型、 神經網絡預測模型以及支持向量回歸預測模型等。如Carl等使用人工神經網絡對短時交通流量進行了預測[3], Clark使用非線性回歸模型預測短時交通流量[4], 歐陽俊等提出基于多核混合支持向量機(support vector machine, SVM)的預測方法[5]。從預測效果來看, 基于短時交通流非線性的特點, 相比線性方法, 非線性方法理論上更加適用, 它不需要線性方法的模型辨識和參數估計過程, 而是通過對歷史數據進行學習推演。但是這種方法也有弊端, 一是由于只是根據歷史數據訓練, 從數據本身尋找演化規律, 沒有涉及交通流的機理; 二是為了能夠保證學習的效果和預測精度, 必須有大量的數據作支撐, 數據量越大運算量也越大, 并且這類方法數學計算較為困難。③基于混合模型方法。混合模型算法是指將兩種或者兩種以上的模型組合應用于短時交通流量的預測, 是目前國內外最流行的短時交通流量預測方法。如林靜等將小波分析和貝葉斯估計組合對鐵路貨運量進行了預測[6], 提高了模型的精度;Ma等將SVM和循環神經網絡(recurrent neural network, RNN)相結合進行交通流預測[7]; 杜金彪將K近鄰算法 (Knearest neighbor, KNN)和徑向基網絡(radial basis function, RBF)相結合應用于短時交通流量的預測[8], 都取得了不錯的預測效果。雖然混合模型可以將幾種模型的優勢互補, 相比于單一的預測模型擁有更高的預測精度, 但也增加了預測的計算量和復雜度。
近年來, 隨著深度學習的發展, 其已被廣泛應用于短時交通流量的預測中。如Koesdwiady等使用深度神經網絡(deep neural network, DBN)算法研究了天氣因素對于交通流的影響[9], 并以美國實際數據證明了算法的有效性。Zhao等使用單一的LSTM模型對15、 30、 45和60 min后的交通流量進行了預測, 雖然整體效果均優于傳統模型, 但在15和30 min后的交通流量預測中精度的提升并不明顯, 沒有充分提取短時交通流量數據的時空特性[10]。Zhang等提出了一種基于CNN深度學習框架的短期交通流量預測模型[11], 通過卷積學習交通流量的特征, 從而建立預測模型, 并將預測結果與實際交通數據進行比較, 評估了該方法的有效性。
交通流具有不確定性、 周期性、 相關性、 非線性等基本的特征, 這決定了短時交通流預測不是單一的模型或者方法所能夠解決或者完成的。上述模型都有自己的優缺點以及使用范圍和條件, 因此混合方法在短時交通流預測中更具有優勢。為了充分提高短時交通流量預測的準確率, 本文提出了一種基于改進LSTM的短時交通流量預測模型。
Hochreiter等首次提出了LSTM算法[12], 它是遞歸神經網絡的一種, 目前已被廣泛應用到機器控制、 文本識別、 語音識別等領域。LSTM同其他神經網絡一樣, 也有相似的鏈式結構, 如圖1所示。
其中,xt代表t時刻的輸入,ht代表t時刻的隱藏層的狀態,ot代表t時刻的輸出,yt代表樣本t時刻給出的實際值,lt代表t時刻的損失函數,W代表隱藏層上一個狀態到下一個狀態的權重,U代表輸入層到隱藏層的權重。可知, 隨著序列推進,“損失”也不斷累積。除上述特點之外, LSTM中神經元之間權值共享, 即圖1中的W、U是完全相同的。每個神經元都只與其本身的路線建立權連接, 不會與別的神經元連接, 與其他神經網絡的不同之處在于, 它以圖2這種特殊的重復結構進行神經元之間的交互。

圖1 LSTM遞歸神經網絡鏈式結構圖

圖2 重復模塊結構圖
通過3部分理解這種特殊方式。第1部分為過濾, 即在LSTM中以一定的概率過濾去除上一層的隱藏細胞狀態。
ft=σ(Wf1ht-1+Wf2xt+bf1),
(1)
其中:σ為sigmoid激活函數,Wf1、Wf2為權重矩陣,bf1為偏置矩陣。
第2部分是輸入部分, 整個輸入部分可分為兩個子部分it、gt。
it=σ(Wi1ht-1+Wi2xt+bi1);
(2)
gt=?(Wg1ht-1+Wg2xt+bg1)。
(3)
Ct=Ct-1ft+itgt,
(4)
其中,σ為sigmoid激活函數, ?為tanh激活函數,Wi1、Wi2、Wg1、Wg2為權重矩陣,Bi1、Wg1為偏置矩陣,Ct-1代表t-1時刻的細胞狀態。通過Ct更新細胞的狀態。
第3部分為輸出部分。先用sigmoid函數決定將要輸出的細胞內容, 再通過tanh函數更新細胞狀態, 兩者相乘, 從而實現只輸出想要輸出的部分。
Ot=σ(Wo1ht-1+Wo2xt+bo1),
(5)
ht=Ottanh(Ct),
(6)
其中,Wo1、Wo2為權重矩陣,bo1為偏置矩陣。

(7)
其實質是把n個采樣值相加, 求其平均值, 作為t時刻的值。
對于短時交通流量的預測, 影響因素較多, 例如: 道路交通管制、 車輛限行、 極端天氣、 能見度低、 其他突發狀況等, 交通流的變化極其復雜, 使得交通流的數據具有極強的噪聲。原有的LSTM模型在預測時受交通流數據的極強噪聲的干擾極強, 很難保證準確性。現對原有的LSTM模型進行改進, 提出一種MVF-LSTM模型, 其網絡結構圖如圖3所示。

圖3 MVF-LSTM模型網絡結構圖
MVF-LSTM模型在原始的LSTM模型的輸入層之前加了算術平均濾波層, 經過算術平均濾波處理后特征加入到原始LSTM模型的輸入層當中。即算術平均濾波是一個安插在LSTM輸入層之前的計算單元, 能夠過濾掉短時交通流量數據存在的噪聲, 從而減少噪聲數據對模型預測準確度的影響。則式(1)、 (2)、 (3)、 (5)變換為
(8)
(9)
(10)
(11)
采用前文提到的MVF-LSTM模型預測交通流的數量, 所設計的MVF-LSTM網絡結構包含算術濾波層、 輸入層、 隱藏層和輸出層各1個。其中隱藏層有9個神經單元結構。在訓練中每次給網絡中輸入50組數據, 每組的時間步長為6, 整個網絡的迭代次數設置為1 800。使用TensorFlow框架完成網絡的搭建。在優化網絡參數時, 選用動量梯度下降(Momentum)優化網絡的參數。
2.1.1 數據來源 采用美國明尼蘇達州的明尼阿波利斯和圣保羅之間94號州際公路西行每小時的交通量、 是否節假日、 天氣、 氣溫等信息數據,數據來源于UCI(University of California Irvine)數據庫(http: //archive.ics.uci.edu/ml/index.php)。 圖4所示為94號州際公路的概況。

圖4 94號州際公路的位置
2.1.2 預測結果性能評價性指標 為了對LSTM模型在交通流量預測中的性能進行評價, 本研究采用平均相對誤差MAPE和均等系數EC作為評價指標:
(12)
(13)

以明尼阿波利斯和明尼蘇達州圣保羅之間94號州際公路西行2016—2018年的每小時交通量為數據基礎進行仿真實驗。數據的時間間隔為1 h。現以仿真數據中的80%作為訓練集, 后20%數據作為測試集, 進行模型參數的尋優并進行交通流量的預測, 尋找最佳的參數。
為了驗證MVF-LSTM模型的優越性, 本文同時還采用了支持向量回歸(SVR)、 門控循環單元(GRU)神經網絡、 深度神經網絡(DBN)、 卷積神經網絡(CNN)、 長短期記憶網絡(LSTM)與本文的MVF-LSTM模型進行對比, 結果如圖5所示。

圖5 各種模型預測結果對比
SVR的預測結果和原始交通流量的誤差相對較大, 尤其在峰值點處, 預測趨勢會出現滯后的現象。GRU模型的預測結果雖然在預測的趨勢上和真實趨勢相吻合, 但在峰值和拐點處預測偏差較大。DBN模型和CNN模型雖然相較于SVR和GRU模型的預測結果稍好, 但在峰值處的預測也相對較差。從LSTM模型預測的結果來看, 雖然模型的泛化能力比較好, 但峰值預測的精度上存在一定的偏差。MVF-LSTM模型在原始LSTM模型的輸入層加入算術平均濾波后, 濾掉了交通干擾噪聲, 預測出的交通流量的趨勢和真實趨勢吻合度比較高, 在峰值處預測值和真實值也十分貼近。各模型的精度如表1所示。

表1 模型預測性能比較
可見, MVF-LSTM模型的MAPE值比SVR、 GRU、 DBN、 CNN和LSTM模型的都小, 表明MVF-LSTM模型的預測值最貼近真實值, 預測的準確度更好。本文改進后的新方法EC值增大, 說明增加了模型的穩定性, 減少了真實值和預測值的分散程度, 從而獲得了更好的預測效果。通過分析比較本文提出的MVF-LSTM模型在短時交通流量的預測中泛化能力更好, 相比于其他模型取得了較高的精度, 較原始的LSTM模型MAPE值提升了6%。
2.3.1 迭代次數對模型準確度的影響 由圖6可以看出, 在前1 000~1 500次迭代中,MAPE值迅速下降; 1 500~1 800次,MAPE值緩慢下降, 代表模型的準確率通過迭代次數的增加在緩慢上升; 直到1 800次以后,MAPE值隨訓練次數增加而增大, 模型的預測誤差再次上升。故選取1 800次作為本研究的模型迭代次數。

圖6 不同迭代次數對模型準確度的影響圖
2.3.2 時間步長對模型準確度的影響 從圖7可以看出,MAPE值隨著時間步長的增加呈現起伏的狀況, 當時間步長取6個時,MAPE值最小。

圖7 不同的時間步長對模型準確度的影響
3.3.3 隱藏層的神經元的個數對模型準確度的影響 如圖8所示, 隨著模型隱藏層神經元個數的上升,MAPE值出現了往復震蕩的狀況。 當隱藏層神經元的個數為9時,MAPE值達到最小, 所以最終MVF-LSTM模型的隱藏層神經元的個數設置為9。

圖8 不同隱藏層神經元的數量對模型準確率的影響
本文提出的MVF-LSTM算法是本文短時交通流量預測研究的核心算法。利用算術平均濾波去除交通流量數據中的干擾噪聲, 從而增加MVF-LSTM模型輸入層的維度, 然后放入MVF-LSTM模型的隱藏層進行模型的訓練, 通過模型去學習交通流量的特征, 從而學習到交通流量時間序列的本質特征, 并對交通流量進行了有效的預測。通過預測的評價指標, 與其他常用模型進行了分析比較, 驗證了本文提出的MVF-LSTM模型對交通流量的預測精度很高, 并且具有很好的泛化能力, 對短時交通流量數據的預測具備一定的參考價值。但本文算法仍存在一些不足: 該模型雖然去除了交通流數據中的部分噪聲, 但去噪效果的優劣主要取決于算術平均濾波層采樣值個數的準確選擇, 如何選取合適的采樣值個數, 有待今后進一步的研究。