徐 磊,孫朝云,李 偉,楊榮新
(長安大學(xué) 信息工程學(xué)院,西安 710064)
隨著國民經(jīng)濟的發(fā)展,我國機動車數(shù)量快速增長,道路擁堵時常發(fā)生,高速公路作為我國公路的楷模,其服務(wù)水平比一般的道路更好.交通流量調(diào)(交調(diào))數(shù)據(jù)是研究高速公路通行能力的重要參考指標(biāo),為了提高高速公路的服務(wù)水平,對高速公路進行更好的整修和養(yǎng)護,亟需加強對交調(diào)數(shù)據(jù)的預(yù)測研究.
預(yù)測研究的關(guān)鍵在于預(yù)測模型的建立,提高預(yù)測結(jié)果精準(zhǔn)度的重要方法便是選擇合適有效的預(yù)測模型.序列預(yù)測通常分為時間序列預(yù)測和多元回歸預(yù)測,目前在國內(nèi)外研究中,大多是通過傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)方法對序列進行預(yù)測.例如,Zhou 等人針對傳統(tǒng)數(shù)學(xué)統(tǒng)計方法的局限性等問題建立BP 神經(jīng)網(wǎng)絡(luò)預(yù)測模型,通過將BP 算法與指數(shù)平滑和線性回歸方法進行比較,最后證明了BP 算法預(yù)測結(jié)果能為企業(yè)制定庫存計劃提供更好的建議[1].成云等人針對現(xiàn)階段城市道路交通流預(yù)測精度不高的局限性,提出了一種基于差分自回歸滑動平均和小波神經(jīng)網(wǎng)絡(luò)組合模型的預(yù)測方法來進行交通流預(yù)測,最后證明了組合模型可以提高交通流預(yù)測精度[2].Zhang 等人為了更準(zhǔn)確的預(yù)測交通流量,實現(xiàn)交通控制和交通擁堵管理,提出了一種基于XGboost和LightGBM 算法的組合預(yù)測模型,實驗結(jié)果表明組合模型比單個模型有更高的預(yù)測精度[3].Wu 等人針對2008-2018年云南省貨運數(shù)據(jù)及其影響因素建立了灰色神經(jīng)網(wǎng)絡(luò)模型,對云南的貨運量進行了預(yù)測,并將其與BP 神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果進行比較最后證明了灰色神經(jīng)網(wǎng)絡(luò)具有更好的預(yù)測效果[4,5].Li 等人考慮到植物蒸騰量對溫室自動灌溉具有重要的作用,在2020年建立了隨機森林回歸模型,通過整合植物和環(huán)境參數(shù)建立植物蒸騰量預(yù)測模型,該研究為溫室種植蔬菜高效生產(chǎn)和智能灌溉提供了科學(xué)參考,為節(jié)約水資源也提供了一種有效途徑[6].
上述方法中無論是采用單純的數(shù)學(xué)模型還是采用機器學(xué)習(xí)模型對長期的周期性比較強的數(shù)據(jù)均不能實現(xiàn)精準(zhǔn)預(yù)測,只能粗略的顯示數(shù)據(jù)的大致走向,局部詳細的信息表現(xiàn)較差,因此本文考慮到高速公路交調(diào)數(shù)據(jù)具有很強的周期性等特點提出了基于SSA-LightGBM的預(yù)測模型.
本文針對陜西省高速公路展開研究,對韓城高速公路進行實地考察調(diào)研,以韓城高速7~8月1344 條交調(diào)數(shù)據(jù)進行研究.
表1為韓城高速交調(diào)數(shù)據(jù)表(前5 行數(shù)據(jù)).從表中可以看出交調(diào)數(shù)據(jù)一共由觀察日期、小時、觀測站名稱、觀測里程、中小客流量、大客車流量、小貨車流量、中貨車流量、大貨車流量、特大貨車流量、集裝箱流量組成.
表1 韓城高速交調(diào)數(shù)據(jù)表
為了使不同交通工具組成的交通流能夠在同樣的尺度下進行分析,使其具有可比性,在分析計算通行能力和服務(wù)水平時,需要將各類車輛交通量換算成標(biāo)準(zhǔn)機動車當(dāng)量,需要用到車輛換算系數(shù),如表2所示,這里只考慮汽車,將其分為3 檔:小型車、中型車、大型車,其中小型車又分為中小客車和小型貨車,折算系數(shù)為1;中型車分為大客車和中型貨車,折算系數(shù)為1.5;大型車分為大型貨車、特大貨車和集裝箱車,大型貨車折算系數(shù)為3,特大貨車和集裝箱車折算系數(shù)為4.
表2 折算系數(shù)參考表
通過對韓城高速交調(diào)數(shù)據(jù)進行換算,如圖1對機動車當(dāng)量進行可視化,展示了2019年7月1日-2019年8月25日韓城高速公路交調(diào)數(shù)據(jù)當(dāng)量變化.從圖中可以清晰的看出除了少數(shù)天呈現(xiàn)極小或者極大的情況,其他天數(shù)整體呈現(xiàn)周期狀態(tài).當(dāng)量=小型車×1+中型車×1.5+大型貨車×3+特大貨車×4+集裝箱車×4.
圖1 韓城高速交調(diào)當(dāng)量變化圖
本文的算法流程圖如圖2所示對原始數(shù)據(jù)進行整合,計算出高速公路交調(diào)數(shù)據(jù)機動車當(dāng)量,然后對原始數(shù)據(jù)利用奇異普分解方法(SSA)進行數(shù)據(jù)分解,得到周期信號和隨機信號,再利用機器學(xué)習(xí)模型(LightGBM)對隨機項進行預(yù)測,將預(yù)測結(jié)果和周期延伸信號結(jié)合得到最終的預(yù)測結(jié)果.另一方面利用XGBoost、LightGBM等單獨的機器學(xué)習(xí)方法對當(dāng)量數(shù)據(jù)進行預(yù)測,最后將預(yù)測結(jié)果同SSA-LightGBM 方法得到的結(jié)果進行對比分析,比較不同模型的預(yù)測效果.
圖2 算法流程圖
奇異譜分解(Singular Spectrum Analysis,SSA)是通過分解原序列中的時間主分量,得到不同層次上的分量序列,然后將分解出來的低頻視為序列變化的長期趨勢,最終得到數(shù)據(jù)序列的最佳諧波個數(shù),以此確定時間序列的周期信號.
本文將奇異譜分解分為4 個步驟,分別是:
(1)嵌入.選擇適當(dāng)?shù)拇翱陂L度m,將一維時間序列Y(T)=((y1),···,(yT))轉(zhuǎn)換為多維時間序列:X1,···Xn,(Xi=(yi,···,yi+m?1),n=T?m+1),得到軌跡矩陣,即:
(2)奇異值分解.通過對矩陣SVD 分解,得到XXT的L個特征值.具體步驟是:將X轉(zhuǎn)置得到XT,然后利用XXT得到方陣,再利用方陣的性質(zhì)求得矩陣的特征值[7-9],即利用(XTX)νi=λiνi,求得σ即是奇異值,μ是奇異向量.
(3)分組.假設(shè)有N個奇異值σ1,σ2,···,σN,定義第i個奇異值的方差貢獻率為由大到小選擇前M個奇異值,使其方差貢獻率之和大于一定閾值.
(4)確定最佳諧波個數(shù).利用前M個奇異值的方差貢獻率之和大于一定閾值(0.85)來確定最佳諧波個數(shù)M.當(dāng)P(i)≥0.85 時,我們認為此時的i即為最佳的諧波個數(shù),即M=i.然后利用三角函數(shù)的性質(zhì)將數(shù)據(jù)構(gòu)造成周期函數(shù).
設(shè){yt,t=1,2,···,N}為時間序列,若將其看作由周期項和隨機項組成,可以用組合模式y(tǒng)t=pt+xt描述,其中pt為 周期項,xt為隨機項.pt的表達式如下:
其中,M為諧波個數(shù),
LightGBM 是一種梯度Boosting 框架,使用基于決策樹的學(xué)習(xí)算法,具有快速、高效、支持并行化學(xué)習(xí)、可以處理大規(guī)模數(shù)據(jù)等優(yōu)點.
(1)梯度提升.
梯度提升是在不斷的迭代過程中,對模型不停的增加子模型,同時保證最終的損失函數(shù)值在不斷的下降.GBDT 是一種梯度提升決策樹,是由多個決策樹組成,利用最速下降的近似方法,即利用損失函數(shù)的負梯度在當(dāng)前模型的值作為我們回歸提升樹算法的殘差的近似值,來擬合一個回歸樹[10-12].
假設(shè)我們每一個單獨的子模型為fi(x),我們的復(fù)合模型為:
損失函數(shù)為L[Fm(x),Y],每一次對模型中添加新的子模型后,使得我們的損失函數(shù)不斷朝著0 發(fā)展.
(2)LightGBM 原理
LightGBM 是在傳統(tǒng)的梯度提升樹(GBDT)上使用直方圖優(yōu)化(Histogram)算法,先把連續(xù)的特征值離散化成k個整數(shù),同時構(gòu)造一個寬度為k的直方圖.在遍歷數(shù)據(jù)的時候,根據(jù)離散化后的值作為索引在直方圖中累積統(tǒng)計量,當(dāng)遍歷一次數(shù)據(jù)后,直方圖累積了需要的統(tǒng)計量,然后根據(jù)直方圖的離散值,遍歷尋找最優(yōu)的分割點.同時使用帶深度限制的Leaf-wise 的葉子生長策略,經(jīng)過一次數(shù)據(jù)可以同時分裂同一層的葉子,容易進行多線程優(yōu)化,也好控制模型復(fù)雜度,不容易過擬合[13-15].表3給出LightGBM 模型主要參數(shù)含義.
表3 LightGBM 模型參數(shù)含義
此處將2019年的7月1日到2019年8月25日的1344 條數(shù)據(jù)分為兩部分,利用前70%的941 條數(shù)據(jù)預(yù)測后30%的403 條數(shù)據(jù)并將其與對應(yīng)的真實數(shù)據(jù)進行對比.對前部分數(shù)據(jù)進行奇異譜分析時選取的窗口長度為200,可以得到方差貢獻率圖(見圖3).從圖中可以看出,當(dāng)i≥56 時,P(i)≥85%,滿足本文的數(shù)據(jù)處理要求,即當(dāng)顯著諧波個數(shù)M為56 時,對應(yīng)個三角函數(shù)信號能表征序列的最主要趨勢.
圖3 方差貢獻率圖
然后,可構(gòu)造周期函數(shù),得到圖4.周期函數(shù)對應(yīng)的公式為:
式中,M為諧波個數(shù)56,
圖4 周期函數(shù)對比圖
表4詳細介紹了周期函數(shù)Pt 中每一個參數(shù)的具體含義和取值.根據(jù)周期函數(shù)的性質(zhì),利用周期不變性對周期函數(shù)進行延伸得到2019年8月9日到8月25日周期函數(shù)延拓圖(圖5).然后由交調(diào)當(dāng)量原始數(shù)據(jù)減去周期項(xt=yt?pt),可得到圖6所示的隨機項.
表4 周期函數(shù)各參數(shù)含義
本文采用LightGBM 機器學(xué)習(xí)方法對交調(diào)當(dāng)量隨機項數(shù)據(jù)進行預(yù)測,表5為LightGBM 模型常用參數(shù)的取值,其他參數(shù)均采用默認.圖7中曲實線為交調(diào)當(dāng)量隨機項前941 條數(shù)據(jù),后面虛線為使用LightGBM預(yù)測的403 條隨機當(dāng)量數(shù)據(jù).
我們將SSA-LightGBM 模型得到的2019年8月9日到8月25日周期函數(shù)延拓結(jié)果和隨機項預(yù)測值相疊加得到最終交調(diào)當(dāng)量預(yù)測值(見圖8,紅色曲線).為了驗證SSA-LightGBM 模型的預(yù)測效果,本文還分別用XGBoost 和LightGBM 機器學(xué)習(xí)方法對數(shù)據(jù)進行了預(yù)測(利用2019年7月1日到8月8日的數(shù)據(jù)預(yù)測2019年8月9日到8月25日的數(shù)據(jù)).由于這2 種模型為單純機器學(xué)習(xí)預(yù)測方法,且不是本文的研究對象,故此處不詳細描述各種方法的預(yù)測過程.將不同預(yù)測模型得到的預(yù)測結(jié)果與韓城交調(diào)當(dāng)量的原數(shù)據(jù)進行對比,得到圖8.圖中黑色曲線為韓城高速交調(diào)數(shù)據(jù)的原數(shù)據(jù),紅色曲線為SSA-LightGBM 模型的預(yù)測結(jié)果,XGBoost 和LightGBM 模型的預(yù)測結(jié)果分別對應(yīng)藍色和綠色虛線.從圖中可以發(fā)現(xiàn),單獨使用XGBoost 和LightGBM 模型得到的曲線整趨勢能表示原始數(shù)據(jù),但是整體均低于原始數(shù)據(jù)不能完整的表示當(dāng)量的局部特征.只有橙色虛線SSA-LightGBM 模型預(yù)測的結(jié)果能夠?qū)崿F(xiàn)高精度穩(wěn)定預(yù)測2019年8月9日到8月25日交調(diào)當(dāng)量變化趨勢.
另外,本文還采用常用的平均絕對值誤差(MAE)、均方根誤差(RMSE)和相關(guān)系數(shù)(R2)分析評價了不同模型預(yù)測結(jié)果的精度(表6),各指標(biāo)的公式、含義及評價標(biāo)準(zhǔn)見表7.從表中可以發(fā)現(xiàn)本文的模型MAE和RMSE均低于XGBoost 和LightGBM 模型說明模型的穩(wěn)定性和平均誤差優(yōu)于單獨的機器學(xué)習(xí)模型,R2大于另外兩個模型說明預(yù)測效果好相關(guān)性強.
圖5 周期函數(shù)延拓圖
圖6 交調(diào)當(dāng)量隨機項
表5 LightGBM 模型參數(shù)取值
圖7 隨機項預(yù)測結(jié)果
圖8 不同模型預(yù)測結(jié)果對比圖
表6 各模型評價指數(shù)
表7 評價指標(biāo)
綜上,無論是直觀的曲線對比(圖8),還是數(shù)學(xué)統(tǒng)計方法(表6),均證明SSA-LightGBM 模型可以高精度、高穩(wěn)定性地預(yù)測2019年8月韓城高速交調(diào)數(shù)據(jù)當(dāng)量變化趨勢.我們可以使用該模型對全國的高速公路交調(diào)數(shù)據(jù)進行預(yù)測,這對我國高速公路更好的休整和養(yǎng)護以及服務(wù)水平的提升具有重要的參考價值.
由于傳統(tǒng)的時間序列預(yù)測模型和單獨的機器學(xué)習(xí)模型對周期性比較強的時間序列預(yù)測存在一定弊端,本文采用SSA-LightGBM 模型進行預(yù)測,以韓城高速2019年7月到8月兩個月1344 條交調(diào)數(shù)據(jù)為例,以前70%的數(shù)據(jù)作為模型的訓(xùn)練集,以后30%的數(shù)據(jù)作為驗證集.將結(jié)果與單純的機器學(xué)習(xí)模型XGBoost 和LightGBM 模型進行對比,發(fā)現(xiàn)本文提出的模型預(yù)測結(jié)果更接近真實值,同時該模型的MAE、R2和RMSE均優(yōu)于其他兩個模型,表明本文的模型可以很好地預(yù)測韓城高速交調(diào)當(dāng)量數(shù)據(jù),這對該地區(qū)高速公路的整修擴建、養(yǎng)護具有一定的指導(dǎo)意義.