錢淑韻
(同濟大學電子與信息工程學院,上海 200092)
智慧交通系統是智慧城市的一個重要組成部分,為出行者提供便利、安全、智能的交通運輸服務。在智能交通系統中,長時交通預測是一個重要問題,準確地預測未來某段時間內的交通狀態變化有利于交通線路規劃、防止交通擁堵等。
基于短時的預測模型進行簡單的迭代也可以實現長時預測,但隨著預測序列的長度增加,誤差會不斷累積,并且在捕獲未來時間序列的趨勢性和周期性方面具有一定的缺陷。Encoder-Decoder 模型是序列預測問題的一個通用框架,Seq2Seq(sequence-to-sequence)屬于Encoder-Decoder 的一類方法的統稱,其優點是輸入序列和輸出序列的長度可變,被廣泛應用于長時交通預測問題。
本文將動態時間規整算法(dynamic time warping,DTW)[1]納入長時預測方法的評估體系,考慮模型預測交通趨勢性的能力。在國內外相關研究的基礎上將多圖卷積和注意力機制納入Seq2Seq 結構中,提出一個基于多圖卷積和注意力的長時交通預測框架,其中編碼器是一個納入多圖卷積的GRU 網絡,編碼器的輸出通過注意力機制層后輸入解碼器,得到最終的預測結果。此外,探討不同的解碼器結構對長時交通預測的影響。最后,在紐約自行車真實數據集上進行實驗,驗證所提出的框架在城市區域長時交通預測場景的性能。
Seq2Seq 由編碼器和解碼器組成,編碼器基于輸入的序列生成一個中間向量,解碼器基于該中間向量輸出預測序列。
常用的解碼器結構主要包括全連接層FC、卷積神經網絡CNN 這類簡單的網絡,以及循環神經網絡。基于簡單網絡的解碼器通常堆疊多個層,每個層的輸出映射為未來某個時間片的預測值。STSGCN[2]和DSTAGCN[3]使用多個全連接層網絡,AGCRN[4]則使用CNN 作為解碼器,它們用于紐約高速公路車輛速度的長時預測。這種網絡結構簡單,計算速度快,但是捕獲信息的能力有限。
基于循環神經網絡的解碼器通常將中間向量作為解碼器的初始隱藏狀態,DCRNN[5]的編碼器和解碼器都基于門循環單元(gate recurrent unit,GRU),解碼器的每個GRU單元的輸出對應未來某個時間片的預測結果。Multi-Graph[6]預訓練階段的編碼器和解碼器都基于長短期記憶神經網絡(long short term memory network,LSTM),測試階段的解碼器基于全連接層。
在編碼階段和解碼階段可能會出現信息丟失, GMAN[7]為了減少解碼階段的誤差傳播效應,結合注意力機制計算未來每個時間片和歷史時間片的相關性,得到的中間向量作為解碼器的輸入。
基于Seq2Seq結構的長時交通預測問題定義如下:給定城市的交通圖結構G,一組由歷史P個時間片的觀察組成的時間序列,區域進出總流量{Xt|t=T-P+ 1,…,T- 1,T}和區域間的轉移流量{St|T-P+ 1,…,T- 1,T},構建編碼器模型ME和解碼器MD,學習它們的最優參數ΘE和ΘD,ME基于歷史交通數據生成編碼特征Emd,MD基于編碼特征預測未來Q個時間間隔的城市每個區域的交通狀況。形式化表示為
短時序列預測的評估常采用每個時間片按點對點計算該時間片內的誤差,然后取平均值,如MAE、RMSE 等。對于長時預測,不僅需要關注每個對應時間片的誤差,未來時間序列的趨勢性也很重要。例如某個方法可以捕獲到未來時間序列的趨勢,但存在著一定的滯后或提前,這種情況下只使用點對點的指標評估會忽略方法捕獲趨勢性的能力,而面向由于惡劣天氣、道路突發事件等引起的交通擁堵等場景,未來時間序列的趨勢性很重要。
動態時間規整算法(DTW)[1]用于計算兩個序列的相似性,其中序列的每個時間片可以和另一個序列的一個或多個時間片匹配。因此,本文基于DTW 算法計算真實序列和預測序列的相似性,將其納入長時交通預測的評估體系,使長時交通預測方法的評估更豐富。
考慮區域之間三種不同的依賴關系:①鄰居關系:鄰接的區域之間的關系很密切,并且某個區域與每個鄰接區域的密切關系是可以不同的;②流量交互關系:由于交通便利,不鄰接的區域之間也可能存在頻繁的流量交互,并且這種關系會隨時間動態變化;③交通模式關系:有些區域之間沒有頻繁的流量交互,但具有相似的交通模式,如距離較遠的兩個學校。
本文基于Seq2Seq結構,提出基于多圖卷積和注意力的長時交通預測框架(multi-graph convolution and attention network for long-term traffic prediction,MGANL)??蚣艿慕Y構如圖1 所示,主要由以下四個部分組成:①多圖生成模塊:基于上文介紹的三種依賴關系,分別構建鄰居圖,流量交互圖和交通模式圖。②編碼器:一個納入多圖卷積的GRU,用于同時建模時間相關依賴和多尺度的空間相關依賴,生成特征編碼。③注意力機制層:引入注意力機制,對特征編碼進行處理,生成解碼器可用的中間向量。④解碼器:基于中間向量和歷史輸入數據進行解碼,得到最終的預測結果。本文不限定解碼器的網絡結構,僅提出一個預測框架,并探討不同的解碼器結構對長時預測的影響。

