高躍衡,張 艷,石尚軒,羅吉祥
(上海理工大學光電信息與計算機工程學院,上海 200093)
2021 年是我國“十四五”規劃開局之年,“加快數字化發展”“完善基礎設施網絡”已成為“十四五”規劃的重中之重[1]。隨著現代通信科學技術的飛速更迭,目前已經發展出5G 乃至6G 的高速通信技術[2],讓生活變得更加便捷。但在通信技術發展過程中,也衍生出了移動通信基站潮汐效應問題,即網絡流量在一天的不同時段具有某種周期性的變化特征[3]。在流量使用高峰時段,通信基站[4-5]往往會處于超負荷運轉狀態,無線網絡較為擁堵,用戶上網體驗變差[6-7],此時運營商需要擴充基站的載頻數量以緩解擁堵,從而造成高能耗。相反,在流量使用低谷時段,如果仍按照高峰時段的標準配置基站載頻,通信基站的資源利用率就會變得很低,從而造成不必要的資源浪費。
為了避免網絡擁堵和資源浪費,采用合理的智能化算法以實現基站載頻數量配置的自動化、智能化、精準化、快速化,成為當前亟待解決的問題。
為了科學配置資源,對于通信基站流量配置常采用機器學習模型預測方法。目前,科研工作者已經從不同角度提出了以下幾類解決方案:
(1)利用線性模型進行預測。如:文獻[8-10]基于線性模型分別提出利用自回歸滑動平均模型(Autoregressive Moving Average Model,ARMA)、Switching 差分整合移動平均自回歸模型(Autoregressive Integrated Moving Average model,ARIMA)、模糊自回歸模型進行預測的方法。然而,通信基站流量往往不是線性的,并且較為復雜,利用線性模型預測不但精度不高,而且只能做短期預測。
(2)利用遞歸神經網絡進行預測。遞歸神經網絡可以用來模擬流量非線性變化。如:劉淵等[11]提出一種基于小波分析、自回歸網絡(Autoregressive Model,AR)和Elman 網絡的組合預測方法。Li 等[12]采用螢火蟲算法優化網絡的初始權值和閾值,再結合誤差反向傳播算法(Error Back Propagation Training,BP)對流量進行預測,預測結果相對更精確,但仍未達到理想效果。
(3)利用循環神經網絡(Recurrent Neural Network,RNN)進行預測。雖然遞歸神經網絡可以模擬實際流量的非線性變化狀態,但是由于遞歸神經網絡的形式是樹狀展開,因此捕獲時序特征的能力較弱。而對于通信基站流量,其最密切關聯的變量就是時間,因此有學者提出利用RNN,一種遞歸神經網絡的變體,它對時序特征的捕獲能力很強,且對時序信息具有記憶能力。長短期記憶網絡(Long Short-term Memory,LSTM)是RNN 的一種變體,其結構較RNN 更為復雜,有效地解決了RNN 梯度爆炸或梯度消失問題,且對于長期預測更為精確。Vinayakumar 等[13]在相同的誤差評價指標上對比RNN 和LSTM,分別對網絡流量作出預測,LSTM 明顯優于RNN。有學者將LSTM 與其他網絡或方法結合,提出改良LSTM,如:文獻[14-16]分別結合多通道方式和LSTM、自動編碼器和LSTM、改進粒子濾波算法(Particle Filter,PF)和LSTM。門控循環單元(Gate Recurrent Unit,GRU)是RNN 的另一種變體,其在LSTM 的基礎上簡化了部分結構,并保持精確的預測能力,使預測更加高效,且GRU 在通信基站流量預測問題上表現要略微優于LSTM。Ramakrishnan 等[17]對 比GRU 和LSTM 發現,GRU 較LSTM 預測更準確、速度更快,也更高效。Cao 等[18]結合CNN 和門控循環單元(Gate Recurrent Unit,GRU),使CNN 將流量學習為圖像預測交互式流量,GRU 預測純業務流量,其精確度及效率要高于LSTM。
但是,上述通信基站流量預測方法,大多是按照數據時序進行單向預測,只考慮了前一時刻和當前時刻的關聯,并沒有考慮到前一時刻、當前時刻和后一時刻之間的關聯,預測精度不夠高。因此,必須從提高精度著手進行深入研究。根據通信基站流量預測本質上是時間序列預測這一特征,再利用GRU 對于時間序列的敏感性特點,及其在長期預測較RNN 更精確且相對于LSTM 效率更高兩方面的優勢,進行流量預測算法研究。提出一種基于雙向門控循環單元(Bi-directional Gate Recurrent Unit,BGRU),對于通信基站流量具有良好記憶功能和更高精確度的預測模型。該模型在訓練時,將輸入序列從正反兩個方向同時進行訓練,將每個細胞的狀態值進行拼接,以保留雙向的邊緣信息。
算法整體流程如下:
(1)數據處理。對數據進行分組打亂和標準化處理。
(2)選取網絡。對比線性網絡、遞歸神經網絡、RNN、LSTM 以及GRU,綜合考量預測精度和實際情況發現,GRU在基站流量預測問題上的表現最好,但仍有提升空間。再考慮到時間序列的前后關聯性,提出基于BGRU 的基站流量預測網絡。
(3)訓練過程。訓練時采取Adam 算法,該算法使得梯度更新平穩并能處理稀疏梯度,更容易得到全局最優解。
(4)實驗驗證。設計參數調整實驗和對比實驗,參數調整實驗反映調整過程,對比實驗引入4 個網絡:LSTM、GRU、雙向長短期記憶網絡(Bi-directional Long Short-term Memory,BLSTM)和BGRU。采取GRU 和BGRU、LSTM 和BLSTM 作對比,反映雙向網絡在處理時序問題上精確度優于單向網絡。采取LSTM 和GRU、BLSTM 和BGRU 作對比,反映在基站流量預測問題上GRU 要優于LSTM。
2014 年,Chung 等[19]提出門控循環單元GRU 網絡,它在性能上與LSTM 不相上下,都能有效地對RNN 所產生的梯度爆炸或梯度消失現象進行抑制,兩者在不同的問題上會有不同的效果,需具體分析。但是相較于LSTM 的“三門”設計,GRU 比LSTM 的結構更為簡潔,計算效率要高于LSTM,GRU 在LSTM 的結構上進行簡化,GRU 只有兩個門控單元,分別是更新門與重置門。如圖1 所示,即GRU 結構圖。

