王方偉, 陳景雅, 謝敏慧, 石寶存
(河海大學(xué)土木與交通學(xué)院,南京 210098)
隨著智能交通系統(tǒng)的快速發(fā)展,交通流預(yù)測(cè)作為智能交通系統(tǒng)的核心內(nèi)容,在交通管理和城市規(guī)劃的應(yīng)用中具有重要的意義. 交通流數(shù)據(jù)本身具有非線性和隨機(jī)性的特點(diǎn),會(huì)受到時(shí)間、空間等諸多因素的影響,這使得傳統(tǒng)機(jī)理和經(jīng)典數(shù)學(xué)理論模型難以模擬其過程[1].
近年來國(guó)內(nèi)外研究學(xué)者提出組合模型預(yù)測(cè)交通流量,通過結(jié)合多個(gè)模型的優(yōu)點(diǎn)提高預(yù)測(cè)精度. Li等[2]提出了一種基于集成經(jīng)驗(yàn)?zāi)B(tài)分解和隨機(jī)向量函數(shù)連接網(wǎng)絡(luò)的行程時(shí)間預(yù)測(cè)模型. Lu 等[3]結(jié)合LSTM 和ARIMA的優(yōu)點(diǎn)對(duì)交通流進(jìn)行預(yù)測(cè),也取得了較好的預(yù)測(cè)效果. 鄒宗民等[4]用粒子群算法對(duì)支持向量機(jī)進(jìn)行參數(shù)尋優(yōu),該模型在小樣本交通流序列中表現(xiàn)較好. 李磊等[5]提出一種卷積神經(jīng)網(wǎng)絡(luò)和LSTM結(jié)合的方法,有效提取了交通流的時(shí)空特征. Guo等[6]在時(shí)空?qǐng)D卷積網(wǎng)絡(luò)中引入了注意力機(jī)制,對(duì)交通流序列進(jìn)行了準(zhǔn)確預(yù)測(cè). 隨著研究的深入,有些學(xué)者開始引入多因素進(jìn)行交通流預(yù)測(cè). 丁永兵等[7]構(gòu)建多元時(shí)間序列模型進(jìn)行預(yù)測(cè),證明優(yōu)于傳統(tǒng)的ARIMA模型. Wu等[8]挖掘交通流周期性和道路空間特征,構(gòu)建了一種深度神經(jīng)網(wǎng)絡(luò)模型. Tang等[9]將聚類方法與時(shí)空相關(guān)性結(jié)合預(yù)測(cè)交通流量. Mur?a等[10]提出了一種基于多因素多層聚類分析的概率模型. 但是引入更多的因素會(huì)導(dǎo)致模型的復(fù)雜性提高,因此需要在保證預(yù)測(cè)精度的同時(shí)提高模型運(yùn)算效率. 林蒙蒙等[11]通過引入因果分析方法量化各因素對(duì)交通流的影響程度. 李澤文等[12]提出主成分分析法對(duì)引入的多因素降維. Li等[13]將基于最大信息系數(shù)(MIC)與支持向量回歸分析法結(jié)合,降低模型的復(fù)雜性. 徐先鋒等[14]通過K近鄰算法提取特征,兼顧了模型的預(yù)測(cè)精度和運(yùn)算速度.
綜上所述,目前針對(duì)天氣因素對(duì)交通流影響的研究較少,而天氣因素與交通流量之間存在復(fù)雜的非線性關(guān)系,往往多種天氣因素對(duì)交通流量共同作用. 因此,本文提出一種多因素建模方法. 首先采用PCA 對(duì)數(shù)據(jù)進(jìn)行降噪處理,然后利用灰色關(guān)聯(lián)分析法計(jì)算各特征與分類標(biāo)簽的關(guān)聯(lián)程度,選擇關(guān)聯(lián)性高的特征作為最終的訓(xùn)練特征,降低模型復(fù)雜度. 最后采用集成學(xué)習(xí)的方式進(jìn)行模型預(yù)測(cè),同時(shí)與傳統(tǒng)模型進(jìn)行對(duì)比,驗(yàn)證模型的可靠性.
本文的交通量數(shù)據(jù)來自英國(guó)公路交通數(shù)據(jù)集,曼徹斯特是英國(guó)重要的交通樞紐,交通發(fā)達(dá),因此選取數(shù)據(jù)集中曼徹斯特2020-01-01至2020-10-31的局部路網(wǎng)節(jié)點(diǎn)的交通量作為實(shí)驗(yàn)對(duì)象;其他監(jiān)測(cè)數(shù)據(jù)來自英國(guó)氣象局,包括:氣溫、大氣壓強(qiáng)、風(fēng)速、相對(duì)濕度、降水量、云量、可見度. 每隔15 min收集一次數(shù)據(jù),每類數(shù)據(jù)29 280條. 針對(duì)采集的數(shù)據(jù)樣本,前70%的數(shù)據(jù)用于模型訓(xùn)練,后30%的數(shù)據(jù)作為測(cè)試集用于模型性能驗(yàn)證.
由于選取的數(shù)據(jù)樣本由8 個(gè)不同的指標(biāo)特征變量組成,不同的指標(biāo)特征具有不同的量綱和量綱單位.為了消除不同指標(biāo)之間的量綱影響,讓不同的數(shù)據(jù)指標(biāo)具有可比性,同時(shí)又不影響到數(shù)據(jù)分析的結(jié)果,需要對(duì)數(shù)據(jù)進(jìn)行歸一化處理. 本文實(shí)驗(yàn)中選用Min-max標(biāo)準(zhǔn)化方法,公式如下所示:
式中:x′t表示經(jīng)歸一化處理后的數(shù)值;xt表示原始數(shù)值;xmax和xmin分別表示同一個(gè)指標(biāo)的樣本數(shù)據(jù)中的最大值和最小值.
考慮到樣本數(shù)據(jù)的監(jiān)測(cè)采集周期較長(zhǎng),測(cè)量設(shè)備、測(cè)量方法以及一些人為因素都有可能對(duì)數(shù)據(jù)帶來一定的誤差. 因此對(duì)歸一化后的數(shù)據(jù)再進(jìn)行PCA降噪處理[15],先通過PCA降維,再將降維后的數(shù)據(jù)重建成和原來維度相同的數(shù)據(jù)就可以起到對(duì)數(shù)據(jù)降噪的作用[16]. 為了盡可能保留樣本數(shù)據(jù)中的有效信息,實(shí)驗(yàn)中設(shè)置PCA算法保留數(shù)據(jù)95%的有效信息. PCA算法的步驟如下:
1)對(duì)樣本數(shù)據(jù)矩陣Dn×m={x1,x2,…,xm} 進(jìn)行中心化,得到中心化矩陣D′.
2)計(jì)算矩陣D′的協(xié)方差矩陣,并進(jìn)行特征值分解.
3)取出最大的t個(gè)特征值所對(duì)應(yīng)的特征向量{W1,W2,…,Wt} ,對(duì)其進(jìn)行標(biāo)準(zhǔn)化處理得到矩陣W,降維后的數(shù)據(jù)矩陣即為Y=WTD′.
4)將矩陣Y與WT相乘得到新的矩陣Y′,即可將降維后的矩陣重建為原來的維度.
5)求出矩陣的每一列的均值,得到n維的均值向量U,將Y′與均值向量U相加即為接下來實(shí)驗(yàn)中所需的樣本數(shù)據(jù)矩陣.
本文采用GRA方法對(duì)多個(gè)特征變量進(jìn)一步篩選[17]. 灰色關(guān)聯(lián)分析法是一種通過確定參考數(shù)列和其他比較數(shù)列的幾何形狀相似程度來判斷因素之間的聯(lián)系是否緊密的方法,它可以對(duì)一個(gè)系統(tǒng)的發(fā)展態(tài)勢(shì)進(jìn)行定量的描述和比較. GRA的主要步驟如下:
1)確定反映系統(tǒng)行為特征的參考數(shù)列(交通流量)和影響系統(tǒng)行為特征的比較數(shù)列(天氣因素).
2)為了消除各個(gè)因素?cái)?shù)列中的數(shù)據(jù)不同量綱的影響,將所有的數(shù)列歸一到[-1,1].
3)計(jì)算參考數(shù)列與比較數(shù)列的關(guān)聯(lián)系數(shù)ξi(k):
式中:y0(k)為歸一化后的參考數(shù)列;xi(k)為歸一化后的比較數(shù)列;ρ為分辨系數(shù),ρ越小,分辨力越強(qiáng),通常取0.5.
4)計(jì)算灰色關(guān)聯(lián)度ri:
其中n為比較數(shù)列的數(shù)目.
將交通流量與各個(gè)天氣因素用灰色關(guān)聯(lián)分析法進(jìn)行計(jì)算,計(jì)算結(jié)果如表1所示.
表1 天氣因素灰色關(guān)聯(lián)度Tab.1 Grey relational degrees of various weather factors
由于交通流數(shù)據(jù)中包含著空間、時(shí)序、時(shí)間等諸多信息,使用單一的模型進(jìn)行預(yù)測(cè)往往不能得到很好的效果,為此本文使用集成學(xué)習(xí)的方法進(jìn)行研究[18]. 集成學(xué)習(xí)是使用一系列的個(gè)體學(xué)習(xí)器進(jìn)行學(xué)習(xí),然后通過一定的結(jié)合策略把各個(gè)學(xué)習(xí)結(jié)果進(jìn)行整合,從而獲得比單一學(xué)習(xí)器更好的學(xué)習(xí)效果的一種機(jī)器學(xué)習(xí). 集成學(xué)習(xí)的一般結(jié)構(gòu)如圖1所示.
圖1 集成學(xué)習(xí)結(jié)構(gòu)Fig.1 Ensemble learning structure
按照個(gè)體學(xué)習(xí)器之間是否存在依賴關(guān)系,集成學(xué)習(xí)方法大致可以分為兩類:一類是個(gè)體學(xué)習(xí)器之間都存在強(qiáng)依賴關(guān)系,一系列的個(gè)體學(xué)習(xí)器串行生成,代表算法是Boosting系列算法;一類是個(gè)體學(xué)習(xí)器之間不存在強(qiáng)依賴關(guān)系,一系列的個(gè)體學(xué)習(xí)器并行生成,代表算法是Bagging和隨機(jī)森林(Random Forest)系列算法.
自適應(yīng)提升(adaptive boosting,AdaBoost)算法是基于Boosting 集成學(xué)習(xí)系列算法中著名的算法之一,它具有較強(qiáng)的學(xué)習(xí)效率,并且不容易出現(xiàn)過擬合的現(xiàn)象,可以通過不斷地訓(xùn)練提高學(xué)習(xí)能力[19]. 本文選用長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)(LSTM)、分類回歸樹(CART)、自回歸積分滑動(dòng)平均模型(ARIMA)作為AdaBoost 集成模型的個(gè)體學(xué)習(xí)器.
LSTM是一種改進(jìn)后的循環(huán)神經(jīng)網(wǎng)絡(luò),具有長(zhǎng)時(shí)記憶功能,解決了長(zhǎng)序列訓(xùn)練過程中存在的梯度消失和梯度爆炸的問題;ARIMA是一種經(jīng)典的處理時(shí)序數(shù)據(jù)的數(shù)理分析模型,在平穩(wěn)性較強(qiáng)的交通流中有著不錯(cuò)的預(yù)測(cè)能力,作為個(gè)體學(xué)習(xí)器可以用于初步捕獲數(shù)據(jù)中的時(shí)序信息;CART是一種樹構(gòu)建算法,通過二元切分來處理連續(xù)型變量,即特征值大于給定的值就走左子樹或者右子樹,直到獲得最終的結(jié)果. 三個(gè)個(gè)體學(xué)習(xí)器分別代表了深度學(xué)習(xí)方法、傳統(tǒng)的數(shù)理統(tǒng)計(jì)模型、機(jī)器學(xué)習(xí)方法. AdaBoost算法流程如下:
1)給定樣本總數(shù)為N的數(shù)據(jù)集為{(x1,y1) ,(x2,y2),…,(xi,yi),…,(xN,yN)},其中xi是樣本特征,yi是樣本標(biāo)簽,yi∈(- 1,1) ,i=1,2,…,N.
2)對(duì)訓(xùn)練樣本數(shù)據(jù)集進(jìn)行權(quán)值初始化:
式中w1i是初始第i個(gè)特征數(shù)據(jù)的權(quán)重?cái)?shù)值,i=1,2,…,N.
3)根據(jù)設(shè)定迭代m次,m=1,2,…,M,M為總迭代次數(shù),用權(quán)重分布的訓(xùn)練集Dm訓(xùn)練個(gè)體學(xué)習(xí)器hm.
4)計(jì)算個(gè)體學(xué)習(xí)器hm的誤差率em:
5)根據(jù)誤差率計(jì)算當(dāng)前個(gè)體學(xué)習(xí)器hm的權(quán)值αm:
6)更新訓(xùn)練集的權(quán)值分布Dm+1:
其中Zm是規(guī)范化因子,有
7)重復(fù)步驟(3)~(6)迭代M次,構(gòu)建得到最后的強(qiáng)學(xué)習(xí)器G(x):
為了提高預(yù)測(cè)模型的訓(xùn)練速度和準(zhǔn)確度,本文提出了一種基于PCA-GRA-AdaBoost 的交通流量預(yù)測(cè)模型. 首先將所有的樣本數(shù)據(jù)進(jìn)行歸一無量綱化和PCA降噪處理,然后利用灰色關(guān)聯(lián)分析法對(duì)處理后的特征變量進(jìn)一步篩選. 當(dāng)兩個(gè)序列的灰色關(guān)聯(lián)度系數(shù)大于0.6時(shí),可認(rèn)為他們之間有很強(qiáng)的相關(guān)性[20],因此將關(guān)聯(lián)系數(shù)大于0.6的特征變量輸入到AdaBoost集成模型中,用于交通流量的預(yù)測(cè). 具體模型預(yù)測(cè)流程如圖2所示.
圖2 預(yù)測(cè)模型結(jié)構(gòu)圖Fig.2 Structure diagram of prediction model
為了判定模型的預(yù)測(cè)性能和優(yōu)劣程度,本文分別使用平均絕對(duì)誤差(Mean Absolute Error,MAE)、平均絕對(duì)百分比誤差(Mean Absolute Percentage Error,MAPE)、均方根誤差(Root Mean Square Error,RMSE)、決定系數(shù)R2作為模型預(yù)測(cè)效果的評(píng)價(jià)指標(biāo). 其中MAE反映了預(yù)測(cè)值和真實(shí)值之間絕對(duì)誤差的大小,該值越小,表示模型越準(zhǔn)確;MAPE反映了所有的樣本誤差占實(shí)際值的比例;RMSE反映了模型的預(yù)測(cè)結(jié)果與真實(shí)值的偏離程度,該值越小,表示模型越穩(wěn)定;R2體現(xiàn)模型的擬合效果,取值范圍[0,1],該指標(biāo)越接近1,表示模型的擬合效果越好. 各個(gè)評(píng)價(jià)指標(biāo)的具體公式如下:
式中:y^i表示交通流量的預(yù)測(cè)值;yi表示交通流量的真實(shí)值;yˉ表示測(cè)試樣本中真實(shí)交通流量的平均值;n表示樣本個(gè)數(shù).
為了驗(yàn)證本文提出的將基于PCA降噪處理、GRA特征篩選與AdaBoost 集成學(xué)習(xí)相結(jié)合方法的有效性,與傳統(tǒng)的LSTM、CART、ARIMA、AdaBoost等預(yù)測(cè)模型作對(duì)比. 各個(gè)預(yù)測(cè)模型的結(jié)果如表2所示.
表2 經(jīng)典預(yù)測(cè)模型性能對(duì)比Tab.2 Performance comparison of classical prediction models
由表2可以看出,在前三個(gè)單一預(yù)測(cè)模型的對(duì)比中,LSTM的預(yù)測(cè)效果最好. 這是由于樣本數(shù)據(jù)具有時(shí)序性,LSTM在處理時(shí)序性問題中具有良好的效果,可以發(fā)掘序列間的非線性關(guān)系,從而提高預(yù)測(cè)精度[21]. 而AdaBoost集成模型相比三個(gè)單一的預(yù)測(cè)模型,在各個(gè)評(píng)價(jià)指標(biāo)上都有不同程度的提高. 尤其是與ARIMA模型相比,AdaBoost 集成模型的MAE、MAPE、RMSE、R2分別減少了45.16%、51.51%、48.11%、30.21%. 這是由于三個(gè)個(gè)體學(xué)習(xí)器具有較強(qiáng)的差異性,一個(gè)個(gè)體學(xué)習(xí)器可以彌補(bǔ)其他兩個(gè)學(xué)習(xí)器表現(xiàn)稍差的學(xué)習(xí)結(jié)果,三個(gè)學(xué)習(xí)器相輔相成,使得集成模型在預(yù)測(cè)的準(zhǔn)確度和穩(wěn)定性上明顯優(yōu)于單一的預(yù)測(cè)模型.
本文提出的基于PCA-GRA-AdaBoost 組合方法相比傳統(tǒng)的AdaBoost 集成模型,決定系數(shù)R2進(jìn)一步提高,達(dá)到0.942. 模型的MAE、MAPE、RMSE 分別減少了15.95%、17.29%、11.07%. 以上結(jié)果表明,本文提出的PCA-GRA-AdaBoost模型能夠有效減少樣本數(shù)據(jù)中噪音的影響,擬合程度和預(yù)測(cè)精度都有了不錯(cuò)的提升,同時(shí)經(jīng)過GRA法對(duì)特征變量的篩選,選取與交通流量相關(guān)程度較高的其他因素作為集成模型的輸入,降低了模型的運(yùn)算復(fù)雜度.
為了更清楚地展示該模型的預(yù)測(cè)效果,從預(yù)測(cè)數(shù)據(jù)中隨機(jī)抽取一段來進(jìn)行展示,根據(jù)樣本數(shù)據(jù)的預(yù)測(cè)值和真實(shí)值進(jìn)行曲線繪圖,如圖3所示. 其中橫坐標(biāo)表示時(shí)間,縱坐標(biāo)表示交通流量,藍(lán)色曲線為樣本數(shù)據(jù)的真實(shí)值,紅色曲線代表預(yù)測(cè)值. 從兩圖的對(duì)比中可以看出,本文提出的優(yōu)化后的AdaBoost 集成模型有著更好的預(yù)測(cè)效果.
圖3 未優(yōu)化(左)與優(yōu)化后(右)AdaBoost集成模型對(duì)比Fig.3 Comparison of unoptimized(left)and optimized(right)AdaBoost integration models
本文針對(duì)影響交通流量的因素較多且復(fù)雜,考慮其數(shù)據(jù)具有時(shí)序性和非線性的特點(diǎn),提出了一種PCAGRA-AdaBoost的交通流量預(yù)測(cè)模型. 通過與傳統(tǒng)單一預(yù)測(cè)模型和未被優(yōu)化的AdaBoost集成模型相對(duì)比,本文提出的PCA-GRA-AdaBoost 模型顯著提高了交通流量的預(yù)測(cè)精度和穩(wěn)定性,同時(shí)也提高了抗噪聲干擾能力,并降低了模型運(yùn)算的復(fù)雜度.