圖1 基于多圖卷積和注意力的長時交通預測框架
多圖生成模塊構建三個圖來編碼區域之間不同的依賴關系。其中鄰居圖AN編碼鄰接區域之間的關系,定義如公式(1)和公式(2)所示;流量交互圖AF編碼有頻繁流量交互的區域之間的關系,通過歸一化歷史區域之間轉移的流量來構建;交通模式圖AP挖掘隱藏在歷史交通數據中的依賴關系,t時間間隔內的交通模式圖定義如公式(3)和公式(4)所示。其中,W和We為可學習的參數,Et∈?N×d,We∈?d×N,N為城市區域(圖節點)個數,d為節點嵌入維度。
MGANL 的編碼器使用納入多圖卷積的GRU(MGGCU),使用多圖卷積替換GRU 中的MLP層,如公式(5)至(9)所示。其中,Et為交通模式圖中學習的參數,W(·)和b(·)均為可學習的參數。連接編碼器中每個MGGRU 單元的輸出生成特征編碼,即H=[h0,…,hP-1]∈?P×N×H,H為編碼器的輸出特征維度。
當輸入或輸出序列較長時,在編碼階段和解碼階段可能會發生信息丟失,注意力機制為緩解該問題提供了一個方向。本框架主要使用兩種注意力機制:基于線性變換的注意力機制和基于點積的注意力機制。
編碼器生成的特征向量H包含了編碼過程中的上下文信息,記編碼器中最后一個MGGRU單元的隱藏狀態為Emd。對于解碼器為非循環神經網絡的模型,計算特征向量H和Emd的相似度,為編碼過程中產生的上下文信息分配一個相應的權重,上下文信息的加權和作為中間向量C0。
對于解碼器為循環神經網絡的模型,將Emd作為解碼器的初始隱藏狀態,將中間向量C0和距離預測序列最近的歷史交通狀態堆疊作為解碼器的輸入。每次得到新的隱藏狀態后更新Emd,重新計算H和Emd的相似度,得到新的中間向量Ci。
相似度的計算主要包含以下兩種方式,分別為線性層變換(LA)和內積相乘(DA)?;诰€性層變換的相似度計算過程如公式(10)至公式(12)所示。其中VT和Wh為可學習的參數,α?i為hi所對應的歸一化權重。
內積相乘(DA)不再將H和Emd堆疊,而是分別輸入線性層,然后計算輸出的內積。具體計算方式如公式(13)和公式(14)所示。其中,Wk和Wq為可學習的參數。dk是隱藏特征的維度,用于縮放點積。
本文為短時預測模型擴展到長時預測提供參考,由于目前先進的交通預測方法大多基于動態圖卷積,它們需要實時計算鄰接矩陣,考慮到模型的復雜性,本框架使用一些較為簡單的網絡結構作為解碼器,包括全連接層FC、卷積神經網絡CNN和GRU。
FC 和CNN 結構簡單,參數量少,運算速度快?;贔C 或CNN 的解碼器可以有效降低模型的復雜性。使用多個FC 層或CNN 卷積核,如圖2 所示,每個FC 或CNN 把中間向量映射為一維的時間維度,使每個時間片有獨立的參數空間,其中C'為需要預測的屬性個數。

