王雨松, 吳向東, 尤晨欣, 廖 聰
(長(zhǎng)安大學(xué) 信息工程學(xué)院, 西安 710064)
隨著城市化進(jìn)程的推進(jìn), 不斷擴(kuò)張的路網(wǎng)便利居民出行的同時(shí)也存在著諸多隱患, 道路的嚴(yán)重堵塞降低了交通系統(tǒng)的運(yùn)轉(zhuǎn)效率, 加大了交通事故發(fā)生的概率. 智慧交通系統(tǒng)(intelligent traffic system, ITS)[1]的出現(xiàn)為上述存在的問(wèn)題找到了一個(gè)合理的解決方案. 精確的短時(shí)交通流預(yù)測(cè)已發(fā)展為ITS研究的重要領(lǐng)域之一, 高效準(zhǔn)確的預(yù)測(cè)結(jié)果成為了助力出行者路線選擇和管理者路徑規(guī)劃的有力保障.
短時(shí)交通流的預(yù)測(cè)模型主要可以分為4類: 基于傳統(tǒng)統(tǒng)計(jì)建模的模型、機(jī)器學(xué)習(xí)模型、基于大數(shù)據(jù)驅(qū)動(dòng)的深度學(xué)習(xí)模型、基于拓?fù)淇臻g的圖神經(jīng)網(wǎng)絡(luò)(graph neural network, GNN)模型.
基于統(tǒng)計(jì)方法的模型是基于數(shù)理統(tǒng)計(jì)的方法處理交通數(shù)據(jù), 此類模型主要是以自回歸滑動(dòng)平均(autoregression moving average, ARMA)及其改進(jìn)算法為代表.楊東龍[2]利用差分自回歸滑動(dòng)平均(autoregression integrated moving average, ARIMA)對(duì)區(qū)間車流量進(jìn)行多個(gè)時(shí)間周期的預(yù)測(cè); 靳小飛[3]利用自回歸分?jǐn)?shù)整合移動(dòng)平均(autogression fractionally integrated moving average,ARFIMA)分析序列的長(zhǎng)期記憶性來(lái)預(yù)測(cè)短時(shí)交通流.此類模型應(yīng)用簡(jiǎn)單, 但適用性與實(shí)時(shí)性不強(qiáng), 當(dāng)實(shí)際情況與參數(shù)標(biāo)定時(shí)的交通狀態(tài)相差較大時(shí), 預(yù)測(cè)誤差偏高.
隨著人工智能的普及, 機(jī)器學(xué)習(xí)應(yīng)運(yùn)而生, 此類模型可以分為基于特征的模型和狀態(tài)空間模型. 前者是通過(guò)訓(xùn)練交通數(shù)據(jù)的回歸模型進(jìn)行預(yù)測(cè)分析, 張?zhí)煲莸萚4]利用K均值聚類(K-means clustering)來(lái)提取徑向基函數(shù)(radial basis function, RBF)神經(jīng)網(wǎng)絡(luò)的中心向量, 提出了一種多維時(shí)間序列的交通流預(yù)測(cè)模型; 后者是基于系統(tǒng)隨機(jī)性構(gòu)建模型, 申啟東等[5]利用馬爾科夫鏈(Markov chain)對(duì)相關(guān)路網(wǎng)之間進(jìn)行建模分析, 改進(jìn)了權(quán)值計(jì)算公式來(lái)度量關(guān)聯(lián)路段間的權(quán)值, 通過(guò)“滴滴打車”平臺(tái)數(shù)據(jù)驗(yàn)證了模型的可靠性. 機(jī)器學(xué)習(xí)雖提高了模型的計(jì)算效率, 但關(guān)鍵參數(shù)的設(shè)置較為困難. 為進(jìn)一步提高模型預(yù)測(cè)精度, 基于大數(shù)據(jù)驅(qū)動(dòng)的深度學(xué)習(xí)模型預(yù)測(cè)交通流成為了行業(yè)新的研究熱點(diǎn). 克服了循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network, RNN)不能保存歷史狀態(tài)信息問(wèn)題的長(zhǎng)短期記憶網(wǎng)絡(luò)(long short term memory, LSTM)模型被廣泛應(yīng)用于時(shí)間序列預(yù)測(cè), 產(chǎn)生了許多基于LSTM的短時(shí)交通流預(yù)測(cè)模型[6-9].
雖然端到端的深度學(xué)習(xí)模型可捕獲交通流序列的非線性特征[10], 但卻無(wú)法處理時(shí)空交通流這種具有天然圖結(jié)構(gòu)特性的非歐數(shù)據(jù), 不能充分挖掘交通路網(wǎng)拓?fù)鋱D中節(jié)點(diǎn)間的連接關(guān)系. 因此, 基于圖卷積神經(jīng)網(wǎng)絡(luò)[11]的方法成為了挖掘交通流時(shí)空特性的有效途徑. Cui等[12]提出的圖卷積長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)(GCN-LSTM)通過(guò)學(xué)習(xí)路網(wǎng)中路段之間的相互關(guān)聯(lián)預(yù)測(cè)交通狀態(tài), 并將圖卷積特征引入到損失函數(shù)中增強(qiáng)模型可解釋性;Zhang等[13]提出的時(shí)空卷積圖注意力網(wǎng)絡(luò)(spatialtemporal convolutional graph attention network, STCGN)在路網(wǎng)局部空間相關(guān)性基礎(chǔ)上考慮了全局區(qū)域間相關(guān)性, 實(shí)現(xiàn)了從局部到全局的全面交通流預(yù)測(cè);Song等[14]提出一種時(shí)空同步圖卷積網(wǎng)絡(luò)模型, 該模型能有效捕捉交通狀態(tài)的復(fù)雜局部時(shí)空關(guān)聯(lián)和區(qū)域時(shí)空?qǐng)D的異質(zhì)性; Zheng等[15]提出了一種結(jié)合GCN和多任務(wù)學(xué)習(xí)(multi-task learning, MTL)的異常交通數(shù)據(jù)預(yù)測(cè)混合模型, 并驗(yàn)證了隨機(jī)缺失等異常模式下系統(tǒng)的魯棒性. 雖然此類模型能挖掘路網(wǎng)中交通流數(shù)據(jù)的時(shí)空特征, 但單一模型的預(yù)測(cè)結(jié)果受交通流隨機(jī)性擾動(dòng)較大.
本文提出了基于DWT-GCN模型的短時(shí)交通流預(yù)測(cè)方法. 利用DWT算法將交通流序列分解為近似分量與細(xì)節(jié)分量, 細(xì)化交通流信息, 降低序列非平穩(wěn)性; 優(yōu)化路網(wǎng)拓?fù)鋱D結(jié)構(gòu)的鄰接矩陣, 深度挖掘路網(wǎng)的時(shí)空關(guān)聯(lián); 將分解的交通流數(shù)據(jù)作為GCN的輸入, 并對(duì)各組預(yù)測(cè)結(jié)果進(jìn)行重構(gòu), 得到最終預(yù)測(cè)值. 利用PeMS數(shù)據(jù)庫(kù)中交通流數(shù)據(jù)驗(yàn)證了模型預(yù)測(cè)短時(shí)交通流的有效性.
圖的定義為: G =(V,E), 其中V 為圖中的節(jié)點(diǎn)集合,E為圖中邊的集合. 圖卷積網(wǎng)絡(luò)是卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network, CNN)在圖結(jié)構(gòu)上的擴(kuò)展, 從非歐空間的拓?fù)鋱D中捕獲空間關(guān)聯(lián), 提取圖結(jié)構(gòu)數(shù)據(jù)中的空間特征. GCN對(duì)交通流序列的預(yù)測(cè)是以圖為最小單位的, 在實(shí)際路網(wǎng)中, 節(jié)點(diǎn)代表路段中不同位置處傳感器, 邊代表路段中不同傳感器之間的空間物理關(guān)系.GCN算法的核心思想是一種消息傳遞機(jī)制, 構(gòu)建目標(biāo)節(jié)點(diǎn)的鄰域空間, 從輸入圖數(shù)據(jù)節(jié)點(diǎn)的鄰域中聚焦信息對(duì)中心節(jié)點(diǎn)特征進(jìn)行更新, 經(jīng)典的圖卷積神經(jīng)網(wǎng)絡(luò)模型如圖1所示.

