劉宜成,李志鵬,呂淳樸,張濤,劉彥*
(1.四川大學(xué),電氣工程學(xué)院,成都 610065;2.清華大學(xué),自動(dòng)化系,北京 100084)
隨著社會的高速發(fā)展,智慧城市等新興概念逐漸融入人們的生活。智能交通系統(tǒng)(Intelligent Transport System,ITS)是智慧城市的重要組成部分。其中,交通車流量預(yù)測是ITS的研究關(guān)鍵。精準(zhǔn)的交通流預(yù)測對保證公眾安全和解決交通擁堵等具有極其深遠(yuǎn)的意義。
早期的交通車流量預(yù)測是建立在傳統(tǒng)統(tǒng)計(jì)學(xué)模型的時(shí)序序列預(yù)測。典型的如AHMED等[1]針對高速公路上的交通流進(jìn)行預(yù)測,將流量預(yù)測問題轉(zhuǎn)換成時(shí)間序列預(yù)測問題,提出差分自回歸移動(dòng)平均模型(Auto-Regressive Integrated Moving Average,ARIMA)的方法,ARIMA模型主要用于處理線性關(guān)系,然而,交通流數(shù)據(jù)通常是隨機(jī)的和非線性的,導(dǎo)致該類模型對交通流數(shù)據(jù)關(guān)系建模不充分,預(yù)測精度不高。隨著深度學(xué)習(xí)模型在很多領(lǐng)域取得了非常優(yōu)秀的效果,越來越多的研究人員使用深度學(xué)習(xí)處理交通流量預(yù)測等問題。WANG 等[2]結(jié)合長短期記憶模型(Long-Short Term Memory,LSTM)和循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)對短時(shí)交通流進(jìn)行預(yù)測研究。LI等[3]針對高速公路交通流預(yù)測問題,集成卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN),LSTM,門控循環(huán)單元(Gate Recurrent Unit,GRU)等多種學(xué)習(xí)框架,提出一種多特征的高速公路交通流預(yù)測模型,有效提升了高速公路的交通流預(yù)測精度。為了保證構(gòu)建更深的CNN 時(shí)避免梯度消失和梯度爆炸等問題,研究人員將殘差網(wǎng)絡(luò)(Residual Network,ResNet)與CNN相結(jié)合。ZHANG等[4]結(jié)合殘差網(wǎng)絡(luò)和CNN提出了基于深度學(xué)習(xí)的時(shí)空數(shù)據(jù)預(yù)測模型,預(yù)測城市人流量。然而,傳統(tǒng)的CNN本質(zhì)上只適用于歐氏空間,對于復(fù)雜拓?fù)浣Y(jié)構(gòu)的交通網(wǎng)絡(luò)數(shù)據(jù)只能提取其中的局部特征。隨著圖卷積神經(jīng)網(wǎng)絡(luò)(Graph Convolution Network,GCN)的發(fā)展,能夠有效提取網(wǎng)絡(luò)數(shù)據(jù)復(fù)雜特征的GCN 成為了最佳的解決方案。ZHANG 等[5]結(jié)合LSTM 和圖卷積捕捉城市交通流數(shù)據(jù)的時(shí)間規(guī)律性和時(shí)空關(guān)聯(lián)性,有效修復(fù)了缺失的交通流數(shù)據(jù)信息。CHEN等[6]提出基于圖卷積網(wǎng)絡(luò)的大規(guī)模城市路網(wǎng)短時(shí)交通流預(yù)測模型,預(yù)測真實(shí)大規(guī)模城市路網(wǎng)浮動(dòng)車數(shù)據(jù),驗(yàn)證了圖卷積網(wǎng)絡(luò)優(yōu)秀的預(yù)測性能。GUO 等[7]提出一種結(jié)合注意力機(jī)制和時(shí)空圖卷積網(wǎng)絡(luò),解決交通流預(yù)測問題,通過時(shí)空注意力機(jī)制有效地捕獲了交通流數(shù)據(jù)中的動(dòng)態(tài)時(shí)空相關(guān)性,在美國加利福尼亞州高速公路公開數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),表明該預(yù)測算法優(yōu)于之前的預(yù)測算法。
然而,現(xiàn)有算法對交通流時(shí)空關(guān)系的建模通常只考慮時(shí)間維度上的關(guān)聯(lián)性或者空間維度上的關(guān)聯(lián)性,未能夠在時(shí)空關(guān)系建模中充分考慮時(shí)空相關(guān)性的問題,建模不夠充分。本文對此提出了基于時(shí)空注意力機(jī)制和殘差網(wǎng)絡(luò)的時(shí)空圖卷積網(wǎng)絡(luò)的交通流量預(yù)測模型(TSARGCN)。模型的輸入端將輸入數(shù)據(jù)按照其時(shí)間維度特性分為鄰近信息片段、相關(guān)信息片段和歷史信息片段這3個(gè)分支模塊,使用計(jì)算時(shí)序序列相關(guān)性最常用的DTW(Dynamic Time Warping)算法定義時(shí)間圖的概念,結(jié)合交通路網(wǎng)空間結(jié)構(gòu)的空間圖定義時(shí)空關(guān)系圖的概念。在分支模塊中,考慮到梯度爆炸或者梯度消失等問題,引入殘差網(wǎng)絡(luò)層保證網(wǎng)絡(luò)的收斂;為充分捕獲交通流數(shù)據(jù)中的時(shí)空關(guān)聯(lián)性特征,結(jié)合時(shí)空關(guān)系圖和注意力機(jī)制,建立圖卷積神經(jīng)網(wǎng)絡(luò)和時(shí)間維度卷積網(wǎng)絡(luò)。在模型輸出端對分支輸出加權(quán)融合得到預(yù)測結(jié)果。在公開數(shù)據(jù)集上,對本文提出的模型進(jìn)行實(shí)驗(yàn)驗(yàn)證,并與常見預(yù)測模型進(jìn)行性能比較。實(shí)驗(yàn)表明,本文提出的模型有效提升了交通流量預(yù)測的精度,相較常見預(yù)測模型可以更精準(zhǔn)地預(yù)測交通流量。
本文研究基于道路結(jié)構(gòu)及歷史交通流相關(guān)信息預(yù)測未來某段時(shí)間內(nèi)某路段的交通流量。用于采集交通流數(shù)據(jù)傳感器的采集頻率通常為1次·min-1,采集的交通流數(shù)據(jù)通常包括車流量和車速等。考慮按照原始數(shù)據(jù)量過大的問題,本文將數(shù)據(jù)集按照5 min時(shí)間步長進(jìn)行數(shù)據(jù)整合處理。處理后數(shù)據(jù)集中第1個(gè)時(shí)間節(jié)點(diǎn)作為時(shí)間起始點(diǎn),定義節(jié)點(diǎn)i的第t個(gè)時(shí)間步長的交通特征數(shù)據(jù)為Xi(t)∈R(F),F(xiàn)表示節(jié)點(diǎn)用于采集的傳感器采集總數(shù)量,即特征數(shù)量。定義節(jié)點(diǎn)i的歷史T時(shí)間步長總的歷史矩陣為Xi=[Xi(j)|j=1,2,…,T],j表示時(shí)間序列標(biāo)號;N個(gè)節(jié)點(diǎn)總的交通流歷史數(shù)據(jù)表示為X=[Xn|n=1,2,…,N],其中,n表示節(jié)點(diǎn)標(biāo)號。本文研究內(nèi)容為通過X預(yù)測各個(gè)節(jié)點(diǎn)在第T個(gè)時(shí)間步長后未來Tx時(shí)間步長的交通流量。
空間路網(wǎng)結(jié)構(gòu)的無向圖G(V,E)如圖1所示。
圖1 空間路網(wǎng)結(jié)構(gòu)Fig.1 Structure diagram of space road network
將使用的交通流量傳感器所在的空間位置視作空間結(jié)構(gòu)圖中的節(jié)點(diǎn),則V={v1,v2,…,vn}表示節(jié)點(diǎn)的集合;E={e1,e2,…,es}表示連接節(jié)點(diǎn)的邊集合,s表示空間路網(wǎng)結(jié)構(gòu)圖中邊的總個(gè)數(shù);鄰接矩陣A表示節(jié)點(diǎn)之間的相鄰關(guān)系,A中僅包含0 和1 兩種元素,其定義為
空間路網(wǎng)結(jié)構(gòu)圖中各個(gè)節(jié)點(diǎn)之間的鄰近關(guān)系,將會在2.3 節(jié)中利用,進(jìn)而實(shí)現(xiàn)交通車流量更精準(zhǔn)的預(yù)測。
本文提出的網(wǎng)絡(luò)架構(gòu)如圖2所示。模型主要包括以下幾個(gè)部分:時(shí)間序列分割模塊,殘差網(wǎng)絡(luò)層,引入注意力機(jī)制的圖卷積層,引入注意力機(jī)制的時(shí)間卷積網(wǎng)絡(luò)層,加權(quán)融合輸出端。圖2 中,Input Flow為交通數(shù)據(jù)集;Xc,Xp和Xd為輸入數(shù)據(jù)集經(jīng)過時(shí)間序列分割模塊分割的臨近信息片段、近期信息片段和歷史信息片段;GT為輸入數(shù)據(jù)集通過DTW算法建立的時(shí)間圖和根據(jù)節(jié)點(diǎn)之間鄰近關(guān)系建立的空間圖融合而成的時(shí)空關(guān)系圖;RESNET為殘差網(wǎng)絡(luò)層;GCN 為圖卷積層;Conv 為時(shí)間卷積層;Fusion為加權(quán)融合輸出端;ΓS、ΓT分別為3個(gè)模塊分別求取的空間注意力權(quán)值矩陣、時(shí)間注意力權(quán)值矩陣;Yc,Yp和Yd分別為3 個(gè)模塊的交通車流量預(yù)測;Y為最終的交通車流量輸出。
圖2 TSARGCN網(wǎng)絡(luò)整體結(jié)構(gòu)Fig.2 Overall structure of TSARGCN network
考慮到交通數(shù)據(jù)在時(shí)間維度上的數(shù)據(jù)周期性、鄰近性等特征,將輸入部分劃分為鄰近信息片段,近期信息片段和歷史信息片段3 個(gè)部分以提取特征。如圖3所示,以預(yù)測X(T)之后Tx時(shí)間步長內(nèi)的交通流量為例,則輸入序列進(jìn)行如下分割。
圖3 輸入序列切分片段示意圖Fig.3 Schematic diagram of input sequence segmentation
鄰近信息片段選擇為
近期信息片段選擇為
歷史信息片段選擇為
參數(shù)取值如下:待預(yù)測序列長度為Tx=12,即預(yù)測未來1 h 的交通流量數(shù)據(jù);鄰近信息片段序列長度選擇為c=36,即選擇待預(yù)測片段前3 h 的交通流數(shù)據(jù);近期信息片段選擇p為1 d的時(shí)間步長,即待預(yù)測片段前一天的該時(shí)刻的交通流數(shù)據(jù);歷史信息片段選擇d為1周的時(shí)間步長,即選擇前一周的該時(shí)刻的交通流數(shù)據(jù)。
為實(shí)現(xiàn)對交通流數(shù)據(jù)時(shí)間特征以及空間特征的有效提取,在模型中常常需要堆疊多個(gè)卷積層進(jìn)行時(shí)空特征的挖掘。然而隨著卷積層的堆疊,整個(gè)網(wǎng)絡(luò)模型會出現(xiàn)梯度彌散等問題,即在損失函數(shù)減小到一定數(shù)值后,隨著訓(xùn)練的增加會導(dǎo)致?lián)p失函數(shù)不再變小甚至增加,因此導(dǎo)致訓(xùn)練的整體精度下降。針對上述問題,本文引入殘差單元結(jié)構(gòu)用以提高整個(gè)模型的訓(xùn)練精度。殘差單元結(jié)構(gòu)組成的網(wǎng)絡(luò)因?yàn)槠溆?xùn)練學(xué)習(xí)過程中恒等函數(shù)的易得性有效解決了梯度彌散等問題。如圖2所示,對經(jīng)過2.1節(jié)切片后輸入的3 個(gè)分支均加入一個(gè)殘差網(wǎng)絡(luò)進(jìn)行訓(xùn)練。每一個(gè)殘差網(wǎng)絡(luò)由多個(gè)殘差單元組成,每一個(gè)殘差單元?jiǎng)t由2 個(gè)卷積層(Conv),2 個(gè)批量歸一化(Batch Normalization,BN)處理層和1 個(gè)Relu組成。
卷積層使用3×3的卷積核提取輸入的特征,其操作如圖4所示。圖中,X為輸入,⊙p為分塊哈達(dá)瑪積,Xo為卷積后的結(jié)果,即經(jīng)過卷積層輸出的特征。
圖4 卷積層操作Fig.4 Convolution layer operation
BN 層即批量歸一化處理,常用于減少內(nèi)部變量偏移進(jìn)而加速神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,計(jì)算過程如圖5所示。圖中,X為輸入,u為均值,σ2為方差,為標(biāo)準(zhǔn)化處理后的元素,為線性變換后的元素,Y為BN層的輸出,γ,β為可訓(xùn)練的參數(shù)。
圖5 BN層操作Fig.5 BN layer operation
Relu為一種激活函數(shù),計(jì)算公式為
其計(jì)算簡易性使網(wǎng)絡(luò)的收斂速度很快,其輸出的稀疏性可防止出現(xiàn)過擬合現(xiàn)象。
以Xc輸入為例,通過上述網(wǎng)絡(luò)結(jié)構(gòu)組成殘差網(wǎng)絡(luò)結(jié)構(gòu)圖如圖6所示。
圖6 殘差網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.6 Structure of residual network
DTW[8]是一種典型的計(jì)算兩個(gè)時(shí)間序列相似程度的算法,且為一種優(yōu)化調(diào)整算法,即通過一對多以及多對一匹配的方式使得兩個(gè)時(shí)間序列之間總距離最小化的最優(yōu)匹配方法。本文利用DTW思想構(gòu)造不同節(jié)點(diǎn)之間車流量數(shù)據(jù)的時(shí)間關(guān)聯(lián)矩陣。對于任意兩個(gè)節(jié)點(diǎn)i和節(jié)點(diǎn)j的車流量序列分別為
式中:Xi,f、Xj,f分別為節(jié)點(diǎn)i、節(jié)點(diǎn)j的交通流量數(shù)據(jù)集合;I、J分別為兩個(gè)序列的總長度。
在相似程度的比較時(shí),通常采用的量化指標(biāo)為兩個(gè)序列中各點(diǎn)之間的歐氏距離,用歐式距離函數(shù)d(m,l)表示,即
式中:m為節(jié)點(diǎn)i的車流量序列中第m時(shí)間點(diǎn);l為節(jié)點(diǎn)j的車流量序列中第l時(shí)間點(diǎn)。計(jì)算兩個(gè)序列之間各點(diǎn)歐氏距離,用表示兩個(gè)序列總的相似程度大小。則其計(jì)算的具體方法如下。
定義規(guī)整路徑L=(l1,l2,…,lE)作為衡量兩個(gè)序列之間匹配代價(jià)大小的計(jì)算,如圖7所示。
圖7 規(guī)整路徑示意圖Fig.7 Outline path diagram
整個(gè)路徑滿足約束為
式中:lk為路徑中經(jīng)過的點(diǎn)在圖7 中的坐標(biāo),。
定義兩個(gè)序列之間的總匹配代價(jià)為
本文采用動(dòng)態(tài)規(guī)劃的思想遞歸求出最小總匹配代價(jià),遞歸公式為
求取最終的最小匹配代價(jià)C(I,J),即為兩個(gè)序列之間的相似程度大小。
利用上述方法,分別計(jì)算每一個(gè)節(jié)點(diǎn)和其他節(jié)點(diǎn)整個(gè)時(shí)間序列的相似程度,定義n×n維的時(shí)間關(guān)聯(lián)矩陣為
式中:D(i,j)為DTW。經(jīng)過實(shí)驗(yàn),在本數(shù)據(jù)集中時(shí)間序列相似度的取值范圍為3100~4200,該相似度數(shù)值越小表示兩個(gè)節(jié)點(diǎn)之間的交通車流量的變化模式越相近。
利用節(jié)點(diǎn)之間交通流量數(shù)據(jù)的時(shí)間序列相關(guān)性,建立路網(wǎng)結(jié)構(gòu)中在空間路網(wǎng)結(jié)構(gòu)中無法反映的流量影響關(guān)系,例如學(xué)校、醫(yī)院等導(dǎo)致的流量變化。在空間節(jié)點(diǎn)之間可能不存在連接關(guān)系,但是因?yàn)樯鐣饔孟嗷ビ绊懙牧髁坑绊戧P(guān)系,將這種關(guān)系視作時(shí)間路網(wǎng)結(jié)構(gòu)圖中存在的連接關(guān)系。利用式(12)時(shí)間關(guān)聯(lián)矩陣,結(jié)合1.1節(jié)中的空間路網(wǎng)結(jié)構(gòu)圖建立時(shí)間圖。時(shí)間圖定義為Tg=(V,D),如圖8所示。V為空間路網(wǎng)結(jié)構(gòu)圖中的節(jié)點(diǎn)集合,D為各個(gè)節(jié)點(diǎn)之間時(shí)間序列相似程度大小集合,D={D12,D13,…,Dn(n-1)},其中的每個(gè)元素定義為Di,j=(i,j)。
圖8 時(shí)間圖示意圖Fig.8 Time graph diagram
給定時(shí)序序列相似度閾值,建立節(jié)點(diǎn)之間時(shí)間維度的時(shí)序關(guān)聯(lián)矩陣A0。閾值作為區(qū)分兩個(gè)節(jié)點(diǎn)之間時(shí)間序列是否相似,閾值以內(nèi)的認(rèn)為兩個(gè)序列相似,即兩個(gè)節(jié)點(diǎn)的流量之間存在一定的相關(guān)性。則時(shí)序關(guān)聯(lián)矩陣A0為
式中:TThreshold為設(shè)置時(shí)間序列相似度閾值,在該閾值以內(nèi)認(rèn)為節(jié)點(diǎn)之間相互影響,即時(shí)間圖中相鄰。
結(jié)合時(shí)間圖和空間圖定義時(shí)空關(guān)系圖如下:時(shí)空關(guān)系圖結(jié)構(gòu)中包括節(jié)點(diǎn)及鄰近關(guān)系兩個(gè)要素。在時(shí)空關(guān)系圖GT(V,As)的構(gòu)造中,節(jié)點(diǎn)集仍然為V;在考慮節(jié)點(diǎn)鄰近關(guān)系時(shí),為了更清晰地直觀表示,融合鄰接矩陣和時(shí)序關(guān)聯(lián)矩陣得到GT圖中的鄰居矩陣As。通過鄰居矩陣表征鄰近關(guān)系,建立時(shí)空關(guān)系圖如圖9所示。
圖9 時(shí)空關(guān)系圖示意Fig.9 Diagram of GT
注意力機(jī)制是模擬人腦注意力,用于調(diào)整權(quán)重大小使模型對重要的信息給與更多的關(guān)注。考慮到交通流量中不同節(jié)點(diǎn)對各個(gè)節(jié)點(diǎn)的影響不同以及不同時(shí)刻點(diǎn)之間的互相影響不同,在圖卷積和時(shí)間維度卷積之前分別加入一個(gè)注意力機(jī)制,該機(jī)制用于衡量不同節(jié)點(diǎn)輸入特征以及不同時(shí)刻輸入特征的重要性程度值。
以預(yù)測1.1 節(jié)中X0為例,輸入歷史數(shù)據(jù)為X={Xn|n=1,2,…,N},空間注意力權(quán)值計(jì)算過程如下。
經(jīng)過2.1 節(jié)處理后的鄰近信息、近期信息和歷史信息這3個(gè)分支的數(shù)據(jù)流分別為Xc,Xp和Xd,以Xc為例,多模式注意力網(wǎng)絡(luò)在注意力機(jī)制中表現(xiàn)極佳,考慮多模式輸入通道注意力分布計(jì)算成本過高的問題,采用雙線性注意力的方式設(shè)計(jì)評價(jià)函數(shù),構(gòu)造出空間關(guān)聯(lián)性矩陣IV,C為
式中:SV,c∈RN×N,bV,c∈RN×N,W1,c∈RH,W2,c∈RF×H,W3,c∈RF均為待學(xué)習(xí)參數(shù);W1,c為表征其H維度的權(quán)重;W3,c為表征其不同數(shù)據(jù)種類的權(quán)重,如車速在流量預(yù)測中的權(quán)重等;W2,c為表征H維度和不同數(shù)據(jù)種類維度權(quán)重之間的交互;Xc∈RN×F×H為所有節(jié)點(diǎn)全部數(shù)據(jù);σ為激活函數(shù);N為節(jié)點(diǎn)數(shù)目;F為數(shù)據(jù)種類數(shù)目;H為時(shí)間長度,鄰近信息,近期信息和歷史信息這3個(gè)分支的H選擇上,考慮對當(dāng)前交通車流量的歷史影響最明顯的為前3 個(gè)時(shí)間點(diǎn),前一天的同一時(shí)間點(diǎn)和前一周的同一時(shí)間點(diǎn),因此取值為36,12,12。根據(jù)空間關(guān)聯(lián)性矩陣,接下來以鄰近信息分支空間注意力權(quán)值矩陣為例,求取節(jié)點(diǎn)i與節(jié)點(diǎn)j之間空間注意力權(quán)值的表達(dá)式為
式中:IV(i,j),c為空間關(guān)聯(lián)性矩陣中第i行,第j列的元素,表征的是節(jié)點(diǎn)i與節(jié)點(diǎn)j之間的空間維度關(guān)聯(lián)程度;αV(i,j),c為節(jié)點(diǎn)i與節(jié)點(diǎn)j之間的空間注意力權(quán)值。對全部節(jié)點(diǎn)分別求取空間注意力權(quán)值可以獲得空間注意力權(quán)值矩陣為
通過以上求解可以分別求出3 個(gè)分支的空間注意力權(quán)值矩陣ΓS,c,ΓS,p和ΓS,d。
類似空間注意力權(quán)值求取方法,類似空間注意力權(quán)值矩陣的方法求取輸入的時(shí)間關(guān)聯(lián)性矩陣,仍然以Xc為例求解。
式中:IT(i,j),c為時(shí)間關(guān)聯(lián)性矩陣中第i行,第j列的元素;αT(i,j),c為時(shí)間點(diǎn)i與節(jié)點(diǎn)j之間的時(shí)間維度關(guān)聯(lián)程度。依次對每個(gè)時(shí)間節(jié)點(diǎn)分別求取時(shí)間注意力權(quán)值可以獲得時(shí)間注意力權(quán)值矩陣為
通過以上求解可以分別求出3 個(gè)分支的時(shí)間注意力權(quán)值矩陣ΓT,c,ΓT,p和ΓT,d。
通過2.3 節(jié)建立的時(shí)空關(guān)系圖,使用圖卷積的方式提取節(jié)點(diǎn)在時(shí)空關(guān)系圖中的空間維度特征,這一特征不僅結(jié)合了路網(wǎng)結(jié)構(gòu)中的空間關(guān)系,同時(shí)結(jié)合了節(jié)點(diǎn)之間時(shí)序序列相似性的時(shí)間維度關(guān)系,即時(shí)空相關(guān)性特征。具體做法如下。
整個(gè)圖用其對應(yīng)的拉普拉斯矩陣來表示,時(shí)空關(guān)系圖的拉普拉斯矩陣L為
式中:As為2.3節(jié)求出的鄰居矩陣;IN為單位矩陣。
對L進(jìn)行特征值分解,即L=βΔβT,其中,Δ為L的特征值組成的對角矩陣,β為分解基。利用上述參數(shù)得到對輸入歷史數(shù)據(jù)進(jìn)行圖卷積計(jì)算的公式為
式中:Θg為圖卷積核參數(shù);Xg為經(jīng)過圖卷積之后的結(jié)果。
因式(19)計(jì)算相當(dāng)復(fù)雜,故采用一階切比雪夫多項(xiàng)式[21]對式(19)進(jìn)行近似簡化得到
式中:θg∈R 為可訓(xùn)練的參數(shù)。
利用上述圖卷積計(jì)算方式,結(jié)合2.4 節(jié)空間注意力權(quán)值矩陣,以經(jīng)過2.2 節(jié)殘差網(wǎng)絡(luò)后的Xc,res為例,可以得到結(jié)合注意力機(jī)制的時(shí)空關(guān)系圖卷積之后的結(jié)果為
式中:⊙為哈達(dá)瑪積。
按照上述方法可以依次計(jì)算出3 個(gè)分支經(jīng)過時(shí)空關(guān)系圖卷積之后的輸出Xc,g,Xp,g和Xd,g。
經(jīng)過2.5 節(jié)時(shí)空關(guān)系圖卷積之后,為挖掘同一節(jié)點(diǎn)不同時(shí)刻交通流信息的相互作用關(guān)系,即時(shí)間維度特征,利用圖10所示的時(shí)間維度卷積進(jìn)行操作。
圖10 時(shí)間維度卷積示意圖Fig.10 Schematic diagram of convolution of time dimension
在每個(gè)分支分別引入時(shí)間注意力權(quán)值矩陣,結(jié)合二維卷積實(shí)現(xiàn)時(shí)間維度的特征提取,圖11 展示了Xc,g通過該層處理操作。
圖11 時(shí)間維度卷積網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.11 Time-dimension convolutional network structure diagram
通過時(shí)間維度卷積,可以得到3個(gè)分支的輸出分別為Yc,Yp和Yd。
將2.6 節(jié)輸出結(jié)果進(jìn)行線性加權(quán)融合,得到流量預(yù)測結(jié)果為
式中:Wc,Wp和Wd為3 個(gè)可學(xué)習(xí)的參數(shù);Y為最終流量預(yù)測值。
為了評估模型,本文在PEMSD4數(shù)據(jù)集中進(jìn)行了大量的對比實(shí)驗(yàn)進(jìn)行驗(yàn)證。
PEMSD4 是2018年1~2月美國舊金山灣區(qū)307 個(gè)監(jiān)測點(diǎn)收集到的數(shù)據(jù),這些數(shù)據(jù)被整理成每5 min 一條記錄,包括流量,車速和車道占有率這3個(gè)維度的數(shù)據(jù)。
實(shí)驗(yàn)數(shù)據(jù)集按照6∶2∶2的比例劃分為訓(xùn)練集、驗(yàn)證集和測試集。本文在圖卷積和時(shí)間卷積中使用32 個(gè)1×3 的卷積核,預(yù)測時(shí)間步長c為12,,學(xué)習(xí)率設(shè)為0.001,批次大小為64,使用均方誤差為損失函數(shù),利用Adam 作為優(yōu)化器進(jìn)行優(yōu)化,模型的迭代次數(shù)設(shè)置為100。
本文選擇模型的評估函數(shù)為平均絕對誤差(Mean Absolute Error,MAE)函數(shù)和均方根誤差(Root Mean Square Error,RMSE)函數(shù)。MAE 用于反映預(yù)測值誤差的實(shí)際情況,RMSE則用于反映均方誤差的算術(shù)平方根。具體計(jì)算公式為
式中:ye,i為交通流量預(yù)測值;yu,i為交通流量真實(shí)值。
為了消除交通數(shù)據(jù)中交通流量過大或者過小對整體預(yù)測帶來的不利影響,本文采用Z-score 方法進(jìn)行數(shù)據(jù)標(biāo)準(zhǔn)化,計(jì)算公式為
式中:mean(X)為序列的均值;std(X)為序列的標(biāo)準(zhǔn)差。
為了測試不同殘差網(wǎng)絡(luò)深度對整個(gè)模型預(yù)測性能的影響,研究不同深度MAE值的不同表現(xiàn),結(jié)果如圖12所示。從圖中可以看出:一開始隨著殘差網(wǎng)絡(luò)單元個(gè)數(shù)的增多,整個(gè)網(wǎng)絡(luò)的預(yù)測性能得到明顯提高;當(dāng)殘差網(wǎng)絡(luò)單元超過16個(gè)的時(shí)候,整個(gè)網(wǎng)絡(luò)的預(yù)測性能開始變差,分析其原因可能是由于網(wǎng)絡(luò)過深導(dǎo)致訓(xùn)練難度加大進(jìn)而降低了整個(gè)網(wǎng)絡(luò)的預(yù)測性能。因此,實(shí)驗(yàn)中設(shè)置殘差網(wǎng)絡(luò)單元個(gè)數(shù)為16,實(shí)現(xiàn)最佳預(yù)測效果。
圖12 殘差網(wǎng)絡(luò)單元個(gè)數(shù)對MAE的影響Fig.12 Influence of number of residual network units on MAE
構(gòu)造時(shí)間圖時(shí),定義了一個(gè)閾值(Threshold)來建立節(jié)點(diǎn)之間時(shí)間相關(guān)性,不同的閾值對于整個(gè)網(wǎng)絡(luò)的預(yù)測性能存在一定影響。因此,通過改變不同閾值建立不同的時(shí)間圖進(jìn)行多次訓(xùn)練,驗(yàn)證整個(gè)網(wǎng)絡(luò)預(yù)測性能最佳的效果,結(jié)果如圖13所示。在保證整個(gè)網(wǎng)絡(luò)其他結(jié)構(gòu)不變的情況下,閾值設(shè)定為3300 時(shí),取得最佳預(yù)測效果。在設(shè)定閾值為3300的時(shí)候,時(shí)間圖中各個(gè)節(jié)點(diǎn)的相鄰節(jié)點(diǎn)個(gè)數(shù)保證在5個(gè)左右。閾值設(shè)定為更小時(shí),相鄰節(jié)點(diǎn)數(shù)量較少,不能夠有效提取時(shí)間維度的關(guān)聯(lián)關(guān)系;設(shè)定更大時(shí),相鄰節(jié)點(diǎn)數(shù)量過多導(dǎo)致整體預(yù)測效果變差。
圖13 時(shí)間圖閾值對MAE的影響Fig.13 Effect of time graph threshold on MAE
為評估本文模型的預(yù)測性能,選用如下模型進(jìn)行對比分析。
(1)HA(歷史均值法)。本文實(shí)驗(yàn)設(shè)置上利用過去1 h 的流量均值預(yù)測下一個(gè)時(shí)間片的交通流量值。
(2)SVR(支持向量回歸法)。本文選取的核函數(shù)為徑向基函數(shù),其中核系數(shù)設(shè)置為0.1。
(3)ARIMA(自回歸積分滑動(dòng)平均法)。一種時(shí)間序列預(yù)測分析的經(jīng)典模型,模型簡單且不需要借助其他變量。
(4)Conv-LSTM(卷積長短時(shí)記憶網(wǎng)絡(luò))。在LSTM 的基礎(chǔ)上添加了卷積神經(jīng)網(wǎng)絡(luò),實(shí)現(xiàn)比LSTM更強(qiáng)的特征捕捉能力,進(jìn)一步提高了時(shí)間序列的預(yù)測效果。
(5)ASTGCN(結(jié)合注意力機(jī)制和時(shí)空圖卷積網(wǎng)絡(luò))。該模型不僅考慮了時(shí)間周期性特征,同時(shí)結(jié)合了圖卷積操作提取融合了空間特征的時(shí)空網(wǎng)絡(luò)。
實(shí)驗(yàn)采用tensorflow 和mxnet 等框架實(shí)現(xiàn)上述模型的架構(gòu)和實(shí)驗(yàn)仿真,對PEMSD4 數(shù)據(jù)集中的307 個(gè)節(jié)點(diǎn)的交通車流量進(jìn)行預(yù)測,結(jié)果對比表如表1所示。
表1 TSARGCN與其他模型實(shí)驗(yàn)結(jié)果對比Table 1 Comparison of TSARGCN and other models
從表1 中可以看出,對未來1 h 的流量預(yù)測實(shí)驗(yàn)中,本文提出的TSARGCN 模型在MAE,RMSE及MAPE 等指標(biāo)中均獲得了更好的效果。SVR 相對于HA 而言提高了對交通流信息非線性特征的提取,而ARIMA則是通過將自回歸、移動(dòng)平均和差分等傳統(tǒng)統(tǒng)計(jì)學(xué)方法相結(jié)合實(shí)現(xiàn)了對交通流時(shí)序依賴關(guān)系的建模,但其只能捕獲線性關(guān)系,在復(fù)雜交通網(wǎng)絡(luò)結(jié)構(gòu)中的流量預(yù)測具有較大的局限性。Conv-LSTM 是在LSTM 添加了卷積操作,不僅獲取了時(shí)間信息流同時(shí)提高了對空間信息流的處理。ASTGCN則是引入圖卷積和注意力機(jī)制,明顯比普通卷積操作更符合流量預(yù)測的需求。這是因?yàn)樵趶?fù)雜交通網(wǎng)絡(luò)結(jié)構(gòu)中,圖卷積相對于普通卷積而言,能夠更好捕捉交通流量數(shù)據(jù)的空間特征,注意力機(jī)制可以更好地動(dòng)態(tài)調(diào)整網(wǎng)絡(luò)模型參數(shù),進(jìn)而實(shí)現(xiàn)了預(yù)測精度的有效提高。對比ASTGCN 和本文提出的TSARGCN 的指標(biāo)參數(shù)可以看出,TSARGCN 的效果明顯更好,究其原因在于ASTGCN 進(jìn)行的圖卷積操作中考慮的節(jié)點(diǎn)鄰近關(guān)系僅僅為空間圖中的鄰近關(guān)系,而TSARGCN 則是通過DTW算法構(gòu)建節(jié)點(diǎn)之間交通車流量模式相似關(guān)系,建立了時(shí)間圖表征節(jié)點(diǎn)之間潛在的交通車流量影響關(guān)系,再在此基礎(chǔ)上進(jìn)行圖卷積對整個(gè)路網(wǎng)的結(jié)構(gòu)解析更深,對于時(shí)空特征的相關(guān)性特征有更好的捕捉效果,對于時(shí)空特征的融合效果更佳,進(jìn)而提高了模型的預(yù)測性能。
TSARGCN 對于不同節(jié)點(diǎn)的交通車流量預(yù)測結(jié)果存在一定的差異,表2 為TSARGCN 在幾個(gè)節(jié)點(diǎn)的預(yù)測能力,53號節(jié)點(diǎn)是整個(gè)預(yù)測中誤差最大的節(jié)點(diǎn),204 號節(jié)點(diǎn)是誤差最小的節(jié)點(diǎn)。圖14 為TSARGCN 在0 號、1 號及2 號節(jié)點(diǎn)共3 個(gè)不同節(jié)點(diǎn)的兩種交通流量模式的預(yù)測能力。在交通流量變化趨勢中,由于節(jié)假日等因素導(dǎo)致人們作息不同,因此存在“單峰”“雙峰”兩種交通流量模式。圖14(a)、(b)分別展示了0號節(jié)點(diǎn)“單峰”“雙峰”的真實(shí)數(shù)據(jù)趨勢和TSARGCN 模型預(yù)測流量數(shù)據(jù)趨勢?!皢畏濉蹦J较拢藗兓顒?dòng)時(shí)間集中在12:00-18:00,這種模式通常出現(xiàn)在節(jié)假日期間(人們通常在下午進(jìn)行外出活動(dòng))。TSARGCN 在這種模式下能夠較好地預(yù)測實(shí)際交通流量的變化趨勢?!半p峰”模式下,通常會在9:00 左右和18:00 點(diǎn)左右出現(xiàn)兩個(gè)高峰,這符合工作日因?yàn)樯舷掳喑鲂袑?dǎo)致的早高峰和晚高峰。TSARGCN 在這種模式下能夠明顯捕捉早高峰和晚高峰的峰值時(shí)間點(diǎn),同時(shí)能夠比較精確地跟蹤交通流量變化。為了評測不同節(jié)點(diǎn)該模型的交通流量預(yù)測能力,還給出1 號和2 號傳感器節(jié)點(diǎn)在兩種模式下的實(shí)際流量曲線和預(yù)測流量曲線,如圖14(c)~圖14(f)所示,從中可以看出,該模型能夠較好地預(yù)測出不同節(jié)點(diǎn)交通流量的趨勢。
表2 TSARGCN在不同節(jié)點(diǎn)的預(yù)測指標(biāo)Table 2 Comparison of TSARGCN and other models
結(jié)合表2 和圖14,0 號節(jié)點(diǎn)的預(yù)測效果是3 個(gè)節(jié)點(diǎn)中最好的。從0號,1號和2號這3個(gè)節(jié)點(diǎn)預(yù)測中可以看出,流量數(shù)據(jù)的變化越標(biāo)準(zhǔn),預(yù)測值與真實(shí)值越接近。通過研究發(fā)現(xiàn),誤差的主要來源在于“雙峰”模式下的雙峰標(biāo)準(zhǔn)程度?!皢畏濉蹦J较碌牧髁款A(yù)測都相對精準(zhǔn),而“雙峰”模式中波峰高度之間的差異,波峰與波谷之間的差異成為影響標(biāo)準(zhǔn)程度的關(guān)鍵。
圖14 TSARGCN在不同節(jié)點(diǎn)的交通流量預(yù)測圖Fig.14 TSARGCN traffic flow prediction graph at different nodes
在表2 的基礎(chǔ)上,進(jìn)一步研究了不同節(jié)點(diǎn)在“雙峰”模式下的雙峰標(biāo)準(zhǔn)程度對流量預(yù)測的影響。首先針對原始數(shù)據(jù)進(jìn)行簡單的平滑處理,考慮本文實(shí)際數(shù)據(jù)起始點(diǎn)和真實(shí)數(shù)據(jù)時(shí)間點(diǎn)并沒有完全對應(yīng),觀察0 號,1 號,2 號節(jié)點(diǎn)數(shù)據(jù)特征之后,本文將6:00 左右的流量值作為左峰值點(diǎn),14:00 左右的流量值作為右波峰點(diǎn),10:00 左右的流量值作為波谷點(diǎn),統(tǒng)計(jì)波峰波谷點(diǎn)的數(shù)據(jù),如表3所示。通過表3 的各個(gè)數(shù)據(jù)可以看出,當(dāng)兩個(gè)波峰值越接近,波谷值與波峰值差距越明顯,則雙峰模式標(biāo)準(zhǔn)程度越高,流量預(yù)測精度也就越高,預(yù)測值和真實(shí)值越接近。
表3 不同節(jié)點(diǎn)的波峰波谷值對流量預(yù)測的影響Table 3 Influence of peak and trough values of different nodes on flow prediction
圖15 為TSARGCN 在0 號節(jié)點(diǎn)2018年1月1~7日共1 周的交通流量預(yù)測結(jié)果圖,從圖中可以看出,模型能夠很好地跟蹤每天的流量變化趨勢。該模型對整個(gè)流量變化的時(shí)間周期性以及不同節(jié)點(diǎn)之間相互影響導(dǎo)致的時(shí)空相關(guān)性實(shí)現(xiàn)了較好的捕捉。
圖15 TSARGCN在0號傳感器1周的交通流量預(yù)測圖Fig.15 TSARGCN weekly traffic flow forecast at sensor 0
本文得到主要結(jié)論如下:
(1)提出的TSARGCN 交通流量預(yù)測模型與HA,SVR,ARIMA,Conv-LSTM 以及ASTGCN 等交通流量預(yù)測模型相比,因TSARGCN充分考慮了交通流中時(shí)空特征及其相關(guān)關(guān)系,交通流量預(yù)測精度明顯高于其他模型。
(2)通過對0 號、1 號和2 號這3 個(gè)節(jié)點(diǎn)不同交通流量模式的預(yù)測結(jié)果分析可知,在不同節(jié)點(diǎn),TSARGCN 都能較好地預(yù)測各種交通流量變化趨勢。
(3)通過對0 號節(jié)點(diǎn)2018年1月1~7日共1 周的交通流量預(yù)測結(jié)果分析,TSARGCN對整個(gè)交通流量在1周內(nèi)的變化都能夠較好地預(yù)測。