谷妙春
(南京理工大學 計算機科學與工程學院,南京 210094)
5G等技術的不斷發展促進了各類網絡服務的大量應用,這對網絡的性能及服務質量有了更高的要求。流量預測[1]作為網絡管理、調控的重要方式之一,利用數據流當前和歷史的流量狀態數據來預測下一時段的流量狀態[2]。準確的預測結果有助于優化資源配置,提高生產效率,實現供需匹配。
近年來,隨著機器學習的發展,許多學者使用遞歸神經網絡(RNN, recursive neural networks)模型預測流量[3-5]。相比于傳統的自整合移動平均自回歸模型[6-8]、廣義自回歸條件異方差模型[9-11]等預測方法,RNN通過捕獲流量序列的高維特征學習流量序列時序關聯性,避免了繁雜的函數擬合且具備更準確的預測效果。但傳統RNN存在梯度消失或爆炸問題,不具備長期依賴性[12]。長短期記憶(LSTM, long short term memory)作為RNN的變種克服了上述梯度問題,可應用于短期與長期的流量預測。目前基于LSTM的流量預測方法廣泛應用于各類生產活動中[13-15]。
大量的動力學研究表明,現實中的人類活動普遍遵循著一定的規律性[16],例如對某一固定區域而言,其流量的總體趨勢往往表現出一定的周期性,基于這種周期性可以知道下一周期內流量的大致趨勢,這對流量預測有著積極的意義。但同時具體的流量數值會受個體隨機活動影響表現出很大的不確定性,并且這種數值波動具有非平穩非線性的特點,這又為流量預測帶來了一定難度。從信號處理的角度分析,可以將實際的流量看成實際信號,總體的流量趨勢看成有用信號,流量的波動看成噪聲信號,實際信號即受噪聲信號影響圍繞有用信號波動。在LSTM預測中,通過對實際信號降噪,改善有用信號與噪聲信號的信噪比,從而有助于LSTM正確學習有用信號,使得預測結果最大程度貼合實際信號的變化趨勢,從而提高預測精度。因此在LSTM預測前需要對若干周期的原始流量進行降噪處理。
常見的信號降噪方法包括傅里葉變換[17]、小波變換[18-20]、經驗模態分解[21-23](EMD, empirical mode decomposition)等。相較于傅里葉變換與小波變換,EMD具備自適應性,無需選取基函數,可處理平穩與非平穩序列,克服了傅里葉變換與小波變換的局限性。但現有的EMD降噪方法多是基于單個信號的降噪:文獻[21-22]對EMD分解后的不同本征模態函數(IMF,intrinsic mode function)使用不同閾值降噪,但這種做法由于抑制了高于閾值的數值,會在一定程度上破壞實際信號的變化趨勢,不能使LSTM正確學習有用信號;文獻[23]基于高斯白噪聲統計平均為零的特性將一個含有高斯白噪聲的流量序列反復疊加不同隨機過程的高斯白噪聲以實現降噪。但這種做法由于不確定原始序列中高斯白噪聲的模值需要反復疊加,導致降噪效率低下,并且將任意噪聲視為高斯白噪聲只是一種“近似替換”,實際中的噪聲并不一定完全具有高斯白噪聲的統計特性,從而不一定能有效、正確抑制噪聲。在LSTM中使用EMD降噪訓練樣本也多延用上述EMD降噪思路:除了使用上述降噪方法外,文獻[24-25]基于互信息選擇部分由EMD分解后的IMF將實際信號重構進行預測,但這種做法仍存在趨勢破壞問題;文獻[26]使用某一樣本與其臨近的序列的平均值作為該樣本的降噪結果,但如果選取的臨近序列少會影響降噪效果,如果選取的臨近序列多同樣會破壞實際信號的變化趨勢。此外,上述LSTM預測方法多著眼于通過降噪訓練樣本提升預測準確性,但對訓練樣本的構造缺乏討論。考慮到序列的時間關聯性,上述的LSTM預測方法均采取滑動窗口連續的批量輸入樣本,這會導致長期預測中的誤差累積問題,因而只對中短期的預測結果較好。
事實上,每個LSTM訓練樣本中已經包含了噪聲的一次隨機過程,可將這些噪聲信號從訓練樣本中提取出來,通過分析這些噪聲信號確定噪聲的統計特性。因此,本文在降噪方法上提出一種基于噪聲統計的EMD降噪方法:在給定若干流量序列的情況下,將每一流量序列進行EMD分解,基于分解后各IMF的能量篩選出含噪較高的噪聲IMF,將這些IMF進行統計平均得到對應的降噪IMF,使用降噪IMF替換噪聲IMF再與非噪聲IMF重構流量序列實現流量序列的降噪,并將降噪后的流量序列作為LSTM訓練樣本。這樣既保留了原始流量序列的變化趨勢,又充分利用各個樣本中包含的噪聲,既無需事前知道噪聲的統計特性又具有較高的降噪效率。同時在訓練樣本構造上使用間隔采樣選取臨近數據與歷史同期數據,減少連續滑動窗口帶來的累積誤差。由此構成的LSTM預測模型稱為EMD-LSTM預測模型。此外,目前對無人機(UAV, unmanned aerial vehicle)的應用研究多是優化UAV的活動狀態或軌跡實現收益最大化[25],但對UAV何時返航充電的問題鮮有討論,文獻[27-29]均默認UAV電量耗盡時返航充電。本文將該預測模型應用于一種基于UAV卸載流量的蜂窩網絡,通過該預測模型分析UAV在長時間工作下何時返航充電可最小化服務中斷時間,提出一種基于EMD-LSTM的UAV活動規劃方法以完善當前對UAV完整活動流程缺乏討論的問題,同時具體說明流量預測如何有助于優化資源配置。
綜上,本文工作及創新點如下:
1)提出一種基于噪聲統計的EMD降噪方法,該方法相比于傳統EMD降噪方法無需獲取噪聲的先驗知識,避免因超參設置不當影響降噪效果,同時充分利用樣本中噪聲的隨機過程,具備較高的降噪效率。
2)使用基于間隔采樣的LSTM訓練樣本構造方法,減少預測中的誤差累積問題,提升中長期預測的準確性。
3)將該模型應用于一種基于UAV卸載流量的蜂窩網絡,提出一種基于EMD-LSTM的UAV活動規劃方法,以最小化服務中斷時間為目標優化UAV在長時間工作下返航的時間點。
EMD通過將一個序列分解為若干不同尺度的平穩波動項和一個殘差向的疊加,其本質是將非平穩序列平穩化過程。EMD分解中每一個平穩波動項稱之為一個IMF。對于每一個IMF,需滿足以下兩個條件:
1)IMF的極值點和過零點的數目相等或只相差一個。
2)IMF的上包絡線和下包絡線關于時間軸對稱,即兩條包洛線在每一個時間點處的均值為0。
假設蜂窩網絡在周期T內產生的流量序列為D(t),D(t)表示如下:
D(t)={D(1),D(2),…,D(T)}
(1)
將D(t)按如下方式進行EMD分解:
1)確定T內D(t)的全部局部極大值和極小值,通過三次樣條插值法求出D(t)的上包絡線U(t)和下包絡線L(t);
2)求出上下包絡線的中位線M(t),M(t)的表達式如下:
(2)
將D(t)減去M(t)得到準IMF分量ψ1(t),ψ1(t)的表達式如下:
ψ1(t)=D(t)-M(t)
(3)
3)判斷ψ1(t)是否滿足IMF條件,如果是,則ψ(t)為第一個IMF分量,記為imf1,如果不是,則對ψ1(t)依照D(t)做相同計算得出ψ2(t),判斷ψ2(t)是否滿足IMF條件或停止條件SD,如果是則ψ2(t)為imf1,否則重復上述步驟計算ψk(t),直到ψk(t)滿足IMF條件或停止條件SD,其中停止條件SD如下:
(4)
當SD小于預設的典型值時即可認為ψk(t)滿足IMF要求,一般典型值在區間[0.2,0.3]設置。
4)計算R1=D(t)-imf1,將R1作為新的待分解序列,重復上述步驟以此計算imf2,imf3,…,imfn,直到Rn為單調序列或常值序列。此時可以將序列D(t)表示為:
(5)
至此D(t)的EMD分解完成,需要指出的是先分解出的IMF分量為原始序列高頻分量,也是高噪部分,后分解出的IMF分量為原始序列低頻分量,伴隨著較低的噪聲,Rn為殘差項,反映出D(t)的總體變化趨勢。
EMD降噪的原理是通過計算各IMF分量的能量來劃分低頻分量與高頻分量,對含噪較高的高頻分量進行一定的處理以抑制其能量,從而實現降噪。對任意IMF,其能量的計算方式如下:
(6)
式中,imfk(t)表示t時刻imfk的值。顯然,k越大,即IMF分量頻率越低,E(imfk)越大。IMF能量從高頻到低頻存在突變,找到突變位置即可區分高頻IMF與低頻IMF。突變點K0的計算方法如下:
(7)
(8)
找出突變點K0后,對IMF高頻部分,即imf1,imf2,…,imfK0進行降噪,記降噪后的結果為φ(imf1),φ(imf2),…,φ(imfK0)。將降噪后的高頻部分與原始序列的低頻部分及殘差項進行重構,即可實現對原始序列D(t)的降噪。降噪結果φ(D(t))表示如下:
(9)
φ(imfk)的計算依賴于其它原始序列經EMD分解后的IMF。假設從該蜂窩網絡采集M個D(t)序列,記第m個D(t)序列為Dm(t),分解后的結果為imfk,m,則φ(imfk)與φ(Dm(t))的計算過程如下:
1)對M個D(t)序列依次進行EMD分解,得到Dm(t)分解結果為imf1,m,imf2,m,…,imfn,m。