圖1 圖卷積神經(jīng)網(wǎng)絡(luò)模型圖

其中, A +I 表示添加一個(gè)自環(huán)的鄰接矩陣; D為度矩陣;D-1/2(A+I)D-1/2表示對(duì)鄰接矩陣的歸一化操作, 該項(xiàng)的引入緩解了深度學(xué)習(xí)模型中數(shù)值發(fā)散、梯度消失或爆炸的問(wèn)題. 輸入X ∈RM×N通過(guò)一階鄰居節(jié)點(diǎn)的選取、連接權(quán)重W(0)∈RN(0)×N(1)和 激活函數(shù)σ 映射為第一層的輸出 H(1)∈RM×N; 同理, 第l +1層 的輸出H(l+1)∈RM×N是在第l層特征輸出 H(l)∈RM×N基礎(chǔ)上通過(guò)兩層之間連接權(quán)重 W(l+1)∈RN(l)×N(l+1)進(jìn)行鄰居節(jié)點(diǎn)信息的傳遞和目標(biāo)節(jié)點(diǎn)特征的聚合更新.
GCN算法不僅對(duì)參數(shù)W 的初始化沒(méi)有嚴(yán)格要求,而且通過(guò)較淺的模型就能有效地更新節(jié)點(diǎn)特征, 降低模型訓(xùn)練的時(shí)間復(fù)雜度.
非平穩(wěn)的交通流序列在單一的預(yù)測(cè)模型下不易得到精準(zhǔn)的預(yù)測(cè)結(jié)果, 因此結(jié)合離散小波變換降低序列隨機(jī)性的特點(diǎn)和圖神經(jīng)網(wǎng)絡(luò)挖掘非歐數(shù)據(jù)時(shí)空特征的優(yōu)點(diǎn), 對(duì)GCN預(yù)測(cè)模型進(jìn)行優(yōu)化, 基于DWT-GCN預(yù)測(cè)模型流程如圖2所示.