Fig.1 Structure of GRU圖1 GRU結構
“更新門”與“重置門”的數學公式分別如式(1)、式(2)所示。

GRU 網絡將上個時刻的狀態信息ht-1和當前時刻的輸入信息xt各自通過權重Wz后,再拼接通過σ即Sigmoid函數得到這兩個門控單元的狀態,并記更新后的信息為zt,而重置后的信息為rt。
“重置過程”與“更新過程”的數學公式分別如式(3)、式(4)所示。

由式(3)可知,將重置后的信息rt與上個時刻的狀態信息ht-1相乘后,與xt各自通過權重W后進行拼接。隨后通過tanh 激活函數,將其范圍縮放在[-1,1]區間,得到候選值,包含對當前時刻信息的記憶情況,這就是“重置過程”。由式(4)可知,(1 -zt)代表遺忘程度,而其與上個時刻的狀態信息ht-1相乘后,則表示對上個時刻的信息相應程度上的遺忘,更新后的信息zt與候選值相乘,則代表了對當前信息相應程度上的記憶,最后將兩者拼接為當前時刻的輸出,即ht,這便為“更新過程”。
如圖2 所示,即單BGRU 的結構圖。BGRU 結構采用兩層GRU 在同一組數據上并行預測,兩層GRU 相互獨立,互不干擾。輸入X={X1,X2,X3,…,Xt}和狀態信息h={h0,h1,h2,…,ht}將依次輸入GRU 和GRU’,其中GRU 為前向層,GRU’為后向層,兩層的傳播方向相反,每個時刻各自都有輸出,分別包含前向信息和后向信息,最終拼接在一起作為該時刻的輸出Y={Y1,Y2,Y3,…,Yt}。因此,該輸出便保留了邊緣信息。

Fig.2 Single layer BGRU structure圖2 單層BGRU結構
盡管LSTM 或是GRU 都針對無法進行長時序記憶作出了修正方案,但隨著時序的延長,或多或少會遺忘一部分邊緣信息。因此,為了提升模型精度、盡量不遺漏邊緣信息,將采用三層雙向門控循環單元BGRU,結合一層全連接層Dense 進行基站流量信息預測。考慮到Tanh 函數區間在[-1,1],而上行流量并沒有負值出現,于是采取計算量更小且導數性質更優的ReLU 函數作為激活函數,式(5)為ReLU 函數的數學表達式。