圖2 基于FC/CNN的解碼器結構
基于GRU 的解碼器相較于第一類結構,預測的多個時間片之間可以傳遞信息,但是計算速度相對較慢。如圖3所示,中間向量作為解碼器的初始隱藏狀態,并且堆疊歷史輸入序列作為解碼器新的輸入。使用2.3 小節中介紹的相似度計算方法計算Emd和H的相似度,得到新中間向量C0∈?N×H。距離預測序列最近的Q個歷史交通狀態經過一個線性層后得到嵌入X'∈?Q×N×H。X't和Ci-1堆疊作為解碼器中GRU單元新的輸入,計算該單元的輸出h'i和H的相似度,得到新中間向量Ci。解碼器的第i個GRU單元的輸出h'i通過一個線性層后映射為t+i時間片的預測結果。

圖3 基于GRU的解碼器結構
本文的實驗平臺為Windows10 系統,Intel(R)Xeon(R)CPU E5-2620 v4@2.10 GHz,NVIDIA GeForce GTX 1080Ti GPU。算法采用PyTorch1.8.0GPU框架和Python 3.6實現。
本文使用NYCBike[8]這個公開的真實交通數據集進行實驗,評估本文所提出的長時交通預測框架。將紐約劃分為10 × 20 的網格區域,NYCBike 數據集包含紐約市2016 年7 月~8 月的自行車租賃數據,每個時間片為30 分鐘,數據采用Z-score的歸一化方法進行預處理。
使用五個指標評估模型的預測性能,包括計算點對點誤差的MAE、RMSE、MAPE、PCC指標,以及評估模型面向長時預測捕獲趨勢性能力的DTW指標。
基于歷史12 個時間片內的交通流量數據,預測未來6 個時間片每個區域的流量進出情況,比較各個方法的總體性能,結果如表1所示。表格中的1 h,2 h和3 h三列分別表示第2,第4和第6個時間片的預測結果的誤差,加粗的數值為該指標在當前時間片的最優結果。

表1 NYCBike數據集上各方法的總體性能比較
實驗驗證所提出的MGANL 框架在長時交通預測場景的有效性,關注不同解碼器結構對于長時預測的影響。其中GRU-Decoder 表示編碼器為GRU 的預測方法,MGNL 表示去除注意力機制的MGANL方法。
相比編碼器為簡單GRU 的方法,基于MGGRU 的方法明顯表現較好,該類方法考慮區域間的多種相關依賴,可以取得更好的預測效果。對于編碼器結構較為簡單的情況,直接使用簡單網絡作為解碼器表現相對較差。對于編碼器結構較為復雜的情況,由于編碼器具有良好的時空建模能力,解碼器僅基于FC 和CNN 的方法表現優異,結合注意力機制的MGANL 方法與MGNL 方法相比預測性能有所提升,這驗證了在編碼階段可能有一些信息存在丟失,而注意力機制可以補充這些丟失的信息。同時,這些信息可能會影響模型對序列趨勢性的預測。
綜上所述,通過對比各個模型面向長時預測問題的實驗結果可以驗證所提出的基于多圖卷積和注意力的長時交通預測框架的有效性,注意力機制可以緩解在編碼和解碼過程中信息丟失的問題,有助于提高長時的交通預測性能。
面向城市區域長時交通預測問題,將衡量模型捕獲長時趨勢性能力的指標DTW 納入評估體系,并提出一種基于多圖卷積和注意力的長時交通預測框架。提出的框架基于Seq2Seq 結構,編碼器基于納入多圖卷積的GRU,同時建模時間相關依賴和多尺度的空間相關依賴,生成特征編碼。注意力機制層基于特征編碼生成中間向量,減少編碼和解碼過程中的信息丟失。解碼器基于中間向量和歷史交通狀態預測未來長時間的交通流量的變化情況。此外,研究不同解碼器結構對長時預測的影響,有助于其他短時預測模型擴展到長時預測場景。通過在紐約自行車數據集上的實驗驗證了所提框架在長時交通預測場景的有效性。