圖2 DWT-GCN模型流程圖
假設(shè)給定的路網(wǎng)有 M個(gè)路段, 每個(gè)路段采集的交通流序列長(zhǎng)度為 N , 則模型的路網(wǎng)輸入X 可表示為:其 中 xm表 示 第m 個(gè)路段的交通流序列. 模型的具體訓(xùn)練及預(yù)測(cè)步驟如下:
(1)對(duì)路網(wǎng)輸入X 進(jìn)行多級(jí)DWT分解[16,17], 以 xm為例, 將其分解為細(xì)節(jié)分量 xm1、 細(xì)節(jié)分量 xm2, 細(xì)節(jié)分量xm3,…, 細(xì)節(jié)分量 xm(J-1), 近似分量 xmJ. 其中, xmj為xm小波分解的第 j 分量, j ∈{1,2,···,J}.
(2)將小波分解后的交通流量時(shí)間序列輸入到GCN模型中訓(xùn)練, 挖掘交通流序列的時(shí)空特性. GCN模型輸入 XG_in如 式(5)所示, 其中 xmj(t)為 路段m 處 第 j分量t時(shí)刻的交通流量, 0 <t≤N.

對(duì)于路段 m , 設(shè)定訓(xùn)練集序列長(zhǎng)度為ltr, 測(cè)試集序列長(zhǎng)度為 lte=N-ltr, 預(yù)測(cè)步長(zhǎng)τ, 由原始數(shù)據(jù)集構(gòu)建GCN預(yù)測(cè)模型的訓(xùn)練集輸入 TRm_in、訓(xùn)練集輸出trm_out與測(cè)試集輸入T Em_in; 同理, 對(duì)于 M 個(gè)路段圖數(shù)據(jù), 通過(guò)構(gòu)建GCN預(yù)測(cè)模型輸入訓(xùn)練集T Rin和輸出預(yù)測(cè)序列 TRout來(lái)訓(xùn)練網(wǎng)絡(luò)參數(shù), 并對(duì)輸入測(cè)試集T Ein進(jìn)行預(yù)測(cè), 從而實(shí)現(xiàn)完整路網(wǎng)短時(shí)交通流預(yù)測(cè).