(10)
式中,round(K)表示對K就近取整。此時任意樣本Dm(t)可以表示為:
(11)

(12)
4)將降噪后的高頻分量與Dm(t)中低頻分量和殘差項重構,可得Dm(t)的降噪結果為:
(13)
由此實現了對m個D(t)序列的降噪。
由于時間序列的連續性,常見的訓練樣本構造方法是采用滑動窗口輸入序列作為LSTM的輸入,但這種方法在預測長期數據時存在誤差累計問題。假設對于序列{D1(t),D2(t),…,DM(t)},窗口大小為θ,在訓練LSTM預測Dm(t)時輸入的訓練樣本為{Dm-θ(t),Dm-θ+1(t),…,Dm-1(t)}。這種輸入方法會導致LSTM在預測長期結果時會在短期預測結果的基礎上預測。例如預測DM+2(t),LSTM需要的輸入為{DM-θ+2(t),…,DM(t),DM+1(t)},而DM+1(t)是LSTM基于序列{DM-θ+1(t),…,DM-1(t),DM(t)}的預測結果,這會降低LSTM對DM+2(t)預測的準確性。
鑒于流量序列具有周期性的特性,可以采用間隔采樣的方式基于若干歷史同期數據構造訓練樣本。假設間隔尺度為ε,在訓練LSTM預測Dm(t)時可構造訓練樣本{Dm-θε(t),Dm-θε+ε(t),…,Dm-ε(t)}。這樣在預測未來多個周期的流量序列{Dm1(t),Dm2(t),…,Dmn(t)}時,使用間隔采樣法在預測Dmi(t)(1≤i≤n)時對應的輸入序列為:
{Dmi-θε(t),Dmi-(θ-1)ε(t),…,Dmi-ε(t)}
(14)
而使用滑動窗口法預測Dmi(t)時對應的輸入序列為:
{Dmi-θ(t),Dmi-(θ-1)(t),…,Dmi-1(t)}
(15)
與滑動窗口相比,這樣的間隔采樣方法在輸入序列長度不變的情況下盡可能減少使用LSTM預測結果再預測,從而減小累計誤差,提升預測準確性。
基于上述討論,本文提出一種基于噪聲統計特性的EMD降噪方法與LSTM結合的流量預測模型:EMD-LSTM模型。首先采集連續M個周期的流量序列D(t);其次對每一序列Dm(t)進行基于噪聲統計特性的EMD降噪,得到降噪后的訓練樣本φ(Dm(t));接著構造大小θ,間隔尺度為ε的序列構造LSTM中預測φ(Dm(t))的訓練樣本;最后將訓練好的LSTM用于預測未來周期的流量數據,其輸入仍為以同樣方式構造的間隔采樣序列。
假設某蜂窩網絡由1個宏基站、X個潛在熱區和X架UAV組成,每架UAV為一個潛在熱區卸載流量。考慮到所有潛在熱區在卸載流程上是等效的,這里以其中一個潛在熱區為例。簡化后的網絡結構如圖1所示。

