張必浪,張倩,楊予光,耿書鵬(.北京航空航天大學,北京 006;.中訊郵電咨詢設計院有限公司,北京 00048)
流量預測是計算機網絡管理和優(yōu)化中的重要任務,其目標是分析和預測網絡中的數據流量,為網絡資源的規(guī)劃、調度和管理提供依據。近年來,隨著互聯(lián)網的快速發(fā)展和智能化應用的不斷增加,快速增長的用戶需求和網絡規(guī)模對當前的網絡基礎架構帶來了許多挑戰(zhàn)。流量預測是指根據過去的流量觀測數據,對未來一段時間內的網絡流量進行估計和預測。傳統(tǒng)的流量預測方法通常依賴于統(tǒng)計模型[1]和時間序列分析算法[2?3]。隨著以深度學習為代表的人工智能技術逐漸成熟,基于深度學習的流量預測算法逐漸成為研究的熱點[4?5]。然而,當前數據驅動的深度學習范式在復雜動態(tài)的網絡流量環(huán)境中存在模型功耗大、存儲成本高、算法難優(yōu)化等問題??紤]到人的快速學習能力是建立在對任務完備的背景知識之上,且有科學的公理系統(tǒng)支撐。因此,本文基于深度學習方法提出了一種基于領域知識內嵌的全流程框架,以實現(xiàn)快速精準的流量預測,從而實現(xiàn)更符合現(xiàn)實場景的網絡資源分配,為智能化網絡提供決策能力。
隨著互聯(lián)網技術的普及,網絡流量快速增長。根據中國互聯(lián)網信息中心發(fā)布的第47次《中國互聯(lián)網絡發(fā)展狀況統(tǒng)計報告》,我國網絡用戶數不斷增加,使用移動設備的網民比例高達99.7%,移動互聯(lián)網接入的流量也呈現(xiàn)快速增長趨勢[6]。然而網絡運營商如果長時間、大規(guī)模地維持如網絡基站與服務器等流量承載設施,將產生高昂的運營支出??紤]到大部分網絡在小時或日尺度上存在的繁忙間歇性與規(guī)律性,可以對周級的短期流量進行預測,幫助移動網絡運營商及時調整射頻資源的分配。因此,流量預測已成為移動網絡運營商降低運營成本,提升用戶體驗的重要任務。
圖1所示為本文所提出的基于領域知識內嵌的流量預測總體框架??紤]到流量數據存在的偶發(fā)性強、時域分布不確定性高的問題,本研究提出了基于JS 散度的數據分布檢測算法對原始數據中的時域和頻域異常數據進行清洗,以避免異常數據干擾模型學習。在模型設計的過程中,考慮到流量數據本身存在的自相似性、長時相關性、周期性等特點,本文設計了動態(tài)時域生成流量預測模型(GDTN)。GDTN 能夠在使用卷積生成網絡對流量數據進行去噪?復原的同時,自動分配同期多時域流量特征的重要性,以捕捉輸入流量數據中存在的規(guī)律變化的模式,提升模型的學習效率與預測性能。整體而言,本文提出的基于領域知識內嵌的流量預測框架通過綜合應用數據清洗、數據驅動的特征提取和領域個性化的模型設計等技術,能夠實現(xiàn)準確預測流量數據的目標。
圖1 基于領域知識內嵌的流量預測總體框架
JS 散度數據分布異常檢測算法的核心思想是以JS 散度衡量序列數據之間的距離,衡量2 個同寬度的相鄰或相隔一定天數的滑動窗口內的序列數據之間的距離,并應用孤立森林異常點檢測算法檢測數據分布發(fā)生明顯改變的間斷點。圖2所示為本文所提出的分布異常檢測算法,主要包括序列相似性度量、孤立森林異常檢測2 個部分,當孤立森林檢測算法判定異常且時域分布差異大于設定閾值2 個條件同時滿足時,判定為該數據存在異常。接下來,本文對該算法進行詳細介紹。
圖2 基于JS散度的數據分布異常檢測算法
2.2.1 基于JS散度度量序列相似性度量
一般的序列相似性度量方法往往基于歐式距離、形狀距離[7]或模式距離[8]將時間序列視為高維向量進行處理;然而,由于大量的偶發(fā)流量事件,使得流量數據異常頻發(fā)且異常流量往往高出正常流量幾個數量級,因此基于距離的相似度衡量算法并不適用于流量數據。為解決這一問題,本文提出基于JS 散度的序列相似性度量算法,將變動的時間序列視為某個模式在數據分布上的改變,將時間序列處理為高維概率密度函數,以對流量數據的整體概率密度分布進行度量,排除異常流量數據的干擾。下面對具體的運算過程與理論進行介紹。
為了方便描述,定義散度為:
在應用散度度量序列相似性時,需要應用KDE 核密度估計方法對序列的概率密度進行估計,以得到序列的概率密度函數,以度量時間序列之間的相似性。
2.2.2 孤立森林異常檢測算法
孤立森林是一種適用于連續(xù)數據的無監(jiān)督異常檢測方法,并且能夠根據給定數據的不同動態(tài)地確定異常分數,是一種全自動的異常檢測算法[10]。孤立森林的核心思想是通過遞歸地隨機分割數據集來查找哪些點容易被孤立;異常點則被定義為容易被孤立的離群點,也即分布稀疏且離密度高的群體較遠的點。在這種隨機分割的策略下,異常點通常具有較短的路徑。
為便于描述,定義異常分數為:
給定一個包含n個樣本的數據集,樹的平均路徑長度為:
其中H(i)為調和數,該值可以被估計為ln(i)+0.577 215 664 9。則樣本x的異常得分定義為:
其中,h(x)為樣本x的標準化路徑長度,E[h(x)]為樣本x在一批孤立樹中的路徑長度的期望。
孤立森林異常檢測算法的運算過程為:給定n個樣本數據X={x1,…,xn},特征的維度為d。為了構建一棵孤立樹,對于給定節(jié)點T,隨機選擇一個特征q及其分割值p對樣本進行分割,將q
a)樹達到了限制的高度。
b)節(jié)點上只有1個樣本。
c)節(jié)點上的樣本所有特征都相同。
在得到孤立樹后,可以計算不同樣本的異常分數,當c(x) →0時,樣本點x的異常分數s(x) →1。一般將異常分數大于0.9的樣本點視為異常點。
2.2.3 基于JS散度的數據異常分布檢測方案
檢測方案的核心思想是通過比較滑動窗口內數據的概率密度函數來計算距離,并利用JS 散度來度量數據分布的差異性。接著通過孤立森林異常點檢測算法,可以識別出距離數組中的異常點,從而進行數據異常分布的檢測。設定的閾值可以根據具體需求進行調整,用于篩選出具有較大差異性的異常點。
具體流程如下。
a)讀取一段時間序列的數據。
b)設置2 個相鄰的滑動窗口window1、window2 大小為s。若序列呈現(xiàn)明顯的周期性,設其周期為T個時間點,設置第3 個滑動窗口window3,大小為s,與win?dow2相隔T?1個時間點。
c)沿著時間序列以s為步長不斷地滑動window1、window2 和window3,并保持它們之間的時間間隔不變。
d)將window1、window2 和window3 內的序列數據分別進行統(tǒng)計分析,并利用KDE 核密度估計方法生成window1、window2 和window3 內序列數據的概率密度函數。
e)以JS散度方式定義序列數據之間的距離。
f)不斷重復步驟c)~e),直至序列數據末端,得到序列數據的距離數組。
g)利用孤立森林異常點檢測算法檢測距離數組中存在的異常點,得到預備異常點集合。
h)設置閾值,以距離數組中大于閾值的點構成異常點集合。
圖3所示為本文所設計的動態(tài)時域生成流量預測模型(GDTN),該模型由并行的自適應注意力元網絡與卷積生成網絡2個部分構成。下面對該模型的設計動機與重要技術點進行介紹。
圖3 GDTN網絡模型示意
2.3.1 自適應注意力元網絡
自適應注意力元網絡通過深度網絡學習不同天之間的重要分數,并根據重要分數構造注意力矩陣,使注意力機制在網絡流量任務上具備良好的可解釋性。自適應注意力元網絡主要由重要分數學習網絡與注意力矩陣推理網絡構成。其中,重要分數學習網絡net(X)可以由任意網絡替代。
a)重要分數學習元網絡。
(a)定義任意函數net(·) 滿足條件:net:Rn,m→{x|0 ≤x≤1,x∈Rn,m}。
(b)計算重要程度IS(X)=net(X)。
(c)對重要分數score進行有界壓縮:
其中,σ 為任意在實數域上具有上下界的函數,此處取常見的S型激活函數Sigmoid(x)=
b)注意力矩陣推理元網絡。注意力矩陣推理元網絡能夠根據重要分數學習元網絡得到的一個周期內每天的重要性,推理計算得到注意力矩陣。其計算流程如下:
(a)對net(X)得到的重要性分數IS′(X)廣播到指定維數:
(b)根據net(X)′求解注意力矩陣Attn(X):
(c)根據Attn(X)對不同天之間的流量數據進行加權求和,得到預測結果:
其中X′=unsqueeze(X,dim=3)。
2.3.2 卷積時域生成網絡具體設計方案
卷積生成網絡能夠將在圖像生成方面的優(yōu)秀表現(xiàn)遷移到流量預測任務之中,使得流量數據沿著編碼器網絡向生成器網絡流動的過程中,流量數據噪點被逐漸刪去,并引入符合數據輸入輸出分布的流量特征。卷積時域生成網絡由2次壓縮?生成過程組成,其中壓縮過程使用卷積神經網絡,生成過程使用反卷積神經網絡。具體來說,給定輸入流量序列X與第k次壓縮?生成過程的輸出Xk,卷積時域生成網絡模塊的計算過程如下:
2.3.3 模型集成
GDTN 流量預測方法由并行的卷積生成網絡與自適應注意力元網絡2個階段組成。通過將兩者進行加權求和實現(xiàn)網絡集成。
其中,w1、w2分別表示不同組塊的融合權值。
為驗證所提出算法的可行性,本研究收集了來自智能城域網接入路由器(MAR)上聯(lián)到匯聚路由器(MER)的1 000 個網絡端口的流量數據。本研究將該數據集中時間長度大于90 天的端口沿著時間維度進行訓練、驗證、測試集劃分,其中將倒數第1 個月的數據用作驗證集,倒數第2個月的數據用作測試集,剩余的數據用于訓練。不足90 天的數據僅用于測試和驗證,不參與訓練。為了綜合評估GDTN 流量預測模型的性能表現(xiàn),本研究選取了多種同類型時間需要預測模型在智能城域網數據集上進行對比實驗。這些對比模型分別是VTQRNN、LSTM、VAR、TCN和ResTCN。
如表1 所示,與傳統(tǒng)模型和近期的同類時序預測模型相比,GDTN 模型實現(xiàn)了10.081%的相對誤差控制,優(yōu)于目前模型的14.109%,同時GDTN 作為一種輕量模型設計,僅占用8.78 KB 的硬盤資源,有效減少了存儲成本,而且,GDTN 平均在1.92 s 內完成了單端口模型訓練,減少約2 s 的單端口訓練成本??偟膩碚f,GDTN 模型具有精準的相對誤差與絕對誤差控制、經濟的存儲資源占用以及高回報時間效用等特點。
表1 智能城域網數據集對比實驗
流量預測模型對未來移動通信網絡的擴容建設與資源優(yōu)化分配具有重要意義。本文通過重采樣與基于滑窗的JS 散度數據分布改變檢測算法對原始數據進行清洗,有效促進模型對正常數據分布的學習,并基于多時域流量數據進行方法上的創(chuàng)新,引入時間卷積的模式設計GDTN 流量預測模型,在長端口數據集上進行了預測并取得較好的性能,可以對未來的網絡規(guī)劃設計、基站建設、容量優(yōu)化等工作提供參考。