曹 陽,茅一波,施 佺
1.南通大學(xué) 信息科學(xué)技術(shù)學(xué)院,江蘇 南通 226019
2.南通大學(xué) 交通與土木工程學(xué)院,江蘇 南通 226019
近年來,人均車輛保有量不斷增長,各大城市交通擁堵問題相繼爆發(fā),嚴(yán)重影響到了城市居民正常生活出行。因此,合理的道路規(guī)劃、高效的交通設(shè)施布置和實時的車流誘導(dǎo)成為道路交通管理部門的首要任務(wù)。而實時、高精度的交通流預(yù)測是其中的關(guān)鍵,它不僅可以為交通流誘導(dǎo)和分流提供理論基礎(chǔ),還能幫助出行者做出更佳的出行決策,達到緩解交通擁堵、減少碳排放、提高交通運營效率的目的[1]。
目前主流的交通流預(yù)測方案多為短期預(yù)測(預(yù)測周期在數(shù)小時以內(nèi)的交通流預(yù)測模型)[2],而有關(guān)日交通流預(yù)測(預(yù)測周期為一天的交通流序列預(yù)測模型)的研究相對較少。與短期預(yù)測相比,日交通流預(yù)測不僅能夠為交通資源的分配提供更多的數(shù)據(jù)支持,還可以為交通管理者提供更多的決策支撐,幫助出行者提前制定計劃,達到避開交通擁堵路段的目的。
現(xiàn)有的交通流預(yù)測方法主要分為兩類:一類是模型驅(qū)動方法,如ARIMA(autoregressive integrated moving average)[3]、Kalman濾波[4]、灰色預(yù)測模型[5]等,這些方案計算過程簡單,數(shù)據(jù)需求量小,但由于模型結(jié)構(gòu)固化,當(dāng)路況相對復(fù)雜時預(yù)測效果較差。另一類則是數(shù)據(jù)驅(qū)動方法,如支持向量機[6]、貝葉斯網(wǎng)絡(luò)[7]、深度學(xué)習(xí)[8-9]等,這類方法通過大量的數(shù)據(jù)學(xué)習(xí)交通流特征,能夠較好地挖掘交通流與輸入?yún)?shù)的非線性關(guān)系。深度學(xué)習(xí)是數(shù)據(jù)驅(qū)動方法最主要的分支之一,與其他數(shù)據(jù)驅(qū)動方法相比,深度學(xué)習(xí)在高維數(shù)據(jù)處理、時空關(guān)系分析等方面更具優(yōu)勢。
交通流預(yù)測領(lǐng)域常見的深度學(xué)習(xí)模型大多為點到點的模型或者序列到點的模型。短期預(yù)測的預(yù)測結(jié)果為下一個時刻的車流量,其預(yù)測結(jié)果為一個數(shù)值,與傳統(tǒng)深度學(xué)習(xí)模型較為契合。而日交通流預(yù)測的結(jié)果為次日的交通流序列,其預(yù)測結(jié)果為一個序列而非一個數(shù)值,因此預(yù)測難度更大?,F(xiàn)有的日交通流預(yù)測模型大多采用兩種方案對預(yù)測模型進行改進:一種是通過多步預(yù)測來實現(xiàn)序列的預(yù)測。如楊飛等[10]利用回聲網(wǎng)絡(luò)加強網(wǎng)絡(luò)的多步預(yù)測能力;袁方等[11]采用PCA(principal components analysis)周期分量對交通流進行分解,對其非周期部分進行奇異值分解和濾波以保障多步預(yù)測的精度。然而由于多步預(yù)測對誤差的傳播更為敏感且模型的性能衰減更快,其預(yù)測精度往往會隨著步長的增加而快速下降。另一種則是通過多目標(biāo)預(yù)測,預(yù)測接下來的多個時間點的交通流。如Ma等[12]利用CNN和LSTM分別分析日內(nèi)以及日間的交通流關(guān)系,并利用多目標(biāo)輸出的方式預(yù)測接下來一天的交通流;Qu等[13]通過深層神經(jīng)網(wǎng)絡(luò)挖掘天氣、季節(jié)等因素與交通流的非線性關(guān)系,預(yù)測接下來多個時間點的交通流。但這些方案忽視了預(yù)測結(jié)果的時序關(guān)系,因此預(yù)測結(jié)果往往沒有短期預(yù)測優(yōu)越。
編碼器-解碼器模型是一個典型的序列到序列模型。該模型最初用于自然語言處理領(lǐng)域,近年來也被大量地用于時間序列預(yù)測領(lǐng)域。如劉臣等[14]將編碼器-解碼器與GCN結(jié)合,在地鐵客流量預(yù)測問題中取得了優(yōu)異的結(jié)果;Nguyen等[15]將基于LSTM的編碼器-解碼器模型與遺傳算法相結(jié)合預(yù)測PM2.5濃度,其預(yù)測精度遠高于傳統(tǒng)模型。
注意力機制是Bahdanau等[16]針對編碼器-解碼器模型存在信息丟失等問題提出的改進機制,初期與編碼器-解碼器一樣被廣泛用于自然語言處理領(lǐng)域。隨著編碼器-解碼器模型的大量使用,注意力機制已成為神經(jīng)網(wǎng)絡(luò)領(lǐng)域的一個重要概念。如王慶榮等[17]將注意力機制和LSTM網(wǎng)絡(luò)結(jié)合,提出了一種考慮天氣節(jié)假日等外部因素的短時交通流預(yù)測模型;桂智明等[18]提出一種結(jié)合注意力機制的卷積門控循環(huán)單元預(yù)測模型,具有較高的預(yù)測精度。
本文將編碼器-解碼器模型的思想進一步用于日交通流預(yù)測領(lǐng)域,提出了一種以LSTM為基本單元,同時通過注意力機制調(diào)節(jié)編碼向量權(quán)重的編碼器-解碼器模型(LSTM attention encoder-decoder,LSTM AE-D)。新的模型作為一種典型的序列到序列預(yù)測模型,能較好地契合日交通流的預(yù)測需求。取美國5號州際公路西雅圖段的實際交通流數(shù)據(jù)進行實驗,結(jié)果表明本文提出的LSTM AE-D模型的預(yù)測結(jié)果平均絕對百分比誤差與經(jīng)典神經(jīng)網(wǎng)絡(luò)模型LSTM、GRU、BP、CNN、GCN相比,分別減小了10%、10%、19%、37%、18%、20%,且在平均車流密度大于40輛/km的時間段,預(yù)測結(jié)果比這五種傳統(tǒng)模型分別減少了19%、20%、25%、16%、25%。
本文所提出的LSTM AE-D模型架構(gòu)如圖1所示,該模型采用LSTM作為編碼器-解碼器模型的基本單元,同時通過注意力機制對模型的注意力系數(shù)進行調(diào)整從而提高模型的記憶能力,最后通過全連接層(Dense)將解碼后的結(jié)果映射到一維進行預(yù)測。
LSTM是遞歸神經(jīng)網(wǎng)絡(luò)(RNN)的一個變種模型,它通過引入長期記憶單元解決了訓(xùn)練過程中梯度消失和梯度爆炸的問題,在較長的序列訓(xùn)練過程中比傳統(tǒng)的RNN有更好的表現(xiàn)。因此,本文采用LSTM作為編碼器-解碼器的基本單元。該模型的具體結(jié)構(gòu)如圖2所示。
LSTM模型結(jié)構(gòu)中的圓圈表示對應(yīng)的符號運算或函數(shù)運算,方框代表以σ、tanh為激活函數(shù)的全連接層。σ、tanh分別代表sigmoid函數(shù)和雙曲正切函數(shù),具體計算公式如式(1)~(2)所示:
LSTM模型結(jié)構(gòu)中的Xt、ht、Ht、分別代表t時刻系統(tǒng)的輸入值、輸出值和長期記憶單元和系統(tǒng)單元狀態(tài),it、ft、Ut分別代表系統(tǒng)的輸入門、遺忘門和輸出門。3個門通過σ函數(shù)輸出0-1的數(shù)以控制門的開關(guān)程度從而實現(xiàn)對系統(tǒng)輸入量的控制,原有狀態(tài)的保持以及輸出量的控制。LSTM模型的具體計算公式如式(3)~(8)所示:
式中,YC、Yi、Yf、Yo為系統(tǒng)的參數(shù)矩陣,aC、ai、af、ao為系統(tǒng)的偏置,⊙代表Hadamard積。
注意力機制是圖像識別、機器翻譯等領(lǐng)域常用的神經(jīng)網(wǎng)絡(luò)優(yōu)化機制,能有效加強模型對于重要信息的提取能力,從而提升網(wǎng)絡(luò)在識別、預(yù)測等領(lǐng)域的效果[19]。
本文使用的注意力機制為自注意力機制,能有效地捕獲目標(biāo)序列及其上下文信息與模態(tài)自身的相關(guān)性。自注意力機制的注意力系數(shù)由輸入向量序列h通過網(wǎng)絡(luò)訓(xùn)練而來,其具體計算式如式(9)~(12)所示:
式中,α為注意力系數(shù),h為編碼器層的輸出,C為計算得出的編碼向量。其中注意力系數(shù)α由輸入量h構(gòu)成,由于α與h一般屬于非線性關(guān)系,通過兩層全連接網(wǎng)絡(luò)進行計算。D和A分別為這兩層全連接網(wǎng)絡(luò)的隱藏層單元。同時為了避免注意力系數(shù)過大或者過小,利用softmax函數(shù)對其進行縮放使sum()
α=1。自注意力機制通過對網(wǎng)絡(luò)注意力的調(diào)節(jié)使網(wǎng)絡(luò)在每個解碼時間有不同的側(cè)重點,提高了信息利用率,從而提升網(wǎng)絡(luò)的預(yù)測的效果。
為驗證本文提出的LSTM AE-D深度學(xué)習(xí)模型在日交通流預(yù)測中的有效性,取美國5號州際公路(I5)上的交通流數(shù)據(jù)集進行實驗,公路位置如圖3所示。該數(shù)據(jù)集來源于數(shù)字道路交互式可視化與評價網(wǎng)絡(luò)(DRIVENET,http://uwdrive.net/STARLab),是目前最常用的交通流預(yù)測公開數(shù)據(jù)集之一,包含了I5公路從加拿大到墨西哥的85個傳感器數(shù)據(jù)。在實驗中取2015年12月1日到2016年12月31日時間間隔為5 min自南向北的單向交通流數(shù)據(jù),以第42個傳感器(距離溫哥華163.02英里)作為目標(biāo)傳感器,利用所有傳感器的交通流數(shù)據(jù)預(yù)測目標(biāo)傳感器次日的交通流量,并與五類經(jīng)典的神經(jīng)網(wǎng)絡(luò)模型LSTM、GRU、BP、CNN、GCN進行對比。
I5公路上的傳感器數(shù)量較多,全部作為輸入數(shù)據(jù)會導(dǎo)致網(wǎng)絡(luò)過于臃腫,且部分傳感器之間關(guān)聯(lián)度相對較低反而會降低系統(tǒng)的預(yù)測精度。因此,選擇與目標(biāo)傳感器關(guān)聯(lián)度較高的幾個傳感器的數(shù)據(jù)作為輸入?yún)?shù)。
皮爾遜相關(guān)系數(shù)[20]是廣泛用于度量兩個序列之間相關(guān)程度的一種參數(shù),其計算公式如式(13)所示:
式中,Xi和Yi分別代表序列X和Y的第i個元素;Xˉ和Yˉ為這兩個序列的平均數(shù);r代表著兩個序列的相關(guān)性系數(shù),其數(shù)值在-1~1之間,其絕對值越大,代表相關(guān)性越高。所有傳感器的交通流數(shù)據(jù)與目標(biāo)傳感器次日的交通流數(shù)據(jù)的相關(guān)性系數(shù)(大于0.85)如表1所示。
表1 皮爾遜相關(guān)系數(shù)表(大于0.85)Table 1 Pearson correlation coefficient table(>0.85)
本文取相關(guān)性高于0.95的6個傳感器(39~44)歸一化后的結(jié)果作為輸入,來預(yù)測目標(biāo)傳感器后一天的交通流量。圖4是該公路42號傳感器2015年12月第2周的原始交通流數(shù)據(jù),不難看出該公路的工作日車流狀況與周末的車流狀況也有較大的差距,因此將輸入數(shù)據(jù)是否為工作日以及預(yù)測目標(biāo)是否為工作日也作為預(yù)測的輸入?yún)?shù)。
本文將原始數(shù)據(jù)按3∶1∶1的比例劃分為預(yù)測集、驗證集和測試集,訓(xùn)練次數(shù)設(shè)為2 000次,選取訓(xùn)練過程中驗證集表現(xiàn)最好的模型參數(shù)作為最終的預(yù)測模型參數(shù),通過測試集計算模型的損失值??紤]到隨機梯度下降法在參數(shù)更新中對所有的參數(shù)更新使用固定的學(xué)習(xí)速率,下降速度慢,因此本文選用Adam(adaptive moment estimation)梯度下降算法對該算法進行訓(xùn)練。Adam算法通過梯度的一階矩估計和二階矩估計調(diào)節(jié)不同參數(shù)的自適應(yīng)學(xué)習(xí)速率,具有消耗內(nèi)存少、訓(xùn)練速度快等優(yōu)點,是目前最主流的梯度下降算法之一。
為了評價所提方法的性能,采用平均絕對誤差(MAE)、均方根誤差(RMSE)、測定系數(shù)(R2)和平均絕對百分比誤差(MAPE)對預(yù)測結(jié)果進行評價:
式中,為預(yù)測值,yi為真實值為真實值的均值,n為預(yù)測數(shù)據(jù)的個數(shù)。MAE是真實值與預(yù)測值絕對誤差的均值,能較好地顯示預(yù)測值與真實值之間的偏差程度;RMSE是真實值與預(yù)測值誤差平方均值的算術(shù)平方根,與MAE相比,它不僅能體現(xiàn)預(yù)測的偏差程度,還能體現(xiàn)預(yù)測誤差的離散程度;R2表示預(yù)測值與真實值的線性相關(guān)程度;MAPE是誤差與真實值之間的偏差百分比,避免了真實值大小對誤差結(jié)果的影響,從而更精確地反映預(yù)測誤差。
I5公路2016年11月25日(工作日)與11月27日(雙休日)的預(yù)測結(jié)果如圖5所示??梢钥闯霰疚哪P湍茌^好地預(yù)測交通流的變化趨勢,但預(yù)測結(jié)果與實際數(shù)據(jù)相比更為平緩,在波動性較強的實例中可能無法獲得較好的預(yù)測結(jié)果。
為了驗證本文模型的有效性,將本文模型的預(yù)測結(jié)果與LSTM、GRU、BP、CNN、GCN進行對比,六種方案I5公路2016年11月25日的預(yù)測結(jié)果如圖6所示。圖中縱軸代表每5 min的車流量,橫軸代表時間。從圖6中可以看出,LSTM AE-D以及LSTM的預(yù)測輸出與實際交通流的變化范圍基本一致,可以較為準(zhǔn)確地描述交通流的變化趨勢,GRU在5:05—6:00時的預(yù)測結(jié)果明顯高于實際值,BP的變化趨勢與實際情況相一致,但在15:55—19:00時波動情況較大,CNN的預(yù)測趨勢與實際情況較為接近但在許多時段預(yù)測值略微偏小,GCN的預(yù)測結(jié)果在2:40—5:50時明顯低于實際值。
六種方案的誤差結(jié)果如表2所示,相較傳統(tǒng)方案,本文提出的預(yù)測模型MAPE分別提升了10%、9%、19%、37%、20%。相比CNN模型提升幅度較高的主要原因是0:00—3:55以及23:10—24:00真實值極低時CNN模型的誤差較大導(dǎo)致MAPE偏高。
表2 預(yù)測結(jié)果誤差表Table 2 Error of prediction results
由于該路段晚上9點到早上4點之間車流密度一般小于40輛/km,交通狀況較為通暢,預(yù)測結(jié)果的實際意義相對較小,因此將晚上9點到早上4點之間的數(shù)據(jù)去除再計算模型的預(yù)測誤差,結(jié)果如表3所示。可以看出,在白天車流量較多的時候LSTM AE-D的預(yù)測結(jié)果更為精準(zhǔn),其MAPE比其余方案分別提升了19%、20%、25%、16%、25%。
表3 早上4點到晚上9點預(yù)測結(jié)果誤差表Table 3 Error of prediction results from 4 AM to 9 PM
為了計算模型的收斂速度,本文記錄了各模型收斂到驗證集RMSE小于39.21(即歸一化后均方誤差小于0.004)所需的時間,實驗平臺參數(shù)如表4所示,記錄結(jié)果如表5所示??梢钥闯觯琇STM、GRU以及本文提出的LSTM AE-D模型由于包含類似RNN的鏈?zhǔn)浇Y(jié)構(gòu),在訓(xùn)練時不僅需要計算誤差隨網(wǎng)絡(luò)層級傳播的分量,還要計算誤差隨時間傳播的分量,因此消耗的時間較長。本文提出的LSTM AE-D模型的收斂速度與LSTM大致相等。
表4 實驗平臺參數(shù)Table 4 Parameters for experimental platform
表5 RMSE收斂到39.21所需時間Table 5 Time required for RMSE converging to 39.21
為了驗證本文模型的魯棒性,還測試了時間間隔為15 min、30 min、60 min等不同數(shù)據(jù)集下的預(yù)測效果,2016年11月25日的預(yù)測結(jié)果如圖7所示,預(yù)測誤差如表6所示。可以看出,不同時間間隔的數(shù)據(jù)集中本文所提出的LSTM AE-D模型都具有較高的預(yù)測精度。
表6 不同時間間隔預(yù)測結(jié)果誤差表Table 6 Error of prediction results of different time intervals
本文提出了一種用于日交通流預(yù)測的編碼器-解碼器深度學(xué)習(xí)模型。該模型以LSTM為編碼器-解碼器的基本單元,同時加入了注意力機制對模型進行優(yōu)化,并利用Adam算法求解模型參數(shù)。最后采用美國5號州際公路西雅圖段的實際交通流數(shù)據(jù)進行實驗,結(jié)果表明,本文提出的預(yù)測模型與LSTM、GRU、BP、CNN、GCN等傳統(tǒng)的預(yù)測模型相比具有較高的預(yù)測精度,是一種有效的日交通流預(yù)測模型。下一步將考慮改進網(wǎng)絡(luò)的誤差傳播算法以提升網(wǎng)絡(luò)的收斂速度,同時考慮加入圖神經(jīng)網(wǎng)絡(luò)提高網(wǎng)絡(luò)對空間特征的捕捉,從而使該模型在城市路網(wǎng)中也能有較好的表現(xiàn)。