圖1 蜂窩網絡結構
宏基站BS中存在一個緩存隊列Q以緩存潛在熱區U請求的數據,假設t時刻U請求的數據量為D(t),記Q(t)表示t時刻Q中的數據量。BS可使用一專線以固定速率Q0向U發送數據,同時當Q(t)+D(t)-Q0>0時可使用UAV以固定速率Q1發送數據,記ΔQ(t)=Q(t)+D(t)-Q0,則下一時刻Q(t+1)的表達式如下:
(16)
由于UAV續航有限,為了盡可能延長UAV的使用時間,當UAV在t時刻發送數據時,UAV應處于激活狀態;而當UAV在t時刻未發送數據時,UAV應處于休眠狀態。記a(t)表示t時刻UAV的活動狀態,a(t)=1表示UAV處于激活狀態;a(t)=0表示UAV處于休眠狀態。當ΔQ(t)≤0時UAV處于休眠狀態;當ΔQ(t)>0時UAV處于激活狀態。基于BS對U若干歷史周期流量序列的采樣,使用本文所提EMD-LSTM模型預測U未來一段時間的流量數據,根據ΔQ(t)的數值可以知道對應a(t)的取值,即當前時刻UAV是否應活動,進而結合式(16)可知所預測時間段內UAV的活動序列與隊列長度的序列。
記UAV的電池容量為C,UAV處于激活狀態伴隨著c1的電量消耗,而當UAV處于非激活狀態時由于其本身的懸停、移動也伴隨著c2的電量消耗。當UAV電量即將耗盡時,UAV需返回充電處充電。假設U距UAV充電處的距離為l,UAV的飛行速度為v,充電時間為t0。易知UAV往返充電處與U需要的最小時間tc為:
(17)
于是UAV的活動規劃方法如下:
步驟1:UAV更換好電池從充電處飛往U處待命。
步驟2:當UAV飛至U處時,記該時刻為零時刻。基于LSTM對D(t)的預測結果可知在未來τ時刻內UAV的活動狀態序列為{a(0),a(1),…,a(τ)}。考慮到UAV需預留返回充電處的電量,則UAV可為U提供服務的最大時間τ1滿足:
(18)
式中,1x表示當條件x為真時,1x=1,否則1x=0。
記該狀態序列中UAV首次激活的時間點為τ0。如果在[τ0,τ1+tc]時間段內存在某個時間點τ2滿足:
(19)
式中,τ2∈[τ0,τ1]。
式(19)表示UAV在τ2時刻后的接下來tc時間段內均處于休眠狀態,UAV可在此時間段內返回充電而不造成服務中斷,由此構成的滿足條件(19)的τ2的集合為R2;如果R2=φ,為了盡可能減少服務中斷,UAV應在[τ0,τ1+tc]時間段中選擇時間點τ3,這樣的τ3滿足其后的tc時間段內處于休眠的時間大于等于[τ0,τ1+tc]時間段中任意tc時間段內處于休眠的時間,即解方程:
(20)
式中,τ3∈[τ0,τ1],UAV可在τ3時刻返回充電。記方程(20)的解τ3構成的集合為R3。
步驟3:為了避免UAV頻繁往返充電,如果R2≠φ,取R2中的最大值作為UAV返回充電的時間點;如果R2=φ,取R3中的最大值作為UAV返回充電的時間點。記返回充電的時間點為τ4。
步驟4:對于UAV返回充電前的任意時刻t∈[0,τ4],當a(t)=0時,UAV處于休眠狀態;當a(t)=1時,UAV處于激活狀態并提供傳輸服務。
步驟5:當t=τ4時,UAV返回充電。
為了能真實反映現實生活中蜂窩流量的特性,仿真選取的數據集為WIDE骨干網中采樣點F于2021年5月1日至2021年6月30日采集的總流量數據[30]。該數據由MAWI Working Group與WIDE Project提供。該采樣點記錄了其上游網絡提供商每日的流量數據,采樣間隔為10分鐘。
基于數據集的實際意義,仿真中T=144代表每日流量數據;ε=1 008代表歷史每周同期流量數據;θ=1 008代表一周流量數據。其余參數為:Q0=300;Q1=150;l=3 000;v=3 000;C=120;t0=24;c1=2;c2=1。LSTM由一個輸入層、一個LSTM層、一個全連接層、一個回歸層構成。LSTM層有200個隱藏單元,解釋器為Adam,初始學習率為0.005,每迭代125次乘以因子0.2降低學習率。61個樣本中前56個樣本用于訓練LSTM網絡,后5個樣本用于測試,迭代次數為500。
圖2和圖3分別給出了不同工作日和休息日下每日采集的流量數據。

