王郅翔 王余寬 許小衛 謝新連



【摘 要】 為提升水陸聯運樞紐客運量預測精度,選用隨機森林算法構建水陸聯運樞紐客運量預測模型,選取影響水陸聯運樞紐客流的多種因素構建初始數據集;運用隨機森林算法對初始數據集進行參數優選,生成初始預測模型;隨機擾動特征變量值,對特征變量進行重要性分析,并優選特征變量得出預測數據集;最后,構建水陸聯運樞紐客運量預測模型,載入測試集數據預測水陸聯運樞紐客運量。將上述方法與三次指數平滑、多元回歸分析兩種預測方法進行對比,結果表明基于隨機森林算法的預測結果更為精確。
【關鍵詞】 水陸聯運;樞紐;客運量預測;隨機森林算法;特征變量
0 引 言
客運量預測是水陸聯運樞紐規劃、設計等環節的基礎工作,同時又是選定運輸模式和船舶班線組織方案的重要參考依據;因此,如何科學合理地預測水陸聯運樞紐客運量具有重要的現實意義。
常見的客運量預測方法以時間序列分析法為主,如指數平滑法、多元線性回歸法、灰色預測法等。此外,隨著機器學習領域的深入發展,越來越多的人工學習算法被應用到客流量預測中,如人工神經網絡、支持向量機等。指數平滑法在處理多維變量存在不足,無法同時考慮變量間因果關系;多元線性回歸法彌補了指數平滑法在處理多維變量方面的缺陷,但難以處理多重共線性的問題;灰色預測法可應用于類似客流量這種指數增長的數據,但不適用于長期預測;人工神經網絡對變量擬合精度高,但存在過擬合現象嚴重,且在實際運用中,存在建模復雜、適用性差、收斂速度慢等缺陷;支持向量機在處理大規模高維數據時,泛化能力較差,且對數據缺失較為敏感。隨機森林(Random Forest)算法具備預測準確、魯棒性高、可操作性強等優點,且不會過擬合,已被廣泛運用于電力、金融、測繪等領域。
本文基于隨機森林算法構建一種客運量預測模型,并以某水陸聯運樞紐為例,將預測結果與三次指數平滑、多元回歸分析預測效果對比,結果表明基于隨機森林算法的預測結果更為精確,對水陸聯運樞紐及其他客運場站的客運量預測工作具有一定的參考價值。
1 隨機森林算法介紹
隨機森林算法基本步驟(見圖1)如下:劃分初始數據集為訓練集與測試集,用于訓練隨機森林預測模型及檢測預測結果;采取自展法(Bootstrap)抽樣對訓練集進行隨機有放回抽樣,形成n個子訓練集;針對每一個子訓練集生成一棵決策樹,每棵決策樹僅對子訓練集數據進行回歸分析或是分類;集成所有決策樹為隨機森林預測模型;向預測模型中輸入測試集數據,通過取均值的方式,從所有決策樹的預測結果生成隨機森林的預測結果。
2 客運量預測方法
2.1 預測思路
水陸聯運樞紐發展受諸多因素影響,單一方法的時間序列分析難以兼顧多種因素影響下的水陸聯運樞紐客運量變化情況。隨機森林算法在生成預測模型時,可同時處理大規模數據,且能夠對初始數據集中的所有自變量輸出特征變量的重要性進行分析。
利用隨機森林算法優勢,可盡可能多地選取與水陸聯運樞紐客運量變化相關的特征變量作為隨機森林預測模型的初始數據集;通過隨機森林算法構建初始預測模型,選取特征變量重要性指標,對所有的特征變量進行重要性分析,篩選出的重要特征變量即代表了對水陸聯運樞紐客運量影響較大的影響因素;依據特征變量重要性程度優選特征變量,形成預測數據集,以減小噪聲與異常值對預測結果的影響,提升預測精度;基于預測數據集重新構建隨機森林預測模型,并輸入測試集對預測結果進行驗證。
2.2 參數介紹
隨機森林預測模型中包含森林規模(ntree)和基回歸樹預選的特征變量個數(mtry)兩個參數,其中:ntree影響模型的泛化能力,決定了預測結果的方差;而mtry代表了樹生長的深度,影響了單個回歸樹的擬合程度,決定了預測結果的偏差。與傳統決策樹不同,基回歸樹不需要剪枝,主要通過上述兩個參數來控制隨機森林預測模型的生成,合適的參數能使隨機森林模型避免過擬合。通常運用袋外數據(OOB)估計對隨機森林預測模型的參數進行優選。
OOB估計是在Bootstrap抽樣的基礎上,以OOB樣本為驗證集,計算袋外錯誤率(OOB error,Err)表示隨機森林預測模型的泛化誤差。OOB估計是隨機森林泛化誤差的一個無偏估計,其結果近似于需要大量計算的k折交叉驗證。OOB估計過程如下:
假設數據集有S個樣本,運用Bootstrap抽樣在對數據集抽樣時,總是存在一定比例的樣本未被抽中,其中,比例P=(1 )S,當S→+∞時,P收斂于0.368,該部分樣本即為OOB樣本。隨機森林算法在預測客運量時,使用均差方來表示Err(E),公式如下:
式中: Nntree為森林規模; Nyear為子訓練集的樣本數; Ei為第i棵回歸樹的OOB估計值;yi為實際客運量; fOOB為使用OOB樣本的估計值。
2.3 預測函數
基于變量重要性分析篩選出的特征變量構成新數據集,運用Bootstrap抽樣,隨機抽取P個樣本、Q個特征變量,并重復以上操作K次,得到K個子訓練集。對子訓練集重新構建基回歸樹模型,并調整模型參數,便得到規模為K的回歸隨機森林。
集成隨機森林所有回歸樹的預測結果,以均值的形式輸出,即是通過隨機森林預測的水陸聯運樞紐客運量預測值。
式中: fK (x)為隨機森林模型預測結果; fK (x,SK)為單棵回歸樹的預測結果;x為需要預測的節點,算例中指代需要預測的年份;SK為子訓練集K。
2.4 重要性分析
為減少與樞紐客運量弱相關的特征變量對預測結果的影響,需要對初始數據集中的特征變量進行重要性分析,并篩選出符合預測精度要求的數據集。
隨機森林算法在回歸問題中處理重要性分析時,往往選用均方誤差降低比例(%IncMSE, M)。 M是基于OOB估計,隨機打亂一個特征變量值,重新計算新的E,然后計算模型準確度下降的百分比。第i個特征變量的重要性分析Mi計算式如下:
3 實例分析
3.1 獲取變量
選取某水陸聯運樞紐客運量相關數據,以客運量為目標變量,與目標變量相關的18個宏觀性社會經濟指標為自變量,部分變量見表1。選定2000―2019年作為研究區間,其中2000―2014年數據作為預測模型訓練集,其余數據為預測模型測試集。
3.2 優選參數
參數優選是確定隨機森林模型的前提,隨機森林算法在作回歸預測時,mtry值通常為自變量個數的1/3,應用到本算例中,初始數據集包含18個自變量,mtry數值宜取6,所以分別對mtry=5、mtry=6、 mtry=7進行OOB誤差估計分析(見圖2)。經隨機森林模型驗證,當mtry=6時,OOB誤差估計值總體水平較低,且當ntree值趨于500時,OOB誤差估計值最低且數值變化趨于穩定。由此為隨機森林初始模型確定參數mtry=6,ntree=500。
3.3 特征變量重要性分析
根據Pi指標對初始數據集中每個特征變量進行重要性分析。為便于顯示,將特征變量名稱用字母代替,各個特征變量Mi值見圖3。由圖3分析結果顯示,p(機場客運量)、m(城鎮居民可支配收入)和j(旅游收入)對預測結果較為重要,b(高校在校生人數)和d(相鄰水陸聯運樞紐客運量)對預測結果影響較小,其余特征變量重要性程度一般。
將特征變量按照Mi降序排列,依次疊加選取的特征變量形成變量優選數據組D={(p),(p,m),…,(p,m,…,d)},對每一個數據集參數優選,重復利用算法對D中各數據集進行準確度分析,最終得到不同特征變量組合的預測模型準確度。
由特征變量優選分析過程(見圖4)得知:當變量數目在1~5時,隨機森林預測模型準確度隨著變量數目遞增而顯著提升;當變量數目為13時,即固定投資總額增加值納入隨機森林預測模型數據集,準確度達到最大值97.39%;當變量數目大于13時,準確度下跌,說明有4個特征變量對水陸聯運樞紐客運量預測有干擾,應當刪除以提升隨機森林預測模型的準確度。因此,篩選出前13位特征變量作為預測數據集。
3.4 預測結果分析
在特征變量優選的基礎上,對新的數據集優選模型參數,利用隨機森林模型預測2015―2019年某水陸聯運樞紐客運量,并與三次指數平滑法和多元線性回歸法的預測效果進行對比(見圖5)。隨機森林模型預測結果較其他兩種預測方法的預測結果,與實際值偏差更小,總體更貼近實際值。
在3種預測模型的預測誤差對比(見表2)的基礎上繪制不同預測方法預測誤差箱線圖(見圖6)。由圖6可知:較三次指數平滑法與多元回歸法,隨機森林預測結果誤差均值最小,且箱線圖的中位數絕對值最小,體現隨機森林預測結果總體較準確;隨機森林預測結果的個體相對預測誤差均在10%以內,表示隨機森林模型對各年份的單點預測更接近實際值;隨機森林的箱線圖極值在可接受范圍內,說明隨機森林對異常值容忍性較好,誤差波動較為穩定。
綜上所述,隨機森林預測模型較三次指數平滑法與多元回歸法,在總體偏差、個體誤差及誤差波動水平方面表現較優。
4 結 語
水陸聯運樞紐客運量往往受多種因素影響,算例以某水陸聯運樞紐客運量為目標變量,選取多個與目標變量相關的因素作為預測的特征變量。通過隨機森林算法重要性分析得出,機場客運量、城鎮居民可支配收入及旅游收入3種特征變量與目標變量高度相關。
運用隨機森林算法預測水陸聯運樞紐客運量,不僅可以有效分析各影響因素對樞紐客運量的重要性程度,而且預測結果較為準確,可以作為水陸聯運樞紐發展與改革的理論支撐,有助于樞紐經濟更好更快地發展。