將式(9)-式(11)代入式(1)-式(4)中, 得到路網(wǎng)圖數(shù)據(jù)的預(yù)測(cè)輸出 Hj, 其中hmj為 路段m 處 第 j分量的模型預(yù)測(cè)結(jié)果.

(3)對(duì)各個(gè)GCN的輸出結(jié)果進(jìn)行重構(gòu), 得到組合模型的最終輸出預(yù)測(cè)結(jié)果Hout:

(4) GCN網(wǎng)絡(luò)中鄰接矩陣 A反映節(jié)點(diǎn)之間是否連通, 節(jié)點(diǎn)之間的權(quán)值則反映了節(jié)點(diǎn)之間重要程度. 基于不同空間距離對(duì)節(jié)點(diǎn)間交通流影響程度的差異不同,重新定義一種基于數(shù)據(jù)驅(qū)動(dòng)的鄰接矩陣A′如式(14), 其中γij、dij分別為節(jié)點(diǎn)i 、j之間的皮爾遜相關(guān)系數(shù)和歐氏距離, T H表示閾值.

基于DWT-GCN的短時(shí)交通流預(yù)測(cè)模型一方面可以通過(guò)小波分解降低交通流序列由于外部因素導(dǎo)致的隨機(jī)性; 另一方面, 根據(jù)改進(jìn)的鄰接矩陣可以有效地捕獲路網(wǎng)拓?fù)鋱D的鄰近關(guān)系, 深度挖掘路網(wǎng)的時(shí)空特性,更加擬合真實(shí)應(yīng)用場(chǎng)景. 但當(dāng)路網(wǎng)圖數(shù)據(jù)過(guò)大時(shí), 構(gòu)造鄰接矩陣與選擇鄰近路段節(jié)點(diǎn)的計(jì)算復(fù)雜度較大. 因此, 雖然大規(guī)模路網(wǎng)圖數(shù)據(jù)會(huì)降低模型預(yù)測(cè)效率, 但是該模型整體能夠保持較高的預(yù)測(cè)性能, 可以適用于城市公路短時(shí)交通流預(yù)測(cè)問(wèn)題.
選用公開(kāi)數(shù)據(jù)集PeMS04作為本文實(shí)驗(yàn)數(shù)據(jù), 該數(shù)據(jù)集包括路網(wǎng)中307個(gè)節(jié)點(diǎn)實(shí)測(cè)交通流數(shù)據(jù)及節(jié)點(diǎn)之間的連接關(guān)系. 交通流數(shù)據(jù)采集時(shí)間從2018年1月1日到2018年2月28日共59天, 采樣周期5分鐘, 共采集16 992條交通流量. 將前49天數(shù)據(jù)為訓(xùn)練集, 后10天數(shù)據(jù)為驗(yàn)證集, 即 M =307, N =16992, ltr=14112,lte=2880.
選擇平均絕對(duì)誤差(mean absolute error, MAE)和平均絕對(duì)百分比誤差(mean absolute percentage error,MAPE)為模型的評(píng)價(jià)指標(biāo), 計(jì)算如式(16)-式(17)所示:

在PyTorch框架下搭建實(shí)驗(yàn)所需模型, 采用Python 3.7進(jìn)行程序開(kāi)發(fā). 實(shí)驗(yàn)中參數(shù)設(shè)置如下: 對(duì)交通流數(shù)據(jù)進(jìn)行3級(jí)小波分解得到4組分量; 訓(xùn)練迭代50次;批處理為64; 預(yù)測(cè)步長(zhǎng)τ =6; GCN模型層數(shù)為3層; 激活函數(shù)為L(zhǎng)eakyReLU. DWT算法分解交通流效果如圖3,效果圖以路網(wǎng)中第165節(jié)點(diǎn)一天的數(shù)據(jù)為例, 小波分解細(xì)化交通流特征, 細(xì)節(jié)分量和近似分量分別反映交通流的隨機(jī)波動(dòng)項(xiàng)和長(zhǎng)期趨勢(shì)項(xiàng); DWT-GCN模型預(yù)測(cè)結(jié)果如圖4, 預(yù)測(cè)結(jié)果MAE和MAPE分別為4.596 1、5.12%, 預(yù)測(cè)值與真實(shí)值整體上具有很高的擬合程度,表明了DWT-GCN模型預(yù)測(cè)短時(shí)交通流的有效性.

圖3 基于DWT分解的交通流子序列

圖4 預(yù)測(cè)結(jié)果曲線
(1)不同模型預(yù)測(cè)結(jié)果對(duì)比
為驗(yàn)證模型的高效性, 選擇ARIMA、小波神經(jīng)網(wǎng)絡(luò)(wavelet neural network, WNN)、GCN三種模型與本文模型進(jìn)行預(yù)測(cè)結(jié)果對(duì)比分析. ARIMA模型通過(guò)前n 個(gè)數(shù)據(jù)預(yù)測(cè)第n +1個(gè) 數(shù)據(jù), 模型自回歸階數(shù) p=4, 差分階數(shù) d =1, 滑動(dòng)平均階數(shù)q =4; WNN模型隱層節(jié)點(diǎn)6個(gè), 迭代次數(shù)100次, 學(xué)習(xí)率 lr=0.001, 預(yù)測(cè)步長(zhǎng)τ=6; GCN模型與本文提出的混合模型中GCN部分參數(shù)設(shè)置一致. 圖5為不同模型預(yù)測(cè)結(jié)果, 表1表示不同模型預(yù)測(cè)性能.

圖5 不同模型預(yù)測(cè)結(jié)果曲線對(duì)比

表1 不同模型預(yù)測(cè)性能
根據(jù)圖5和表1可知, ARIMA模型整體上反映了交通流數(shù)據(jù)的變化趨勢(shì), 但模型預(yù)測(cè)性能較差, 預(yù)測(cè)結(jié)果精度低; WNN模型相對(duì)于ARIMA預(yù)測(cè)精度得到了改善, 但僅考慮時(shí)間特性的模型不易挖掘交通流數(shù)據(jù)的空間特征; GCN模型利用拓?fù)鋱D結(jié)構(gòu)提取時(shí)空特性,進(jìn)一步強(qiáng)化了模型預(yù)測(cè)性能. 相比于ARIMA、WNN、GCN模型, DWT-GCN通過(guò)小波分解降低了交通流的非平穩(wěn)性, 預(yù)測(cè)模型的MAE、MAPE平均降低57%和59%, 表明DWT-GCN模型預(yù)測(cè)性能好, 預(yù)測(cè)精度高,能深度挖掘路網(wǎng)下交通流數(shù)據(jù)的時(shí)空特性, 反映真實(shí)的路網(wǎng)信息.
(2)參數(shù)分析
分析基于數(shù)據(jù)驅(qū)動(dòng)的鄰接矩陣A′以及相關(guān)系數(shù)閾值T H 對(duì)模型預(yù)測(cè)性能的影響. 鄰接矩陣A′是A 的一種修正形式, 模型預(yù)測(cè)效果對(duì)比如圖6所示, 預(yù)測(cè)值1、2分別表示鄰接矩陣修正前、后模型預(yù)測(cè)結(jié)果. 從圖6可以看出, 預(yù)測(cè)值2相比于預(yù)測(cè)值1在早、晚高峰處與真實(shí)值的擬合程度更高, 更加準(zhǔn)確地預(yù)測(cè)了交通流變化趨勢(shì). 因此, 鄰接矩陣的修正更大程度助力了預(yù)測(cè)模型挖掘交通數(shù)據(jù)的時(shí)空特性.