圖2 不同休息日的流量數據

圖3 不同工作日的流量數據
該數據集中每日的流量變化趨勢受人類休息日與工作日影響大致為兩種。根據圖1可知,在休息日中,流量不存在明顯的變化趨勢;在工作日中,流量存在一個大致在每日早9點至晚9點的流量高峰。同時,不同工作日與休息日下的流量大小與變化趨勢雖大致相同但存在明顯的波動。此外,除節假日因素外,休息日下的流量趨勢只可能出現在每周的周六或周日。實例表明流量具有周期性和高噪聲的特點。
圖4以5月1日的流量數據為例給出了文獻[19]、文獻[21]與本文所提EMD降噪方法的降噪效果:

圖4 不同EMD降噪方法的降噪效果
不難發現,只有本文所提EMD降噪方法獲得了比較理想的降噪效果,這是因為文獻[19]采用的閾值法只會對超過閾值的部分降噪,因而降噪效果有限;文獻[21]采用的基于高斯白噪聲統計特性的方法在面對非高斯白噪聲或未知統計特性的噪聲時,并未基于實際噪聲的統計特性降噪,因而降噪效果不理想。只有本文所提降噪方法無需獲取噪聲先驗知識,通過提取訓練樣本中的噪聲,分析其統計特性后降噪,獲得了相對理想的降噪效果。
圖5展示了以不同降噪方法的結果作為LSTM輸入并使用滑動窗口法構造訓練樣本時LSTM對6月25日至6月30日流量的預測結果。

