趙 靜,李 昕
基于GAT-GRU模型的交通流預測方法
趙 靜,李 昕
(遼寧工業(yè)大學 電子與信息工程學院,遼寧 錦州 121001)
提出了一種新的深度學習框架——圖注意力網(wǎng)絡(GAT)與門控循環(huán)單元(GRU)組合的時空交通流量預測模型。圖注意力網(wǎng)絡用來學習復雜的拓撲結構來捕獲空間依賴,門控循環(huán)單元學習交通數(shù)據(jù)的動態(tài)變化來捕獲時間依賴。利用加利福尼亞高速公路數(shù)據(jù)進行模型驗證,實驗結果表明,該模型相對于其他主流預測模型進一步降低了預測誤差,在交通流預測問題中適用性更強。
交通流預測;深度學習;圖注意力網(wǎng)絡;門控循環(huán)單元;時空相關性
在當今汽車保有量迅速增加的時代,城市的交通擁堵問題越發(fā)嚴重。為了使出行者和交通機構能夠得到及時的、準確的、可靠的交通信息,需要進行交通預測。交通預測可以使智能交通系統(tǒng)變得更穩(wěn)定,道路變得更暢通。提前了解交通信息(交通擁堵情況、交通量和人流)可使有關部門實施更好的交通管理策略,旅客可以制定更好的路線規(guī)劃。因此,實時獲取準確的交通信息對出行者和有關部門具有重大意義。但由于交通流的隨機性,交通預測是一個非常具有挑戰(zhàn)性的問題。近年來,研究者提出了許多提高交通流的預測精度的方法。可以分為2類:模型驅動方法和數(shù)據(jù)驅動方法[1]。
模型驅動的方法是根據(jù)固定數(shù)量的參數(shù)組成的,所以也稱為參數(shù)方法,模型結構是根據(jù)一定的理論假設來預定,模型參數(shù)根據(jù)經(jīng)驗數(shù)據(jù)來計算,主要有2個方法:時間序列模型[2]和卡爾曼濾波模型[3]。而數(shù)據(jù)驅動方法更具有靈活性,能夠處理一些存在不確定因素的問題。可以分為機器學習方法和深度學習方法2大類。
傳統(tǒng)機器學習方法中用于交通流預測的方法有支持向量機[4]、貝葉斯模型[5]、K最近鄰模型等。雖然機器學習方法可以在通過學習大量的數(shù)據(jù)的過程中得到一定的規(guī)律,但是傳統(tǒng)的機器學習方法缺乏處理高維數(shù)據(jù)的能力,難以描述交通數(shù)據(jù)中復雜的非線性變化。除此之外,傳統(tǒng)機器學習的預測性能在很大程度上依賴于手工特征,而手工特征對問題的依賴程度很高,依賴于專家經(jīng)驗。因此,這種方法的通用性較弱。
近年來,深度學習模型對多維度和非線性數(shù)據(jù)的處理能力顯著增強,與其他傳統(tǒng)機器學習方法相比,深度結構神經(jīng)網(wǎng)絡比淺層神經(jīng)網(wǎng)絡有更好的學習效率,所以深度學習的方法在預測交通流方面提供了更高的性能,促使越來越多的研究者將其應用于交通數(shù)據(jù)挖掘中。
Huang等[6]采用深度信念網(wǎng)絡(DBN)學習有效的特征,以無監(jiān)督的方式進行交通流預測。Jia等[7]提出DBN和多層感知器(MLP)混合模型的速度預測。Lv等[8]應用堆疊自動編碼器(Stacked Autoencoder,SAE)提取交通特征用于交通流預測。上述深度學習方法均取得了較好的效果。然而,單一模型在處理復雜數(shù)據(jù)時仍有局限性。為了整合單一模型的優(yōu)點,實現(xiàn)更準確的交通流預測,各種組合模型應運而生。Ma等[9]提出了一種基于圖像的方法,將交通網(wǎng)絡作為圖像。Yao等[10]提出了一種融合CNN和長短期記憶(LSTM)的交通預測方法,聯(lián)合建模空間和時間依賴關系。然而傳統(tǒng)的卷積方法只能應用于標準網(wǎng)格數(shù)據(jù)。而現(xiàn)實的研究中還有大量的數(shù)據(jù)從非歐幾里德結構中采樣,所以,近年來研究者們用圖卷積網(wǎng)絡(GCN)[11]將傳統(tǒng)的卷積推廣到圖結構數(shù)據(jù)。GCN將交通網(wǎng)絡視為能夠充分利用交通空間信息的圖,Yu等[12]提出了一種時空圖卷積網(wǎng)絡(STGCN),該網(wǎng)絡在空間和時間軸上都采用了卷積結構。Zhao等[13]提出了時間圖卷積網(wǎng)絡(T-GCN)模型,一種基于神經(jīng)網(wǎng)絡的流量預測新方法,該模型結合了圖卷積網(wǎng)絡和門控循環(huán)單元。其中,圖卷積網(wǎng)絡用于學習復雜拓撲結構,捕獲空間相關性;門控遞歸單元用于學習交通數(shù)據(jù)的動態(tài)變化,捕獲時間相關性。然后,采用T-GCN模型進行基于城市道路網(wǎng)絡的交通預測。Guo等[14]在時空卷積網(wǎng)絡中加入了注意力機制,注意力的時空圖卷積網(wǎng)絡模型主要由3個獨立的組件組成,分別對交通流的最近依賴、日周期依賴和周周期依賴3種時間屬性進行建模。
目前,如何挖掘交通流數(shù)據(jù)的時間特征和空間特征是交通流的研究方向之一。本文提出了一種新的深度學習框架,即GAT-GRU模型。GAT-GRU是一個融合了空間相關性提取塊和時間特征提取塊的混合模型。采用圖注意力網(wǎng)絡提取交通網(wǎng)絡中的空間依賴關系,GRU網(wǎng)絡來學習時間序列特征。并通過加利福尼亞州運輸部收集的真實數(shù)據(jù)集PeMSD4對模型進行訓練與預測。
在交通流預測中,目標是在給定歷史交通流的靜態(tài)路網(wǎng)上預測未來交通流。
定義2 交通流數(shù)據(jù)。交通流數(shù)據(jù)具有3個重要參數(shù),分別是交通流量、行車速度以及車流密度。它們之間關系如式(1)所示:
=(1)
其中,表示交通流量,表示行車速度,表示車流密度。當?shù)缆飞宪嚵髅芏刃r,交通流量也小,行車速度高;當車流密度增加時,交通流量也隨之增加,行車速度減小;當車流密度超過最佳密度時,交通流量減小,行車速度下降,直至行車速度接近零,道路出現(xiàn)阻塞現(xiàn)象。
定義3 時空相關性。在道路網(wǎng)絡中,各個路段存在直接或間接相連的狀況,所以各路段的交通流存在明顯的相關性。例如,在某一路段發(fā)生的交通擠塞使得該路段幾分鐘內(nèi)一直擁堵,甚至可能幾分鐘后會蔓延到其他路段,導致區(qū)域擁堵。路段之間的連接和交通網(wǎng)絡中交通實體的相互作用,使得相鄰路段的交通流呈現(xiàn)出時空相關性。
交通流預測問題可以表述為在通過對大量的交通流樣本學習的過程中得出一個映射函數(shù),先將道路網(wǎng)絡上′周期內(nèi)的歷史交通流數(shù)據(jù)作為函數(shù)的輸入,然后對道路網(wǎng)絡上未來周期內(nèi)的交通信息進行預測。如式(2)和圖1所示。圖1表示在一個節(jié)點上檢測交通流量、車流密度、行車速度測量值,并以未來的流量為預測目標。這里,所有的測量值都歸一化為[0,1]。在實際交通流預測問題中,3個參數(shù)數(shù)據(jù)都是結構相似的時空數(shù)據(jù),本文選擇了交通流量預測作為應用場景。
其中,Xt+1, Xt+T是時間區(qū)間t+1, t+T的預測值,是函數(shù)f的參數(shù)。
圖注意力網(wǎng)絡(graph attention network)[15]是一種基于圖的網(wǎng)絡模型,利用隱藏的自我注意層來解決以前基于圖卷積或其近似方法的缺點。通過疊加層,節(jié)點能夠參與其鄰域的特征,該方法允許在不做任何操作或者不提前了解圖結構的情況下給鄰域的不同節(jié)點賦予不同的權重。通過這種方式,GAT同時解決了基于頻譜的圖神經(jīng)網(wǎng)絡的幾個關鍵挑戰(zhàn),并使模型易于適用于歸納和轉導問題。GAT和GCN的關鍵區(qū)別在于如何收集和積累距離為1的相鄰節(jié)點的特征表示。在GCN中,一個標準卷積包括對相鄰節(jié)點特征的標準化求和,表達式如下:
GAT引入注意機制代替了圖卷積的上述卷積運算,為了更好地說明層的節(jié)點特征是如何更新到+1層的,首先引入GAT的組成成分,即圖注意力層。
一個圖注意力層的輸入是一組節(jié)點的特征值,即:
其中是節(jié)點的個數(shù),是節(jié)點特征的個數(shù)。一個圖注意力層的輸出是其產(chǎn)生的一組新的節(jié)點特征值,即:
其中′通常比更大。
上式描述了節(jié)點的特征對于節(jié)點的重要性。利用函數(shù)將注意系數(shù)歸一化成易于比較的形式,表達式如下:
因此,這些系數(shù)被用來利用GCN卷積規(guī)則更新模型特征,表達式如下:
多頭注意力機制神似卷積神經(jīng)網(wǎng)絡里的多通道。GAT引入了多頭注意力來豐富模型的能力和穩(wěn)定訓練過程。每一個注意力的頭都有它自己的參數(shù)。對于個注意力又可以使用2種方法對鄰居節(jié)點進行聚合。一種方法是橫向拼接的方式,這樣聚合到的特征維度就是原來的倍,表達式如下:
另一種方法是把個注意力機制得到的結果取平均值,表達式如下:
本文提出一種混合交通流預測器GAT-GRU。如圖2所示,GAT-GRU包括用于學習空間特征的GAT塊,用于學習時間特征和時間序列預測的GRU塊,以及用于產(chǎn)生序列輸出的輸出層。具體而言,在空間GAT塊中,采用了前述的多頭注意機制,使模型能夠通過多個獨立的注意塊共同學習空間依賴性,從而有利于學習過程。在GRU塊中,采用了一個1層GRU網(wǎng)絡來提取時間序列特征。最終的預測由最終輸出層的全連接神經(jīng)網(wǎng)絡產(chǎn)生。
圖2 GAT-GRU模型總覽
GAT利用節(jié)點特性來計算表示圖的空間依賴性的注意系數(shù)??臻gGAT塊的最后一步是更新隱藏特征。為了實現(xiàn)這一點,引入了注意鄰接矩陣,將之前學習到的注意系數(shù)映射到一個鄰接矩陣。
注意鄰接矩陣體現(xiàn)了GAT的設計原則,即更好的可解釋性。通過采用注意鄰接矩陣,用學習到的注意系數(shù)來表示邊緣權值,可以直觀地表示空間相關性。通過注意鄰接矩陣的演化,也可以觀察到動態(tài)的空間依賴性。
交通流數(shù)據(jù)不僅存在著空間性,在時間上也存在著相關屬性。目前,循環(huán)神經(jīng)網(wǎng)絡廣泛應用于處理序列數(shù)據(jù),但是存在梯度消失和梯度爆炸的局限性。門控循環(huán)單元神經(jīng)網(wǎng)絡(GRU)是基于RNN模型的改進,是長期短期記憶(LSTM)神經(jīng)網(wǎng)絡的變種。GRU通過增加門結構和存儲單元來緩解RNN中的梯度消失或梯度爆炸問題。GRU有重置門和更新門2個門。簡單地說,它們決定了信息的去留狀態(tài)。更新門越大,記住上一時刻的內(nèi)容就愈多。重置門越大,舍棄上一時刻的內(nèi)容就愈少。GRU單個細胞原理如圖3所示,計算原理表達式如下:
圖3 GRU模型原理圖
利用加利福尼亞州的高速公路交通數(shù)據(jù)集PeMSD4驗證了提出的模型。數(shù)據(jù)集由Caltrans性能測量系統(tǒng)(PeMS)每30 s時收集一次。該系統(tǒng)在加州主要城市的高速公路上部署了超過39 000個探測器。
PeMSD4數(shù)據(jù)集包含了PeMSD4.csv文件和PeMSD4.npz文件,時間跨度為2018年1月—2月,包括29條道路上的3 848個檢測器。PeMSD4.csv文件的部分數(shù)據(jù)如圖4所示,from和to表示的是節(jié)點,cost表示的是2個節(jié)點之間的直線距離(表示權重)。PeMSD4.npz文件數(shù)據(jù)為每個節(jié)點的速度、流量、占有率3個特征。本文選取流量特征進行預測。其中,80%的數(shù)據(jù)作為訓練集,20%的數(shù)據(jù)作為測試集。
圖4 PeMSD4.csv文件的部分數(shù)據(jù)
根據(jù)數(shù)據(jù)集的信息,建立節(jié)點之間的鄰接矩陣。基于閾值高斯核法將計算的權值替換為1,生成鄰接矩陣。
使用均方根誤差(RMSE),平均絕對誤差(MAE)來評估GAT-GRU的預測性能,數(shù)值越小,預測效果越好,RMSE和MAE的計算方法如下:
實驗基于深度學習框架Pytorch-GPU開發(fā),使用Adam優(yōu)化器對模型進行優(yōu)化;學習率設置為0.001;每次訓練樣本數(shù)batch_size設置為64;迭代次數(shù)設置為1 000;GRU隱藏層單元數(shù)設置為32;圖注意力機制的多頭注意力頭數(shù)對模型的性能影響很大,但是如果值過大,模型計算量龐大,效率反而會降低,經(jīng)過實驗對比,如圖5所示,為8時,RMSE誤差最小,所以將多頭注意力的頭數(shù)設置為8。
圖5 K取值對實驗的影響
本文將數(shù)據(jù)集以8∶2的比例劃分訓練集和測試集,模型的訓練過程如下。
步驟1 讀取交通流量數(shù)據(jù)和鄰接矩陣A。
步驟2 將輸入數(shù)據(jù)構造成特征矩陣,定義為:
步驟3 將特征矩陣進行歸一化處理。
步驟4 將歸一化后的矩陣作為GAT網(wǎng)絡的輸入,根據(jù)公式(6)提取空間特征到序列特征向量。
步驟5 將特征向量作為GRU網(wǎng)絡的輸入,根據(jù)公式(9)~(11)計算提取時間特征。
步驟6 搭建好模型之后,以MSE作為損失函數(shù),Adam作為優(yōu)化器。
步驟7 模型訓練完成后進行測試,輸出預測的交通流量序列。
為了驗證模型的優(yōu)越性,本文將GAT-GRU模型與以下7種基準模型方法進行了比較。表1顯示未來1 h交通流量預測性能的平均結果。圖6是GAT-GRU模型在PeMSD4數(shù)據(jù)集上預測結果與真實值比較。
表1 PeMSD4不同方法的平均性能比較
ModelRMSEMAE HA54.1436.76 ARIMA68.1332.11 VAR51.7333.76 LSTM45.8229.45 GRU45.1128.65 GAT42.2028.19 STGCN38.2925.15 GAT-GRU37.4323.41
圖6 GAT-GRU模型預測結果與真實值比較
(1)HA[16]:歷史平均方法,本文使用最后12個時間片的平均值來預測下一個值。
(2)ARIMA:自回歸綜合移動平均法,是一種著名的預測未來值的時間序列分析方法。擬合觀測時間序列的參數(shù)模型來預測未來的交通數(shù)據(jù)。
(3)VAR[17]:向量自回歸,是一種較先進的時間序列模型,利用歷史數(shù)據(jù)對模型進行訓練,得到輸入和輸出之間的關系,然后利用訓練后的模型預測未來的交通數(shù)據(jù)。本文在這個模型中使用的核函數(shù)是一個線性核。
(4)LSTM[18]:長短期記憶網(wǎng)絡,一種特殊的RNN模型。是為了解決反向傳播過程中存在梯度消失和梯度爆炸現(xiàn)象,引入門機制,解決RNN模型不具備的長記憶性問題。
(5)GRU[19]:門控循環(huán)單元網(wǎng)絡,一種特殊的RNN模型。優(yōu)化了LSTM,簡便了計算方法,避免了梯度消失。
(6)GAT[15]:圖注意力網(wǎng)絡,是一種基于圖結構數(shù)據(jù)的新型神經(jīng)網(wǎng)絡結構。圖注意力網(wǎng)絡的作用原理是在學習節(jié)點特征的過程中,將注意力機制作用于確定節(jié)點的不同鄰域權重值。
(7)STGCN[20]:一種基于空間方法的時空圖卷積模型。STGCN有2個時空卷積塊,每個時空卷積塊有2個時空門控卷積層和1個空間圖卷積層,實現(xiàn)輸入并行化,提取最有用的時空特征。
從表1可以看出,GAT-GRU模型在數(shù)據(jù)集中所有評價指標上都取得了最好的性能??梢钥吹?,傳統(tǒng)的時間序列分析方法的預測結果往往不理想,說明這些方法在建模非線性和復雜的交通數(shù)據(jù)方面能力有限。通過對比,基于深度學習的方法通常比傳統(tǒng)的時間序列分析方法獲得更好的預測結果。其中,同時考慮時間和空間相關性的模型,包括STGCN、GAT-GRU模型,優(yōu)于傳統(tǒng)的LSTM和GRU等深度學習模型。此外,GAT-GRU的性能優(yōu)于STGCN,說明GAT-GRU采用的多頭注意機制在捕獲交通數(shù)據(jù)的動態(tài)變化方面是有效的,進一步降低了預測誤差。
本文研究開發(fā)了一種基于神經(jīng)網(wǎng)絡的交通預測新方法GAT-GRU,該方法結合了GAT和GRU。使用圖網(wǎng)絡對高速公路路網(wǎng)進行建模,圖上的節(jié)點表示道路,邊表示道路之間的連接關系,道路上交通信息被描述為圖上節(jié)點的屬性。一方面,利用GAT捕獲圖的空間拓撲結構,獲得圖的空間依賴性;另一方面,引入GRU模型捕獲節(jié)點屬性的動態(tài)變化,獲得節(jié)點屬性的時間依賴性。最后利用GAT-GRU模型處理時空交通預測任務。在2個真實交通數(shù)據(jù)集上進行評估,并與HA模型、ARIMA模型、SVR模型、LSTM模型GRU模型和STGCN模型進行比較,發(fā)現(xiàn)GAT-GRU模型在不同的預測層下都取得了更好的性能。事實上,公路交通流受到天氣、社會事件等多種外部因素的影響。未來,將考慮一些外部影響因素,進一步提高預測精度。
[1] ZHANG J, WANG F-Y, WANG K, et al. Data-Driven Intelligent Transportation Systems: A Survey[J]. IEEE Transactions on Intelligent Transportation Systems, 2011, 12: 1624-39.
[2] 陳航, 陳玉敏, 吳錢嬌, 等. 基于周相似性的短時交通流預測方法研究[J]. 測繪通報, 2015(S2): 27-31.
[3] KUMAR S V. Traffic Flow Prediction using Kalman Filtering Technique[J]. Procedia Engineering, 2017, 187: 582-587.
[4] FENG X, LING X, ZHENG H, et al. Adaptive Multi-Kernel SVM With Spatial Temporal Correlation for Short-Term Traffic Flow Prediction[J]. IEEE Transactions on Intelligent Transportation Systems, 2019, 20: 2001-2013.
[5] 陳丹, 胡明華, 張洪海, 等. 基于貝葉斯估計的短時空域扇區(qū)交通流量預測[J]. 西南交通大學學報, 2016, 51(4): 807-814.
[6] HUANG W, SONG G, HONG H, et al. Deep Architecture for Traffic Flow Prediction: Deep Belief Networks With Multitask Learning[J]. IEEE Transactions on Intelligent Transportation Systems, 2014, 15: 2191-201.
[7] JIA Y, WU J, DU Y. Traffic speed prediction using deep learning method[C]. 2016 IEEE 19th International Conference on Intelligent Transportation Systems (ITSC), 2016: 1217-1222.
[8] LV Y, DUAN Y, KANG W, et al. Traffic Flow Prediction With Big Data: A Deep Learning Approach [J]. IEEE Transactions on Intelligent Transportation Systems, 2015, 16: 865-873.
[9] MA X, DAI Z, HE Z, et al. Learning Traffic as Images: A Deep Convolutional Neural Network for Large-Scale Transportation Network Speed Prediction[J]. Sensors (Basel, Switzerland), 2017, 17: 818.
[10] YAO H, TANG X, WEI H, et al. Modeling Spatial-Temporal Dynamics for Traffic Prediction[J]. ArXiv, 2018, abs/1803.01254: 922-929.
[11] OU Y, XUE Y, YUAN Y, et al. Semi-Supervised Cervical Dysplasia Classification with Learnable Graph Convolutional Network[C]. 2020 IEEE 17th International Symposium on Biomedical Imaging (ISBI), 2020: 1720-1724.
[12] YU H, WU Z, WANG S, et al. Spatiotemporal Recurrent Convolutional Networks for Traffic Prediction in Transportation Networks[J]. Sensors (Basel, Switzerland), 2017, 17: 1501.
[13] ZHAO L, SONG Y, ZHANG C, et al. T-GCN: A Temporal Graph Convolutional Network for Traffic Prediction[J]. IEEE Transactions on Intelligent Transportation Systems, 2020, 21: 3848-3858.
[14] GUO S, LIN Y, FENG N, et al. Attention Based Spatial-Temporal Graph Convolutional Networks for Traffic Flow Forecasting[C]. Proceedings of the AAAI, F, 2019.
[15] VELICKOVIC P, CUCURULL G, CASANOVA A, et al. Graph Attention Networks[J]. ArXiv, 2018, abs/1710.10903.
[16] 劉靜, 關偉. 交通流預測方法綜述[J]. 公路交通科技, 2004(3): 82-85.
[17] SMOLA A, SCH?LKOPF B. A tutorial on support vector regression[J]. Statistics and Computing, 2004, 14: 199-222.
[18] HOCHREITER S, SCHMIDHUBER J. Long Short-Term Memory[J]. Neural Computation, 1997, 9: 1735-1780.
[19] CHUNG J, GüL?EHRE ?, CHO K, et al. Empirical Evaluation of Gated Recurrent Neural Networks on Sequence Modeling[J]. ArXiv, 2014, abs/1412.3555.
[20] LI C, CUI Z, ZHENG W, et al. Spatio-Temporal Graph Convolution for Skeleton Based Action Recognition[C]. Proceedings of the AAAI, F, 2018.
Traffic Flow Prediction Method Based on the GAT-GRU Mode
ZHAO Jing, LI Xin
(School of Electronics and Information Engineering, Liaoning University of Technology, Jinzhou 121001, China)
A new deep learning framework, a spatiotemporal traffic flow prediction model combined with Graph Attention Network (GAT) and Gated Recurrent Unit (GRU), is proposed. Graph attention networks are used to learn complex topologies to capture spatial dependencies, and gated recurrent units are used to learn the dynamics of traffic data to capture temporal dependencies. The model is verified by using California highway data. The experimental results show that the model further reduces the prediction error compared with other mainstream prediction models, and is more applicable to traffic flow prediction problems.
traffic flow prediction; deep learning; graph attention network; gated recurrent unit; spatial-temporal correlation
10.15916/j.issn1674-3261.2022.03.007
TP183
A
1674-3261(2022)03-0170-07
2021-04-14
遼寧省教育廳高??蒲谢痦椖?LJKZ0625)
趙靜(1997-),女,江蘇鹽城人,碩士生。
李昕(1966-),男,遼寧錦州人,教授,博士。
責任編輯:孫 林