包文華,劉海瑞,方 圓,王成棟
基于CNN-ARIMA的交通路口短周期交通車流量預測方法
包文華,劉海瑞,方 圓,王成棟*
(安徽信息工程學院,安徽 蕪湖 241000)
針對現有預測模型在智慧交通車流量預測過程中準確度較低、數據不平穩(wěn)的問題,文章提出了一種基于卷積神經網絡(CNN)和時間序列預測模型自回歸差分移動平均(ARIMA)相結合的短周期交通車流量預測方法。文章以蕪湖市汪溪路路口一周內的歷史車流量數據為樣本去預測下一時間周期的交通車流量,將得到的數據經過歸一化處理后模擬仿真實驗,仿真結果表明,該方案能夠運用于交通管控中,且能有效保持較高精確率而不受數據集大小的影響,其預測結果可以為車輛擁堵問題提供較好的提前應對方案。
智慧交通;交通路口;短周期;交通車流量;CNN-ARIMA;預測方法
隨著社會科技水平的不斷發(fā)展,人們對于出行的需求也相應增多。家用車總數的持續(xù)增加和道路交通網的復雜化改進,導致城市交通擁堵問題日益嚴重。為了解決交通擁堵問題,很多地方實施了智能交通系統(tǒng)[1]。近年來,人工智能技術被應用在各行各業(yè),許多學者也將其運用在智能交通領域。文獻[2]主要從車輛檢測的速度和精度方面進行改進,從實驗結果看改進的算法具有良好的性能;文獻[3]分別從前車檢測精度、遮擋前車檢測,以及車檢測速度三個方面進行了問題的探究及對應Faster基于卷積神經網絡(Region- Convolutional Neural Networks, R-CNN)算法(用于對象檢測的深度神經網絡架構)的優(yōu)化,實驗結果證明,在恰當的數量及參數選擇下,優(yōu)化算法對前車的檢測有了較大的提升;文獻[4]提出了一種基于改進的Faster R-CNN模型的車輛檢測算法,實驗結果表明,該模型有效解決了漏檢和誤檢問題。
但上述文獻所提出的算法只是檢測出車輛或者車輛個數,并沒有對車流量進行預測,而預測車流量可以為出行者提供合理的建議,才是目前解決車輛擁堵問題的關鍵[5]。故文獻[6]提出對特征提取視覺幾何群網絡(Visual Geometry Group Network, VGG16)生成的特征層進行處理,通過加入反卷積操作將所得到的特征信息進行分層預測,提出并實現利用注意力機制對Faster R-CNN算法做進一步改進;文獻[7]基于查分自回歸移動平均(Auto Regressive Integrated Moving Average, ARIMA)算法提出了一種改進型的短時車流量預測模型將短時車流量數據劃分為對應的數據集組,再由每個數據集組預測下一個時間周期的車流量,仿真結果驗證了模型的準確性;文獻[8]提出了在ARIMA算法基礎上用矩估計法進行參數初估計,用最小二乘法進行參數精估計,用貝葉斯信息準則(Bayesian Information Criterion, BIC)為模型定階,實驗結果表明,在時變性強的短時交通流量預測時有一定的準確性。
但上述方案在車流量預測算法中處理大量數據集時,仍存在檢測準確率較低和算法性能不穩(wěn)定的問題。為解決以上研究存在的問題,本文提出了一種基于CNN和ARIMA相結合的短周期交通車流量預測方法,將獲取的車流量數據劃分為訓練集和測試集,構建訓練模型并對模型優(yōu)化,從而提高測試集的預測準確率。仿真實驗結果驗證了該模型在預測車流量方面具有較好的普適性和魯棒性,其預測結果可以為出行者提供交通路線規(guī)劃,以此解決交通擁堵問題。
本文中所提出的基于CNN-ARIMA相結合的短周期交通車流量預測方案,預測過程包括獲取數據集、數據處理、構建訓練模型以及實驗結果分析。首先介紹獲取數據集,以蕪湖市汪溪路十字路口為場景,如圖1所示。收集一周內通過的車流量,用收集到的歷史車流量數據去預測未來一周內可能通行的車輛總數,將得到的數據用于交通管控中。
圖1 交通路口場景圖
由于開源數據集(如Tsinghua traffic)中場景較為單一,包含圖像類別不足,不足以證明預測結果的準確性。故本文選取蕪湖市汪溪路路口的車流量為數據集,連續(xù)7天為一個時間周期序列,采集時間段為9:00-18:00,每間隔30 min統(tǒng)計一次車流量。通過使用當前周期的車流量數據去預測下一周期時間節(jié)點的車流量,預測過程可以進行Z-Scores歸一化處理,經過處理后的車流量數據在不同周期的相同時間節(jié)點會存在關聯性。
在傳統(tǒng)的模型訓練方法中,視頻監(jiān)控采集的圖像需要處理的數據量太大,同時圖像在數字化的過程中很難保留原有的特征,導致圖像處理的準確率不理想。故本文先采用基于CNN模型來處理,采用不同結構和數值的卷積核,提取更精確的數據特征。模型由3層卷積層和3層池化層構成,使用線性整流函數(Rectified Linear Unit, ReLU)作為激活函數。在每個隱藏層,卷積核的大小為6×6,卷積運算步長為2。卷積運算公式用矩陣乘法來表示:
式中,y為當前值;為常數項;為階數;y-為自相關系數;ε為誤差。
把卷積核展開后進行按序排列,再遍歷所有的通道,最后將矩陣中對應的行列數據點乘。CNN對數據處理需要以下幾個步驟:
步驟1:數據準備。收集車流量數據,并將其劃分為訓練集和測試集;
步驟2:數據預處理。對數據進行必要的處理,例如去噪、歸一化、缺失值填充等;
步驟3:特征提取。對每個數據樣本提取特征,例如天氣、時間、交通擁堵情況等,可以使用CNN自動提取特征;
步驟4:構建CNN模型。使用開源神經網絡庫(Keras)深度學習框架構建CNN模型,包括卷積層、池化層、全連接層等;
步驟5:訓練模型。使用訓練集進行模型訓練,并在驗證集上調整模型參數,避免過擬合;
步驟6:模型評估。使用測試集評估模型的預測效果,本文設置了均方根誤差(Root Mean Square Error, RMSE)、平均絕對誤差(Mean Absolute Error, MAE)、平均絕對百分比誤差(Mean Absolute Percentage Error, MAPE)三個指標;
步驟7:模型優(yōu)化。根據評估結果對模型進行優(yōu)化,例如調整網絡結構、改變損失函數、增加正則化等;
步驟8:預測車流量。使用訓練好的CNN卷積網絡模型對新的車流量數據進行預測。
ARIMA是一種自回歸差分移動平均模型,廣泛應用于單變量時間序列數據預測。時間序列就是在時間變化過程中增量不變的條件下,記錄不同時刻下經過路口車輛數量的集合,通過對多組歷史值的分析來預測未來的發(fā)展趨勢,即下一周期各時間節(jié)點通過路口的車流量。ARIMA(,,)模型有3個參數,表示經過次差分后是平穩(wěn)的ARIMA(,)過程,其中階自回歸過程的計算如式(1)所示。
現在通過使用ARIMA時間序列對車流量數據進行預測,將時間節(jié)點的車流量設為變量,采用自回歸模型預測與前期相關的現象,步驟依次為
步驟1:進行平穩(wěn)性檢驗。觀察時序圖,或者單位根檢測檢驗判斷序列是否平穩(wěn)。如果平穩(wěn)直接使用ARMA模型去擬合;如果不平穩(wěn)但是通過次差分后是一個平穩(wěn)過程,則使用ARIMA模型擬合。
步驟2:人工和階數的確定。ARIMA模型要求殘差之間不存在自相關性,因此,本文將自相關性系數大于0.1作為判定界限,如若滿足則是白噪聲,反之則不是。當得到平穩(wěn)時間序列之后,要對其求得自相關系數自相關函數(Auto Correlation Function, ACF),通過對自相關圖得到最佳的階層和階數。
步驟3:模型評價。針對蕪湖市汪溪路路口的交通車流量數據集,通過結合最小化信息量準則(Akaike Information Criterion, AIC)和BIC構建更簡單的預測模型。與其他時間序列預測模型進行對比,從而找到最優(yōu)模型,其計算公式為
式中,AI為AIC值;BI為BIC值;為模型參數個數;為樣本數量;為似然函數。在保證模型精度的情況下盡量使得值越小越好。
步驟4:模型預測結果。通過ARIMA時間序列預測模型對蕪湖市汪溪路路口一段周期內交通車流量數據進行分析,預測出下一段時間周期交通車流量的變化趨勢。通過對預測結果進行分析,找出一種在短周期時間序列中較為平穩(wěn)的變化趨勢。如果沒有找到最優(yōu)解,則返回式(2)和式(3)重新計算,直至找到最優(yōu)的模型。
傳統(tǒng)策略對于交通車流量的預測往往會受到上下班高峰期、意外擁堵、天氣等多種因素的影響。因此,使用傳統(tǒng)的策略進行預測可能無法達到較好效果。在現有的成果中,大部分方式都是通過對歷史車流量數據進行分析來預測下一階段的車流量。雖然理論上是可行的,但在實際情境中,往往會出現因為某階段內車流量的急劇變化而干擾下一階段車流量的預測情況。為了避免該現象的出現,本文通過收集歷史周期車流量數據,計算每個時間節(jié)點的特征值,將得到的結果進行線性分析之后取其平均值,使用式(4)預測下一階段各時間點的車流量。這種方式可以較好地應對車流量因外部因素的影響所造成的準確率誤差,即
式中,為一種線性回歸系數,該系數值與預測精確率密切相關;α隨值變化,為每個時間節(jié)點的車流量數據值。為了提高結果的精確率,本文提出了一種基于CNN-ARIMA的方法來預測值,從而得到式(4)的預測值,步驟依次為
步驟1:每一時間節(jié)點獲取一次歷史車流量數據,將該樣本數據記錄之后按照時間順序進行排序,對樣本數據采用隨機抽樣法進行處理和分析,用最后的實驗結果預測下一周期各時間節(jié)點的車流量。
步驟2:將處理后的數據采用式(5)進行Z- Scores歸一化處理,再將所有實驗數據劃分為訓練集和測試集,訓練集和測試集比例設為8:2,表示為
步驟3:將訓練集和測試集用于訓練CNN的卷積神經網絡,起初設定一個預期值,記錄每輪訓練得到的實驗結果,將數據結果進行對比。采用隨機梯度下降算法迭代參數,減小測試誤差,同時設定迭代次數閾值,避免因迭代次數過多導致實驗結果出現過擬合或者欠擬合的情況。
圖2 預測過程圖
步驟4:對最終得到的實驗結果進行分析計算,若預測結果不理想則重復訓練步驟3,直至獲取全局最優(yōu)解的參數。具體預測流程如圖2所示。
為了驗證本文提出的CNN-ARIMA算法預測車流量的效果,對采集的車流量數據集上進行了仿真實驗。仿真實驗環(huán)境使用操作系統(tǒng)為Win- dows 10;CPU酷睿i9 NVIDIA GeForce GTX 450;運行內存為16 GB;硬盤為512 GB;深度學習框架為Tensorflow2.6;初始學習率為0.005;batch_ size設為150,后續(xù)會更改其大??;設閾值為500。同時使用長短期記憶網絡(Long Short Term Mem- ory, LSTM)與移動平均模型(Moving Average, MA)作為對比算法,以評估本文所提出算法在不同指標下的性能。
為了驗證本文所述算法以及其他兩種算法的效果,采用RMSE、MAE、MAPE三個指標來對算法模型進行評價,計算公式為
為了對本文提出的算法進行評估,CNN- ARIMA、LSTM、MA三種算法的結果如圖3所示。橫坐標表示訓練的車流量總數,將其劃分為六段,樣本數為500~1 000個,間隔值為100??v坐標表示模型預測的準確度。由圖3可知,本文算法的最高預測準確度為93%,最低預測準確度為89%,均高于LSTM和MA算法,這說明本文算法具有一定可行性。
圖3 預測結果圖
當車流量在500~600時,三種算法的預測準確度都較高,均處于90%以上,當車流量為600~800時,隨著車輛樣本數的增加,CNN-ARIMA和LSTM算法的預測準確度有所下降,但下降趨勢較緩,而MA算法的下降速度較快,預測準確度低于90%。因為MA算法性能較前兩種算法相比不太穩(wěn)定,當處理的數據集過大,容易出現過擬合,從而導致算法準確率下降較快。當訓練車流量在800~1 000時,LSTM和MA算法的預測準確度迅速下降,而本文所提出的CNN-ARIMA算法仍保持緩慢下降,且預測準確度超過85%。這說明本文所提出的算法能有效保持較高精確率而不受數據集大小的影響。本文三種算法的RMSE、MAE和MAPE的對比結果,如表1所示。提出的CNN-ARIMA算法RMSE、MAE和MAPE分別為9.71%、7.16%、17.42%。相比于另外兩種算法具有較好的效果,這也充分證明了本文算法的可行性。
表1 算法結果分析表
本文提出了一種基于CNN和ARIMA相結合的短周期交通車流量預測方法,所提出的算法在Tensorflow框架上進行實現,通過對車流量數據集的訓練參數進行迭代,提高了預測結果的準確度,仿真實驗表明,本文的算法可以不受數據集的大小影響而保持較高的預測準確度,其預測結果可以為車輛擁堵問題提供較好的提前應對方案。在后續(xù)的研究中需要增加更大復雜化的車流量數據集,以期達到對整個城市路網的車流量進行預測。
[1] 李瑞敏,王長君.智能交通管理系統(tǒng)發(fā)展趨勢[J].清華大學學報(自然科學版),2022(3):509-515.
[2] 王劍.城市街景影像中行人車輛檢測實現[D].北京:北京建筑大學,2020.
[3] 崔國臣.基于Faster R-CNN的前方道路車輛檢測優(yōu)化算法研究[D].青島:山東科技大學,2020.
[4] 魏子洋,趙志宏,趙敬嬌.改進Faster R-CNN算法及其在車輛檢測中的應用[J].應用科學學報,2020,38(3): 377-387.
[5] 胡杰,龔永勝,蔡世杰,等.基于多源數據的車流量時空預測方法[J].汽車工程,2021,43(11):1662-1672.
[6] 陳帥男.基于改進的卷積神經網絡目標檢測算法研究[D].大慶:東北石油大學,2021.
[7] 楊東龍.基于ARIMA模型的區(qū)間道路短時車流量預測研究[J].電子設計工程,2021,29(13):38-42.
[8] 張利,李星毅,施化吉.基于ARIMA模型的短時交通流量預測算法研究[J].鄭州輕工業(yè)學院學報(自然科學版),2008,23(4):89-92.
Short Cycle Traffic Vehicle Flow Prediction Method for Traffic Intersections Based on CNN-ARIMA
BAO Wenhua, LIU Hairui, FANG Yuan, WANG Chengdong*
( Anhui Institute of Information Technology, Wuhu 241000, China )
Aiming at the problems of low accuracy and unstable data of existing prediction models in the process of intelligent traffic vehicle flow prediction, this paper proposes a short-period traffic flow prediction method based on the combination of convolutional neural network (CNN) andtime series prediction model auto regressive integrated moving average(ARIMA). In this paper, the historical traffic flow data of Wangxi road intersection in Wuhu city within a week is taken as the sample to predict the traffic vehicleflow in the next time period, and the obtained data are normalized and simulated. The simulation results show that the scheme can be applied to traffic control, and the scheme can effectively maintain a high accuracy without being affected by the size of the data set, and the prediction results can provide a better solution to the problem of vehicle congestion in advance.
Intelligent transportation;Traffic intersections;Short cycle;Traffic vehicleflow predic- tion; CNN-ARIMA;Prediction method
U491.1+4
A
1671-7988(2023)22-178-05
10.16638/j.cnki.1671-7988.2023.022.035
包文華(2001-),男,研究方向為車聯網智慧交通、大數據分析預測,E-mail:whbao1314@163.com。
王成棟(1991-),男,碩士,助教,研究方向為車聯網智慧交通,E-mail:cdwang2@iflytek.com。
安徽高校自然科學研究一般項目資助、安徽信息工程學院青年科研基金項目資助(22QNJJKJ006);安徽信息工程學院國家級大學生創(chuàng)新創(chuàng)業(yè)訓練計劃項目(202213613007);安徽信息工程學院省級大學生創(chuàng)新創(chuàng)業(yè)訓練計劃項目(S202213613047)。