圖6 鄰接矩陣修正前后預(yù)測(cè)結(jié)果曲線
鄰接矩陣A′同時(shí)考慮路網(wǎng)節(jié)點(diǎn)間的空間距離和相關(guān)程度, 后者通過(guò)皮爾遜相關(guān)系數(shù)衡量. 為了分析節(jié)點(diǎn)間相關(guān)程度對(duì)預(yù)測(cè)結(jié)果的影響, 在不同系數(shù)閾值下進(jìn)行實(shí)驗(yàn), 分別計(jì)算對(duì)應(yīng)預(yù)測(cè)模型的MAE、MAPE, 預(yù)測(cè)性能如表2所示. 從表2可知, 相關(guān)系數(shù)閾值取0.9時(shí),模型預(yù)測(cè)誤差最小. 當(dāng)相關(guān)系數(shù)閾值較小時(shí), 容易引入過(guò)多關(guān)聯(lián)程度較小的節(jié)點(diǎn), 相當(dāng)于增加了數(shù)據(jù)噪聲, 降低預(yù)測(cè)精度; 當(dāng)相關(guān)系數(shù)閾值較大時(shí), 構(gòu)造的鄰接矩陣會(huì)因丟掉相關(guān)節(jié)點(diǎn)導(dǎo)致矩陣過(guò)于稀疏, 減少有用信息,從而不能深度挖掘路網(wǎng)的時(shí)空特性. 因此, 閾值的選取在理論分析和實(shí)驗(yàn)驗(yàn)證上相吻合.

表2 不同閾值預(yù)測(cè)性能
在本文中, 當(dāng)節(jié)點(diǎn)特征之間相關(guān)系數(shù)閾值取0.9時(shí), 目標(biāo)節(jié)點(diǎn)能夠基于數(shù)據(jù)驅(qū)動(dòng)選擇更加鄰近的路段節(jié)點(diǎn), 進(jìn)而聚合所選鄰居節(jié)點(diǎn)的特征, 較大程度地提高模型的預(yù)測(cè)精度. 在PeMS數(shù)據(jù)集對(duì)應(yīng)的實(shí)際路網(wǎng)中,根據(jù)最佳閾值選取的鄰近路段節(jié)點(diǎn)多數(shù)分布于目標(biāo)路段節(jié)點(diǎn)的上下游, 根據(jù)空間距離和語(yǔ)義距離的分析, 相鄰路段節(jié)點(diǎn)對(duì)具有明顯鄰近關(guān)系, 說(shuō)明該模型預(yù)測(cè)結(jié)果符合實(shí)際路網(wǎng)情況, 模型能較好應(yīng)用于真實(shí)場(chǎng)景的短時(shí)交通流預(yù)測(cè).
本文提出了一種基于DWT-GCN的短時(shí)交通流預(yù)測(cè)模型, 該模型基于圖神經(jīng)網(wǎng)絡(luò)處理非歐數(shù)據(jù)的天然優(yōu)勢(shì), 通過(guò)小波分解與重構(gòu)弱化交通流序列非平穩(wěn)性,并結(jié)合優(yōu)化的鄰接矩陣深度挖掘非歐交通流數(shù)據(jù)的時(shí)空特性, 提高了預(yù)測(cè)精度. 利用PeMS數(shù)據(jù)集的實(shí)測(cè)數(shù)據(jù)進(jìn)行驗(yàn)證, 通過(guò)與其他基線模型預(yù)測(cè)結(jié)果對(duì)比可知,本文提出的模型在短時(shí)交通流預(yù)測(cè)中具有較強(qiáng)的預(yù)測(cè)性能與可解釋性. 未來(lái)可以將天氣、節(jié)假日等影響交通流數(shù)據(jù)的外部因素通過(guò)注意力機(jī)制引入到模型中進(jìn)一步提高模型的預(yù)測(cè)精度和泛化能力.