損失函數采用均方誤差(Mean Squared Error,MSE),用來衡量預測值與真實值之間的偏差程度。每層選取32個神經元,且每層的合并方式選擇拼接concat。
BGRU 預測流程:
(1)數據處理。將數據按照一定時間長度劃分為各序列,將序列隨機打亂,保證訓練時的可靠性,隨后進行標準化操作,使訓練更高效且精度更高。
(2)數據輸入。將處理好的上行流量數據按照三維向量的形狀輸入到第一層BGRU 網絡內,其中第一維是所有數據的數量總和,第二維是按照一定時間間隔劃分好的所有時間序列的數量總和,第三維則是數據特征量,在此僅為上行流量。
(3)單層BGRU 處理。根據式(1)、式(2),正向GRU 通過1 時刻的輸入X1及0 時刻的狀態h0經過Sigmoid 函數得到“更新門”和“重置門”的狀態z1、r1。根據式(3),r1*h0和x1拼接,通過ReLU 函數得到狀態候選值。再根據式(4),時刻信息遺忘后的信息(1 -z1)*h0和1 時刻信息要記憶的信息拼接得到1 時刻的輸出h1。循環上述過程,直到得到所有時刻的輸出h={h0,h1,h2,…,ht}。同樣地,反向GRU 也與上述過程相類似,只是從序列的反向計算得到所有時刻的輸出。隨后將各時刻的正反向輸出進行concat 拼接,得到第一層BGRU 各時刻的輸出Y={Y1,Y2,Y3,…,Yt}。
(4)多層BGRU 處理。多層BGRU,即將步驟(3)重復多遍,得到更深層網絡,提取更本質的特征,采取3 層BGRU,即將步驟(3)重復3 遍。將第1 層BGRU 的輸出作為第2 層BGRU 的輸入,循環上述過程,最終第3 層BGRU的輸出只取其中正向GRU 的最后時刻輸出以及反向GRU最后時刻的輸出,進行concat 拼接。輸入進入Dense 層,整合后得到最終輸出。如圖3所示,即具體網絡結構。

Fig.3 3-layer BGRU network structure圖3 3層BGRU網絡結構
模型采取Adam 算法[20]進行訓練模型。對Adam 算法過程進行描述如式(6)——式(8)所示。

由式(6)可知,β1為指數衰減率,g為t時刻梯度,mt為梯度一階矩,此式可以看作是對歷史梯度求加權平均。根據式(7),β2為指數衰減率,g為t時刻梯度,vt為梯度二階矩,此式可以看作是對歷史梯度的平方求加權平均。而式(8)則是對變量進行更新,其中為lrt學習率,?是為了避免除數等于0以致出現數學錯誤而設定的一個常數。
Adam 算法引入了兩個關鍵變量,即梯度一階矩與梯度二階矩。梯度一階矩參照Momentum 算法,結合動量的概念,可以實現梯度更新時的穩定和平滑。梯度二階矩參照Rmsprop 算法,用來處理稀疏梯度。Adam 算法訓練時所需內存小,且需調整的參數較少,其在更新步長時會作出自適應調節,可以有效地讓梯度下降到全局最優解。
若不使用Adam 算法進行訓練,則不論是Momentum 算法、Rmsprop 算法抑或是Sgd 算法,都會有各自的缺點,帶來諸如收斂到局部最優或是收斂太慢等問題,而Adam 算法則綜合了諸多梯度下降算法的優點。
本文數據集來自于北京國測星繪信息技術有限公司http://www.satimage.cn/,其中包括眾多小區每小時的上行及下行流量數據,從2018 年3 月1 日至2018 年4 月19 日,共計50 天。取其中第186 號小區的上行流量作為研究數據,并按照4∶1 的比例將其劃分為訓練集和測試集,其中訓練集共有960 條數據,測試集有240 條數據。最后用2018 年4 月20 日至2018 年4 月24 日,共計5 天的數據作為未來數據,進行結果驗證。
首先將數據集中所有時間的上行流量總量N按一定的時間步長Timestep提取為一個長度為Timestep的時間序列Time(t)1,隨后重復此提取步驟得到一個數據序列Data{Time(t)1,Time(t)2,Time(t)3,...,Time(t)N-Timestep},然 后將此數據序列隨機打亂得到新的數據序列Data'{Time(t)p,Time(t)q,Time(t)r,...,Time(t)w},p≠q≠r≠w且皆為常數,且皆小于等于(N-Timestep)。
將所得新數據序列Data'按4∶1 的比例劃分為訓練集Train{Time(t)1,Time(t)2,Time(t)3,...,Time(t)N*0.8} 和測試集Test{Time(t)1,Time(t)2,Time(t)3,...,Time(t)N*0.2},將Train和Test按照式(9)進行標準化,可得標準化后的訓練集Train'和測試集Test',此時它們均值為0,方差為1。