圖5 滑動窗口下不同降噪方法預測結果
根據圖5可知,使用本文EMD降噪方法后的LSTM預測結果相較于使用傳統EMD降噪與未降噪的預測結果更接近真實流量。但三者在預測6月27日的流量時均認為流量趨勢為工作日而非休息日,這是因為休息日相較于工作日屬于偶發的短期事件,基于滑動窗口輸入訓練樣本時休息日的流量數據將作為短期事件被LSTM網絡“忘記”,因而這種樣本構造方式使得LSTM對未來每一天流量的趨勢預測均為工作日的趨勢。
而使用間隔采樣方法構造訓練樣本后LSTM的預測結果如圖6所示。

圖6 間隔采樣下不同降噪方法預測結果
根據圖6可知,使用本文EMD降噪方法后的LSTM預測結果依然優于傳統EMD降噪以及無降噪的預測結果,并且LSTM能正確預測6月27日的流量趨勢為休息日,這是因為對于每周日而言休息日屬于高頻的長期事件,即使其中混入部分工作日LSTM網絡也會將這些休息日下的工作日視為短期事件而“忘記”,因而能正確預測未來流量趨勢。因此本文提出的EMD-LSTM預測模型相比于傳統EMD-LSTM預測模型具備更好的預測效果。
為了量化不同方法的預測結果,本文選用平均絕對百分比誤差(MAPE, mean absolute percentage error)、均方根誤差(RMSE, root mean square error)評估不同方法下的預測結果與真實值之間的差異程度,結果如表1所示。

