趙嘉雨,段亞茹,何立明
(長安大學(xué) 信息工程學(xué)院,陜西 西安 710064)
交通速度預(yù)測是智慧交通系統(tǒng)[1]的主要研究課題之一。早期的方法包括歷史平均模型,其中使用歷史時期的交通量的平均值作為預(yù)測值。該方法不能很好地擬合時間特征,并且預(yù)測精度較低。以下統(tǒng)計學(xué)預(yù)測模型,應(yīng)用在交通預(yù)測模型上可以更好捕捉交通序列的動態(tài)變化。例如,文獻(xiàn)[2]使用的指數(shù)平滑模型和文獻(xiàn)[3]使用的自回歸移動平均模型(autoregressive integrated moving average model,ARIMA)。隨著交通預(yù)測研究的不斷深入,許多交通速度預(yù)測模型使用機(jī)器學(xué)習(xí)來提高預(yù)測精度,機(jī)器學(xué)習(xí)可以重新組織已有的結(jié)構(gòu)使之不斷改善模型性能。文獻(xiàn)[4]使用支持向量回歸(support vector regression,SVR)來構(gòu)造模型,文獻(xiàn)[5]使用貝葉斯網(wǎng)絡(luò)來構(gòu)造模型,使得交通預(yù)測模型的精度得到很大的提升。
深度學(xué)習(xí)是目前研究的主要方向,彌補(bǔ)了機(jī)器學(xué)習(xí)方法需要構(gòu)建特征工程和難以捕捉交通流序列長期記憶的缺點(diǎn),可以很好地學(xué)習(xí)到交通數(shù)據(jù)的動態(tài)特征。使用深度學(xué)習(xí)來進(jìn)行交通預(yù)測,可以分為兩大類,一類方法考慮時間依賴性,一類方法考慮空間依賴性。以下方法只考慮了時間依賴性。例如,文獻(xiàn)[6]使用深度置信網(wǎng)絡(luò)(DBN)和回歸模型組成的模型,從多個數(shù)據(jù)集上的交通數(shù)據(jù)中捕獲隨機(jī)特征。此外,文獻(xiàn)[7]使用長短時記憶網(wǎng)絡(luò)(long-short term memory networks,LSTM)來構(gòu)建模型,LSTM通過自循環(huán)機(jī)制,更好地捕捉了時間依賴性,用于預(yù)測交通速度可以獲得更好的預(yù)測結(jié)果。文獻(xiàn)[8]使用門控循環(huán)單元(gated recurrent unit,GRU)來構(gòu)建模型,GRU與LSTM提取時間特征的思想類似,但是GRU比LSTM訓(xùn)練速度更快。以上交通預(yù)測模型沒有考慮空間依賴性,獲取到的交通數(shù)據(jù)的變化沒有受到城市道路網(wǎng)的約束,因此不能準(zhǔn)確預(yù)測道路上的交通狀態(tài)。文獻(xiàn)[9]使用循環(huán)神經(jīng)網(wǎng)絡(luò)(CNN)來實(shí)現(xiàn)交通速度預(yù)測任務(wù),該模型可以獲取空間特征。為了更好地描述空間特征和時間特征,許多研究做出了改進(jìn)。文獻(xiàn)[10]提出了一個模型,該模型是將卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)與LSTM結(jié)合,從而可以獲取到交通序列的時空特征,使得預(yù)測的結(jié)果更加準(zhǔn)確。在時間序列中,考慮前向和后向數(shù)據(jù)的變化規(guī)律有助于提高模型的擬合精度,文獻(xiàn)[11]利用雙向長短時記憶網(wǎng)絡(luò) (bi-directional long-short term memory,Bi-LSTM) 模型對高速公路交通流進(jìn)行預(yù)測,結(jié)果表明Bi-LSTM模型預(yù)測結(jié)果比LSTM模型更接近真實(shí)值。文獻(xiàn)[12]為了充分發(fā)揮CNN對空間特征的選擇提取能力,同時利用Bi-LSTM提取時間特征,構(gòu)建復(fù)合模型,通過實(shí)驗證明該模型的預(yù)測值與真實(shí)值更貼合,證明了Bi-LSTM挖掘數(shù)據(jù)特征能力比LSTM更強(qiáng),對于復(fù)雜的回歸問題具有較好的擬合性能。CNN適用于歐幾里得數(shù)據(jù),如圖像和網(wǎng)格,所以CNN在具有非歐幾里得結(jié)構(gòu)的交通網(wǎng)絡(luò)中存在局限性。圖卷積網(wǎng)絡(luò)(graph convolutional network,GCN)[13-14]可以克服上述局限性,捕捉網(wǎng)絡(luò)的結(jié)構(gòu)特征,可以更好地應(yīng)用于復(fù)雜的道路結(jié)構(gòu)。
現(xiàn)有先進(jìn)的模型結(jié)合了GRU和GCN,文獻(xiàn)[15]使用T-GCN模型獲取時空特征。文獻(xiàn)[16]引入了注意力機(jī)制(attention mechanism),ST-AGTCN模型可以更好地捕捉時空依賴性,進(jìn)而提高了預(yù)測交通速度精度。
近些年在計算機(jī)視覺、自然語言處理等領(lǐng)域?qū)Ρ葘W(xué)習(xí)得到了廣泛應(yīng)用。對比學(xué)習(xí)主要工作是: 將一個樣本的不同的、增強(qiáng)過的新樣本在嵌入空間中盡可能近,然后讓不同的樣本之間盡可能遠(yuǎn)。由此極大地提高了模型的魯棒性。文獻(xiàn)[17]介紹了正則化Dropout (regularized dropout,R-Drop ),R-Drop是對比學(xué)習(xí)的一種方式,將R-Drop思想應(yīng)用在有監(jiān)督任務(wù)上使得很多模型的實(shí)驗結(jié)果都取得了明顯的提升。
為此,提出了GRU-GCN-RDrop模型用于交通預(yù)測任務(wù)。GRU-GCN-RDrop模型結(jié)合了GCN和GRU,并引入了R-Drop方法。GRU-GCN-RDrop模型不僅可以捕獲時空特征,而且通過對比學(xué)習(xí)提高了模型的泛化能力。
交通速度預(yù)測任務(wù)是一個典型的時間序列預(yù)測任務(wù),文中的研究數(shù)據(jù)是交通速度,表示為X∈RN×T。通過輸入歷史交通速度X={xt-h+1,xt-h+2,…,xt}∈RN×H和對應(yīng)時刻的路網(wǎng)結(jié)構(gòu)G,其中H為輸入數(shù)據(jù)的個數(shù),預(yù)測未來Tp時段所有節(jié)點(diǎn)的交通速度數(shù)據(jù)Y={yt+1,yt+2,…,yt+Tp}∈RN×Tp。用函數(shù)F來表示這一過程,如下:
Y=F[X,G]
(1)
由于道路結(jié)構(gòu)復(fù)雜多樣,對網(wǎng)絡(luò)的空間依賴建模在具體預(yù)測任務(wù)中是必不可少的。此外,在現(xiàn)實(shí)世界中,交通狀態(tài)可以隨著時間的推移而不斷變化。為了實(shí)現(xiàn)捕獲真實(shí)交通數(shù)據(jù)中的時空依賴性,GRU-GCN-RDrop模型將圖卷積網(wǎng)絡(luò)和門控循環(huán)單元組合起來,在子模型基礎(chǔ)上使用了對比學(xué)習(xí)提高模型魯棒性。
交通預(yù)測問題中要解決的一個重要問題就是獲取復(fù)雜的空間依賴關(guān)系。卷積神經(jīng)網(wǎng)絡(luò)可以獲得空間特征,歐式數(shù)據(jù)可以使用CNN模型進(jìn)行空間建模,常見的歐式數(shù)據(jù)有圖像、語音和常規(guī)網(wǎng)格。城市道路網(wǎng)格是非歐式數(shù)據(jù),這類數(shù)據(jù)不能使用CNN模型來捕捉空間依賴性,圖卷積網(wǎng)絡(luò)可以彌補(bǔ)CNN的缺點(diǎn)。GCN是CNN的推廣,可以對復(fù)雜拓?fù)浣Y(jié)構(gòu)提取空間關(guān)系。
如圖1所示,獲取圖的空間特征時需要處理中心節(jié)點(diǎn)和周圍節(jié)點(diǎn)的拓?fù)潢P(guān)系。在預(yù)測交通速度模型中,利用GCN模型可以提取到中心道路和周圍道路的空間關(guān)系,進(jìn)行信息聚合后捕捉到空間依賴性。GRU-
圖1 GCN模型框架
GCN-RDrop模型中使用了一個2層的GCN模型,公式表示如下:
(2)
交通預(yù)測問題中要解決的另一個重要問題就是獲取時間依賴關(guān)系。循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)雖然可以處理序列數(shù)據(jù),但是存在局限性。門控循環(huán)單元網(wǎng)絡(luò)(GRU)和長短期記憶網(wǎng)絡(luò)(LSTM)是基于RNN的改進(jìn)模型,可以解決RNN無法處理長序列依賴關(guān)系捕捉等問題。GRU-GCN-RDrop模型選擇了GRU模型來從交通數(shù)據(jù)中獲得時間依賴性,是因為GRU模型的結(jié)構(gòu)比LSTM的簡單,需要訓(xùn)練的參數(shù)也更少,訓(xùn)練時間也就更短,極大地提高了訓(xùn)練效率。
如圖2所示,GRU中的隱藏單元是一個特殊的細(xì)胞結(jié)構(gòu)。GRU使用門控機(jī)制可以捕捉長序列依賴關(guān)系特征,在其內(nèi)部結(jié)構(gòu)中存在重置門和更新門。
圖2 GRU模型
各個門控的計算公式如下:
ut=σ(Wu[f(A,Xt),ht-1]+bu)
(3)
rt=σ(Wr[f(A,Xt),ht-1]+br)
(4)
ct=tanh(Wc[f(A,Xt),(rt*ht-1)]+bc)
(5)
ht=ut*ht-1+(1-ut)*ct
(6)
其中,ht-1表示t-1時刻的輸出同時也是t時刻的輸入;rt表示重置門;ut表示更新門;ct表示當(dāng)前記憶內(nèi)容;f(A,Xt)表示圖的卷積過程,W和b表示訓(xùn)練過程中的權(quán)重和偏差。
結(jié)合GCN的GRU可以從交通數(shù)據(jù)中獲取空間和時間上的依賴性,在此基礎(chǔ)上加入對比學(xué)習(xí)方法R-Drop,從而構(gòu)建了GRU-GCN-DRrop模型,如圖3所示。
圖3 GRU-GCN-RDrop模型
該模型中使用了對比學(xué)習(xí)中的R-Drop方法,即通過增加一個正則項,來強(qiáng)化模型對Dropout的魯棒性,使得不同的Dropout下模型的輸出基本一致,從而使得簡單Dropout的效果等價于多Dropout模型融合的結(jié)果,提升模型最終性能。
圖3中左右兩部分運(yùn)作過程相同,第一步經(jīng)過兩層圖卷積網(wǎng)絡(luò)后可以捕獲交通路網(wǎng)的空間特征。第二步是將帶有空間結(jié)構(gòu)的時間序列數(shù)據(jù)輸入到門控循環(huán)單元,從而就得到數(shù)據(jù)的時空特征。第三步是經(jīng)過dropout層,使得左右兩部分的訓(xùn)練不一致。當(dāng)整個歷史序列輸入完并處理完成后,左右兩部分得到兩個概率分布。
在每個小批量訓(xùn)練中,每個數(shù)據(jù)樣本經(jīng)過兩次前向傳播,每次經(jīng)過都由不同的子模型處理,隨機(jī)刪除一些隱藏單元。通過最小化兩個分布之間的雙向KL散度(Kullback-Leibler divergence),迫使兩個子模型輸出的相同數(shù)據(jù)樣本的兩個分布彼此一致。GRU-GCN-RDrop對訓(xùn)練中每個數(shù)據(jù)樣本中隨機(jī)抽樣的兩個子模型的輸出進(jìn)行正則化,可以緩解訓(xùn)練階段和推理階段之間的不一致性。
(7)
式中,前兩項用來最小化實(shí)際車速和預(yù)測值之間的誤差,第二項對稱KL散度,用來規(guī)范模型預(yù)測,α是一個權(quán)重系數(shù)。
總之,GRU-GCN-DRrop模型可以處理交通數(shù)據(jù)中復(fù)雜的時空特征。利用GCN來捕獲城市道路網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),以獲得空間依賴性。利用GRU捕獲道路上交通信息的動態(tài)變化,獲得時間依賴性。利用對比學(xué)習(xí)方法R-Drop提高模型泛化能力使得預(yù)測精度提高,最終完成交通速度預(yù)測任務(wù)。
利用SZ-taxi數(shù)據(jù)集進(jìn)行實(shí)驗。SZ-taxi數(shù)據(jù)集采集到的數(shù)據(jù)為深圳出租車軌跡數(shù)據(jù),此次實(shí)驗選取的研究區(qū)域為羅湖區(qū),數(shù)據(jù)集采集時間段為2015年的1月份,共31天。有兩個矩陣表示數(shù)據(jù),使用一個鄰接矩陣表示156個主要道路,大小為156*156。另一個矩陣中每個元素代表不同道路在不同時間段上的交通速度,行代表道路信息,列代表時間信息。該數(shù)據(jù)集中采樣周期為15分鐘,每15分鐘計算一次每條路上的車速,共為2 977組數(shù)據(jù)。
實(shí)驗中,訓(xùn)練集為數(shù)據(jù)集的前80%,測試集為數(shù)據(jù)集的后20%。對輸入數(shù)據(jù)進(jìn)行預(yù)處理,輸入數(shù)據(jù)被歸一化到區(qū)間[0,1]。
GRU-GCN-RDrop模型對實(shí)驗中參數(shù)的設(shè)置如下: 學(xué)習(xí)系數(shù)為0.001,,批量大小為64,隱藏單元的數(shù)量為100和R-Drop權(quán)重系數(shù)為0.1.
由于KL散度在訓(xùn)練初期表現(xiàn)得不是很穩(wěn)定,所以訓(xùn)練初期不加入KL散度,只訓(xùn)練帶有dropout的模型,訓(xùn)練次數(shù)設(shè)定為1 000次,再將此模型加上KL散度訓(xùn)練,訓(xùn)練次數(shù)設(shè)定為300次。
為了評估GRU-GCN-RDrop模型的預(yù)測性能,使用5個指標(biāo)來評估真實(shí)交通信息和預(yù)測值之間的差異,RMSE和MAE來衡量真實(shí)值和預(yù)測值之間的誤差,Accuracy來衡量預(yù)測精度,R2和Var來衡量預(yù)測值是否可以代表真實(shí)值。
(1)均方根誤差(RMSE):
(8)
(2)平均絕對誤差(MAE):
(9)
(3)精度(Accuracy):
(10)
(4)判定系數(shù)(R2):
(11)
(5)解釋方差(Var):
(12)
為了進(jìn)一步評價提出的GRU-GCN-RDrop模型的性能,與以下模型進(jìn)行對比分析:
(1) HA:歷史平均模型。HA模型通過計算歷史交通速度的平均值作為下一時間段的交通速度預(yù)測值。
(2) ARIMA:自回歸差移動平均模型。ARIMA模型預(yù)測的序列規(guī)律性越強(qiáng),預(yù)測結(jié)果越好。
(3) SVR:支持向量機(jī)回歸模型。SVR模型通過學(xué)習(xí)到數(shù)據(jù)中的非線性關(guān)系來對未來交通數(shù)據(jù)進(jìn)行預(yù)測。
(4) GCN:圖卷積網(wǎng)絡(luò)。GCN模型捕獲空間特征進(jìn)行交通速度的預(yù)測。
(5) GRU:門控循環(huán)單元網(wǎng)絡(luò)。GRU模型捕獲時間特征進(jìn)行交通速度的預(yù)測。
實(shí)驗對GRU-GCN-RDrop模型及其他基線方法進(jìn)行15分鐘、30分鐘、45分鐘和60分鐘的預(yù)測。
實(shí)驗結(jié)果如表1所示,*表示該值太小,可以忽略不計,說明該模型的預(yù)測效果較差。
表1 GRU-GCN-RD模型和其他基線方法在SZ-taxi數(shù)據(jù)集上的預(yù)測結(jié)果
從表1可以看出,在這五個評估指標(biāo)下,提出的GRU-GCN-RDrop在SZ-taxi數(shù)據(jù)集上都是最佳表現(xiàn),本節(jié)從三個方面來分析模型GRU-GCN-RDrop的優(yōu)勢。
(1)GRU-GCN-RDrop模型的預(yù)測精度高?;谏疃葘W(xué)習(xí)的模型一般比基于統(tǒng)計理論的模型具有更好的預(yù)測精度和更低的均方根誤差。例如,15 min的交通速度預(yù)測任務(wù),GRU-GCN-RDrop模型和GRU模型的均方根誤差分別比SVR模型低了約46.2%和46.3%,準(zhǔn)確率分別提高了4.2%和1.8%。這主要是由于基于統(tǒng)計理論的模型只擅長處理簡單的、平穩(wěn)的時間序列數(shù)據(jù)。
(2)GRU-GCN-RDrop模型的時空預(yù)測能力強(qiáng)。對比GCN模型和GRU模型,可以清楚地從表1中看到組合模型(GRU-GCN-RDrop)比單因素的模型(GCN,GRU)有更好的預(yù)測能力。以15 min的交通速度預(yù)測為例,GRU-GCN-RDrop的均方根誤差相比GCN的均方根誤差低了56.7%,比GRU的均方根誤差低了5.3%,表明GRU-GCN-RDrop模型可以從交通數(shù)據(jù)中捕獲時空特征。
(3)GRU-GCN-RDrop模型的長期預(yù)測能力強(qiáng)。圖4顯示了GRU-GCN-RDrop模型在不同預(yù)測范圍內(nèi)的均方根誤差和精度的變化,在不同的預(yù)測范圍中,誤差和精度的變化不大,具有一定的穩(wěn)定性。圖5顯示了不同基準(zhǔn)模型的均方根誤差比較??梢钥闯?無論預(yù)測范圍如何,GRU-GCD-RDrop模型都能達(dá)到最好的結(jié)果。
圖4 模型在不同預(yù)測范圍內(nèi)的均方根誤差和精度
圖5 不同基準(zhǔn)方法在不同預(yù)測范圍內(nèi)的均方根誤差
(4)GRU-GCN-RDrop模型的泛化能力強(qiáng)。與現(xiàn)有先進(jìn)的模型T-GCN和ST-AGTCN進(jìn)行比較,這三種模型都捕捉到了時空依賴關(guān)系,GRU-GCN-RDrop模型使用R-Drop提升泛化能力使得均方根誤差降低。從表1中可以看出,GRU-GCN-RDrop模型的均方根誤差在不同預(yù)測范圍內(nèi)都是最低的。
從對數(shù)據(jù)集中任意兩個路段提前15分鐘和提前30分鐘預(yù)測情況的可視化圖中可以發(fā)現(xiàn),GRU-GCN-RDrop模型對于交通速度的預(yù)測可以得到良好的結(jié)果,如圖6~圖9所示。
圖6 節(jié)點(diǎn)1在預(yù)測范圍為15 min內(nèi)可視化結(jié)果
圖7 節(jié)點(diǎn)1在預(yù)測范圍為30 min內(nèi)可視化結(jié)果
圖8 節(jié)點(diǎn)2在預(yù)測范圍為15 min內(nèi)可視化結(jié)果
圖9 節(jié)點(diǎn)2在預(yù)測范圍為30 min內(nèi)可視化結(jié)果
(1)設(shè)計了基于GRU-GCN-RDrop組合模型框架,是將GRU和GCN模型結(jié)合,并使用對比學(xué)習(xí)方法,改善了現(xiàn)有模型預(yù)測能力。
(2)通過與5種基準(zhǔn)方法進(jìn)行對比,實(shí)驗表明所提出的交通速度預(yù)測模型在RMSE、MAE、R2_score、Accuracy、var五個指標(biāo)上均表現(xiàn)為最佳。
(3)該模型的搭建為交通速度預(yù)測提供了更準(zhǔn)確的信息,可對交通部門提供幫助,提高行人出行效率。
(4)為進(jìn)一步推廣交通速度預(yù)測模型的應(yīng)用,在未來工作中,對交通速度的預(yù)測可以從單步預(yù)測轉(zhuǎn)換為多步預(yù)測,提升整個智能交通系統(tǒng)的實(shí)用性。