魏 健,趙紅濤,加鶴萍
(1.華北電力大學(xué) 數(shù)理學(xué)院,北京 102206;2.華北電力大學(xué) 經(jīng)濟(jì)管理學(xué)院,北京 102206)
近年來隨著人們的生活質(zhì)量不斷提高,機(jī)動車購買量也變得越來越多。伴隨而來的是嚴(yán)重的交通擁堵狀況,給人們的出行造成極大不便。短時車流預(yù)測可以幫助交通部門及時了解某路段未來可能發(fā)生的擁堵情況,從而提前做出反應(yīng),同時對于人們的出行也具有一定的意義,可以讓人們及時避過擁堵路段[1]。
文獻(xiàn)[1]使用LSTM 模型對北京市朝陽區(qū)某道路交叉口的車流量進(jìn)行預(yù)測,使用自動編碼器進(jìn)行無監(jiān)督學(xué)習(xí),將自動編碼器的輸出作為LSTM 的輸出。文獻(xiàn)[3]使用LSTM 模型預(yù)測地鐵站溫度,并且在數(shù)據(jù)預(yù)處理的過程中使用了小波降噪的方法,建立了有關(guān)時序數(shù)據(jù)的模型方法,并且與傳統(tǒng)的ARIMA 模型比較,證明了LSTM 在處理較大幅度變化的數(shù)據(jù)時,其誤差小于ARIMA 模型。文獻(xiàn)[5]考慮到語言特征可能不僅僅受到以前語言的影響,也可能受到之后語句的影響,所以在自然語言處理中利用了雙向GRU 模型和注意力機(jī)制。文獻(xiàn)[6]針對數(shù)據(jù)的長期依賴性,使用基于注意力機(jī)制的CNN-LSTM 模型擬合數(shù)據(jù),在LSTM 后端構(gòu)建注意力機(jī)制,給隱含層賦予不同的權(quán)重來優(yōu)化最終的輸出結(jié)果。實(shí)驗(yàn)證明,在注意力機(jī)制的優(yōu)化下,其誤差結(jié)果小于CNN 等神經(jīng)網(wǎng)絡(luò)模型。文獻(xiàn)[7]構(gòu)建了短時車流量的預(yù)測模型,建立CNN-LSTM 模型預(yù)測車流量數(shù)據(jù)并且得到了良好的結(jié)果。
由于在后續(xù)的實(shí)驗(yàn)中發(fā)現(xiàn)車流量在工作日和節(jié)假日明顯不同,所以將數(shù)據(jù)分成工作日和節(jié)假日兩部分進(jìn)行討論[3],建立了基于注意力機(jī)制的長短時記憶神經(jīng)網(wǎng)絡(luò)模型對短時車流量進(jìn)行預(yù)測,使用卷積神經(jīng)網(wǎng)絡(luò)(CNN)、長短時記憶神經(jīng)網(wǎng)絡(luò)(LSTM)、雙向長短時記憶神經(jīng)網(wǎng)絡(luò)(BiLSTM)作為對比模型,且考慮到可能存在的過擬合問題,本文在對比模型中加入了基于注意力機(jī)制的雙向長短時記憶神經(jīng)網(wǎng)絡(luò)(BiLSTM-attention)模型。LSTM 通過門結(jié)構(gòu)的設(shè)置在很大程度上解決了循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)模型存在的問題,注意力機(jī)制對LSTM 隱含層賦予不同的權(quán)值,從而優(yōu)化了輸出值,得到了相對較小的誤差值。
LSTM 模型是在上世紀(jì)90 年代提出的一種神經(jīng)網(wǎng)絡(luò)模型,它在處理時間序列數(shù)據(jù)方面具備獨(dú)特的優(yōu)勢[4]。隨著神經(jīng)網(wǎng)絡(luò)層數(shù)的增加,RNN 模型不可避免地會出現(xiàn)梯度消失或梯度爆炸現(xiàn)象,而LSTM 以其特有的結(jié)構(gòu)可以大大緩解上述現(xiàn)象。
LSTM 模型在RNN 模型的基礎(chǔ)之上增加了門結(jié)構(gòu)的設(shè)置,使用三種門來控制信息。第一層門為遺忘門,遺忘門會遺忘一部分不重要的信息,選擇記住一些重要的數(shù)據(jù)特征;第二層門為輸入門,輸入門會更新一些內(nèi)容,以填補(bǔ)已經(jīng)被遺忘門略去的信息;第三層門為輸出門,輸出門可以對先前的信息進(jìn)行處理,然后對數(shù)據(jù)輸出。
然而當(dāng)步長過長時,LSTM 會發(fā)生明顯的梯度消失現(xiàn)象,所以應(yīng)使用下文的注意力機(jī)制算法對LSTM 中的權(quán)重進(jìn)行處理,以更準(zhǔn)確地進(jìn)行預(yù)測。
注意力機(jī)制通過概率分配的方式,對關(guān)鍵信息賦予足夠的關(guān)注,突出重要信息的影響,從而提高模型的準(zhǔn)確率[5]。在序列數(shù)據(jù)過長時,LSTM 模型也可能會發(fā)生梯度消失現(xiàn)象,為了盡可能削弱梯度消失現(xiàn)象造成的影響,此處引入注意力機(jī)制,給不同的LSTM 單元賦予不同的權(quán)值,給較為接近真實(shí)值的LSTM 單元賦予較大的權(quán)值,反之亦然[6-7]。其計(jì)算公式如(1)、(2)所示。
設(shè)第x 個LSTM 神經(jīng)元的輸出值為hx,設(shè)每個神經(jīng)元對應(yīng)的權(quán)重為ux,最終的輸出值為yt,設(shè)總共有a 個LSTM 神經(jīng)元。
Step1:數(shù)據(jù)預(yù)處理,其中包含根據(jù)工作日和節(jié)假日劃分?jǐn)?shù)據(jù),對數(shù)據(jù)進(jìn)行歸一化處理,使用平均值填充缺失值等等。
Step2:將經(jīng)過數(shù)據(jù)預(yù)處理的數(shù)據(jù)輸入至模型中,通過LSTM 的遺忘門、輸入門、輸出門來學(xué)習(xí)數(shù)據(jù)的特征,其中主要學(xué)習(xí)的時間之間的關(guān)聯(lián)。
Step3:對LSTM 中隱含層各單位賦予權(quán)值,給較為接近真實(shí)值的LSTM 單位較大的權(quán)值。
Step4:輸出預(yù)測值。
本文使用的數(shù)據(jù)是北京某公路路段的車流量,時間跨度為2018 年1 月18 日至2018 年5 月11 日,數(shù)據(jù)為五分鐘記錄一次,總共有數(shù)據(jù)26650 條,其中包含1320條缺失值。本文采用取平均值的方法來填補(bǔ)平均值,但是由于各個時刻的車流量差距很大,所以取缺失值所在時刻的平均值來代替缺失值,同時在使用LSTM 模型之前需要對原始數(shù)據(jù)進(jìn)行歸一化,否則不利于數(shù)據(jù)的訓(xùn)練。
在工作日時間,車流量存在明顯的周期性變化,出現(xiàn)周期性變化的原因與早晚高峰有關(guān),且其峰值也明顯高于節(jié)假日的車流量;但是在節(jié)假日時間并沒有十分明顯的周期性波動。
本文工作日數(shù)據(jù)總共有17686 條,節(jié)假日數(shù)據(jù)共有8964 條。參數(shù)的設(shè)置分兩種情況,在工作日情況下,設(shè)定epoch=1200,batch_size=17000,shuffle=False;在節(jié)假日情況下,設(shè)定epoch=1000,batch_size=8000,shuffle=False。工作日測試集的時間跨度為2018 年5 月10 日18:00 至2018 年5 月11 日18:50,節(jié)假日測試集的時間跨度2018 年5 月5 日全天。測試集數(shù)據(jù)均為288 個,其余作為訓(xùn)練集。
本文采取平均絕對百分誤差(Mean Absolute Percentage Error,MAPE)和均方根誤差(Root Mean Square Error,RMSE)來展示不同方法的負(fù)荷預(yù)測誤差,如式(3)、(4)所示。
由于RMSE 使用的是平均誤差,MAPE 是以相對誤差為原理,所以二者誤差兼顧了不同的因素,同時本文引入訓(xùn)練時間作為判斷模型優(yōu)劣的依據(jù)之一。
在作對比實(shí)驗(yàn)的過程中,為了盡可能減少偶然因素,實(shí)驗(yàn)的數(shù)值均是用十次實(shí)驗(yàn)的結(jié)果取平均值,并且對每個對比實(shí)驗(yàn)的參數(shù)進(jìn)行校正。本文使用CNN、LSTM、雙向LSTM、BiLSTM-attention 模型作為對比實(shí)驗(yàn)。
從圖1、圖2 可以得出結(jié)論,在節(jié)假日和工作日兩種情況下,本文所使用的模型均能對短時車流量進(jìn)行準(zhǔn)確預(yù)測。下文將用量化的方式來具體對比。
由表1、表2 知,LSTM-attention 的表現(xiàn)最好,BiLSTMattention 誤差相對較大的原因與過擬合因素有直接的關(guān)聯(lián),且BiLSTM-attention 的訓(xùn)練時間也遠(yuǎn)高于LSTMattention。在工作日對車流量的預(yù)測中,LSTM-attention 模型在MAPE 標(biāo)準(zhǔn)下分別比LSTM、雙向LSTM,CNN、BiLSTM-attention 低6.85%、6.34%、8.04%、0.72%;在RMSE 標(biāo)準(zhǔn)下,LSTM-attention 分別比LSTM、雙向LSTM,CNN、BiLSTM-attention 低26.08、25.915、26.325、4.335,訓(xùn)練時間方面則節(jié)省了15s、111s、28s、96s。而在節(jié)假日中的差距更加明顯,LSTM-attention 模型在MAPE 和RMSE兩個標(biāo)準(zhǔn)下的數(shù)值甚至只有大部分對比模型的左右,訓(xùn)練時間也低于其它對比模型,從而證實(shí)了LSTMattention 模型可以勝任對于車流量的預(yù)測,有一定的應(yīng)用潛力。
圖1 本文模型預(yù)測值與實(shí)際值關(guān)系圖(工作日)
圖2 本文模型預(yù)測值與實(shí)際值關(guān)系圖(節(jié)假日)
表1 各實(shí)驗(yàn)誤差對比(工作日)
表2 各實(shí)驗(yàn)誤差對比(節(jié)假日)
由前文的分析得知,節(jié)假日和工作日的車流量特點(diǎn)有很大的不同,主要體現(xiàn)在峰值和周期差距較大上,所以將二者分開分析有利于數(shù)據(jù)的預(yù)測。否則會干擾LSTMattention 模型學(xué)習(xí)數(shù)據(jù)特征,進(jìn)而影響預(yù)測效果。LSTM可以通過門結(jié)構(gòu)來學(xué)習(xí)時序數(shù)據(jù)特征,遺忘門、輸入門、輸出門的存在大大改善了RNN 模型存在的梯度消失與爆炸問題。但是當(dāng)輸入的序列長度過長時,LSTM 仍會出現(xiàn)此問題,注意力機(jī)制可以在很大程度上解決這一問題。
本文選用CNN、LSTM、BiLSTM、BiLSTM-attention 模型作為對比模型,由結(jié)果來看LSTM-attention 在MAPE、RMSE、乃至訓(xùn)練時間上都有很好的表現(xiàn),還考慮到可能存在的過擬合現(xiàn)象,所以引入BiLSTM-attention 模型作為對比模型,事實(shí)證明LSTM-attention 確為最佳選擇。