?

基于循環獨立機制的交通流量預測

2024-03-04 06:06江建強蔡瑞初郝志峰
廣東工業大學學報 2024年1期
關鍵詞:交通流量神經網絡預測

溫 雯,江建強,蔡瑞初,郝志峰

(廣東工業大學 計算機學院, 廣東 廣州 510006)

交通擁堵是許多城市所面臨的問題,準確的交通流量預測[1-2]能讓交通擁堵情況得到有效緩解,從而縮短人們的通勤時間,同時也能降低環境污染。交通流量預測屬于時空數據預測范疇,能否有效地捕獲并利用其時空依賴關系是作出準確預測的關鍵,也是研究的難點。交通流量預測問題的復雜性體現為:(1) 時間依賴方面。交通流量的變化是受潛在狀態影響的,不同的潛在狀態決定了交通流量的上升與下降,以及上升或下降的速度。例如,在同一個路口,上班高峰期與下班高峰期流量的潛在狀態是不同的。交通流量的潛在狀態是隨著時間變化的。一方面,交通流量數據整體上呈現出日周期性規律,每天數據波形都較為相似,這體現了交通流量的潛在狀態的規律性;另一方面,交通流量數據幾乎在任何時刻都在變化,受交通狀況及前面時間段的交通流量影響,變化趨勢是動態變化的,體現了交通流量潛在的狀態時變性。(2) 空間依賴方面。每個交通節點的交通流量都會受到附近交通網絡影響,且受到的影響也是動態變化的。如上游位置的交通流量會對下游位置的交通流量產生影響;并且每個路口會受到來自多個不同方向的影響。此外,交通流量受不同方向的影響也是不同的。因此,交通流量的空間依賴是復雜多樣的。

現有的交通預測方法中,有基于統計的系列方法,如HA(History Average)和ARIMA(Autoregressive Integrated Moving Average Model)[3],HA采用歷史平均值來預測,ARIMA將數據進行差分處理后移動平均自回歸,但在預測交通流量高復雜度非線性數據時會產生很大的誤差;傳統機器學習方法如SVM(Support Vector Machine)[4]、KNN(K-Nearest Neighbor)[5]等,過度依賴特征提取工程與先驗知識,在預測交通流量這種擁有復雜的時空關系的數據時難以達到準確效果。隨著深度學習的發展,越來越多問題都可以用合適的神經網絡來解決。用深度學習進行交通流量預測時,無需大量先驗知識。Zhang等[6]使用基于CNN(Convolutional Neural Networks)的殘差網絡來構建短時交通流量預測模型,其使用的利用近期、周期、趨勢多層次的數據的方法被許多論文借鑒。但CNN只能處理網格狀的結構化數據,現實中交通道路的拓撲結構往往是復雜的,因此該模型不具備普適性。圖神經網絡[7]的發展解決了此問題,Feng等[8]提出了基于多組件的預測方法,在沿用多層次交通流數據的基礎上使用了GCN(Graph Convolutional Networks)來捕獲鄰居的特征,取得了更好的效果。目前許多交通流量預測方法都使用GCN,然而GCN在分配權重時很依賴于圖結構,無法靈活地給不同的鄰居節點分配權重[9]。循環神經網絡常被應用于序列數據的預測,如經典的循環神經網絡(Recurrent Neural Network,RNN),但RNN在捕捉數據的長期依賴關系方面效果欠佳,并且其存在梯度爆炸以及梯度消失問題。LSTM(Long Short Term Memory)[10]是一種采用了門控機制的循環神經網絡,解決了梯度消失及梯度爆炸問題,在處理數據的長期依賴關系方面也有更好的效果。GRU(Gate Recurrent Unit)[11]也是一種使用門控機制的循環神經網絡,與LSTM類似,GRU也能更好地捕獲數據的長期依賴。RNN、LSTM、GRU等都被應用到交通流量預測上,但如何捕獲交通流量的潛在狀態,將交通流量數據的時間依賴關系與空間依賴關系有效地結合起來,依然是交通流量預測問題中的一大難點。對此,本文提出一種新的交通流量預測模型(Graph Temopral Recurrent Independent Mechanisms,G-tRIM),該模型通過融合RIM(Recurrent Independent Mechanisms)與圖注意力網絡,來高效捕捉交通流量數據的時空依賴關系,以做出更精準的預測。其中,RIM網絡通過多個子網絡的協調合作,建模交通流量的潛在狀態;圖注意力網絡計算鄰居的attention系數,以此來聚合鄰居信息,捕獲節點受到的空間影響。本文的主要貢獻點為:

(1) 在使用RIM來捕獲交通流量的潛在狀態時,巧妙地融入了時間信息,結合潛在狀態的時變性讓RIM能更好地選擇子網絡進行激活,以此更準確地捕獲交通流量的潛在狀態。

(2) 根據各節點交通流量受到不同空間的影響,動態地使用GAT(Graph Attention Networks) 計算節點鄰居的attention系數,更精準地分配鄰居的不同的權重。

(3) 實驗結果表明,在網格狀與非網格狀的數據集上,該模型的預測結果都優于其他現有模型。

1 相關工作

1.1 時序關系模型

交通流量數據是序列數據?;诮y計的HA、ARIMA等經典方法能在較小計算量的要求下給出預測,但存在誤差較大的缺陷。隨著算力的增加,神經網絡的運用也更為廣泛。其中,循環神經網絡[12]在解決有關序列結構數據的問題時,往往能取得很好的效果。循環神經網絡RNN使用了隱藏層參數共享的方法,來獲取序列結構數據的序列依賴關系。但是,RNN存在梯度消失以及梯度爆炸問題,難以捕捉到數據的長期依賴關系。長短期記憶網絡LSTM使用了門控機制,在捕獲序列結構數據的序列依賴的同時,也避免了梯度消失與梯度爆炸問題。RIM[13]由多個參數空間一致的子網絡組成,使用注意力機制對每一個輸入數據進行匹配篩選,分配到不同的子網絡。一般情況下,同一時間步分配給各個子網絡的輸入是不完全相同的,各個子網絡則會根據對應的輸入完成動態轉換,更新相應的隱狀態。各子網絡之間在進行自身的動態轉換時相互獨立,在完成動態轉換后會進行稀疏的信息交互。RIM對比LSTM具有更好的預測效果以及更強的魯棒性。但是,RIM在預測交通流量時,只使用過去時間段的流量而忽略了時間本身這一信息,因此未能準確地捕獲交通流量的潛在狀態。

1.2 空間關系模型

交通流量預測不僅要考慮時間影響,同時也需要聚合鄰居信息。卷積神經網絡CNN是聚合鄰居信息的一種方法,在圖像識別等方面的應用取得了很好的效果。Zhang等[6]使用CNN和殘差網絡來預測北京的交通流量,但僅適用于劃分為網格狀的結構化數據。CNN無法應用于交通道路這種非結構化的圖數據中。圖卷積網絡GCN是一種將卷積思想應用在圖結構數據上的方法,通過傅里葉變換與逆變換完成,GCN解決了CNN不適用于圖結構數據的問題。STGCN(Spatio-Temporal Graph Convolutional Networks)[14]使用GCN的方法聚合非結構化鄰居的信息,擺脫了GCN的束縛。但GCN在聚合過程中對于鄰居的權重是固定的,沒有區分同一節點的不同鄰居的影響程度。圖注意力網絡GAT[15]通過計算節點與每個鄰居的attention權值,捕捉不同路口或者區域的交通流量對當前路口或者區域交通流量的不同影響,更適用于交通流量的真實情況。此外,T-GCN(Temporal Graph Convolutional Network)[16]、STGCN和ASTGCN(Attention Based Spatial-Temporal Graph Convolutional Networks)[17]在預測時使用經過聚合鄰居信息的交通流量數據,可能會改變節點本身的流量數據的模式規律。

2 模型

2.1 相關定義

定義1給定城市交通圖G=(V,E), 其中V={v1,v2,···,vN} 為交通圖中的所有節點,E是節點之間的邊。根據數據集的不同,節點可以是交通路口,也可以是按照經緯度劃分的塊狀區域,邊可以是有向的,也可以是無向的,這取決于所獲取的數據集。

定義2給定流量矩陣X=(X1,X2,···,XN)T∈RN×P,X為N個節點的P個時間段的交通流量序列。其中Xi=(Xi1,Xi2,···,XiP)T∈RP,i∈(1,2,···,N) ,且Xt=(X1t,X2t,···,XNt)∈RN,t∈(1,2,···,P)。Xi為某一節點的所有流量序列,Xt為某一時刻所有節點的流量。

2.2 問題定義

