周鑫
(四川大學(xué)計(jì)算機(jī)學(xué)院,成都610065)
隨著智能交通系統(tǒng)的發(fā)展完善,人們的出行方式得到了極大的改善,對(duì)于交通工具的選擇也更加的多樣化,出租車和網(wǎng)約車對(duì)于交通系統(tǒng)更是不可或缺的一部分。而在網(wǎng)約車領(lǐng)域,每天都有成千上萬個(gè)訂單,已經(jīng)積累了大量的數(shù)據(jù),為了給人們的出行提供更舒適的服務(wù)和體驗(yàn),如何對(duì)這些數(shù)據(jù)進(jìn)行合理地分析建模,成為了城市交通中流量預(yù)測(cè)的一個(gè)很重要的研究課題。
交通領(lǐng)域的流量預(yù)測(cè)主要包括區(qū)域的人流量預(yù)測(cè)、道路車流量預(yù)測(cè)、車速預(yù)測(cè)、共享單車的借用歸還量預(yù)測(cè)[1]等。而在網(wǎng)約車領(lǐng)域,對(duì)于給定起始地和目的地的訂單量預(yù)測(cè)基本處于空白階段。隨著網(wǎng)約車在我國合法化之后,網(wǎng)約車司機(jī)也越來越多。但是,在一些地區(qū),仍然存在著“打車難”的問題,即:遲遲沒有司機(jī)接單,打不到車。由于網(wǎng)約車積累了大量的訂單數(shù)據(jù),對(duì)這些數(shù)據(jù)進(jìn)行相應(yīng)的分析建模,我們可以預(yù)測(cè)在未來一段時(shí)間內(nèi)的訂單量需求,來為車輛調(diào)度提供支持,以期望在一定程度上緩解“打車難”的問題。
交通領(lǐng)域的流量預(yù)測(cè)是一個(gè)極具挑戰(zhàn)性的問題,因?yàn)轭A(yù)測(cè)結(jié)果受到各種因素的影響,如:時(shí)間、周末、節(jié)假日、天氣以及不同區(qū)域之間的地理關(guān)系等。在傳統(tǒng)的流量預(yù)測(cè)方法有基于時(shí)間序列的差分整合滑動(dòng)平均自回歸模型(ARIMA)[2]及其相應(yīng)的改進(jìn)模型、卡爾曼濾波、支持向量回歸(SVR)[3]等。但是這些算法都無法充分整合天氣、區(qū)域的興趣點(diǎn)(POI)、交通擁堵信息等數(shù)據(jù)進(jìn)行預(yù)測(cè)。本文采用梯度提升回歸樹(GBRT)[4]融合多種數(shù)據(jù)源的影響因子進(jìn)行流量預(yù)測(cè)。
傳統(tǒng)的提升(Boost)就是在算法剛開始進(jìn)行計(jì)算的時(shí)候,為每個(gè)樣本都賦值一樣的權(quán)重1/n,每一次訓(xùn)練得到一個(gè)弱學(xué)習(xí)器,使用這個(gè)弱學(xué)習(xí)器對(duì)樣本進(jìn)行估計(jì)時(shí)會(huì)存在差異。所以在每一步完成之后,會(huì)對(duì)樣本的權(quán)重進(jìn)行重新分配,具體是增加錯(cuò)分類樣本點(diǎn)的權(quán)重,使得錯(cuò)分類的樣本會(huì)受到重點(diǎn)關(guān)注。在通過N 次迭代之后,得到N 個(gè)弱學(xué)習(xí)器,對(duì)于準(zhǔn)確率高的學(xué)習(xí)器賦予較高的權(quán)重,準(zhǔn)確率低的樣本賦予較低的權(quán)重,通過加權(quán)的方式將這N 個(gè)弱學(xué)習(xí)器組合起來,得到一個(gè)最終的模型就是提升。
而梯度提升(Gradient Boost)與傳統(tǒng)的提升的差別在于:梯度提升每一步計(jì)算的目的在于減少上一步計(jì)算的殘差。為了能夠加快殘差的減少,在殘差減少的梯度方向上建立一個(gè)新的模型。因此,在梯度提升中,每個(gè)新模型建立在損失函數(shù)的梯度下降方向。
梯度提升回歸樹(GBRT)的基本思想就是計(jì)算一系列簡(jiǎn)單的回歸樹,其中每一棵樹的建立是為了預(yù)測(cè)之前的樹的殘差,這個(gè)殘差就是預(yù)測(cè)值與真實(shí)值之間的差值。例如:在預(yù)測(cè)一個(gè)人的年齡問題上,樣本用戶的真實(shí)年齡為20 歲,但是使用第一棵樹得到的預(yù)測(cè)結(jié)果是18 歲,那么殘差就是2 歲。因此在使用第二棵樹進(jìn)行學(xué)習(xí)時(shí),我們將年齡設(shè)置為2 歲進(jìn)行學(xué)習(xí),如果學(xué)習(xí)后得到的結(jié)果就是2 歲,那么將兩棵樹的結(jié)果進(jìn)行累加,得到的值就是預(yù)測(cè)值,誤差為0。
(2)對(duì)于m=1,2,…,M:
①對(duì)i=1,2,…,N 計(jì)算負(fù)梯度值

②對(duì)rmi擬合一個(gè)回歸樹,得到第m 棵樹的葉節(jié)點(diǎn)區(qū)域Rmj,j=1,2,…,J
③對(duì)于j=1,2,…,J,重新計(jì)算每個(gè)區(qū)域的輸出值

