王慶榮,田可可,朱昌鋒,魏怡萌
1.蘭州交通大學 電子與信息工程學院,蘭州 730070
2.蘭州交通大學 交通運輸學院,蘭州 730070
隨著社會經濟的發(fā)展及人們生活水平的日益提高,交通擁堵、環(huán)境污染和能源消耗等問題也隨之而來。實時、可靠的交通流預測可為出行人員提供道路擁堵狀況,以便其選擇合適的出行路線,從而減少出行延誤,最大限度地利用交通資源,提高城市交通的智能化水平[1-3]。
近年來國內外學者利用各學科領域的方法對短時交通流預測進行研究,傳統(tǒng)的短時交通流研究方法有卡爾曼濾波模型、歷史平均模型、時間序列模型、非參數(shù)回歸模型、混沌理論模型等。交通流由于受多種外部因素的影響,交通流數(shù)據(jù)具有隨機性和不確定性,傳統(tǒng)的模型普遍存在實時性差、預測精度不高的問題。隨著研究的深入,學者們相繼提出組合模型的預測,將兩種模型的優(yōu)點結合來提高短時交通流的預測準確率。羅文慧等[4]結合卷積神經網(wǎng)絡與支持向量回歸分類器的特點,提出一種組合預測模型并提高了準確率,但該模型未充分考慮外部因素對交通流預測的影響。Zhang等[5]考慮了傳感器的選擇,結合混沌理論和模擬退火算法對交通流量進行預測,模型優(yōu)化了相關向量機的核心參數(shù),卻沒有考慮交通流數(shù)據(jù)的隨機性。白偉華等[6]通過異常值識別擴展了卡爾曼濾波,使其能對噪聲進行識別和過濾,但其對交通流特征挖掘不充分。Qian等[7]采用相空間重構方法對采集的交通數(shù)據(jù)進行處理,雖用遺傳算法優(yōu)化了初始參數(shù),但不同遺傳操作參數(shù)的設置對優(yōu)化效果的影響不同。以上幾種模型雖提高了預測精度,但由于傳統(tǒng)模型固有的缺陷,仍不能滿足短時交通流預測的需求,而LSTM的提出解決了這一難題。LSTM在特征提取時具有強大的魯棒性和靈活性,LSTM不僅能提取交通流的時序特征,還能將隨機外部因素納入考慮。Lu等[8]綜合了LSTM 和自回歸積分滑動平均模型(autoregressive integrated moving average model,ARIMA)模型的優(yōu)點對短時流量進行預測,該方法繼承了LSTM在非線性擬合和時間序列分析方面的優(yōu)點。李彤偉等[9]結合路網(wǎng)交通時空分析對交通流數(shù)據(jù)進行預測,雖然取得了較好的預測效果,但其對輸入數(shù)據(jù)的質量有較高的要求。Zhao 等[10]提出了一種基于深層LSTM 遞歸神經網(wǎng)絡和線性回歸模型的TM預測方法,但未考慮交通流數(shù)據(jù)處理對預測結果的影響。Wang等[11]提出一種深度雙向長短時記憶網(wǎng)絡模型,在交通流時空特征提取上有獨特優(yōu)勢,卻忽略了相鄰路段交通流的影響。呂鮮等[12]利用去噪自編碼提取交通數(shù)據(jù)核心特征對LSTM 預測模型進行改進,使得模型在部分數(shù)據(jù)缺失和錯誤的情況下仍然具備良好的魯棒性,但需要消耗巨大的計算資源。桂智明等[13]引入了注意力機制,雖提高了交通流的預測精度,但考慮的因素單一。
綜上所述,目前出現(xiàn)的短時交通流預測算法大都考慮常態(tài)下的對短時交通流的預測,并沒有考慮天氣、節(jié)假日等外部因素對預測結果的影響。如惡劣的天氣會影響人們的出行規(guī)律,從而改變交通流的分布特性;節(jié)假日會迎來出行高峰,給城市道路交通帶來了壓力。因此,本文結合天氣、節(jié)假日等因素對交通流特性進行分析,選擇長短時記憶網(wǎng)絡(LSTM)并引入注意力機制對短時交通流進行預測。
循環(huán)神經網(wǎng)絡(recurrent neural network,RNN)不同于前饋式的神經網(wǎng)絡,其引入了定向循環(huán)機制。RNN可隨著時間的變化動態(tài)地調整自身的網(wǎng)絡狀態(tài)不斷進行循環(huán)傳遞,并且RNN 還可接受廣泛的序列信息結構作為輸入。RNN的記憶功能使其能夠對序列數(shù)據(jù)進行建模,但循環(huán)神經網(wǎng)絡模型的基本結構過于簡單,隨著循環(huán)神經網(wǎng)絡模型規(guī)模的增大,對序列數(shù)據(jù)的記憶能力就會逐漸下降,當序列信號在網(wǎng)絡中經過多次傳遞后,會使網(wǎng)絡喪失連接先前信息的能力,從而引起梯度消失或梯度爆炸,RNN的梯度消失原理如圖1所示。
為了保存長期序列信息,減少隨著時間傳播而衰減的信息,Hochreiter在1997年提出了LSTM神經網(wǎng)絡。
長短時記憶網(wǎng)絡引入了門控機制來控制信息傳遞的路徑,門的作用是允許LSTM的記憶單元長時間存儲和訪問序列信息,從而減少梯度消失問題[14-15]。輸入門保持關閉(即激活函數(shù)接近0),則新的輸入不會進入網(wǎng)絡,網(wǎng)絡中的記憶單元會一直保持開始的激活狀態(tài)。通過對輸入門的開關控制,可以控制循環(huán)神經網(wǎng)絡模型什么時候接受新的數(shù)據(jù)、什么時候拒絕新的數(shù)據(jù)接入,于是梯度信息就隨著時間的傳遞而被保留下來,LSTM的儲存單元架構如圖2所示。
輸入門(input gate)決定哪些新輸入的信息允許被更新,或者被保存到記憶單元中。遺忘門(forget gate)用于控制記憶單元是否記住或丟棄之前的狀態(tài)。輸出門(output gate)決定記憶單元中哪些信息允許被輸出。LSTM單個神經元在t時刻的計算如下:
式中,ct為t時刻記憶細胞的更新狀態(tài);it、ft、ot、ct、ht分別表示在t時刻的輸入門、遺忘門、輸出門、記憶細胞以及隱層的輸出;xt為t時刻的輸入;ht-1、ct-1分別表示隱層及記憶細胞在t-1 時刻的輸出;wxc、whc、wxi、whi、wci、wxf、whf、wcf、wxo、who、wco為權重參數(shù);bc、bi、bf、bo為偏置參數(shù);σ(· )及tanh(· )為激活函數(shù);“°”為兩個向量的乘積。
注意力機制是最初由Treisman等提出的,通過模擬人腦注意力的特點,以概率分布的思想捕捉關鍵信息,注意力機制能夠專注于局部信息,對一些不必要的信息忽略不計[16-17]。本文考慮到交通流量會受到天氣、節(jié)假日等各種外部因素的影響,這些外部因素對預測時交通流量的影響程度不同,因此本文引入注意力機制層來自動捕獲不同輸入特征,以概率分布的思想對重要的信息分布足夠的權重,以此來提升交通流的預測精度。本文所采用的注意力機制的計算公式為:
式中,et表示t時刻由輸出向量ht所決定的注意力概率分布值;αt為t時刻的權重系數(shù);Qt表示輸出值;we和be為權重和偏置。
交通流數(shù)據(jù)具有一定的時變性、非線性及周期穩(wěn)定性,在實際環(huán)境中,交通流由于受到各種外部因素的影響,會導致實驗所采集到的交通流數(shù)據(jù)不準確。通過分析交通流的數(shù)據(jù)特點,有助于模型的進一步確定??偨Y以往的實驗分析,交通流數(shù)據(jù)具有以下特點。
(1)交通流數(shù)據(jù)具有周期性。交通流數(shù)據(jù)具有一定的規(guī)律,周一至周五期間,交通流有明顯的上下班高峰,相比較于周六、周日交通流波動較大,周六、周日的交通流狀態(tài)則較平緩。
(2)交通流數(shù)據(jù)具有時空特性。當前t時刻的交通流不僅受前一段時間交通流量的影響,還受當前時刻不同路段交通流量的影響。
(3)交通流數(shù)據(jù)受天氣因素的影響。交通流數(shù)據(jù)具有復雜的特性,交通流量也受到多種外部因素的影響。天氣因素影響著人們的出行率,暴雨、暴雪、暴風、冰雹、沙塵暴及大霧等惡劣天氣期間,道路情況不確定,路面由于惡劣天氣可能造成濕滑、結冰、能見度降低等,這時交通流量會驟減;中雨、中雪的情況下,一些人會選擇推遲行程,這種情況會影響一部分交通流量;小雨、小雪對交通流量的影響較小。本文將這些外部因素劃分為不同的等級嚴重、重度、輕度、無影響,根據(jù)天氣狀況將天氣狀態(tài)量化如下:
(4)在節(jié)假日期間,交通流數(shù)據(jù)具有明顯的波動。節(jié)假日會迎來出行的高峰期,很多人選擇在節(jié)假日期間外出旅行及回家探親,此時會造成交通流量急劇增加,本文將分為工作日及節(jié)假日。將所有外部因素特征進行定量轉換以作為模型的輸入,根據(jù)是否為節(jié)假日將節(jié)假日狀態(tài)量化如下:
由于交通流的變化受天氣、節(jié)假日等外部因素的影響,呈現(xiàn)隨機性。因此,本文融合外部因素對短時交通流進行預測。
首先,將采集到的原始數(shù)據(jù)(交通流數(shù)據(jù)和天氣數(shù)據(jù))進行預處理,包括數(shù)據(jù)缺失值的補全、去噪、標準化。將預處理后的數(shù)據(jù)構造數(shù)據(jù)集,作為訓練模型的輸入,模型的參數(shù)設置如表1所示。
表1 參數(shù)設置Table 1 Parameter settings
模型的輸入樣本訓練集記為xt,交通流數(shù)據(jù)集記為a,天氣數(shù)據(jù)集記為w,是否為節(jié)假日記為h,則xt表示為:
式中,w表示不同天氣狀態(tài)下的數(shù)據(jù),1 表示嚴重,2 表示重度,3 表示輕度,4 表示無影響,h表示是否為節(jié)假日,0表示為工作日,1表示為節(jié)假日。
假設隨機選取一塊路段進行預測,已知該路段設有S個地感線圈監(jiān)測點,其中每個監(jiān)測點收集了連續(xù)T個時刻的交通流數(shù)據(jù),那么xts則表示第s個監(jiān)測點在t時刻的交通流量,將原始一維的交通流數(shù)據(jù)轉化為二維的交通流量矩陣記為F,則有F=(xt1,xt2,…,xts),那么S個監(jiān)測點T個時刻的交通流量輸入矩陣為:
利用卷積神經網(wǎng)絡(CNN)根據(jù)歷史數(shù)據(jù)提取交通流的空間特性,本文采用2層的卷積神經網(wǎng)絡。使用卷積層來提取交通流數(shù)據(jù)的局部特征,為了保留交通流原始數(shù)據(jù)的真實性,本文僅用CNN的卷積層對數(shù)據(jù)進行特征提取,不用池化層壓縮數(shù)據(jù),卷積核的大小設置為3。
根據(jù)交通流數(shù)據(jù)的特點結合天氣、節(jié)假日等外部因素的影響,本文提出一種融合多因素的短時交通流預測模型(attention-based CNN-LSTM,CLA)。如圖3所示,CLA 模型具有四層結構。第一層利用卷積神經網(wǎng)絡(CNN)提取交通流的空間特性;第二層利用長短時記憶網(wǎng)絡(LSTM)提取交通流的時間特性;第三層將提取的時空特性結合外部因素引入注意力機制;第四層綜合交通流量的特性分析,使用全連接層進行預測。
利用CNN 提取交通流的空間特性,利用長短時記憶網(wǎng)絡(LSTM)提取交通流的時間特性,分別設置LSTM的輸入張量維度及輸出張量維度,模型的隱含層分別添加dropout 約束,使得部分神經元在傳遞過程中暫時失活,以避免過擬合。
式中,wq、bq分別為權重和偏置。
本文使用Python 語言在tensorflow 和Keras 構建模型,基于融合多因素的短時交通流預測模型的流程圖如圖4所示。
3.1.1 交通流數(shù)據(jù)
為了驗證本文所提出方法的有效性,采用加拿大Whitemud Drive 高速公路開放數(shù)據(jù)進行實例分析。Whitemud Drive 是一條橫穿加拿大阿爾伯塔省埃德蒙頓市的市內高速公路,全長28 km,路網(wǎng)結構如圖5 所示,Whitemud Drive 在主干道和閘道上裝有地感線圈,數(shù)據(jù)的記錄頻率為20 s/次,記錄長度為24 h,用于觀測車流量、車速以及車輛密度。向東方向的地感線圈的分布如圖6,向西方向的地感線圈的分布如圖7,可以看到相關地感線圈的對應標號,文件命名方式為“標號-月-日”,可以對應查找相關數(shù)據(jù)。該數(shù)據(jù)集記錄了Whitemud Drive 從2015 年8 月5 日至2015 年8 月28 日總計24 天的交通流量,本文以2015 年8 月24 日至2015 年8月28 日的數(shù)據(jù)作為測試集,剩余所有數(shù)據(jù)作為訓練集進行驗證。
3.1.2 天氣數(shù)據(jù)
阿爾伯塔(Alberta)坐落于加拿大西部,這里四季分明,埃德蒙頓(Edmonton)位于阿爾伯塔省的地理中心。根據(jù)氣象局從1971年至2000年對加拿大主要城市天氣的調查,阿爾伯塔省為全年陽光最充足的省份。首府Edmonton 向北而上就是楊木森林和草原地帶,最北部為植被豐富的森林區(qū),氣候深受大陸性北極氣候影響,有時因洛基山暖流而趨于溫和,夏季溫度較高。本文選取的天氣數(shù)據(jù)來源于埃德蒙頓城市氣象觀測中心,數(shù)據(jù)記錄了每日氣溫、天氣狀況、降雨量、降雪量、風速等。
本文選取均方根誤差(RMSE)、平均絕對誤差(MAE)及平均絕對百分比誤差(MAPE)作為評價指標來評價預測結果的性能,RMSE、MAE、MAPE的定義分別如下:
式中,y^i為交通流量的預測值,yi為交通流量的真實值,N為預測值的個數(shù)。當預測值與真實值完全吻合時,RMSE、MAE、MAPE 的值為0,稱之為完美模型,RMSE、MAE、MAPE的值越大,表示預測值與真實值的誤差越大。
本文以2015年8月5日至2015年8月23日(00:00—24:00)的數(shù)據(jù)作為訓練集,將采集到的原始數(shù)據(jù)處理形成采樣間隔為5 min 的交通流數(shù)據(jù),處理后的數(shù)據(jù)每天有288 條記錄,訓練集共有5 472 條數(shù)據(jù)。以2015 年8月24日至2015年8月28日(00:00—24:00)的數(shù)據(jù)作為測試集,測試集共有1 440條數(shù)據(jù)。
3.3.1 結果預測
本文選取了2015年8月27日一整天的交通流數(shù)據(jù)來驗證模型的預測效率,預測結果如圖8所示。由圖中的預測結果可以看出,預測值隨真實值的變化而上下波動,預測曲線變化趨勢穩(wěn)定,模型的準確率最高能達到94.42%,具有較好的預測效果。
3.3.2 Dropout參數(shù)設置對預測結果的影響
在訓練模型中,如果模型具有很多參數(shù),但訓練樣本數(shù)據(jù)又較少,則訓練出的模型很容易出現(xiàn)過擬合。過擬合主要表現(xiàn)在模型在訓練數(shù)據(jù)上損失函數(shù)較小,具有較高的預測準確率,但是在測試數(shù)據(jù)上損失函數(shù)比較大,預測準確率較低。添加dropout 約束可以在前向傳播的時候,讓某個神經元的激活值以一定的概率停止工作,使其不會太依賴某些局部的特征,增強模型的泛化能力。為了對比不同dropout參數(shù)設置對預測結果的影響,實驗采用不同的dropout值進行對比分析。
如表2所示,與添加dropout約束相比不添加dropout約束的RMSE、MAE、MAPE 誤差值相對較高。經實驗對比當dropout的值取0.5時具有較好的預測效果。
表2 不同dropout對預測結果的影響Table 2 Impact of different dropout on prediction results
3.3.3 傳統(tǒng)模型預測結果對比分析
短時交通流預測由于預測時間間隔的增大會導致模型的預測性能變差。為了評估本文所提出的CLA模型的預測準確度,統(tǒng)一采用預測時間間隔為5 min,對交通流量進行預測。通過與門控循環(huán)單元(GRU)模型、支持向量回歸(SVR)模型、卷積神經網(wǎng)絡(CNN)模型以及長短時記憶網(wǎng)絡(LSTM)進行對比分析,選取均方根誤差(RMSE)、平均絕對誤差(MAE)及平均絕對百分比誤差(MAPE)作為評價指標來評價預測結果的性能。
如表3 所示CLA 模型的RMSE、MAE 以及MAPE的值相比較于GRU、SVR、CNN、LSTM 較小,在統(tǒng)一的時間間隔上,CLA模型預測效果最佳。與傳統(tǒng)模型中預測效果較好的LSTM 模型相比,CLA 模型在RMSE、MAE、MAPE分別降低了0.98、1.71以及1.53個百分點,通過實驗驗證本文所提出的CLA模型誤差最小。
表3 傳統(tǒng)模型的交通流預測誤差對比Table 3 Comparison of traffic flow prediction errors of traditional model
3.3.4 變體模型預測結果對比分析
為了更直觀地看出本文所提出的CLA模型的預測效果,實驗選取了未引入注意力機制的CLA-ATTN模型及未引入多因素的CLA-MFACTOR模型進行對比。實驗結果如圖9所示,從圖中可以看出CLA模型的預測結果最接近于真實值,相比較于單一的CLA-ATTN模型及CLA-MFACTOR 模型,本文所提出的CLA 模型具有較好的預測效果。
如表4所示CLA-MFACTOR的預測效果相對較差,交通流數(shù)據(jù)由于受到多種外部因素的影響而呈現(xiàn)隨機性變化,例如惡劣的天氣環(huán)境會打亂人們的出行計劃,導致路段的交通流量減少,因此未融入多因素的CLAMFACTOR 模型預測效果表現(xiàn)也不是很好。本文所提出的CLA 模型預測效果要優(yōu)于CLA-ATTN 和CLAMFACTOR 模型,CLA 模型相比較于最好的基準模型CLA-ATTN 模型在RMSE、MAE、MAPE 分別降低了1.17、2.1 以及4.39 個百分點,通過實驗驗證本文所提出的CLA模型誤差最小。
表4 變體模型的交通流預測誤差對比Table 4 Comparison of traffic flow prediction errors based on variant models
本文使用公開的交通數(shù)據(jù)集,融合多種外部因素并引入注意力機制,對每個影響交通流量的潛在因素或特征的重要程度進行區(qū)分,并與傳統(tǒng)及變體模型的預測結果進行對比,發(fā)現(xiàn)本文所提出的模型與傳統(tǒng)模型相比具有較好的預測效果,與CLA-ATTN、CLA-MFACTOR 相比,平均絕對百分比誤差分別減少了4.39、0.98 個百分點,經實驗驗證本文提出的融合多因素的短時交通流預測模型相比于傳統(tǒng)模型、未引入注意力機制的CLAATTN 模型及未引入多因素的CLA-MFACTOR 模型具有較好的預測效果。交通流是一個結構復雜的非線性系統(tǒng),傳統(tǒng)模型由于只能概括交通流系統(tǒng)的部分特性,因此其預測精度有限。雖然本文所提出的模型提高了預測準確率,但模型在引入注意力機制分配權重時,需要計算每一個輸入特征的權重,會消耗大量的計算資源,未來的研究工作中應進一步考慮這些因素以提高交通流的預測效率。