韓 皓,徐圣安,趙 蒙
(上海海事大學 交通運輸學院,上海 201306)
綜上分析,結(jié)合復雜網(wǎng)絡(luò)理論對軌道交通網(wǎng)絡(luò)開展結(jié)構(gòu)分析[7-10],不僅能從宏觀層面觀察車站在整個軌道交通網(wǎng)絡(luò)中的作用[11],也可進一步探索車站分布情況對客流的影響。通過分析軌道交通線網(wǎng)結(jié)構(gòu)特性,定量描述車站在線網(wǎng)結(jié)構(gòu)中的差異性,將線網(wǎng)結(jié)構(gòu)特征納入數(shù)據(jù)集中,并基于LightGBM[12]算法構(gòu)建城市軌道交通短時客流預測模型。相比同為集成算法的XGBoost[13],LightGBM 算法不僅節(jié)約內(nèi)存消耗,縮短訓練時間,且擁有更高的模型精度,同時支持并行學習,在海量數(shù)據(jù)的處理上表現(xiàn)更為優(yōu)異。因而,將LightGBM 算法應(yīng)用于軌道交通客流回歸預測,并結(jié)合特征工程,構(gòu)造包含線網(wǎng)結(jié)構(gòu)特征的數(shù)據(jù)集,優(yōu)化模型精度,提高算法效率,為運營組織及分析掌握城市軌道交通客流活動分布提供更加準確的技術(shù)手段。
原始數(shù)據(jù)來源于github 項目(https://github.com/ivechan/PVCGN),涵蓋上海市軌道交通288 個車站進出站客流,時間跨度為2016 年7 月1 日至8 月31 日每天5 : 30 ~ 23 : 30,并以15 min 的粒度按時間順序排列呈現(xiàn),具體數(shù)據(jù)項為時間、車站號、進站客流量及出站客流量。
車站客流量是車站所處區(qū)域的地理、人口、經(jīng)濟及其他屬性的綜合反映,基于這些屬性構(gòu)建特征存在以下難點:一是量化方式上存在困難;二是巨大的數(shù)據(jù)獲取成本。因此,將車站在空間維度上的差異轉(zhuǎn)換為對軌道交通線網(wǎng)結(jié)構(gòu)的量化統(tǒng)計,引入復雜網(wǎng)絡(luò)理論中的統(tǒng)計物理量及社團劃分理論描繪車站之間的差異性。
1.1.1 節(jié)點統(tǒng)計指標
以車站為節(jié)點,以相鄰車站間的可達路徑為連邊構(gòu)建上海市城市軌道交通網(wǎng)絡(luò)。將節(jié)點作為研究對象,通過復雜網(wǎng)絡(luò)理論中的統(tǒng)計物理量展開分析,分別取以下統(tǒng)計指標。
(1)集聚系數(shù)。在二元關(guān)系C中,如果存在1C2,2C3,1C3,則稱C為傳遞關(guān)系。在城市軌道交通網(wǎng)絡(luò)中C可延展為以下定義:擁有同一相鄰車站的2 個車站彼此相鄰,該性質(zhì)為網(wǎng)絡(luò)的聚類性(Clustering)。定義節(jié)點i的聚類系數(shù)Ci如公式 ⑴ 所示。
對公共圖書館招聘信息中需求專業(yè)出現(xiàn)的頻次進行統(tǒng)計,結(jié)果如圖3所示。公共圖書館專業(yè)需求排前三位的是圖情檔、其他專業(yè)以及人文社科類,占比分別為 28.1%、23.8%、17.3%。 其他專業(yè)主要是傳媒、會計以及外語等專業(yè)。統(tǒng)計分析顯示,隨著近年來公共圖書館在免費開放政策下業(yè)務(wù)范圍的擴大,人文社科類和傳媒類等專業(yè)與圖情檔專業(yè)形成競爭關(guān)系。對計算機學科的人才需求集中在省級以及沿海地區(qū)公共圖書館,縣級以及偏遠地區(qū)圖書館由于公共文化服務(wù)體系建設(shè)尚不完善、資金投入不足等原因?qū)?shù)字資源建設(shè)的關(guān)注力度較小,從而對計算機學科人才的需求較低??傊?,公共圖書館對人才的專業(yè)需求呈多樣化趨勢。
(2)度。在無向網(wǎng)中,節(jié)點i的度ki是指節(jié)點i與其他節(jié)點之間存在的路徑數(shù),而延伸到城市軌道交通網(wǎng)絡(luò)上,車站i的度ki表示車站i與相鄰車站之間的路徑數(shù)。
(3)流介數(shù)中心性。節(jié)點i的流介數(shù)中心性為網(wǎng)絡(luò)中所有路徑σst總數(shù)與經(jīng)過該節(jié)點路徑數(shù)σst(i)的比值,在城市軌道交通網(wǎng)絡(luò)中可反映車站作為“橋梁”的重要程度,節(jié)點i的流介數(shù)中心性CB(i)如公式 ⑵ 所示。
根據(jù)上述分析可得,車站網(wǎng)絡(luò)結(jié)構(gòu)特征名及解釋如表1 所示。
表1 車站網(wǎng)絡(luò)結(jié)構(gòu)特征名與解釋Tab.1 Network structure features and explanations
1.1.2 線網(wǎng)模塊劃分
車站編號作為離散型分類變量,如果采用傳統(tǒng)的獨熱編碼處理,288 個車站將產(chǎn)生288 維度特征,特征維度過高會對數(shù)據(jù)集的結(jié)構(gòu)產(chǎn)生較大的破壞,造成模型精度的下降。因而,為更好地挖掘車站在客流空間分布上的規(guī)律,除使用表1 中所提到的節(jié)點統(tǒng)計指標外,進一步引入Louvain 算法對線網(wǎng)劃分模塊,在盡可能減少新增特征維度的同時實現(xiàn)車站節(jié)點分類。
Louvain 算法是一種基于聚類法思想的模塊劃分算法,可以高效辨別大型網(wǎng)絡(luò)的層次及社區(qū)結(jié)構(gòu),且劃分精準度高,能夠劃分出內(nèi)部聯(lián)系緊密、外部聯(lián)系稀疏的節(jié)點模塊。
Louvain 算法以模塊度(Modularity,記為Q)和模塊度增量(Delta Modularity,記為ΔQ) 為主要參數(shù)對軌道交通網(wǎng)絡(luò)進行劃分,通過參數(shù)Q計算模塊內(nèi)部節(jié)點的緊密程度,模塊度Q如公式⑶所示。
式中:m為網(wǎng)絡(luò)中邊的總數(shù)量;ki表示所有指向節(jié)點i的連邊權(quán)重之和,kj同理;Aij表示節(jié)點i,j之間的連邊權(quán)重;δ(Ci,Cj)為0-1 變量,用于判斷節(jié)點i和節(jié)點j所在社區(qū)是否相同,相同為1,不同為0。
在將某一新節(jié)點劃分至某社區(qū)后,重新計算模塊度,模塊度增量ΔQ如公式 ⑷ 所示。
式中:in和tot分別代表節(jié)點所在模塊邊權(quán)重之和以及所有與模塊內(nèi)部連邊權(quán)重之和;ki,in表示節(jié)點i加入到社區(qū)C時的權(quán)重和。以最大化模塊度為目的,基于Louvain 算法將上海城市軌道交通網(wǎng)絡(luò)劃分為18 個模塊,模塊劃分學習曲線如圖1 所示,上海市軌道交通模塊劃分網(wǎng)絡(luò)如圖2 所示。
圖1 模塊劃分學習曲線Fig.1 Learning curve of module partition
圖2 上海市軌道交通模塊劃分網(wǎng)絡(luò)Fig.2 Network of rail transit module partition in Shanghai
劃分車站所屬的網(wǎng)絡(luò)模塊后,采用獨熱編碼處理,獨熱編碼即采用N位狀態(tài)寄存器對N個狀態(tài)進行編碼,每個狀態(tài)都有獨立的寄存器位,并且在任意時候只有一位有效。編碼后的特征名以Community1~18表示,用于描述車站節(jié)點i在獨熱編碼后的所屬模塊。
根據(jù)地鐵線路運營時間,按照原始數(shù)據(jù)時間粒度,統(tǒng)計進出站客流量。在時間維度抽取特征[14],將其分為小時(hour)、分鐘(minute)。為進一步分析客流在時間上的相關(guān)性,經(jīng)統(tǒng)計,0 號車站在2016 年7 月內(nèi)進站客流(30 d)如圖3 所示,0 號車站在2016 年7 月內(nèi)出站客流(30 d)如圖4 所示。
圖3 0 號車站2016 年7 月內(nèi)進站客流(30 d)Fig.3 Passenger inflow of No.0 station in July (30 d), 2016
圖4 0 號車站2016 年7 月內(nèi)出站客流(30 d)Fig.4 Passenger outflow of No.0 station in July (30 d), 2016
通過計算皮爾遜相關(guān)矩陣,并繪制熱力圖可視化表示進出站客流在時間維度上的相關(guān)性。進站客流熱力圖如圖5 所示,出站客流熱力圖如圖6 所示。
圖5 進站客流熱力圖Fig.5 Heat map of passenger inflow
圖6 出站客流熱力圖Fig.6 Heat map of passenger outflow
可視化結(jié)果表明,該車站進出站客流以7 d 為周期表現(xiàn)出強周期性,因而提取一周前同時段客流作為數(shù)據(jù)集特征,同時對啞變量“星期幾”作獨熱編碼處理。綜上分析可知,時間維度抽取特征名與解釋如表2 所示。
綜上分析,對數(shù)據(jù)集進行構(gòu)建??紤]上海地鐵全線路平均運營起止時間,以及根據(jù)前述特征工程和原始數(shù)據(jù)集的數(shù)據(jù)屬性,最終將時間拆分點設(shè)置為6 : 30 和22 : 30,其中以2016 年7 月8 日 至8 月30 日共計55 d 共1 010 800 個樣本作為訓練數(shù)據(jù),以8 月31 日共18 720 個樣本為測試數(shù)據(jù)。特征向量由線網(wǎng)特征和時間維度特征共35 維構(gòu)成。其中線網(wǎng)特征共21 維,包括車站節(jié)點的“度”“流介數(shù)中心性”“集聚系數(shù)”3 維,“車站所屬網(wǎng)絡(luò)模塊的獨熱編碼”18 維;時間維度特征共14 維,包括“星期幾”7 維,“小時”與“分鐘”2 維,“前周同時段進出站”1維,“前15~60 min 進出站客流量”4 維。
LightGBM 是一個分布式boosting框架,因其訓練速度快且性能優(yōu)秀,被廣泛應(yīng)用于回歸、分類等機器學習任務(wù)。將其應(yīng)用于地鐵客流量的建模與預測,其優(yōu)點主要有3 方面。①高效的訓練效率;②較低的內(nèi)存消耗;③支持平行學習和GPU 學習。假設(shè)生成了具有N個樣本的原始數(shù)據(jù)集和具有T顆樹(基學習器)的LightGBM 模型,在經(jīng)歷t次迭代后的預測值y(t)prei如公式 ⑸ 所示。
LightGBM 是梯度提升決策樹(GBDT)的有效實現(xiàn)算法,也是一種基于XGBoost 的優(yōu)化算法,LightGBM能夠找到最佳特征分割點,減少樣本和特征數(shù)目。與XGBoost 相比,LightGBM 具有2 個主要優(yōu)點:基于梯度的單邊采樣(GOSS)和決策樹中按葉子生長策略(Leaf-wise)。
從減少樣本數(shù)角度出發(fā),GOSS 根據(jù)梯度絕對值對樣本進行排序,保留前a%樣本,并從剩余樣本中選擇b%,后續(xù)計算中將小梯度樣本的信息增益放大(100 -a) /b倍,實現(xiàn)樣本梯度越大,計算增益時的貢獻越大。GOSS 無需遍歷數(shù)據(jù)集以檢查GBDT 中可能的分裂節(jié)點,這在很大程度上減少了計算的復雜性。在樹的生長策略上,大多數(shù)決策樹算法均采用分層策略Level-wise,該策略不考慮分裂增益,分裂增益較低的葉子會過度消耗計算資源,Leaf-wise 可從所有葉子中找到分裂增益最大的葉子節(jié)點進行分裂并迭代。因此,在相同的條件下,Leaf-wise 可以減小誤差,并最終表現(xiàn)出更高的預測精度。然而,當樣本量很小時,Leaf-wise 存在過度擬合的問題。利用參數(shù)max_depth 限制樹的深度,可有效避免過擬合現(xiàn)象。2 種生長樹策略如圖7所示。
圖7 2 種生長樹策略Fig.7 Two tree growth strategies
將數(shù)據(jù)集拆分為訓練集(7 月8 日至8 月25 日)、驗證集(8 月25 日至8 月30 日)和測試集(8 月31 日),按前述流程處理后的訓練集輸入LightGBM 模型。對參數(shù)進行調(diào)整是模型訓練過程中的一個重要環(huán)節(jié),包括主要參數(shù)、基學習器數(shù)量和其他參數(shù)3部分。
(1)主要參數(shù)。考慮訓練數(shù)據(jù)量及LightGBM 參數(shù)調(diào)整范圍,采用貝葉斯優(yōu)化方法hyperopt 進行調(diào)參,該方法用于串行和并行優(yōu)化,優(yōu)化輸入?yún)?shù)以最小化目標函數(shù)值,實現(xiàn)重要參數(shù)在一定范圍空間的高效調(diào)參。此外,在訓練過程中,采用K折交叉驗證(KCV)方法,避免模型出現(xiàn)過擬合,并提高模型的泛化能力。K折交叉驗證將原始數(shù)據(jù)集經(jīng)KCV 后平均劃分為c組,每個子集作為一個驗證集,其余c-1 個子集作為訓練集。最終實現(xiàn)算法控制與LightGBM 參數(shù)優(yōu)化,LightGBM主要參數(shù)如表3 所示。
表3 LightGBM 主要參數(shù)Tab.3 Main parameters of LightGBM
(2)基學習器的數(shù)量。作為集成算法,Light-GBM 中的基學習器數(shù)量直接影響最終的模型精度,可通過調(diào)整基學習器數(shù)量以避免模型訓練中出現(xiàn)過擬合和欠擬合問題。以平均絕對誤差(MAE)為指標,5 折交叉驗證基學習器數(shù)量學習曲線如圖8 所示。經(jīng)圖8 分析可知,基學習器取值如表4 所示。
表4 基學習器取值Tab.4 Values of base learners
圖8 5折交叉驗證基學習器數(shù)量學習曲線Fig.8 Learning curve of base learners by 5-CV
(3)其他參數(shù)。通過貝葉斯優(yōu)化方法hyperopt迭代獲取模型的最優(yōu)參數(shù)組合,調(diào)節(jié)參數(shù)取值。預測模型參數(shù)如表5 所示。
表5 預測模型參數(shù)Tab.5 Parameters of the passenger flow prediction model
評估回歸模型常采用的指標有均方誤差(MSE)、平均絕對誤差(MAE)、平均絕對百分比誤差(MAPE)、均方根誤差(RMSE) 和決定系數(shù)R2_score。由于數(shù)據(jù)粒度為15 min,評估指標選取MAE如公式 ⑼、MAPE如公式 ⑽ 、RMSE如公式 ⑾ 所示。
式中:yi,yipred分別代表第i個樣本的真實值和預測值??紤]到LightGBM 屬于機器學習中的集成模型,為驗證其在客流預測上的優(yōu)勢,選取同為集成算法的XGBoost、隨機森林、CatBoost,以及多層感知機MLP 進行對比。進站模型對比評估如表6 所示,出站模型對比評估如表7 所示。
表6 進站模型對比評估Tab.6 Comparison among prediction models in passenger inflow
表7 出站模型對比評估Tab.7 Comparison among prediction models in passenger outflow
通過模型評估結(jié)果分析,在特征表現(xiàn)上,線網(wǎng)結(jié)構(gòu)特征能夠提升不同算法的回歸效果以實現(xiàn)更高的預測精度。其中對于進站客流模型,LightGBM 在低維數(shù)據(jù)集上表現(xiàn)出較高的RMSE,結(jié)合線網(wǎng)結(jié)構(gòu)特征后,LightGBM 將RMSE降低約35%。在算法效果上,LightGBM 在各數(shù)據(jù)集上的預測精度均優(yōu)于MLP、XGBoost 與CatBoost,但在低維進站數(shù)據(jù)集上的表現(xiàn)略低于隨機森林。從總體看,所提出的考慮線網(wǎng)結(jié)構(gòu)的LightGBM 模型在確保預測精度的同時,大幅降低了模型訓練消耗的時間成本,訓練速度較XGBoot、隨機森林、CatBoost 和MLP 分別提升約10 倍、25 倍、15 倍和10 倍。
特征在基學習器中出現(xiàn)的次數(shù)反映了特征對模型的貢獻程度,由于最終數(shù)據(jù)集涵蓋特征數(shù)量較多,選取特征重要性排序較前的特征展開分析。進站客流預測模型特征重要性如圖9 所示,出站客流預測模型特征重要性如圖10 所示。
圖9 進站客流預測模型特征重要性Fig.9 Feature importance of the prediction model in passenger inflow
圖10 出站客流預測模型特征重要性Fig.10 Feature importance of the prediction model in passenger outflow
在時間維度特征中,“當天前時段客流量”在特征重要性排序上位置靠前,其中“當天前15 min客流量”對模型貢獻最大?!扒爸芡瑫r段進出站客流量”次之,代表周六周日的獨熱編碼在“星期幾編碼”中排序較前,呈現(xiàn)出軌道交通客流所具備的強周期性。在線網(wǎng)結(jié)構(gòu)特征中,“流介數(shù)中心性”特征重要性明顯,其他統(tǒng)計指標“度”“集聚系數(shù)”及車站所在模塊的分類特征均對回歸模型有一定影響。綜上分析可知,時間維度特征在特征重要性上高于線網(wǎng)結(jié)構(gòu)特征,另外,線網(wǎng)結(jié)構(gòu)特征也對模型有不可忽視的貢獻,可有效提升模型的預測精度。
利用復雜網(wǎng)絡(luò)理論對軌道交通客流數(shù)據(jù)開展線網(wǎng)結(jié)構(gòu)層面的數(shù)據(jù)挖掘,通過分析軌道交通網(wǎng)絡(luò)屬性和網(wǎng)絡(luò)節(jié)點統(tǒng)計量及劃分網(wǎng)絡(luò)模塊的方式定義客流數(shù)據(jù)在空間維度上的特征,所構(gòu)建的考慮線網(wǎng)結(jié)構(gòu)特征的LightGBM 客流預測模型在減少預測誤差的同時,大幅縮短了訓練時間,降低訓練成本,同時證明線網(wǎng)結(jié)構(gòu)特征對模型的預測精度有正向貢獻。在后續(xù)研究中,可基于完整客流OD 數(shù)據(jù)計算客流驅(qū)動下的客流網(wǎng)絡(luò)中心性等統(tǒng)計指標,將靜態(tài)網(wǎng)絡(luò)轉(zhuǎn)換成動態(tài)網(wǎng)絡(luò)以更好地捕捉軌道交通線網(wǎng)結(jié)構(gòu)在加載客流下的動態(tài)特性,提高算法對客流數(shù)據(jù)的學習效果。