秦偉 曾明
摘要:本文利用鄭州地鐵的乘客OD數(shù)據(jù),對(duì)不同時(shí)間周期內(nèi)的站點(diǎn)進(jìn)、出站客流進(jìn)行預(yù)測(cè)。利用深度學(xué)習(xí)網(wǎng)絡(luò),將數(shù)個(gè)弱回歸模型集成融合成強(qiáng)回歸模型。同時(shí),利用參數(shù)修正算法對(duì)該模型進(jìn)行進(jìn)一步地增強(qiáng)。最終,通過(guò)鄭州地鐵真實(shí)數(shù)據(jù)對(duì)該模型進(jìn)行了評(píng)估,得到了滿意的效果。
關(guān)鍵詞:集成融合;深度學(xué)習(xí);回歸模型
1背景
地鐵是市民常用的交通工具之一,地鐵的進(jìn)站和出站人數(shù)會(huì)隨著季節(jié)、節(jié)假日、工作日、周末、每天不同的時(shí)段等不同而發(fā)生變化,特別是在節(jié)假日、工作日的早晚高峰期,這對(duì)地鐵工作人員進(jìn)行實(shí)時(shí)管控提出了很大的要求。如果沒(méi)有實(shí)時(shí)的掌握住每個(gè)時(shí)段的客流信息,那么將會(huì)對(duì)整個(gè)列車的調(diào)度造成很大的影響,也會(huì)給市民的出行造成很大的不方便。所以,對(duì)地鐵客流進(jìn)行預(yù)測(cè)是非常重要的。
本文提出了一種基于集成融合算法的客流預(yù)測(cè)模型,可以靈活地融合地鐵OD數(shù)據(jù)、節(jié)假日、天氣、特殊事件等信息,利用深度學(xué)習(xí)、機(jī)器學(xué)習(xí)、集成融合等方法,通過(guò)數(shù)據(jù)預(yù)處理、特征工程、模型建立、訓(xùn)練和評(píng)估這一系列的過(guò)程,進(jìn)行站點(diǎn)/線路不同時(shí)間周期內(nèi)進(jìn)、出站客流量的預(yù)測(cè)。
本文后續(xù)章節(jié)安排如下:第2章,介紹客流預(yù)測(cè)模型的總體設(shè)計(jì)和重點(diǎn)算法;第3章,對(duì)客流預(yù)測(cè)模型進(jìn)行測(cè)試評(píng)估,并且分析結(jié)果;第4章,進(jìn)行總結(jié)和提出后續(xù)工作方向。
2總體設(shè)計(jì)方案
本次模型的總體設(shè)計(jì)方案如下圖所示:
將需要預(yù)測(cè)的日期根據(jù)實(shí)際的分析結(jié)果,進(jìn)行分類:
1.第一類是待預(yù)測(cè)日期對(duì)應(yīng)的歷史客流數(shù)據(jù)變化穩(wěn)定在某一個(gè)非常小的固定范圍內(nèi)的數(shù)據(jù),這類數(shù)據(jù)使用統(tǒng)計(jì)規(guī)則算法進(jìn)行預(yù)測(cè),得到的效果非常好。
2.第二類是待預(yù)測(cè)日期對(duì)應(yīng)的歷史客流數(shù)據(jù)分布變化不穩(wěn)定、復(fù)雜的日期,這類數(shù)據(jù)使用DNN深度學(xué)習(xí)算法進(jìn)行預(yù)測(cè),得到的效果非常好,典型的就是周末、節(jié)假日。
3.結(jié)合統(tǒng)計(jì)規(guī)則算法和DNN深度學(xué)習(xí)算法的優(yōu)缺點(diǎn),我們使用集成融合算法對(duì)這兩種算法進(jìn)行集成、融合,達(dá)到更加好的擬合效果。
下面將對(duì)上述算法進(jìn)行詳細(xì)介紹。
2.1統(tǒng)計(jì)規(guī)則算法
統(tǒng)計(jì)規(guī)則算法的流程如下:
1.對(duì)預(yù)測(cè)日期分類:將預(yù)測(cè)日期分詞工作日、周末、節(jié)假日3類。
2.對(duì)于節(jié)假日預(yù)測(cè):
其中:N是指跟待預(yù)測(cè)日期類型(節(jié)假日)相同的歷史數(shù)據(jù),按照日期降序排序,取最近的N個(gè)日期。y表示的是跟待預(yù)測(cè)日期類型(節(jié)假日)相同的歷史數(shù)據(jù)真實(shí)客流量。
3.對(duì)于工作日/周末預(yù)測(cè)
其中,N是指跟待預(yù)測(cè)日期類型(工作日/周末)相同的歷史數(shù)據(jù),按照日期降序,取最近的N個(gè)日期。N是指跟待預(yù)測(cè)日期類型(相同的星期)相同的歷史數(shù)據(jù),按照日期降序,取最近的N的日期。y表示的是跟待預(yù)測(cè)日期類型(節(jié)假日/周末/相同的星期)相同的歷史數(shù)據(jù)真實(shí)客流量。
2.2DNN深度學(xué)習(xí)算法
DNN深度學(xué)習(xí)算法的核心步驟主要是特征工程
所謂特征工程的構(gòu)建,主要是通過(guò)數(shù)據(jù)分析、相關(guān)性分析、AutoML等方式構(gòu)建一些有價(jià)值的變量,作為模型的輸入,主要包括以下變量:
■待預(yù)測(cè)日前7天對(duì)應(yīng)客流數(shù)據(jù)
■前三周中與待預(yù)測(cè)日星期所在日相同的數(shù)據(jù)
■待預(yù)測(cè)日月份
■待預(yù)測(cè)日星期
■氣溫
2.3集成融合算法
集成融合算法同樣是構(gòu)建一個(gè)DNN深度學(xué)習(xí)網(wǎng)絡(luò),不同的是在進(jìn)行構(gòu)建一個(gè)新的DNN深度學(xué)習(xí)網(wǎng)絡(luò)之前,會(huì)將上一個(gè)DNN深度學(xué)習(xí)算法的預(yù)測(cè)結(jié)果和統(tǒng)計(jì)規(guī)則算法預(yù)測(cè)結(jié)果作為本次DNN深度學(xué)習(xí)網(wǎng)絡(luò)的一個(gè)特征作為輸入,再次進(jìn)行訓(xùn)練,達(dá)到集成融合的效果。
整個(gè)步驟最核心的就是特征的合并,也叫做張量連接,下面是張量連接的實(shí)現(xiàn)步驟:
■特征工程向量:
■深度學(xué)習(xí)算法預(yù)測(cè)結(jié)果:
■統(tǒng)計(jì)規(guī)則算法預(yù)測(cè)結(jié)果:
■張量連接:
3模型評(píng)估
3.1數(shù)據(jù)集
本次模型評(píng)估,根據(jù)星環(huán)公司提供的鄭州地鐵從2015年1月1日至2015年12月24日出入的客流量數(shù)據(jù),利用提出的客流預(yù)測(cè)模型對(duì)未來(lái)一個(gè)星期(2015-12-25~2015-12-31)的客流量進(jìn)行預(yù)測(cè),根據(jù)官方給出的評(píng)價(jià)指標(biāo),通過(guò)評(píng)價(jià)指標(biāo)在所有參賽隊(duì)伍中的排名,驗(yàn)證我們的地鐵客流預(yù)測(cè)模型的技術(shù)可行性。
3.2評(píng)價(jià)函數(shù)
本文使用模型平均絕對(duì)誤差人數(shù)MAE來(lái)評(píng)價(jià)模型的好壞,具體的計(jì)算如下:
i表示站點(diǎn),范圍為[1,N],N表示站點(diǎn)的總個(gè)數(shù),本次比賽中公有20個(gè)站點(diǎn)。
d表示天數(shù),范圍為[1,7],表示未來(lái)7天的客流量
表示預(yù)測(cè)出來(lái)的客流量,表示真實(shí)的客流量
3.3評(píng)估結(jié)果
利用前面介紹的數(shù)據(jù)集和評(píng)價(jià)函數(shù),統(tǒng)計(jì)了參賽各隊(duì)的結(jié)果。從中可以看到,我們團(tuán)隊(duì)的MAE值為1557.34,在所有參賽隊(duì)伍中是最小的。更進(jìn)一步的,本文提出的墨西哥比排名第二的湖南預(yù)測(cè)如神工院隊(duì)模型的MAE值2734.67,足足小了1200多。這就足以說(shuō)明本文提出的基于集成融合的客流預(yù)測(cè)模型,在所有參賽隊(duì)伍中是最好的,取得了最優(yōu)的擬合效果。
4結(jié)論和后續(xù)工作
4.1結(jié)論
本文利用鄭州地鐵的乘客OD數(shù)據(jù),對(duì)不同時(shí)間周期內(nèi)的站點(diǎn)進(jìn)、出站客流進(jìn)行預(yù)測(cè)。利用深度學(xué)習(xí)網(wǎng)絡(luò),將數(shù)個(gè)弱回歸模型集成融合成強(qiáng)回歸模型。同時(shí),利用參數(shù)修正算法對(duì)該模型進(jìn)行進(jìn)一步地增強(qiáng)。最終,通過(guò)鄭州地鐵真實(shí)數(shù)據(jù)對(duì)該模型進(jìn)行了評(píng)估,得到了滿意的效果。
4.2后續(xù)工作
4.2.1多時(shí)間粒度+進(jìn)出站驗(yàn)證
根據(jù)星環(huán)公司官方的要求,目前只是針對(duì)天時(shí)間粒度,對(duì)進(jìn)出站的客流總數(shù)進(jìn)行預(yù)測(cè)。但是天時(shí)間粒度相對(duì)來(lái)說(shuō)會(huì)比較大,在實(shí)際的地鐵運(yùn)營(yíng)需求中,時(shí)間粒度應(yīng)該是小時(shí)、甚至是分鐘,而且乘客的進(jìn)出站規(guī)律也是不一樣的,所以,后續(xù)需要對(duì)多時(shí)間粒度,特別是細(xì)時(shí)間粒度(比如1小時(shí)、半小時(shí)、15分鐘、5分鐘、1分鐘)和進(jìn)出站分別預(yù)測(cè)。
4.2.2多數(shù)據(jù)集驗(yàn)證
根據(jù)星環(huán)公司官方給到的數(shù)據(jù),是2015年的乘客刷卡記錄,我們知道隨著時(shí)間的推進(jìn),地鐵客流量會(huì)發(fā)生不斷的變化。用2015年的數(shù)據(jù)建立起來(lái)的模型,是否適用于其他數(shù)據(jù)集,比如2016年、2017年、2018年、2019年則有待驗(yàn)證。所以在后續(xù)的工作當(dāng)中需要利用多數(shù)據(jù)集進(jìn)行來(lái)驗(yàn)證模型的穩(wěn)定性。
參考文獻(xiàn)
[1]賈銳軍、冉祥來(lái)、吳俊霖、戴晨斌等,基于XGBoost算法的機(jī)場(chǎng)旅客流量預(yù)測(cè)[J],民航學(xué)報(bào),2018年06期
[2]蒙特卡羅模擬,百度百科,https://baike.baidu.com/item/%E8% 92%99%E7%89%B9%E5%8D%A1%E7%BD%97%E6%A8%A1%E6%8B%9F/5160083?fr=aladdin
[3]小白都能看懂的蒙特卡洛方法以及python實(shí)現(xiàn),CSDN博客,2018.
https://blog.csdn.net/bitcarmanlee/article/details/82716641