其中,式(10)為均值表達式,式(11)為標準差表達式。

用R2評估模型預測正確率,L2 正則化參數選取0.01,訓練次數為600 次。在此基礎上,分別對學習率、時間步長及批次大小進行實驗分析和選取。
3.2.1 學習率調整分析
學習率是非常重要的超參數,它的選取決定著神經網絡的收斂速度和準確程度。若選取過大,會導致梯度徘徊在最優點附近并產生震蕩導致無法收斂;若選取過小,則會導致梯度收斂速度極慢且容易收斂到局部最優解。在時間步長為24、批次大小為256 的條件下,對學習率的選取展開實驗,學習率的選取通常以10 為倍數進行調節,選取0.1、0.01、0.001、0.000 1這4組數據進行實驗分析。學習率變化時,在訓練集和測試集上的損失值及R2的變化情況如表1所示。

Table 1 Experiment of learning rate adjustment表1 學習率調整實驗
可以看出,在學習率0.001 時,模型的預測性能最佳,因此選擇學習率為0.001。
3.2.2 時間步長調整分析
選取時間步長分別為2、6、12、24、36、48,在學習率確定為0.001、批次大小為256 的條件下進行訓練。時間步長變化時,在訓練集和測試集上的損失值及R2的變化情況如表2所示。

Table 2 Experiment of time step adjustment表2 時間步長調整實驗
可以看出,在時間步長為12 或24 時,模型性能達到最佳,綜合考慮訓練時間,選擇時間步長為12。
3.2.3 批次大小調整分析
選取訓練批次分別為16、32、64、128、256,在學習率為0.001 和時間步長為12 的條件下進行訓練。批次大小變化時,在訓練集和測試集上的損失值及R2的變化情況和單輪迭代所需時間變化情況如表3所示。

Table 3 Experiment of batch size adjustment表3 批次大小調整實驗
同批次大小的損失函數如圖4 所示,其中(a)、(b)、(c)、(d)、(e)圖依次為訓練批次為16、32、64、128、256時的損失函數。

Fig.4 Loss function for different batch size圖4 不同批次大小的損失函數
本文將以4 個評價指標對模型進行定量評估,分別是MSE、平均絕對誤差(Mean Absolute Error,MAE)、可決系數(Coefficient of Determination,R2)以及中值絕對誤差(Medi?an Absolute Error,MedAE)。
MSE 為預測數據和真實數據對應時刻數據誤差平方和的均值,MSE 越小說明預測效果越好,若MSE=0,則說明完全預測準確。其公式如式(12)所示,其中n為測試集總樣本數,為預測值,yi為真實值。

MAE 為預測數據和真實數據絕對差值之和的均值,其范圍是[0,+∞),同樣地,MAE 越小,說明模型具有越完美的預測效果。其公式如式(13)所示,其中n為測試集總樣本數為預測值,yi為真實值。

R2是解釋模型擬合程度的一個數值,其范圍為[0,1],越接近1,說明模型擬合程度越高,越接近0,則說明模型擬合程度越低,若R2=0,則說明完全預測準確。其公式如式(14)所示,其中n為測試集總樣本數為預測值為真實值的平均值,yi為真實值。

MedAE 為預測值與真實值絕對差值的中位數,MedAE越小,代表模型預測越準確,由于采用中位數的方式,因而此評價指標不易受個別跳躍點的影響,更具穩定性。其公式如式(15)所示,其中n為測試集的總樣本數,為預測值,yi為真實值。