歷史平均(HA):每一個(gè)起始地-目的地對(duì)在該時(shí)間片上的歷史流量的平均值,此處對(duì)歷史平均分為工作日和周末兩種情況。因?yàn)楣ぷ魅蘸椭苣┑牧髁孔兓厔?shì)是不同的,工作日的流量早晚高峰明顯,而周末的流量趨勢(shì)更加平穩(wěn)。所以分別計(jì)算出工作日和周末的歷史平均流量。
差分整合滑動(dòng)平均自回歸模型(ARIMA):ARIMA是時(shí)間序列預(yù)測(cè)中一種經(jīng)典的模型。通常有三個(gè)參數(shù)p、d、q,AR 是“自回歸”,p 為自回歸項(xiàng)數(shù);MA 為“滑動(dòng)平均”,q 為滑動(dòng)平均項(xiàng)數(shù),d 是差分次數(shù),其含義是為了使序列成為平穩(wěn)序列所做的差分階數(shù)。
支持向量回歸(SVR):SVR 是支持向量機(jī)(SVM)的一個(gè)很重要的分支。SVR 回歸,就是找到一個(gè)回歸平面,使得所有樣本數(shù)據(jù)到該平面的距離最近。SVR的性能與核函數(shù)的選擇有很大關(guān)系,常用的核函數(shù)是RBF。
實(shí)驗(yàn)數(shù)據(jù)來自于2016 年滴滴比賽Di-Tech 2016數(shù)據(jù)。該數(shù)據(jù)包括2016 年2 月23 日至3 月17 日共計(jì)24 天的訂單數(shù)據(jù)、天氣數(shù)據(jù)、區(qū)域的POI 信息數(shù)據(jù)、交通擁堵情況數(shù)據(jù)。對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,選取出行成功的訂單并統(tǒng)計(jì)起始地和目的地,然后按照30 分鐘為一個(gè)時(shí)間片進(jìn)行劃分,得到每個(gè)時(shí)間片上由區(qū)域i(1…58)到區(qū)域j(1…58)的訂單量。另外,由于工作日、周末、節(jié)假日的流量變化情況都不相同,因此提取出是否是周末,是否是節(jié)假日等特征。另外,天氣情況包括晴天、多云、陰天、下雨,所以對(duì)天氣情況進(jìn)行one-hot 編碼,而由于溫度和PM2.5 的數(shù)據(jù)是連續(xù)性數(shù)據(jù),所以采取Min-Max 歸一化的方式,將結(jié)果歸一化到[0,1]。對(duì)于交通擁堵數(shù)據(jù)和POI 數(shù)據(jù),進(jìn)行統(tǒng)計(jì)求和,得到每一個(gè)交通擁堵等級(jí)對(duì)應(yīng)的路段數(shù)和每一類POI 的數(shù)量。對(duì)數(shù)據(jù)進(jìn)行特征工程之后,每條訓(xùn)練數(shù)據(jù),均包含86個(gè)特征。對(duì)實(shí)驗(yàn)采取離線實(shí)驗(yàn)方法,以2 月23 日至3月10 日共計(jì)17 天的數(shù)據(jù)為訓(xùn)練數(shù)據(jù),3 月11 日至3月17 日的數(shù)據(jù)為測(cè)試數(shù)據(jù)。
首先,對(duì)訓(xùn)練集數(shù)據(jù)進(jìn)行分析,可以發(fā)現(xiàn),歷史數(shù)據(jù)中共存在2722 個(gè)起始地-目的地對(duì),統(tǒng)計(jì)不同起始地-目的地對(duì)在訓(xùn)練集中的總訂單量,以訂單量為橫坐標(biāo),小于該值的起始地-目的地對(duì)占總對(duì)數(shù)的比例為縱坐標(biāo),得到圖1。
從圖1 中可以看出,大約80%的起始地-目的地對(duì)的訂單量均小于等于418,也就是說,平均每個(gè)時(shí)間片還不足一個(gè)訂單,所以這類起始地-目的地對(duì)沒有太大預(yù)測(cè)價(jià)值,直接使用歷史平均就行。對(duì)于另外的20%的起始地-目的地對(duì),采取GBRT 算法來預(yù)測(cè)。以平均絕對(duì)誤差(MAE)均方根誤差(RMSE)為評(píng)價(jià)指標(biāo),公式分別如下:根據(jù)以上評(píng)價(jià)指標(biāo),實(shí)驗(yàn)對(duì)比結(jié)果如圖2。

圖1

圖2

由圖可知,在MAE 和RMSE 評(píng)價(jià)指標(biāo)下,使用GBRT 融合各種數(shù)據(jù)源的特征得到的預(yù)測(cè)結(jié)果相對(duì)于另外幾種算法都是較好的。
本文提出了基于GBRT 的交通流量預(yù)測(cè)算法,使用比賽公開數(shù)據(jù)集進(jìn)行了實(shí)驗(yàn)對(duì)比,根據(jù)MAE 和RMSE 評(píng)價(jià)指標(biāo)的結(jié)果,證明該模型可以融合多源數(shù)據(jù)來進(jìn)行流量預(yù)測(cè)。同時(shí),該模型具有一定的擴(kuò)展性,不僅可以用于交通領(lǐng)域的流量預(yù)測(cè),也可以用于股票預(yù)測(cè)、房?jī)r(jià)預(yù)測(cè)等。