李笑雪,張思凝,王婭婭,苗夢凡
(沈陽航空航天大學電子信息工程學院,遼寧沈陽,110136)
移動互聯網飛速發展,移動流量呈現爆炸式增長,基站的流量預測問題變得越來越重要。為了改善這個問題,需要給基站增加載頻的數量來擴容,使基站可以承載更多的流量;另一方面,基站存在潮汐現象,使得在某些時段,用戶數量會大幅降低。由于基站數量巨大,無法通過人工實時關注每個基站的流量變化,故需要利用模型對基站流量隨時間變化的情況進行預測[1-3]。
目前已有大量研究將樹型算法應用于預測領域。極端隨機樹(Extratrees)模型處理非線性相關數據效果好,在預測超短時負荷過程中應用該模型取得了較好的效果[4]。文獻[5]應用了梯度提升樹預測寫字樓月度用電量,并與差分整合移動平均自回歸模型ARIMA、神經網絡模型LSTM 進行效果對比,取得了最佳效果。[6]利用裝袋算法將弱預測模型訓練成強預測模型序列,將Bagging 算法與FNN 算法結合,對日負荷進行預測。實驗結果表明模型可以有效地預測96 點日負荷數據,具有工程實用價值。Bagging 集成算法與指數平滑方法相結合的Bagging 指數平滑方法可以準確預測航空客運需求。模型評估結果表明,該方法優于其他傳統的時間序列預測方法[7-8]。為了提高模型的預測精度,采用Bagging算法對多個基學習器進行GPR 集成,最大限度地降低了噪聲信號的影響,并通過對比分析實驗,驗證了該方法較之人工神經網絡和支持向量機,預測精度更好。為提高白水河滑坡位移預測精度。[9]提出一種新的預測模型,利用融合了Adaboost 算法的模型對波動項進行預測,并驗證了模型在位移預測方面的優越性。[10]通過Boosting 集成學習構建了具有較高的預測精度的腫瘤藥物敏感性預測模型,并從生物學角度提供了模型可解釋性。
上述研究均表明樹型算法在預測方向的有效性,而樹型算法在短期流量預測領域應用較少,故本文將樹型算法應用于短期流量預測領域進行研究。
ExtraTrees 回歸器算法(ET)是一種集成算法。其基分類器使用全部樣本進行訓練,為增強隨機性,在節點分裂時隨機從M 個特征中選擇m 個特征,以基尼系數或信息增益熵選擇最優屬性進行分裂,分裂過程中不剪枝,直到生成一個決策樹(基分類器)。利用投票決策對所有基分類器統計產生最終分類結果。
ET 優于貪婪的決策樹,在小樣本上有更好的的平滑性,能有效降低偏差和方差。
當基分類器的數量M→∞時,對比其他基于樹的集成分類方法,ET 更連續光滑。從偏差和方差的角度看,模型的連續性使得目標函數平滑區域的方差和偏移較小,從而使得該區域的模型更加準確。
Gradient Boosting Decision Tree 簡稱GBDT,是一種提升的決策樹算法。該算法由多棵決策樹組成,所有樹的結論累加起來做最終答案。
回歸樹如式(1)所示。
Bagging 是基于自主采樣法下并行式集成學習的方式,個體學習器同隨機森林一樣,互不影響,自主采樣法是將含有m 個樣本的數據集先隨機的抽取出一個樣本,將抽到樣本放到采集樣里,之后再放回原來的集合中以保證該樣本在下次還有可能被抽到。經過m 次后,可以獲得一個包含m 個樣本的集合,這些樣本中,初始數據集中的樣本,有的會在采樣集中多次出現,有的出現次數為0。

采集T 個含有m 個樣本的集合并訓練出基學習器,再將這些學習器用結合策略結合起來,這就是Bagging 的基本思想。
Bagging 算法的基本過程:
對于給定訓練集D={(x1,y1),(x2,y2),...,(xm,ym)},訓練的次數為T,t=1,2,...,T 有:
①對訓練集進行第t 次采樣,共采集m 次,得到的采樣集有m 個樣本。
②用采樣集訓練第m 個個體學習器,如果預測的是分類問題,則從T 個學習器中使用投票法,投出票數較多的幾個類別,或者票數最多的某一個;如果預測的是回歸問題,則用T 個學習器得到的回歸結果進行算術平均得到的結果作為最終模型的輸出結果。
AdaBoost 是一種迭代算法,其核心思想是針對同一個訓練集訓練不同的分類器(弱分類器),然后把這些弱分類器集合起來,構成一個更強的最終分類器(強分類器)。
AdaBoost 是adaptive boosting 的縮寫,屬于boosting 集成系列算法。AdaBoost 既可以用于分類也可以用于回歸。當AdaBoost 用于分類時,它根據每次訓練集之中每個樣本的分類是否正確,以及上次總體分類的準確率,來確定每個樣本的權值。當AdaBoost 用于回歸時,則是根據回歸誤差率等參數來更新每個樣本的權重。本文采用AdaBoostR2 算法。
最終的強回歸器如式(2)所示。

本文采用的方法如圖1 所示,為了選擇進行流量分析的最佳模型,選用平均絕對誤差作為評估標準,用于衡量不同模型的預測準確度。即分別驗證ExtraTrees、Gradient Boosting、Bagging 和AdaBoost 四種樹型學習算法預測的準確性,通過平均絕對誤差(Mean Absolute Error,MAE)值衡量預測結果。MAE 的值越大,模型準確度越低。平均絕對誤差的計算公式如式(3)所示。

實驗引用的數據集為“2021 年MathorCup 大數據競賽”提供的“某小區上下行流量數據”。
實驗的硬件環境為主頻3.60GHz,內存32GB 的英特爾i9-9900KF 處理器和NVIDIA GTX 2080Ti 的GPU 計算顯卡,軟件環境為Python 3.6,TensorFlow 1.14.0。
使用ExtraTrees 回歸器算法對流量預測的結果如圖2 所示。從圖中可以看出,模型準確地完成了對實際數據的預測。
使用Gradient Boosting 算法對流量預測的結果如圖3所示。從圖中可以看出,模型完整地對實際數據進行了預測,并且模型的預測準確度較高。

圖3 Gradient Boosting
使用Bagging 算法對流量預測的結果如圖4 所示。從圖中可以看出,模型完成了對實際數據的預測,并且模型的預測準確度較高。

圖4 Boosting 回歸器預測結果
使用AdaBoost 算法對流量預測的結果如圖5 所示。從圖中可以看出,模型對實際數據預測的準確度較高,較完整地預測出流量的變化。

圖5 AdaBoost 回歸器預測結果
MAE 值如圖6 所示,由圖可知,ExtraTrees、GradientB oosting、Bagging、AdaBoost 的MAE 值依次為:0.00175、0.00132、00017、0.00144。其中GradientBoosting 模型MAE值最小,模型準確度最高,故本文將采用GradientBoosting模型進行流量預測。

圖6 四種算法的MAE 值
基于GradientBoosting 模型對流量的預測結果如圖7所示。藍色部分表示訓練值,黃色部分表示預測值,預測結果有較高的可靠性。

圖7 GradientBoosting 模型的預測結果
針對短期預測問題,本文利用MAE 比較了ExtraTrees、Gradient Boosting、Bagging 和AdaBoost 四種樹型學習算法在數據集上預測的準確性,實驗結果表明GradientBoosting 模型的MAE 值最小,模型準確度最高,故應用GradientBoosting 模型進行了短期流量的預測,有效的提高了預測準確度。