為了驗證所提BGRU 算法相對于其他常見模型在基站流量預測問題上的有效性,將在相同超參數的前提下,選取GRU、LSTM、BLSTM 分別與BGRU 作比較。BGRU、GRU、BLSTM、LSTM 的預測值和真實值分別在MSE、MAE、R2、MedAE 上的評估結果如表4所示。
BGRU、GRU、BLSTM、LSTM 在測試集中隨機抽取連續100 小時的預測值和真實值的比較結果如圖5 所示,其中(a)、(b)、(c)、(d)圖分別為BGRU、GRU、BLSTM、LSTM。

Table 4 Comparison of model prediction effect on test set表4 模型在測試集上的預測效果比較
從表4 和圖5 不難發現,對于基站流量預測問題,BGRU 和GRU 的各項參數都分別優于BLSTM 和LSTM,這表明GRU 模型的整體表現要優于LSTM 模型。同時可以得出,BGRU 和BLSTM 的各項參數都分別優于GRU 和LSTM,這表明雙向網絡的整體表現要優于單向網絡。

Fig.5 Prediction of different models on test set圖5 不同模型在測試集上的預測情況
對BGRU、GRU、BLSTM、LSTM 這4 種模型,分別在未來5 天,共120 小時的數據上進行預測,如表5 所示,分別在MSE、MAE、R2、MedAE 作出評估結果。

Table 5 Comparison of model prediction effect in the future data表5 模型對未來數據的預測效果比較
BGRU、GRU、BLSTM、LSTM 在未來5 天數據上的預測值和真實值的比較結果如圖6所示,其中(a)、(b)、(c)、(d)圖分別為BGRU、GRU、BLSTM、LSTM。
綜合考量表4、表5 和圖5、圖6,雖然在未來數據上,模型精度較測試集略低。但是發現無論是在測試集還是在未來數據上,相較于對照的3 個模型,BGRU 不僅具有更高的精度,而且更具穩定性,因此最終選擇BGRU 作為流量預測網絡。

Fig.6 Prediction of different models in the future data圖6 不同模型在未來數據上的預測情況
本文針對通信基站流量調配不合理問題,提出了一種基于雙向門控循環單元BGRU 的預測方法。該方法首先將數據按12 小時的時間長度分組并打亂,再作標準化處理;然后輸入網絡的數據將進入第一層BGRU,數據分別經過正向時序GRU 與反向時序GRU 并進行獨立處理,在每個時間點得到來自于兩個方向GRU 的不同輸出,而后進行拼接操作,再作為輸入,送入下一層BGRU。經過3 層的BGRU 處理后,取最后一層網絡的兩個方向各自最后時刻的輸出,進行拼接操作后作為預測結果。從北京國測星繪采集了約8GB 的小區上行流量數據,選取適當的超參數以使損失函數收斂到最優狀態,選取GRU、BLSTM、LSTM 3個神經網絡進行實驗比較,在測試集上驗證該方法在通信基站流量預測問題上的優越性?;凇熬W絡自身結構特點”和“單、雙向網絡”兩個不同角度進行綜合比較分析發現,在“網絡自身結構特點”方向,GRU 網絡整體優于LSTM網 絡,其 中BGRU 的R2比BLSTM 高0.087、GRU 的R2比LSTM 高0.117,而在“單、雙向網絡”方向,雙向網絡整體優于單向網絡,其中BGRU 的R2比GRU 高0.049,BLSTM 的R2比LSTM 高0.079。再通過5 天的未來數據進行驗證,整體精度較測試集有所下降,但BGRU 仍為最優。綜合考量后,選擇表現最優的BGRU 作為預測模型。相對于傳統的RNN、LSTM 等預測方法,此方法具有更高效、更準確的特點。
此方法可以針對不同小區個性化地提出不同的流量預測模型,在兼顧準確性的同時,可以實現一定程度上的流量配置自動化,節省人力成本。如此,資源將得到更合理的分配,并不會過多配置造成浪費,也不會過少配置造成網絡堵塞。此算法也能夠推廣至與時間序列相關的預測問題,例如對城市交通流量、心電圖、水文流量等的預測。但是,該算法仍有改進空間,未來工作會將注意力機制與BGRU 相結合,對周期性的尖峰和低谷數據配置更高的權重,令其得到更多關注,從而進一步減小預測誤差。