翁小雄, 呂攀龍
(華南理工大學(xué) 土木與交通學(xué)院,廣東 廣州 510641)
隨著城市公交IC卡使用的普及,通過公交IC卡數(shù)據(jù)來挖掘乘客出行特征成為新的趨勢,相比傳統(tǒng)交通調(diào)查的單一手段更加真實、準(zhǔn)確、高效。交通擁堵已成為目前中國大中城市的交通常態(tài),廣州市早晚高峰擁堵情況尤為嚴(yán)重。隨著軌道交通網(wǎng)絡(luò)的進一步完善,地鐵更加人滿為患,因此,對廣州市通勤人群的挖掘就顯得尤為重要。從地鐵早晚高峰出行中找出占比較大的通勤人群,并將其疏導(dǎo)、分流到公交和定制公交等其他交通方式,對于緩解地鐵和城市早晚高峰壓力具有重要意義。
目前國內(nèi)外基于IC卡數(shù)據(jù)的研究主要集中在上下車站點識別[1]、換乘識別[2]、客流預(yù)測[3]和線網(wǎng)規(guī)劃[4-5]等方面的內(nèi)容。在通勤人群篩選方面,大都根據(jù)經(jīng)驗指定相關(guān)規(guī)則,例如根據(jù)月工作日刷卡次數(shù)等設(shè)定閾值[6]進行判斷,由于未對真實IC卡數(shù)據(jù)分析和實地對通勤人員進行調(diào)研,引入了大量的噪聲。最新的研究,孫世超等[7]通過訓(xùn)練調(diào)查問卷數(shù)據(jù)提出了基于貝葉斯分類器的公交通勤人群識別方法;莊斌等[8]采用決策樹模型對廈門市公交刷卡數(shù)據(jù)進行通勤刷選。但他們在特征屬性選取的全面性和特征處理的合理性等方面未考慮完善,會導(dǎo)致最終結(jié)果不準(zhǔn)確,存在一定的噪聲。
筆者充分考慮通勤出行的各種特征屬性,并對其采取合理化處理,以廣州市地鐵IC卡數(shù)據(jù)為依托,利用經(jīng)過特征值處理的調(diào)查問卷數(shù)據(jù)訓(xùn)練和測試模型,提出了一種基于GBDT機器學(xué)習(xí)算法的通勤人群識別方法。該識別方法擁有較高的通勤人群識別準(zhǔn)確率。
分析廣州市地鐵IC卡交易數(shù)據(jù),每天有400多萬條刷卡交易記錄。每條記錄包含25個交易字段,具體包括票卡號、物理票卡號、本次交易設(shè)備編號、本次交易日期、票價、金額、交易類型、累計門檻計數(shù)、本次交易入口時間等信息。
在實際操作中,選用2016年11月份的地鐵交易數(shù)據(jù)。11月份沒有特殊的法定節(jié)假日,地鐵整體客流和通勤人員的異常波動較小,從中可以抽取出3個正常工作周(除去周六和周日),分別選取票卡ID號、本次交易日期、本次交易入口時間的字段內(nèi)容作為研究的原始數(shù)據(jù)。原始交易數(shù)據(jù)中存在ID卡號格式錯誤和交易日期異常的情況,如交易時間為19980820000000等,要預(yù)先編寫程序清除掉這些異常數(shù)據(jù)。
對經(jīng)過異常剔除的原始數(shù)據(jù)進行分析,統(tǒng)計工作周平均一天每隔15 min刷卡人次,了解廣州地鐵整體客流和高峰出行的刷卡時間分布情況,如圖1。
從圖1可以看出,早晚高峰持續(xù)時間比較久,在高峰時段15 min客流最高可達12.3萬人次,地鐵早晚高峰的承載壓力巨大。
圖1 工作日周平均地鐵出行人次
綜合考慮通勤人群常發(fā)性、規(guī)律性、穩(wěn)定性等特點,并結(jié)合已有研究結(jié)論,選取以下特征屬性作為模型的特征輸入?yún)⒘俊?/p>
周工作日平均首次刷卡時間和末次刷卡時間,文獻[7-8]對早晚高峰時間段每隔半個小時進行一次特征取值劃分,最終把識別通勤者首末刷卡時間的特征屬性被局限在半小時的時間內(nèi),導(dǎo)致識別結(jié)果不太準(zhǔn)確。筆者根據(jù)地鐵乘客實際的工作周平均每天的刷卡時間(圖1)進行統(tǒng)計,設(shè)定早高峰時間段為07:00—10:00,晚高峰時間段為17:00—20:00。如果平均首、末刷卡時間落在早晚高峰時間段內(nèi)則將該屬性特征值設(shè)為1,否則取為2。此特征值處理方式考慮更全面、準(zhǔn)確。
周工作日首、末次平均刷卡間隔時長,是識別通勤者比較新的思路,其值一般為工作時間和路上消耗時間之和,是通勤者重要行為特征之一的體現(xiàn)。以小時為單位,四舍五入保留一位小數(shù),作為該特征屬性的輸入值。
周工作日首、末刷卡間隔時長波動情況,是對平均刷卡間隔時長特征的很好補充,可以清除刷卡間隔時長跳躍的噪聲干擾。根據(jù)間隔時長方差的整體分布情況,將波動情況劃分為無明顯波動、一般波動、較大波動3個等級,并依次為該特征屬性賦值1、2、3。
周工作日刷卡總數(shù),是衡量通勤族出行的重要參數(shù),傳統(tǒng)識別多根據(jù)此特征設(shè)定閾值,從而進行通勤人群的簡單識別。筆者將其作為識別特征之一,并以實際次數(shù)作為其特征屬性值。
通勤人群識別是典型的分類問題。傳統(tǒng)的機器學(xué)習(xí)分類的算法有很多,例如樸素貝葉斯、決策樹、隨機森林、神經(jīng)網(wǎng)絡(luò)等。GBDT全稱梯度提升決策樹,是一種集成的機器學(xué)習(xí)算法,由多顆決策樹組成,通過在殘差負(fù)梯度方向上不斷生成決策樹減少誤差,并將各決策樹結(jié)果累加進行最終判別。它是統(tǒng)計學(xué)習(xí)性能最好的方法之一,與SVM一起被認(rèn)為是泛化能力較強的算法[9]。
GBDT中的基學(xué)習(xí)器一般為分類回歸樹CART,其核心是將損失函數(shù)的負(fù)梯度作為當(dāng)前模型數(shù)據(jù)殘差的近似值,根據(jù)近似殘差值擬合一個CART回歸樹,不斷重復(fù)此過程,減少誤差。由于分類問題的輸出值為離散值,無法直接從輸出類別去擬合類別輸出的誤差,故摒棄回歸樹中連續(xù)值常用的平方損失函數(shù),采用指數(shù)損失函數(shù)或者對數(shù)似然損失函數(shù),相當(dāng)于用類別的預(yù)測概率和真實概率值之差來擬合殘差。GBDT分類和回歸的思想是一致的,僅僅損失函數(shù)以及其導(dǎo)致的梯度處理不同。筆者以回歸樹為例,介紹GBDT的具體實現(xiàn)步驟。
首先選取訓(xùn)練數(shù)據(jù)集T:
T={(x1,y1),(x2,y2),…,(xn,yn)}
(1)
設(shè)定迭代次數(shù)為M(即最終生成樹的個數(shù)),確定損失函數(shù)L(y,f(x))。
步驟1:初始化弱分類器:
(2)
步驟2:對m=1,2,…,M:
1)對i=1,2,…,n,計算負(fù)梯度:
(3)
2)對近似殘差rmi擬合一個回歸樹,得到第m棵樹的結(jié)點域Rmj,j=1,2,…,J。
3)對葉子域j=1,2,…,J,計算最佳擬合值:
(4)
4)更新學(xué)習(xí)器 :
(5)
步驟3:得到最終強學(xué)習(xí)器:
(6)
筆者解決的是通勤和非通勤的二分類問題。損失函數(shù)采用對數(shù)似然損失函數(shù),利用其負(fù)梯度擬合殘差,實現(xiàn)GBDT分類器。對數(shù)似然損失函數(shù)如式(7):
L(y,f(x))=log[1+e-y·f(x)],y∈{-1,+1}
(7)
對數(shù)似然損失函數(shù)對應(yīng)負(fù)梯度誤差表達如式(8):
rmi=yi/{1+exp[yi·f(xi)]}
(8)
基于選取的5個通勤特征屬性設(shè)計調(diào)查問卷格式,實際在地鐵IC刷卡人群中隨機挑選過去一周采用地鐵方式的出行人群,進行問卷調(diào)查。具體調(diào)查問卷匯總內(nèi)容如表1。
在保證通勤和非通勤人數(shù)比重相當(dāng)?shù)臈l件下,對調(diào)查問卷數(shù)據(jù)進行篩選處理,清除部分明顯誤寫的錯誤數(shù)據(jù),并按特征屬性賦值規(guī)則進行數(shù)據(jù)處理,得到800條處理過的調(diào)查樣本數(shù)據(jù)。其中通勤者占58%,比較合理。因筆者主要關(guān)注通勤分類結(jié)果,故樣本通勤比例可以相對較高。最后采用Cronbach’s alpha(克朗巴哈系數(shù))來衡量調(diào)查數(shù)據(jù)的可信度,其取值范圍為0~1,達到0.8~0.9時說明信度非常好。而實際計算本次樣本Cronbach’s alpha值為0.843,表明該調(diào)查問卷數(shù)據(jù)具有很好的內(nèi)部置信度,真實可靠。
表1 調(diào)查問卷內(nèi)容
從800份中處理過樣本數(shù)據(jù)中,按通勤與非通勤在總體中的近似比例抽取650份作為訓(xùn)練數(shù)據(jù),剩余150份作為測試數(shù)據(jù)。是否通勤為樹的模型葉節(jié)點域,通勤為1,非通勤為-1。設(shè)定迭代次數(shù)為50,即最終生成樹的個數(shù)。設(shè)置相關(guān)參數(shù),最終訓(xùn)練較好的GBDT分類器在測試數(shù)據(jù)中的通勤識別正確率高達94.16%,具有很高的泛化能力。作為對比,此外采用貝葉斯算法、決策樹、隨機森林算法去訓(xùn)練分類器,用同樣的數(shù)據(jù)進行訓(xùn)練建模和測試,其中構(gòu)建GBDT分類器的效果最好,對比結(jié)果如表2。
表2 各類算法結(jié)果對比
預(yù)測數(shù)據(jù)結(jié)果的正確率和錯誤率并不能完全反應(yīng)模型的成功度,其掩蓋了樣例如何被錯分的情況。為此首先引入二分類混淆矩陣的概念,見表3。
表3 混淆矩陣內(nèi)容
在實際分類中,如果側(cè)重某個分類結(jié)果時,基于表3中真正例、偽反例、偽正例、真反例相關(guān)概念,可以定義更好的性能指標(biāo)。第一個為正確率(預(yù)測為正例中真正正例的比率):TP/(TP+FP);第二個為召回率(預(yù)測為正例的真正例占全部真實正例比率):TP/(TP+FN)。筆者采用ROC曲線來衡量訓(xùn)練的GBDT分類模型對通勤的篩選性能[10]。ROC又稱受試者工作特性曲線,其橫軸值為假陽(正)率=FP/(FP+TN),縱軸值為真陽率=TP/(TP+FN)。當(dāng)分類閾值變化時,ROC曲線反應(yīng)假陽率和真陽率的變化情況。在實際處理中,把每個樣本的通勤預(yù)測強度進行排序,依次作為分類的閾值,計算出假陽率和真陽率的對應(yīng)數(shù)值,訓(xùn)練GBDT分類器模型的ROC曲線如圖2。
圖2 GBDT模型ROC曲線
性能較好的分類器ROC曲線盡可能位于左上方,在保證假陽率很低的情況下獲得了較高的真陽率,一般用曲線下方的面積AUC衡量分類器的平均性能。由圖2中可以看出,該模型ROC曲線的AUC值高達0.95,說明分類器對通勤人群的識別性能較好。
特征重要度對比,計算出提升樹模型中5個特征在判斷是否為通勤過程中的重要度,如圖3。
從圖3可以看出,首末次平均刷卡間隔時長、周工作日刷卡次數(shù)特征在判斷通勤活動中具有較高作用。
圖3 特征識別重要度
以廣州地鐵11月份中的1個完整工作周(11月7號到11月11號)的刷卡數(shù)據(jù)為例,一共有18 169 739條刷卡記錄,按ID卡號,依次計算每個人的周工作日平均首末次刷卡時間,并根據(jù)是否在設(shè)定早晚高峰時間段內(nèi)賦值1和2,計算周工作日首末刷卡時間間隔均值與方差。均值以小時為單位,保留一位小數(shù),根據(jù)方差總體情況依次取值1、2、3。接著計算每個人周工作日刷卡次數(shù),最終一共得到4 132 421條數(shù)據(jù)。利用之前訓(xùn)練好的GBDT分類器對通勤和非通勤人員進行識別,其中識別的通勤人員有1 318 007人,占總?cè)藬?shù)的31.89%。采用同樣的步驟,依次對另外兩個工作周的數(shù)據(jù)采用相同的處理,并進行識別,得到3個工作周的對比數(shù)據(jù)如表4。
表4 3周通勤篩選結(jié)果對比
選取11月份數(shù)據(jù)無重大節(jié)假日,數(shù)據(jù)穩(wěn)定,從表4也可以看出,3周通勤人數(shù)和所占比例變化不大,通勤人數(shù)約為132萬人,占總體人數(shù)的32%左右。李軍[11]等以廣州市公交IC卡數(shù)據(jù)為依托,根據(jù)不同出行活動的時空特征,以出發(fā)頻次和出發(fā)時間標(biāo)準(zhǔn)差為分類依據(jù),得出廣州公交IC卡中39.1%乘客為普通類或通勤出行的結(jié)論。對比分析,與本研究結(jié)果差值在理論可解釋范圍之內(nèi),主要因為筆者通勤篩選所考慮的特征更為全面,更為精確,故占比相對比較低。孫世超等[8]利用機器學(xué)習(xí)方法得出廈門公交通勤人群大約為30萬人,根據(jù)城市人口規(guī)模和發(fā)展情況,廣州地鐵通勤約132萬人也符合其實際情況。綜上分析,最終地鐵通勤人群的識別結(jié)果具有較高的可靠性。
通勤人群作為公共交通的主要依賴群體,其規(guī)律化出行是造成早晚高峰擁堵的主要原因。根據(jù)廣州地鐵早晚高峰異常擁堵的實際情況,筆者以廣州市地鐵IC卡數(shù)據(jù)為依托,全面考慮通勤出行的特征屬性,結(jié)合調(diào)查問卷數(shù)據(jù),提出了一種基于GBDT算法的通勤人群辨識方法。該方法具有良好性能,并對廣州地鐵刷卡中通勤人群篩選識別。結(jié)果表明,地鐵通勤人群的數(shù)量約為131萬人 ,占總出行人次的32%左右,高于其他二線城市。分析結(jié)果真實可靠 ,為進一步挖掘其OD規(guī)律,采取分流等措施,減輕地鐵壓力提供了重要的理論基礎(chǔ)。
通勤人員類型內(nèi)部還包含不同的類型,例如單一型、多目的出行型、換乘較多型等,可以根據(jù)具體的實際需求,集合IC卡數(shù)據(jù)分析相關(guān)數(shù)據(jù)特點建立模型,對通勤人員進一步地分類和識別。