根據給定的城市交通圖G,前τ 段時間內的交通流量張量為 {Xt|t=1,2,···,τ} , 對應的時間序列{ti|i∈{1,2,···,τ},預測下一個時間段內的城市交通流量X?τ+1。

2.3 模型架構

交通流量預測的重點在于對交通流量數據的時空依賴關系進行捕獲。本文對交通流量預測提出以下思路:使用2個模塊分別捕獲交通流量數據的時間依賴關系與空間依賴關系,融合2個模塊的結果作出最后的預測。

基于以上思路,如圖1所示,G-tRIM模型主要由tRIM和GAT+LSTM兩部分組成。圖1上半部分,tRIM利用中心節點的流量數據與時間步數據對中心節點的潛在狀態進行建模,捕獲交通流量數據的時間依賴關系;圖1下半部分通過GAT聚合鄰居節點的信息,然后把聚合的結果輸入LSTM,以此捕獲交通流量數據的空間依賴關系。

圖1 G-tRIM模型Fig.1 G-tRIM model

2.3.1 時間依賴關系建模

現在時序數據的處理方法大多數使用循環神經網絡RNN,然而RNN在序列過長時會出現梯度消失和梯度爆炸的問題;LSTM是一種使用門控機制的循環神經網絡,并且不存在梯度消失或者梯度爆炸問題;RIM是由多個LSTM組合成的,擁有更好的穩定性。然而,RIM只是接收了數據序列,不知道該數據序列所對應的時間。因此,在交通流量預測的應用中并沒有利用交通流量數據呈現的“日周期性”的特點,未能準確捕獲交通流量的潛在狀態。G-tRIM的時間依賴關系由tRIM來捕獲,圖2展示的是1個tRIMcell處理1個時間步輸入的過程,每個時間步都使用一次tRIMcell。tRIM是由若干個(如圖(2)所示是4個)子網絡組成的循環神經網絡,其每個子網絡都是大小一樣的LSTM。每個時間步中,數據經過了輸入階段、轉化階段、交互階段。在輸入階段,該時間步的交通流量以及對應的時間經過了MLP(Multilayer Perceptron)層投影到指定的空間后串聯起來進入注意力層,與各個子網絡的隱狀態做匹配,選中最相關的f個子網絡進行激活。圖2中虛線框部分展示了單個時間步輸入階段計算得到與該次輸入數據最相關的2個子網絡的過程,并使用灰色框格表示被激活的子網絡。

圖2 tRIMcellFig.2 tRIMcell

第m個節點的n時刻中,第k個子網絡所對應的輸入為

式(2)中:St指在t時間步被激活的子網絡集合;h?t+1,k為第k個子網絡在接收t時間步的輸入并完成動態轉換后的隱狀態;Dk為動態轉換方式,本文選擇了LSTM; θ(kD)為第k個子網絡LSTM的參數。各個子網絡接收處理輸入之后,更新自己的隱狀態。在交互階段,各個子網絡之間進行稀疏交互,被激活的子網絡此時利用注意力機制聚合所有的子網絡的信息,用來更新自身的隱狀態。轉化過程與交互過程如圖2虛線框外部分所示,被激活的子網絡除了能利用有效的輸入更新自身的隱狀態外,還會在交互階段利用其他子網絡的信息再次更新的隱狀態。

式(3)~(5)分別為在t時刻第k個子網絡的Q(Query)、K(Key)、V(Value) 構造方式,式(6)為子網絡的更新方式。式(6)中ht+1,k為第k個子網絡經過了稀疏信息交互之后得到的隱狀態,式(3)中W?kq為第k個子網絡的稀疏信息交互查詢參數,式(4)和式(5)中Wke和Wkva為生成K和V的參數,式(6)中Kt,:為式(4)中Kt,k串聯的結果??芍?,在時間步t,只有被激活的子網絡才能獲取所有子網絡的信息。到此,一個時間步的輸入處理完成。在最后一個時間步中,tRIM得到了交通流量的潛在狀態。在這過程中,每個子網絡所接收的輸入是不同的,因此能訓練出不同的函數表示。

2.3.2 空間依賴關系建模

許多模型使用CNN來建模數據的空間關系,然而CNN只適用于歐氏結構化的數據,對于非結構化的數據并不適用;GCN借助圖的拉普拉斯矩陣對圖上的數據進行卷積操作,解決了CNN不能在非結構化數據上操作的問題,但沒有對不同的鄰居分配不同的權重;GAT計算節點間的attention系數,為不同的鄰居分配了不同的權重?,F實中,在同一時間里,不同的中心節點受到的鄰居節點的影響不同;在同一中心節點中,不同時間所受到的鄰居節點的影響也不同。因此,使用GAT可動態地計算中心節點與鄰居間的attention系數,動態地分配鄰居的權重。先把r個鄰居的數據Xn∈Rr×τ使 用GAT聚合成Xn′∈Rτ,然后使用LSTM對Xn′進行處理,得到隱狀態表示和數據的空間依賴關系。使用GAT對鄰居數據進行聚合的表達式為

式(7)為根據中心節點交通流量數產生Q(Query)的過程,式(8)為根據某個鄰居節點交通流量數據產生單個Ki(Key)的過程,式(9)是GAT聚合中心節點的所有鄰居的交通流量數據的過程,Wq、Wke為可訓練參數。式(10)展示了利用鄰居節點信息所捕獲的中心節點所受到的空間依賴關系的方法。其中,Yc={Xct|t=1,2,···,τ}為給出的中心節點的交通流量數據序列;Yi={Xit|t=1,2,···,τ},i∈{1,2,···,r}為Xn中的一行的一部分,是具體某一個鄰居的數據序列。

把tRIM得到的交通流量的潛在狀態與空間依賴關系的隱狀態串聯起來,經過全連接層得到G-tRIM的預測值。最終的表述為

因此,該模型的損失函數為

3 實驗

將本文提出的G-tRIM模型放在2個真實世界的數據集上進行實驗,并與其他的基準方法進行對比,以驗證該模型的性能。

3.1 數據集與預處理

數據集1:貴州數據集。該數據集提供了貴州某一地區的道路地圖,并給出了各個路口之間連續8 d從早上6點到晚上8點的交通流量,流量數據以30 s為周期統計一次。使用所有道路的所有數據。由于原始數據中有過多為0的數據,把數據聚合為10 min統計一次,降低數據的稀疏性。選取其中前5 d的數據作為訓練集,后面3 d的數據作為測試集。

數據集2:北京數據集。該數據集把北京市按經緯度均等切分為32×32的1 024個網格,并以30 min 為周期統計一次每個網格的流入流出流量,記錄時間為2015年11月1日至2016年4月10日。選取最中央的16×16的256個網格的流出數據進行實驗。選取其中2015年11月、12月以及2016年1月的數據作為訓練集,2016年2月、3月和4月的數據作為測試集。

因為以上2個數據集的數據都存在相近的交通節點的流量值相差過大的特點,所以把流量縮小為原來的1/50,以縮小交通節點間的差異。

3.2 對比實驗

對比實驗的模型為:(1) 差分整合移動平均自回歸模型(Autoregressive Integrated Moving Average model, ARIMA) ,ARIMA是一種經典的參數模型,適合使用在線性數據上,處理交通流量這種非線性高復雜度的數據時效果欠佳。(2) 長短期記憶網絡(Long Short-Term Memory, LSTM) ,LSTM是使用門控機制的循環神經網絡,LSTM的預測效果好于ARIMA。(3)循環獨立機制(Recurrent Independent Mechanisms,RIM) ,RIM由多個子網絡組成,各個子網絡都訓練出了不同的模塊化的功能,能更有效地提取輸入數據中的有效信息,因此RIM的預測效果要比LSTM好。(4) 時空圖卷積神經網絡(Spatio-Temporal Graph Convolutional Networks, STGCN) ,STGCN使用連續的2個時空卷積塊捕獲交通流量的時空依賴性,每個時空卷積塊都包含一維時域卷積與二維空域卷積。(5) 基于注意力機制的時空圖卷積網絡(Attention Based Spatial-Temporal Graph Convolutional Networks,ASTGCN) ,ASTGCN使用3個一致的結構提取數據3個層次的特征,每個結構都由包含時空注意力提取模塊與時空卷積模塊的時空卷積塊殘差連接組成。

STGCN與ASTGCN都考慮了交通流量的空間影響,但還存在以下2個問題:(1) 忽略了交通流量潛在狀態是會隨時間變化的,只輸入流量序列,而沒給出對應的時間,讓模型在判斷對應的潛在狀態時不太準確;(2) 沒有考慮交通流量的空間影響的時刻動態變化的特性。

針對上述2個問題,本文提出了G-tRIM(Graph Temopral Recurrent Independent Mechanisms)模型。GtRIM在捕獲交通流量的時間依賴關系時,給tRIM輸入了每個時間片的流量數據以及對應的時間數據,因此能更準確地計算該時間步的輸入與各個子網絡的相關性,再選擇子網絡進行激活,這樣能更準確地建模當前的潛在狀態;在捕獲空間依賴關系時,GAT能對不同時刻的鄰居信息動態地賦予不同的影響權重,更符合交通流量時刻變化的空間影響的建模需求。

以均方誤差MSE和平均絕對誤差MAE為指標,G-tRIM模型在貴州和北京數據集中獲得最優結果。實驗結果如表1所示。

表1 不同模型的實驗結果Table 1 Experiments' results based on different models

3.3 消融實驗

3.3.1 時間步數據

把輸入數據中的時間步信息拿掉,只輸入節點數據序列與圖結構得到G-RIM模型(Graph Recurrent Independent Mechanisms)。該模型用RIM捕獲交通流量數據的時間依賴關系,用GAT來捕獲交通流量數據的空間依賴關系。因為加入了鄰居信息,能捕獲節點所受到的空間影響,其實驗結果優于RIM;但是RIM忽略了時間信息對交通流量的潛在狀態的影響,只使用了交通流量數據捕獲到的交通流量的時間依賴,因此不如G-tRIM的實驗結果。

3.3.2 鄰居信息

把輸入數據中的鄰居數據拿掉,只輸入節點數據與時間步內容得到tRIM模型(Temopral Recurrent Independent Mechanisms)。該模型用tRIM捕獲交通流量數據的時間依賴關系,能更準確地捕獲交通流量的潛在狀態,該方案的實驗結果優于RIM,但是缺乏了鄰居信息導致無法捕獲空間影響,所以不如GtRIM的實驗結果。實驗結果如表2所示。

表2 消融實驗結果Table 2 Ablation experiments' results

3.4 參數討論

本文提出的G-tRIM模型有2個重要參數需要設置,分別是tRIM中的子網絡的個數g,和每次激活的子網絡個數f。圖3為在貴州數據集中以MSE為指標進行實驗,在不同實驗參數設置下的結果。

圖3 不同參數的實驗結果Fig.3 Experiments' results under defferent parameters setting

實驗表明,選擇子網絡的數量并非越多越好,當子網絡的數量太少時,各子網絡無法訓練出足夠細致的模式,模型無法充分建模流量的潛在狀態;當子網絡數量太多時,各子網絡的功能存在重復,加大模型的訓練難度,模型的預測精準度反而下降。如圖3所示,在貴州數據集的實驗結果中,最好的是選擇4個子網絡,每次激活2個子網絡。選定了4個子網絡(g= 4),若選擇1個子網絡進行激活,每個時間步網絡都會丟棄較多內容,結果欠佳;若選擇2個子網絡進行激活,網絡獲得的信息量恰好,得到最好的Loss為0.129;若選擇3個子網絡進行激活,網絡接收的信息中包含了不重要的信息甚至是錯誤信息,影響實驗效果;若選擇4個子網絡進行激活,則無法達到不同子網絡訓練出不同效果的作用。

消融實驗證實了時間步信息與鄰居信息對于交通流量預測的重要性;通過參數討論實驗選擇合適的超參數,使模型獲得最精準的預測結果。G-tRIM分別使用tRIM與GAT來建模交通流量數據的時間依賴關系與空間依賴關系,實驗結果在2個數據集上都優于各對比方法,展現了G-tRIM的較優性能。

4 結論

針對交通流量預測問題中如何精準地捕獲交通流量數據的時空依賴關系的難題,本文提出了基于循環獨立機制RIM的G-tRIM模型。該模型使用改進的RIM有效地融合了交通流量數據中的流量數據與時間步數據,精準刻畫了交通流量數據的潛在狀態,有效地捕獲了交通流量數據的時間依賴關系;使用圖注意力網絡給節點的各個鄰居動態地分配不同的權重,解決了交通流量受空間影響動態變化的難題,有效地捕獲了交通流量數據的空間依賴關系。該模型在2個數據集上的實驗均得到了較精準的預測結果。

猜你喜歡
交通流量神經網絡預測
無可預測
選修2-2期中考試預測卷(A卷)
選修2-2期中考試預測卷(B卷)
神經網絡抑制無線通信干擾探究
基于XGBOOST算法的擁堵路段短時交通流量預測
基于GA-BP神經網絡的衡大高速公路日交通流量預測
不必預測未來,只需把握現在
基于神經網絡的拉矯機控制模型建立
復數神經網絡在基于WiFi的室內LBS應用
基于支持向量機回歸和RBF神經網絡的PID整定
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合