張齡允,韓 瑩,張 凱,盧海鵬,丁昱杰
(南京信息工程大學自動化學院,江蘇 南京 210044)
隨著經(jīng)濟社會的高速發(fā)展,道路交通堵塞問題越來越嚴重。智能交通系統(tǒng)(Intelligent Transportation System, ITS)是緩解道路交通擁堵、提高道路交通安全的有效途徑[1-2]。ITS將計算機、人工智能等技術有效地綜合運用于交通運輸?shù)阮I域,加強車輛、道路之間的聯(lián)系,是建設智慧城市的重要環(huán)節(jié)[3]。在智能交通領域中,短時交通流預測起著重要的作用。短時交通流預測就是基于過去時段的交通信息,去預測未來某個時段的交通狀況,可以提供給出行者更為準確的道路信息,提高道路通行效率[4]。因此,交通流預測研究有著重要的現(xiàn)實意義。
隨著近幾年交通流預測領域的不斷研究和發(fā)展,國內外學者們已經(jīng)提出了很多的預測模型和方法,大致可分為2類:傳統(tǒng)預測模型和神經(jīng)網(wǎng)絡預測模型。Lin等人[5]采用差分整合移動平均自回歸(Autoregressive Integrated Moving Average, ARIMA)模型,獲得短時高速交通流數(shù)據(jù)的波動特征,實現(xiàn)交通流預測。趙偉[6]采用最小二乘支持向量機(Least Square Support Vector Machines, LSSVM)對交通流進行預測,但運行效率慢、計算量復雜。Liu等人[7]提出了一種基于KNN-SVR的混合預測模型,采用K近鄰(K-Nearest Neighbor, KNN)算法的搜索機制來重建與當前交通流相似的歷史交通流序列,然后利用支持向量回歸(Support Vector Regression, SVR)對短時交通流進行預測。但受到環(huán)境因素的干擾,交通流數(shù)據(jù)具有高度非線性和復雜性,使得這些傳統(tǒng)模型很難獲得較高的預測精度。
近幾年來,隨著深度學習的興起,神經(jīng)網(wǎng)絡被廣泛應用于交通流預測領域,以其強大的學習能力和自適應能力受到國內外許多學者的關注。長短期記憶網(wǎng)絡具有精度高的優(yōu)點,對噪聲具有很強的魯棒性和容錯性,也具有聯(lián)想記憶的功能,可以有效地處理時間序列問題[8]。Dogan[9]觀察不同訓練集規(guī)模應用于LSTM訓練的效果,研究表明,在交通流領域,擴大訓練集規(guī)模會單調增加LSTM性能。馬焱棋等人[10]利用LSTM對車輛速度和密度這2個指標進行預測,與傳統(tǒng)模型相比,具有較好的預測精度。
上述方法只考慮了交通流數(shù)據(jù)的時間特征,其實數(shù)據(jù)的空間特征也會影響模型的預測精度[11]。姚思佳等人[12]利用CNN對北京市四環(huán)路交通流進行預測。李磊等人[13]提出一種基于CNN和LSTM的短時交通流預測方法,采用分層提取方法提取數(shù)據(jù)的時空特征。Li等人[14]提出一種使用CNN-LSTM的實時碰撞風險預測模型,該模型可以明確地從各種特征中學習,結果表明,引入數(shù)據(jù)的空間特征能有效提高模型的預測精度。門控循環(huán)單元(Gated Recurrent Unit, GRU)[15]和LSTM一樣,都是為解決長期記憶和梯度爆炸問題而提出。盧生巧等人[16]提出了一種基于CNN-GRU的交通流深度學習預測模型,實驗結果表明,運行時間縮短,但預測精度相對較低,這是由于GRU模型的內部結構難以學習長時間序列對網(wǎng)絡的依賴性所導致。注意力機制[17]對數(shù)據(jù)的自適應關注可以提高模型提取特征的能力,近幾年來被廣泛應用于交通流預測領域。Vijayalakshmi等人[18]提出了一種基于注意力機制的CNN-LSTM-Attention多步預測模型,對輸入特征賦予不同的權重,提取數(shù)據(jù)的關鍵信息。桂智明等人[19]提出一種結合注意力機制的CNN-GRU-Attention預測模型,利用交通流的周相似性提取周期特征,將所有特征融合進行回歸預測。
交通流量容易受到天氣、通信等外部因素的干擾,收集到的數(shù)據(jù)中含有大量的噪聲[20]。分解算法可以降低噪聲對預測模型的影響,受到越來越多學者們的青睞。Huang等人[21]研究了互補集成經(jīng)驗模態(tài)分解對短時交通流數(shù)據(jù)預測的影響。聶鈴等人[22]提出基于CEEMD的短時交通流預測模型,結果表明,CEEMD可以有效提高交通流預測模型的訓練精度和抗噪聲能力。
因此,針對短時交通流預測準確性的要求,本文提出一種基于CEEMD-CNN-LSTM的短時交通流預測方法。融合CEEMD自適應處理非線性數(shù)據(jù)的特性,將分解后的本征模態(tài)函數(shù)(Intrinsic Mode Function, IMF)分量通過CNN-LSTM組合模型進行預測,充分挖掘交通流數(shù)據(jù)的時空特征,疊加各個IMF分量預測值作為最終的預測結果。本文選取加利福尼亞州主要大都市區(qū)高速公路的交通流數(shù)據(jù)進行實驗驗證,期望能夠達到較好的預測效果。
CNN是一種前饋式神經(jīng)網(wǎng)絡,其中1DCNN可以很好地應用于時間序列分析[23-24]。交通流屬于典型的時間序列數(shù)據(jù),因此本文采用1DCNN對交通流數(shù)據(jù)的空間特征進行提取。
1DCNN神經(jīng)網(wǎng)絡通過一維卷積操作和池化操作對數(shù)據(jù)進行特征提取。一維卷積操作通過控制卷積核的數(shù)量來實現(xiàn)特征降維,降低模型的復雜度。卷積操作如式(1)所示:
(1)
池化操作在卷積操作的基礎上進一步實現(xiàn)特征降維,并減小過擬合現(xiàn)象。常用的方法為最大值池化,表達式如式(2)所示:
(2)
LSTM是一種時間遞歸神經(jīng)網(wǎng)絡,是對循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network, RNN)的改進[25]。LSTM解決了RNN存在的梯度爆炸問題和數(shù)據(jù)長期依賴問題[26]。LSTM內部結構如圖1所示。
圖1 LSTM結構原理圖
LSTM的核心思想是引入了“門”的內部機制,為激活函數(shù)sigmoid,通過函數(shù)的輸出值來實現(xiàn)對信息的保護和控制。LSTM在RNN的基礎上增加了遺忘門、輸入門和輸出門。遺忘門決定從細胞狀態(tài)中丟棄或保留哪些信息,輸入門用于細胞狀態(tài)的更新,輸出門決定輸出哪些信息。
LSTM單元門表達式如式(3)~式(5)所示:
ft=σ(Wf·[ht-1,xt]+bf)
(3)
it=σ(Wi·[ht-1,xt]+bi)
(4)
ot=σ(Wo·[ht-1,xt]+bo)
(5)
其中,ft、it、ot分別為遺忘門、輸入門、輸出門的輸出,Wf、Wi、Wo、bf、bi、bo分別為各單元門的權重和偏置,ht-1、xt分別為前一時刻和當前時刻的輸入。輸入門和輸出門還分別增加一個tanh神經(jīng)層來控制信息的更新和輸出,其控制表達式如式(6)~式(8)所示:
Ct1=tanh(Wc·[ht-1,xt]+bc)
(6)
Ct=Ct-1·ft+it·Ct1
(7)
ht=ot·tanh(Ct)
(8)
其中,Ct1為前一時刻記憶單元的狀態(tài),Ct為當前時刻記憶單元的狀態(tài),ht為預測的交通流序列。
1.3.1 EMD原理及應用
經(jīng)驗模態(tài)分解(Empirical Mode Decomposition, EMD)是一種通過重復減去包絡均值來連續(xù)去除振蕩的自適應方法,適用于非線性、非平穩(wěn)的信號處理[27]。它能將復雜信號分解為有限個IMF分量,各IMF分量包含了原始信號在不同時間尺度上的局部特征信號,即將原始序列分解成一系列本征模態(tài)函數(shù)分量和殘余分量。
(9)
其中,m為IMF分量的個數(shù);ci(t)為第i個IMF分量;rm(t)為第m個殘余分量。
1.3.2 CEEMD原理及應用
CEEMD是一種根據(jù)噪聲頻率處理非線性信號的方法。交通流量易受外部因素干擾,收集到的數(shù)據(jù)會含有大量噪聲。雖然EMD可以處理非線性信號,但在分解過程中存在模態(tài)混疊問題,使得篩選出的IMF分量包含不同時間尺度的信息,因此王靜等人[28]提出采用噪聲輔助的處理方法——CEEMD。
CEEMD通過引入一組互為相反數(shù)的高斯白噪聲加入到原始信號中,將2個混合信號同時進行EMD分解,不僅克服了EMD存在的模態(tài)混疊現(xiàn)象,也因為引入的是互補噪聲,所以重構后的數(shù)據(jù)中噪聲殘余量幾乎可以忽略不計。在一定程度上,CEEMD還可以使用相對較少的集成平均次數(shù),在保證小剩余噪聲干擾的情況下,節(jié)省計算時間。
CEEMD具體操作步驟如下:
1)在原始信號中加入一組正負成對的高斯白噪聲。
(10)
其中,xa(t)表示加入正噪聲之后的信號,xb(t)表示加入負噪聲之后的信號,s(t)表示原始信號,n(t)表示加入的輔助白噪聲。
2)對xa(t)、xb(t)同時進行EMD分解,將分解后的IMF分量分別記為IMFsk_a、IMFsk_b,k=1,2,…,n。
(11)
其中,IMFsk_a、IMFsk_b分別表示加入第k個正噪聲和第k個負噪聲之后的分解信號,IMFsk表示加入第k個輔助白噪聲之后的集總平均值。
3)對IMFsk求總平均值:
(12)
其中,IMFs表示分解后最終得到的信號分量。
針對交通流數(shù)據(jù)易受外界環(huán)境干擾,存在大量噪聲而導致預測精度下降的問題,本文提出一種結合互補集成經(jīng)驗模態(tài)分解的卷積長短時記憶單元預測模型。
模型結構如圖2所示。本文模型的算法參數(shù)如表1所示。CEEMD分解流程如圖3所示。
圖2 模型結構
表1 算法參數(shù)表
圖3 交通流分解流程圖
本文模型將分解后的IMF信號分量輸送到CNN層提取數(shù)據(jù)的時空特征,采用LSTM增強神經(jīng)網(wǎng)絡的記憶能力,提高學習效率。具體步驟如下:
1)采用CEEMD根據(jù)噪聲頻率對原始交通流數(shù)據(jù)進行分解,設置最大模態(tài)數(shù)(即IMFs個數(shù))為12,其中epsilon設置為0.005,插值方法選取“pchip”。
2)將分解后的各個IMF信號分量輸送到1DCNN層,挖掘交通流數(shù)據(jù)的時空特征,得到交通流時間序列的特征向量。采用ReLU函數(shù)激活一維卷積網(wǎng)絡,加速梯度下降的收斂速度。設置卷積核個數(shù)為32,卷積核長度為5,池化層數(shù)為1。
3)將特征向量輸送到LSTM神經(jīng)網(wǎng)絡中,訓練數(shù)據(jù)不斷更新各個門單元的權重項和偏置項。設置LSTM層數(shù)為3,隱藏單元的神經(jīng)元個數(shù)分別為32、32、16。其中Dropout層設為0.2,即隨機斷開20%的神經(jīng)元,緩解模型出現(xiàn)過擬合現(xiàn)象。
4)在模型訓練階段,設定學習率為0.001,采用Adam作為網(wǎng)絡優(yōu)化器。設置Batch_size為64,即一次訓練所選取的樣本數(shù);epoch為25,即所有數(shù)據(jù)送入網(wǎng)絡完成訓練的次數(shù)。最后通過一個全連接層輸出最終預測序列。
本文在Python環(huán)境下,使用Keras神經(jīng)網(wǎng)絡框架完成模型的搭建和訓練。將本文模型與現(xiàn)有模型進行對比分析,結果表明,本文模型在評估指標和曲線擬合程度上均能達到較好的效果。
本文選取的數(shù)據(jù)集來自于Caltrans Performance Measurement System(PeMS),數(shù)據(jù)是從跨越加利福尼亞州主要大都市區(qū)高速公路系統(tǒng)的各個探測器實時收集的,選取其中1車道點的車流量數(shù)據(jù)進行實驗驗證。該數(shù)據(jù)集中包含2016年1月4日到2016年3月31日的車流量數(shù)據(jù),每5 min記錄一次,共12098條。本文選取2016年1月4日到2016年2月27日的數(shù)據(jù)作為實驗驗證的樣本數(shù)據(jù),前90%作為訓練數(shù)據(jù),后10%作為測試數(shù)據(jù)。
采用min-max歸一化方法對交通流數(shù)據(jù)進行預處理操作,避免模型出現(xiàn)梯度爆炸問題,提高模型的收斂速度。表達式如(13)所示:
(13)
其中,y代表歸一化后的值,x代表原始值,xmax和xmin分別代表原始數(shù)據(jù)中的最大值和最小值。
為了驗證模型的預測性能,本文采用均方根誤差(Root Mean Square Error, RMSE)、平均絕對誤差(Mean Absolute Error, MAE)和決定系數(shù)(R2)作為模型的評估指標。定義如式(14)~式(16)所示:
(14)
(15)
(16)
MAE值用于衡量預測結果的誤差,RMSE值用于衡量預測結果的穩(wěn)定性,R2值用于衡量預測結果的準確程度。
交通流數(shù)據(jù)的CEEMD分解結果如圖4所示。
在原始數(shù)據(jù)中加入幅值為0.2的互補噪聲,將原始信號分解成一系列IMF分量和一個殘余分量,如圖4所示。
圖4 CEEMD數(shù)據(jù)分解圖
自上而下,IMF分量的振動頻率逐漸降低,且相鄰一段時間內IMF分量的振蕩模式較為相似,表示在同一時間段內的交通流量分布具有一定的相關性。高頻分量波動較大,受外界因素干擾強,其對應的頻譜值大、振動頻率小,噪聲為主導模態(tài);低頻分量波動較小,受外界因素干擾弱,變化幅度小,振幅大,數(shù)據(jù)更平穩(wěn),信號為主導模式。
提取最高頻分量作為交通流序列的隨機項,將剩余IMF分量疊加得到交通流序列的趨勢項。最后,將隨機項和趨勢項2個部分預測結果進行求和運算,得到最終的預測結果。
為了比較本文模型的預測性能,首先引入傳統(tǒng)預測模型進行比較,結果如表2所示。通過表2可知,本文模型相比于ARIMA[5]、SVR[6]模型,MAE值分別降低了7.0182、7.5793;RMSE值分別降低了9.459、10.5486,預測準確性平均可提高14.32個百分點。
表2 3種模型性能指標對比
結果表明,本文模型的預測性能要優(yōu)于其傳統(tǒng)預測模型。這是由于SVR、ARIMA僅僅依賴于交通流數(shù)據(jù)的歷史記錄進行預測,無法充分捕捉到復雜、非平穩(wěn)時間序列的數(shù)據(jù)特征。
為了更加直觀地比較模型的預測性能,本文選取現(xiàn)有預測模型與本文模型進行比較,分別給出了LSTM模型、CNN-LSTM模型、CNN-GRU模型、CNN-LSTM-Attention模型、CNN-GRU-Attention模型、EMD-LSTM模型、CEEMD-LSTM模型、CEEMD-CNN-LSTM模型的數(shù)據(jù)擬合結果,如圖5所示。從圖5中可以看出,本文模型的數(shù)據(jù)擬合程度要優(yōu)于其余7個模型,尤其是在2:00左右的低峰時段到6:00左右的高峰時段,數(shù)據(jù)有一個大幅度的上升,只有本文模型可以達到較高的擬合程度。預測精度的評估指標如表3所示。
表3 8種模型性能指標對比
由表2和表3分析可得,基于神經(jīng)網(wǎng)絡的預測模型在預測準確性上要優(yōu)于傳統(tǒng)的機器學習方法。
CNN-LSTM模型與單一的LSTM模型相比,前者的MAE和RMSE值分別降低了0.7777和0.885,說明通過CNN提取交通流數(shù)據(jù)的時間和空間特征,可以有效提升模型的學習能力和學習效率。
CEEMD-LSTM模型與EMD-LSTM模型相比,前者的MAE和RMSE值分別降低了1.0536和1.6512,說明CEEMD能夠克服EMD存在的模態(tài)混疊問題,得到更有規(guī)律的IMF分量,提高模型預測精度。將CEEMD-LSTM模型與單一的LSTM模型相比,前者的MAE和RMSE值分別降低了2.8014和3.8245,說明數(shù)據(jù)分解可以有效降低噪聲對交通流預測的影響,緩解交通流數(shù)據(jù)的非平穩(wěn)性,提高模型的預測精度。
CNN-LSTM模型和CNN-GRU模型相比,預測效果相差不大,但前者的預測精度要優(yōu)于后者。這可能是由于GRU模型的內部結構難以學習長時間序列對網(wǎng)絡的依賴性所導致。CNN-LSTM-Attention模型、CNN-GRU-Attention模型與CNN-LSTM模型、CNN-GRU模型相比,預測性能有所提高,但影響程度不大。
因此,本文將CNN和LSTM神經(jīng)網(wǎng)絡相結合,并引入CEEMD分解,提出一種新的CEEMD-CNN-LSTM短時交通流預測方法。在相同數(shù)據(jù)集上進行實驗驗證,本文模型的預測精度可以達到97.83%。
(a) LSTM
實驗結果表明,本文提出的交通流時間序列預測模型,對比評估指標RMSE、MAE、R2均能達到較好的效果。與現(xiàn)有模型相比,預測精度得到明顯提升,能夠更為準確地反應道路交通流的變化特征。
交通流數(shù)據(jù)的非線性、不確定性和隨機性給交通流預測帶來了許多困難,準確的短時交通流預測在智能交通領域有著重要的現(xiàn)實意義,可以提高道路通行效率,解決交通擁堵等問題。為提高短時交通流量預測精度,本文融合CEEMD自適應處理非線性數(shù)據(jù)的特性對交通流量進行信號分解。將分解后的IMF分量通過CNN-LSTM組合模型進行預測,提取交通流序列的時間特征和空間特征,有效利用交通流信息,最后將各IMF分量預測結果進行線性組合得到最終的預測結果。經(jīng)過多次實驗驗證,結果表明,CEEMD分解可以有效減少噪聲對短時交通流預測的影響,使模型做出更加準確的判斷,提高學習效率。本文模型的預測精度要優(yōu)于其他模型,在智能交通領域具有一定的參考價值。