劉旭峰,鐘志剛,賈元啟,王寧,,史文祥,馬家豪(1.鄭州大學(xué)信息工程學(xué)院,河南 鄭州 50001;.中訊郵電咨詢設(shè)計院有限公司鄭州分公司,河南 鄭州 50007;.河南省智能網(wǎng)絡(luò)和數(shù)據(jù)分析國際聯(lián)合實驗室,河南 鄭州 50001;.哈爾濱工業(yè)大學(xué),黑龍江 哈爾濱 609)
在網(wǎng)絡(luò)建設(shè)中,需要根據(jù)用戶數(shù)和業(yè)務(wù)量的預(yù)測進(jìn)行規(guī)劃設(shè)計,使網(wǎng)絡(luò)既能夠滿足業(yè)務(wù)發(fā)展的需求,又能合理控制建設(shè)成本[1],近年來,不限量套餐的推出使得業(yè)務(wù)量激增,在業(yè)務(wù)量激增的前提下能及時保證用戶的容量需求是容量優(yōu)化及規(guī)劃的關(guān)鍵,網(wǎng)絡(luò)容量的優(yōu)化工作受到了挑戰(zhàn)[2]。業(yè)務(wù)預(yù)測是指對未來一段時間內(nèi)業(yè)務(wù)量的預(yù)測,對業(yè)務(wù)預(yù)測算法的研究可以有效地在業(yè)務(wù)量激增情況下進(jìn)行容量優(yōu)化及規(guī)劃工作,另外,隨著5G時代的到來,業(yè)務(wù)預(yù)測算法有望在5G時代指導(dǎo)網(wǎng)絡(luò)優(yōu)化、規(guī)劃。
在當(dāng)前一波人工智能浪潮下,神經(jīng)網(wǎng)絡(luò)理論與實踐得到不斷發(fā)展,越來越多先進(jìn)的人工智能算法被應(yīng)用于工業(yè)與信息領(lǐng)域,為海量數(shù)據(jù)的分析和使用提供了便利。而每個小區(qū)都會記錄過去一段時間內(nèi)的業(yè)務(wù)數(shù)據(jù)情況,這為人工智能與業(yè)務(wù)數(shù)據(jù)的結(jié)合提供了基礎(chǔ)。
因此本文引入了當(dāng)前流行的時間序列預(yù)測算法:LSTM 算法和Seq2Seq 算法,并結(jié)合某小區(qū)7 個月內(nèi)的業(yè)務(wù)數(shù)據(jù)分別對下行PRB 平均利用率和空口總業(yè)務(wù)量進(jìn)行未來72 h、168 h及336 h的預(yù)測。
傳統(tǒng)的業(yè)務(wù)預(yù)測使用回歸方程法進(jìn)行預(yù)測,雖然精度有限,但在樣本數(shù)較少時仍能達(dá)到與機(jī)器學(xué)習(xí)算法近似的預(yù)測效果。但面對較大數(shù)據(jù)量的預(yù)測時,回歸方程法與機(jī)器學(xué)習(xí)算法相比便相形見絀。因此本文重點研究基于機(jī)器學(xué)習(xí)的業(yè)務(wù)預(yù)測。在業(yè)務(wù)預(yù)測的歷史發(fā)展中,同樣出現(xiàn)了很多其他算法,在文獻(xiàn)[1]中提出了一種基于單隱層神經(jīng)網(wǎng)絡(luò)的業(yè)務(wù)預(yù)測算法,其主要思想是將某城市200 個小區(qū)的前2 周的數(shù)據(jù)作為輸入,預(yù)測所有小區(qū)第3周的數(shù)據(jù)[2-5]。
一般而言,網(wǎng)絡(luò)流量具有高度自相關(guān)、隨機(jī)性和非線性等時間序列特征[6]。因此可以基于時間序列預(yù)測思想去進(jìn)行業(yè)務(wù)預(yù)測。本文主要進(jìn)行下行PRB 平均利用率及空口總業(yè)務(wù)量的預(yù)測。
在本文中,考慮到各個小區(qū)的業(yè)務(wù)趨勢不同,因此以小區(qū)作為訓(xùn)練和預(yù)測單位,并且考慮到每個小區(qū)在不同粒度上的周期性(例如在每天中的小時粒度數(shù)據(jù)具有一定的周期性,從年的角度來看也應(yīng)具有一定的周期性),由于數(shù)據(jù)不夠充足,只有7 個月內(nèi)小時粒度級別數(shù)據(jù),因此本文難以從年周期性去做長期多粒度的趨勢預(yù)測,只能去做小時粒度的短期內(nèi)的業(yè)務(wù)預(yù)測。
利用某小區(qū)2019-10-02—2020-04-30 的小時粒度下行PRB 平均利用率及空口總業(yè)務(wù)數(shù)據(jù)進(jìn)行缺失值處理,補(bǔ)償其數(shù)據(jù)缺失地方,便于后續(xù)預(yù)測,缺失值處理方法有多種[7],本文采用均值插補(bǔ)法,即取過去7天在該時刻的均值作為填充值。例如在2019-12-02 0 時的數(shù)據(jù)缺失,將其填充為過去7 天0 時的數(shù)據(jù)均值。該小區(qū)共計缺失數(shù)據(jù)96條,填充缺失數(shù)據(jù)之后該小區(qū)共計5 088條數(shù)據(jù),即212天,每天24 h的數(shù)據(jù)。
接著進(jìn)行數(shù)據(jù)的異常值處理,業(yè)務(wù)數(shù)據(jù)具有一定的周期性,在相似的時間段具有一致性,根據(jù)文獻(xiàn)[8],模擬其異常值判斷方法,要判斷某值是否為異常值,首先提取出前后3 天共6 天在同樣時刻的數(shù)據(jù),并求其均值與標(biāo)準(zhǔn)差,若當(dāng)前數(shù)據(jù)不在其(均值±5)×標(biāo)準(zhǔn)差之間,則視為異常數(shù)據(jù),若異常數(shù)據(jù)過大,則將其填充為(均值+5)×標(biāo)準(zhǔn)差,反之填充為(均值-5)×標(biāo)準(zhǔn)差。該小區(qū)的異常值占比約2%。其中過大異常值占總異常值約95%,說明該小區(qū)的下行PRB 平均利用率及空口總業(yè)務(wù)量峰值波動較大。
圖1 為數(shù)據(jù)處理后的下行PRB 平均利用率、空口總業(yè)務(wù)量與時間的關(guān)系圖。該小區(qū)下行PRB 平均利用率與空口總業(yè)務(wù)量之間的相關(guān)系數(shù)為0.95,可知下行PRB 平均利用率與空口總業(yè)務(wù)量之間呈強(qiáng)烈的正相關(guān)。
圖1 某小區(qū)7個月內(nèi)小時粒度業(yè)務(wù)數(shù)據(jù)圖
圖2 為2019-10-02—2019-10-09 下 行PRB 平均利用率數(shù)據(jù),從圖2 可以看出,從天粒度看,PRB 平均利用率雖然具有隨機(jī)性,但仍具有一定的周期性,另外總業(yè)務(wù)量圖與此類似便不再展示。
圖2 該小區(qū)7天下行PRB平均利用率圖
對于數(shù)據(jù)進(jìn)行訓(xùn)練集與測試集的劃分,將2019-10-02—2020-03-31 的數(shù)據(jù)作為訓(xùn)練集,將2020-04-01—2020-04-30的數(shù)據(jù)作為測試集。
歸一化處理可以將數(shù)據(jù)的值轉(zhuǎn)換為[0,1],并且可以加快神經(jīng)網(wǎng)絡(luò)的訓(xùn)練速度[9],因此本文將數(shù)據(jù)進(jìn)行線性歸一化處理。處理公式如下:
式中:
y——處理之后的值
x——處理之前的值
xmin——x中的最小值
xmax——x中的最大值
算法性能指標(biāo)用平均百分比誤差(mean absolute percentage error,MAPE)表示。MAPE計算公式如下:
式中:
n——樣本數(shù)
yi——第i個樣本的真實值
由于在未來若干小時業(yè)務(wù)數(shù)據(jù)的預(yù)測過程中,真實值較低時(如深夜較少人使用業(yè)務(wù)時)指標(biāo)意義不大,實際應(yīng)用中更關(guān)注忙時業(yè)務(wù)數(shù)據(jù)。因此本文采用一個啟發(fā)式性能指標(biāo),即對未來若干小時的業(yè)務(wù)數(shù)據(jù)的真實值求平均,只對真實值中大于上述平均值的點求真實值與預(yù)測值的MAPE,將每個樣本中的預(yù)測多個小時的MAPE值再次求均值得到該樣本最終性能指標(biāo)。將測試集的樣本均采用此法求該指標(biāo),再次求均值得LSTM模型的性能指標(biāo)。
文獻(xiàn)[10]中介紹了長短時記憶網(wǎng)絡(luò)(Long Short Term Memory,LSTM),圖3 為LSTM 的結(jié)構(gòu)圖。LSTM從根本上解決了循環(huán)神經(jīng)網(wǎng)絡(luò)[11](Recurrent Neural Networks,RNN)存在的無法處理長時間距離依賴的問題,但是LSTM 同樣也增加了網(wǎng)絡(luò)的復(fù)雜度,從而導(dǎo)致訓(xùn)練時間的延長。
圖3 LSTM結(jié)構(gòu)圖
當(dāng)進(jìn)行業(yè)務(wù)數(shù)據(jù)預(yù)測時,下行PRB 平均利用率和空口總業(yè)務(wù)量的特征尺度及預(yù)測尺度如表1所示。即設(shè)置預(yù)測尺度與特征尺度一致,例如在預(yù)測未來72 h的下行PRB 平均利用率時,就將過去72 h 的下行PRB平均利用率作為特征,未來72 h 的下行PRB 平均利用率作為標(biāo)簽去訓(xùn)練模型。訓(xùn)練模型時使用Adam 優(yōu)化器[12]。
表1 所用特征尺度及預(yù)測尺度說明
LSTM 算法應(yīng)用于下行PRB 平均利用率及空口總業(yè)務(wù)量的預(yù)測性能如表2 所示,其性能指標(biāo)即為上述啟發(fā)式MAPE值。該值越低表明對于業(yè)務(wù)量較大的值的預(yù)測越準(zhǔn)確。
由表2可知,對于未來72 h、168 h、336 h的業(yè)務(wù)數(shù)據(jù)預(yù)測啟發(fā)式MAPE 值大約都在24.2%。因此可以認(rèn)為采用此模型在對未來的業(yè)務(wù)數(shù)據(jù)進(jìn)行預(yù)測時,對于較大的業(yè)務(wù)數(shù)據(jù)預(yù)測誤差約為24.2%。
表2 LSTM算法用于業(yè)務(wù)數(shù)據(jù)預(yù)測性能
LSTM 模型對于不同尺度的下行PRB 平均利用率和空口總業(yè)務(wù)量的某些預(yù)測樣本如圖4 所示。從圖4中可以看出,此模型能準(zhǔn)確地預(yù)測出趨勢,較為準(zhǔn)確地預(yù)測出峰值,但也存在一定誤差。
圖4 LSTM模型于某些樣本結(jié)果圖
該模型所用特征尺度及預(yù)測尺度和所用性能指標(biāo)與上述LSTM模型完全相同。
一般來說,對數(shù)據(jù)取對數(shù)之后不會改變數(shù)據(jù)的性質(zhì)和關(guān)系,且所得到的數(shù)據(jù)易消除異方差問題,因此對模型使用數(shù)據(jù)取對數(shù)。接著再對數(shù)據(jù)進(jìn)行中心化處理。
文獻(xiàn)[13]介紹了Seq2Seq模型,該模型有2個部分組成,一個是用于讀取輸入序列并將其編碼為固定長度矢量,另一個是用于解碼固定長度矢量并輸出預(yù)測序列。Seq2Seq模型結(jié)構(gòu)如圖5所示。
圖5 Seq2Seq結(jié)構(gòu)圖
將LSTM 作為編碼器和解碼器使用,有利于提升模型解析度,從而在業(yè)務(wù)數(shù)據(jù)預(yù)測中提升預(yù)測精度?;贚STM 的Seq2Seq 模型應(yīng)用于下行PRB 平均利用率及空口總業(yè)務(wù)量的預(yù)測性能如表3 所示,其性能指標(biāo)仍為啟發(fā)式MAPE值。
表3 基于LSTM的Seq2Seq模型的預(yù)測性能
由表3 可知,對于下行PRB 平均利用率和空口總業(yè)務(wù)量的啟發(fā)式MAPE 值大概為27.7%,因此可以認(rèn)為采用此模型在對未來的業(yè)務(wù)數(shù)據(jù)進(jìn)行預(yù)測時,對于較大的業(yè)務(wù)數(shù)據(jù)預(yù)測誤差約為27.7%。
基于LSTM 的Seq2Seq 模型對于不同尺度的下行PRB平均利用率和空口總業(yè)務(wù)量的某些預(yù)測樣本如圖6所示。
圖6 基于LSTM的Seq2Seq模型于某些樣本結(jié)果圖
上述2種算法的優(yōu)點是從小區(qū)級別、多時間尺度、小時粒度去預(yù)測下行PRB 平均利用率及空口總業(yè)務(wù)量,可以做到對每個小區(qū)的業(yè)務(wù)數(shù)據(jù)預(yù)判。同樣這也是限制其性能的原因,因為直覺上從小區(qū)角度來看,業(yè)務(wù)數(shù)據(jù)每天波動較大,隨機(jī)性較大,預(yù)測也就相對困難。未來可進(jìn)行區(qū)域角度的實驗,即規(guī)劃一片區(qū)域,對該區(qū)域內(nèi)總業(yè)務(wù)數(shù)據(jù)進(jìn)行訓(xùn)練及預(yù)測,從區(qū)域角度去做這個實驗相信性能更佳,預(yù)測難度降低。因為直覺上來說區(qū)域越大隨機(jī)性相對較低,波動起伏較小,并且從基站規(guī)劃建設(shè)的角度看,同樣是大區(qū)域的指導(dǎo)意義更佳。
由于數(shù)據(jù)不充分的原因,只有小時粒度7 個月內(nèi)的數(shù)據(jù),若要進(jìn)行容量的長期規(guī)劃,則需要進(jìn)行多時間尺度多粒度的業(yè)務(wù)數(shù)據(jù)預(yù)測,此時則需要有多年的數(shù)據(jù)去進(jìn)行訓(xùn)練,使得算法可以學(xué)習(xí)到數(shù)據(jù)更粗粒度上的規(guī)律性以進(jìn)行多尺度多粒度的業(yè)務(wù)數(shù)據(jù)預(yù)測。該方向正是進(jìn)行容量長期規(guī)劃的關(guān)鍵,也是下一步的研究核心。
若進(jìn)行長期的預(yù)測,可以在現(xiàn)有模型的基礎(chǔ)上加上注意力(attention)機(jī)制,文獻(xiàn)[14]首次將注意力機(jī)制引入到自然語言處理領(lǐng)域,說明注意力機(jī)制對于時間序列預(yù)測算法有一定的性能提升。注意力機(jī)制的Seq2Seq模型如圖7所示。
圖7 注意力機(jī)制的Seq2Seq結(jié)構(gòu)圖
對于業(yè)務(wù)數(shù)據(jù)的預(yù)測任務(wù)來說,注意力機(jī)制的引入可以有效地選擇對輸出序列影響最大的輸入特征,從而增加預(yù)測精度。
還可以找一些可以輔助業(yè)務(wù)預(yù)測的特征來提高精度,例如一些關(guān)于時間的特征,月初、月中、月末、周末、五一、國慶、春節(jié)等。還有一些天氣特征可以進(jìn)行輔助訓(xùn)練以提高精度,例如溫度、濕度、大雨、小雨、晴天等。
本文意在拋磚引玉,提出將業(yè)務(wù)預(yù)測與現(xiàn)在流行的LSTM 及Seq2Seq 算法結(jié)合。未來在數(shù)據(jù)充足的情況下利用人工智能算法,從時間序列預(yù)測的角度進(jìn)行大區(qū)域多尺度多粒度的業(yè)務(wù)數(shù)據(jù)預(yù)測。
流量預(yù)測模型對未來移動通信網(wǎng)絡(luò)的擴(kuò)容建設(shè)與資源優(yōu)化分配具有重要研究意義[15]。本文將2種時間序列預(yù)測模型和某小區(qū)的業(yè)務(wù)數(shù)據(jù)進(jìn)行結(jié)合,從小區(qū)角度進(jìn)行訓(xùn)練,對多尺度小時粒度的業(yè)務(wù)數(shù)據(jù)進(jìn)行預(yù)測并取得較好的性能??梢詫ξ磥淼木W(wǎng)絡(luò)規(guī)劃設(shè)計,基站建設(shè)、容量優(yōu)化等工作提供參考。