李 梅 李 靜 魏子健 王思達 陳賴謹
(北京交通大學經(jīng)濟管理學院,100044,北京//第一作者,碩士研究生)
隨著城市信息化水平的日漸提高,公共交通IC卡的頻繁使用產(chǎn)生了海量數(shù)據(jù)。如何充分利用大數(shù)據(jù)資產(chǎn)對交通客流規(guī)律進行精細化研究成為新的熱點??土髁款A測是地鐵營運規(guī)劃和安全防護應用過程中需要解決的一個關(guān)鍵技術(shù)問題。應用大數(shù)據(jù)技術(shù),準確預測地鐵站短時客流量,可為地鐵管理部門在擁擠環(huán)境下的人流疏導與安全防范工作提供科學支持,進一步提升城市應急準備和管理水平。
客流預測是指在t時刻對下一決策時刻t+Δt乃至以后若干時刻的客流作出實時預測。一般認為,t到t+Δt之間的預測時間跨度不超過15 min(甚至小于5 min)的預測為短時客流預測。目前,國內(nèi)外涉及客流量預測的算法主要分為兩類,一類是線性估計模型,主要有自回歸移動平均模型(ARlMA)[1]、多元線性回歸模型[2]、卡爾曼濾波模型[3]等;另一類是機器學習的方法,如支持向量機、神經(jīng)網(wǎng)絡(luò)[4]、深度學習[5]等。線性估計模型有一些不可避免的缺陷:一是不能很好地解決非線性問題以及行人流存在的隨機和不確定性等問題;二是不能準確地進行短時客流量的預測。而機器學習算法中所考慮因素仍然較少,預測精度有待進一步提升。
在現(xiàn)實環(huán)境中,客流量與天氣條件密切關(guān)聯(lián),天氣條件會直接影響人們的出行選擇。文獻[6]基于歷史數(shù)據(jù)和天氣數(shù)據(jù)對天安門廣場每日的客流量進行了預測。文獻[7]利用傳遞函數(shù)模型研究了短期天氣條件對英國出境流的影響,指出平均氣溫、熱浪、氣霜和日照天數(shù)對出境流的影響最大。文獻[8]探討了天氣對公交客流的影響。
深度學習中,LSTM(長短期記憶)網(wǎng)絡(luò)算法對具有長期依賴性的大規(guī)模時序數(shù)據(jù)有著良好的學習效果。本文基于2016年3月上海軌道交通刷卡數(shù)據(jù),結(jié)合外部天氣數(shù)據(jù),綜合考慮影響地鐵站客流的內(nèi)外部因素,提取了包括天氣數(shù)據(jù)在內(nèi)的12個顯著影響因子。在此基礎(chǔ)上,以上海軌道交通莘莊站為例,提出了一種基于深度學習LSTM模型的地鐵站短時客流量預測方法。
試驗數(shù)據(jù)采用2016年SODA上海開放數(shù)據(jù)創(chuàng)新應用大賽所提供的上海軌道交通刷卡數(shù)據(jù)以及從國家氣象科學數(shù)據(jù)共享服務平臺獲取的天氣數(shù)據(jù)。該數(shù)據(jù)集包含2016年3月1日至3月31日上海軌道交通刷卡數(shù)據(jù)以及2016年3月天氣數(shù)據(jù),總量約為2.4億條。
上海軌道交通莘莊站是5號線、1號線的起始站交匯處,人流相對密集,便于研究。因此,本文選擇莘莊站進行客流量數(shù)據(jù)分析。通過對上海軌道交通刷卡原始數(shù)據(jù)分析可得,2016年3月莘莊站有進出站客流的時間段為05:00到23:40。為充分利用歷史客流量數(shù)據(jù),并進一步擴大數(shù)據(jù)量,按照15 min的時間間隔對2016年3月莘莊站的進出站客流量進行統(tǒng)計,一天共有75個時間段,所以31天共有2 325段數(shù)據(jù)。然后將天氣數(shù)據(jù)同樣按照15 min時間間隔進行整理,并與客流量數(shù)據(jù)匹配。
1.2.1 Pearson相關(guān)分析法
很多因素都會對地鐵站客流量產(chǎn)生影響,如天氣等外部因素以及歷史客流量等內(nèi)部因素。為了提取客流量的顯著影響因子,本文采用Pearson相關(guān)分析法來檢驗客流量與各因素之間的關(guān)系。Pearson相關(guān)系數(shù)法是檢驗變量間相關(guān)程度的一種有效方法,其計算式為:
(1)
式中:
Xi——客流量;
sX——客流量的方差;
Yi——客流量的影響因素;
sY——影響因素的方差;
r的取值范圍在-1到1之間,如果r<0,表示兩個變量負相關(guān);如果r>0,表示兩個變量正相關(guān)。|r|的取值越大,變量之間的相關(guān)性越強。
1.2.2 外部影響因子
天氣、溫度、濕度等外部因素會對人們的出行產(chǎn)生一定的影響,一般來說,對外出購物、旅游等人群產(chǎn)生的影響較大,對通勤人員的影響較小??土髁颗c其外部影響因子的相關(guān)系數(shù)表如表1所示。每個影響因子與客流量的Pearson相關(guān)系數(shù)值都在95%的置信區(qū)間內(nèi)。
表1 客流量與其顯著影響因子的Pearson相關(guān)系數(shù)表
1.2.3 內(nèi)部影響因子
(1) 歷史客流量數(shù)據(jù):當前時刻的客流量不僅受到外部因素的影響,還受到歷史客流量數(shù)據(jù)等內(nèi)部因素的影響。為了充分利用歷史數(shù)據(jù),將預測點前3個時間段(15 min為一個時間段)的數(shù)據(jù)也作為客流量的影響因子,預測點客流量數(shù)據(jù)與3個歷史客流量數(shù)據(jù)的相關(guān)系數(shù)見表1。其中,Pearson相關(guān)系數(shù)的值都在99%的置信區(qū)間內(nèi)。
(2) 工作日與非工作日:工作日與非工作日相比,人群出行規(guī)律、出行人群特征均不同,人流高峰時段與人流密集程度也不同,從而使得客流量數(shù)據(jù)在工作日與非工作日呈現(xiàn)不同的特征。圖1為2016年3月莘莊站每天進出站客流量,可以看出,工作日與非工作日對客流量的影響非常顯著。因此,本文選取“是否工作日”作為影響地鐵站客流量的一個內(nèi)部影響因子。其中,1代表工作日,0代表非工作日。
圖1 2016年3月莘莊站每天進出站客流量
(3) 高峰時段與非高峰時段: 地鐵站客流量在早晚高峰時段會顯著增多,圖2為2016年3月7日至13日(從星期一到星期日)莘莊站每天分時段的客流量趨勢圖(隨機選取2016年3月任一周,客流波動趨勢是相同的)??梢钥闯?,星期六、星期日客流量波動較為平緩,與星期一到星期五相比,無顯著高峰時段。因此,將高峰時段作為影響客流量的一個顯著影響因子。其中,1代表高峰時段,0代表非高峰時段。
圖2 2016年3月7日至3月13日客流量
1.2.4 小結(jié)
綜上所述,提取了12個變量作為客流量的顯著影響因子。表2列出了本案例研究中使用的所有顯著影響因子。
與傳統(tǒng)的預測方法相比,深度學習的方法能夠更好地對大規(guī)模數(shù)據(jù)進行處理,且具有良好的學習能力和模型泛化能力。遞歸神經(jīng)網(wǎng)絡(luò)(RNN)在現(xiàn)有神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上引入了時序的概念,使得上一刻的輸出能夠?qū)@一刻的輸入產(chǎn)生直接影響,特別適合學習具有長期依賴性的時序數(shù)據(jù)[9]。圖3為一個基本的RNN結(jié)構(gòu)。由于RNN增加了跨越時間點的自連接隱含層,所以能夠?qū)崿F(xiàn)對時間的顯式建模。從圖3中可以看出,當前時刻的隱藏層會有一條連向下一時刻隱藏層的邊。
表2 影響上海軌道交通莘莊站客流量的顯著影響因子
圖3 RNN模型結(jié)構(gòu)
傳統(tǒng)的RNN模型有很多缺陷,容易產(chǎn)生梯度爆炸或梯度消失的情況[10]。所以,引入了一種特殊的RNN——LSTM網(wǎng)絡(luò)。LSTM網(wǎng)絡(luò)是一種經(jīng)過改進的RNN,具有很多優(yōu)良特性,可以在很大程度上避免梯度消失的問題。同時,LSTM網(wǎng)絡(luò)可以學習時間序列長短期依賴信息,由于LSTM網(wǎng)絡(luò)中包含時間記憶單元,因此,其在處理和預測具有較長間隔和延遲事件的時間序列方面,應用效果顯著[11]。LSTM網(wǎng)絡(luò)在RNN的隱含層神經(jīng)元節(jié)點中增加了一個存儲記憶門(Memory gate),可以保存重要記憶,使得神經(jīng)網(wǎng)絡(luò)“不只記住前一刻”。從RNN結(jié)構(gòu)轉(zhuǎn)變到LSTM網(wǎng)絡(luò)結(jié)構(gòu)的過程如圖4所示。具體就是,LSTM網(wǎng)絡(luò)在RNN的每一個神經(jīng)元內(nèi)部增加了三種門,即忘記門(Forget Gate)ft、輸入門(Input Gate)it、輸出門(Output Gate)Ot。
圖4 從RNN到LSTM網(wǎng)絡(luò)的結(jié)構(gòu)轉(zhuǎn)變
忘記門確定應該被神經(jīng)元遺忘的信息。忘記門會讀取上一時刻隱含層的狀態(tài)ht-1,以及當前時刻的輸入xt,最后將輸出的值賦值給Ct-1。該輸出值在[0,1]之間,0的含義是“完全丟棄”,1的含義是“完全保留”。其計算式為:
ft=σ(Wf·[ht-1,xt]+bf)
(2)
輸入門確定保存哪些新信息到Cell狀態(tài)中。輸入門包括兩個模塊,一是利用sigmoid層確定要輸入的值,二是利用tanh層確定一個新的候選值向量,然后將該向量添加到新的Cell狀態(tài)Ct中。計算式為:
it=σ(Wi·[ht-1,xt]+bi)
(3)
對神經(jīng)元狀態(tài)的新貢獻為:
(4)
(5)
輸出門確定要輸出的值。該輸出以當前時刻的Cell狀態(tài)為基礎(chǔ),還需通過濾波器對其進行過濾。①通過sigmoid函數(shù)來確定Cell狀態(tài)中需要被輸出的部分;②利用tanh層對Cell狀態(tài)進行處理(其目的是使輸出值在[-1,1]之間);③乘以sigmoid門的輸出,以此來確定最終的輸出。具體計算式為:
ot=σ(Wo·[ht-1,xt]+bo)
(6)
ht=ot·tanh(Ct)
(7)
式(2)~(7)中,W表示對應的權(quán)重,b表示對應的偏執(zhí)項,σ表示sigmoid函數(shù),tanh表示雙曲正切激活函數(shù)。
本文構(gòu)建了一個三層的LSTM模型來預測地鐵站短時客流量,模型整體框架如圖5所示。其包括輸入層、隱含層、輸出層、模型訓練以及模型預測5個功能模塊。輸入層是一個全連接層,通過對樣本數(shù)據(jù)進行初步處理,以滿足LSTM的輸入要求;隱含層是由多個LSTM神經(jīng)元構(gòu)成的遞歸神經(jīng)網(wǎng)絡(luò);輸出層是將隱含層的多個實際結(jié)果重新通過一個全連接網(wǎng)絡(luò)映射成模型期望的結(jié)果;模擬訓練是在訓練過程中采用優(yōu)化器對模型進行優(yōu)化,其是一個實現(xiàn)了Adam算法的優(yōu)化器;模擬預測是將得到的預測結(jié)果可視化。
圖5 基于LSTM的地鐵站客流量預測模型整體框架
首先,分別定義獲取訓練集與獲取測試集的函數(shù),訓練集與測試集個數(shù)比為4∶1,并將訓練集與測試集的數(shù)據(jù)標準化。其次,定義神經(jīng)網(wǎng)絡(luò)變量,即輸入層和輸出層的權(quán)重、偏執(zhí)。最后,根據(jù)建立的LSTM地鐵站客流量預測模型,確定輸入與輸出數(shù)據(jù)維度。模型采用AdamOptimizer優(yōu)化器進行優(yōu)化,經(jīng)過反復試驗,模型的參數(shù)learning rate=0.01、batch_size=2 325、timesteps=32、訓練次數(shù)為10 000時,模型的預測效果最好。預測結(jié)果如圖6所示。
圖6 LSTM模型預測結(jié)果
3.2.1 基于多元線性回歸的地鐵站客流量預測
多元線性回歸(MLR)是一種廣泛應用于預測任務的多因素分析方法。MLR用于多因素預測分析的模型可表示為y=a0+a1x1+a2x2+…+an-1·xn-1+anxn+ε。其中,y為預測值;x1,x2,…,xn代表不同的影響因素;a1,a2,…,an代表與每個xi(i=0,…,n)對應的回歸系數(shù);a0和ε分別代表偏置項和誤差項。本文利用MLR模型對地鐵站客流量進行預測,結(jié)果如圖7所示。
圖7 MLR模型預測結(jié)果
3.2.2 基于BP神經(jīng)網(wǎng)絡(luò)的地鐵站客流量預測
BP神經(jīng)網(wǎng)絡(luò)是一種前反饋性質(zhì)的網(wǎng)絡(luò),又被稱為反向傳播神經(jīng)網(wǎng)絡(luò)。BP神經(jīng)網(wǎng)絡(luò)的應用很廣泛,且對非線性系統(tǒng)具備很強的模擬能力。其主要原理是:通過對訓練數(shù)據(jù)的不斷學習,對網(wǎng)絡(luò)的權(quán)值和閾值進行不斷更新,使得網(wǎng)絡(luò)誤差逐漸減小,從而逐漸接近期望輸出。本文利用BP神經(jīng)網(wǎng)絡(luò)模型對地鐵站客流量進行預測,結(jié)果如圖8所示。
圖8 BP神經(jīng)網(wǎng)絡(luò)模型預測結(jié)果
為了更好地分析比較不同參數(shù)設(shè)置下LSTM網(wǎng)絡(luò)、MLR及BP神經(jīng)網(wǎng)絡(luò)三種模型在地鐵站客流量預測中的預測效果,本文計算了兩種常見的誤差評價指標:均方根誤差(RMSE)與平均絕對百分比誤差(MAPE)。計算式分別為:
(8)
(9)
不同參數(shù)設(shè)置下的LSTM網(wǎng)絡(luò)模型的預測結(jié)果分析如表3所示。由表3可知,LSTM模型參數(shù)learning rate=0.01、batch_size=2 325、timesteps=32、訓練次數(shù)為10 000時,模型精度最好。由于batch是對下降的方向進行確定,且本文的樣本數(shù)據(jù)量有限,故利用全數(shù)據(jù)集進行學習,即batch_size的值為2 325(樣本總數(shù)),模型效果較好。這是因為樣本總體可以由全數(shù)據(jù)集所確定的方向更好地表示出來,使得確定的極值所在方向更加地準確。
表3 不同參數(shù)設(shè)置下的LSTM網(wǎng)絡(luò)模型預測結(jié)果分析
timesteps的大小表示RNN可利用的時間序列的長度。從表3可知,LSTM模型的精度在timesteps=128時,反而比timesteps=32時更低,且耗費時間更長。說明過高的timesteps不僅會增加模型收斂時間、提高模型訓練難度,而且有可能降低模型精度。同樣,過高或過低的learning rate也會導致模型過擬合或欠擬合的問題,從而影響模型精度。
最優(yōu)參數(shù)設(shè)置下LSTM網(wǎng)絡(luò)、MLR及BP神經(jīng)網(wǎng)絡(luò)三種模型的預測結(jié)果分析如表4所示。
表4 LSTM網(wǎng)絡(luò)、MLR及BP神經(jīng)網(wǎng)絡(luò)預測結(jié)果分析
本文提出了一種基于深度學習LSTM模型的地鐵站短時客流量預測方法,解決了MLR等傳統(tǒng)線性模型和BP神經(jīng)網(wǎng)絡(luò)等機器學習的方法不能有效從原始數(shù)據(jù)中提取有效特征而造成的模型有效性低的問題,驗證了LSTM模型在地鐵站客流量預測中的準確性,以及在該領(lǐng)域中的適用性,同時,拓展了深度學習方法的應用領(lǐng)域。在目前研究工作的基礎(chǔ)上,后續(xù)研究可進一步擴展隱藏層層數(shù)來建立更有效的地鐵站客流量預測模型,并運用到不同地區(qū)、不同地鐵站的客流量預測中。