表1 不同方法的LSTM預測效果
綜上,本文所提EMD-LSTM預測模型相比傳統EMD-LSTM模型具備更優預測結果。
最后,圖7對比了6月25日至6月30日使用本文提出的UAV活動規劃方法與使用目前UAV電量耗盡即返航充電的傳統活動方法時Q的變化以及在使用本文提出UAV活動規劃方法而使用不同EMD-LSTM預測模型時Q的變化。

圖7 不同UAV活動方法對Q的影響
根據圖7可知,傳統的UAV活動規劃方法并未考慮UAV的后續使用問題,因而可能會在某些熱區存在時段因電量不足而返航充電,從而導致突發數據不能卸載,使得緩沖隊列中的數據量激增。即主要對應圖7中[235,265]時間段;而本文提出的UAV活動規劃方法則考慮了UAV后續的使用問題,選擇最大續航時間下可工作時間段中中斷時間最短的時間點返航充電以盡可能減少突發數據因UAV返航而無法卸載的問題,因而相較于傳統UAV活動規劃方法緩存隊列不存在激增的情況。雖然因為預測精度問題導致緩存隊列的使用頻率小幅上升,但總體而言使用本文所提UAV活動規劃方法不僅大幅減小了緩存隊列的平均長度,還可以在同等條件下使用更小的緩存隊列應對突發流量。而在同樣使用本文所提UAV活動規劃方法的前提下,使用傳統的EMD-LSTM預測模型因為不能準確預測未來的流量趨勢,因而不能準確控制UAV激活的時間點,從而會在某些需要UAV卸載流量的時間段因未激活UAV導致緩存隊列中存在較多的數據。分析數據可知,使用本文所提UAV活動規劃方法并結合本文所提預測模型所需緩沖區最小大小為806,平均隊列長度為22.11;使用本文所提UAV活動規劃方法但使用傳統預測模型所需緩沖區最小大小為1 416,平均隊列長度為38.92;而使用傳統UAV活動規劃方法所需緩沖區最小大小為2 079,平均隊列長度為65.70。因此本文提出的UAV活動規劃方法既降低了平均緩存隊列長度,又節省了緩沖區空間,結合本文所提EMD-LSTM預測模型,進一步強化了效果。
本文基于實際蜂窩流量具有周期性的特點,結合若干歷史周期流量數據使用LSTM預測未來周期流量。為了提高預測精度,提出一種基于噪聲統計的EMD降噪方法對訓練樣本降噪;提出使用間隔采樣的方法構造訓練樣本。此外,本文結合實例說明流量預測如何指導生產生活,通過本文提出的EMD-LSTM模型規劃UAV未來一段時間的活動狀態,從而選擇合適的時間段返航充電,減少UAV的服務中斷,提升了卸載性能。