李 松,周亞同,池 越,何靜飛,張世立
河北工業(yè)大學 電子信息工程學院,天津300401
網絡流量預測是網絡管理和流量業(yè)務的基礎,對于控制、優(yōu)化網絡上的各種資源起著至關重要的作用。精準的網絡流量預測可以幫助管理者設計網絡擁堵控制策略,合理進行資源分配與調度,保證網絡的流暢度,提高網絡資源的利用率[1-3]。近年來提出了越來越多針對網絡流量的預測模型和方法。
針對網絡流量序列,許多學者采用線性預測模型。一般廣泛使用自回歸(AR)、滑動平均(MA)及其改進模型預測。如:黨小超等[4]以時間點為基礎,建立多元線性AR 模型預測網絡流量。段智彬等[5]采用分段自回歸滑動平均(ARMA)模型預測網絡流量。陳曉天等[6]進一步改進將差分自回歸求和滑動平均(FARIMA)模型引入網絡流量的預測中。張鳳荔等[7]依據網絡流量的自相似和平穩(wěn)性特征,分別采用ARMA模型、差分自回歸滑動平均(ARIMA)模型和FARIMA模型預測。
此外還有學者采用非線性模型預測網絡流量。其中神經網絡(NN)、支持向量機(SVM)、灰色模型等應用十分廣泛。Wei[8]提出了一種基于改進的引力搜索算法優(yōu)化的徑向基函數(RBF)神經網絡模型預測網絡流量。Gowrishankar等[9]基于循環(huán)徑向基函數網絡(RRBFN)和回聲狀態(tài)網絡(ESN)進行網絡流量預測,準確率可達96%以上。劉杰等[10]采用BP神經網絡模型對網絡流量預測。Liu 等[11]結合SVM 和混沌理論對網絡流量預測。殷榮網[12]采用參數優(yōu)化的SVM 算法預測網絡流量。劉淵等[13]將最小二乘支持向量機(LS-SVM)應用于貝葉斯框架下對分解的網絡流量序列預測。此外,還有許多學者的研究基于灰色理論。Jiang 等[14]利用灰色模型對網絡流量建模預測。曹建華等[15]在GM 模型的基礎上提出了改進殘差的灰色模型預測網絡流量。
上述模型在預測過程中雖然取得了不錯的效果,但仍存在一定不足。對于ARMA 等線性模型,隨著網絡復雜度的增加,網絡流量特性已經超出傳統意義上認為的泊松或者Markov 分布[16],因此利用線性模型進行預測存在理論上的不足,很難保證預測的準確性。對于非線性模型,神經網絡容易陷入局部最小點,網絡結構難以確定。SVM 雖然需要的樣本數小,但其關鍵參數很難確定且無法輸出置信區(qū)間。而灰色模型只適合數據變化不劇烈的情況。GPM 模型是在GP 模型基礎上發(fā)展起來的模型,兼具人工神經網絡和支持向量機等傳統模型的優(yōu)點,不僅具有良好的泛化能力且能夠輸出置信區(qū)間[17]。因此本文采用GPM模型對網絡流量進行預測。
GPM 模型是針對GP 模型對于多模態(tài)序列擬合效果不夠好的缺點提出的一種混合模型,其中每個組分用一個GP 刻畫。GPM 模型對樣本依概率劃分時首先設定一個隱變量Z 作為樣本的標簽集合。本文采用多項式分布的門限函數生成隱變量zi。即:
πic為各樣本按照各自概率的分布列。則輸入樣本X ,輸出樣本Y 和隱變量Z 之間的關系如下:
其中,c 為GPM模型中混合成分的總個數,c=1,2,…,C 表示第i 個樣本屬于第c 個GP分量。接下來,設隱變量Z=[ ]z1,z2,…,zN,輸入樣本與輸出樣本間總的分布為:
其中mc和Sc分別表示第c 個GP分量的均值和協方差函數。本文采用平方指數協方差函數[18-19]。 K 為核函數k 的矩陣形式。因此第c 個GP分量的超參數集合表示為對于輸入時間序列的不同區(qū)域,用不同參數的GP模型刻畫,從而更好地體現出時間序列的多模態(tài)特性。
在GPM 模型中,參數學習采用的是一種分類迭代學習算法。如圖1所示,此算法關鍵是求出隱變量Z 的后驗概率以保證將樣本高效分配,從而通過最大似然估計得到學習樣本參數。具體步驟如下:
步驟1 輸入學習樣本,通過K-means算法將這些樣本聚類,當作樣本最原始的分配,并將分配的結果記錄在標簽zi中。
步驟2 針對每一組GP 分量。采用最大似然估計(MLE)計算出它們的參數估計值。各分量比例系數、均值、協方差和核參數的計算如下所示:
步驟3 按照最大后驗概率準則,重新對學習樣本進行分組,并將分配結果記錄在標簽zi中。即:
步驟4 若重新分組的結果與上次相同,則終止并輸出學習參數和樣本標簽Z。否則,返回步驟2重新迭代。
圖1 GPM模型學習算法流程圖
參數學習結束后,給定新的測試樣本X*,同樣依據最大后驗概率準則將其分配到指定的組別中。然后通過以上算法最后一次迭代計算出的GP 分量參數,根據GP模型預測表達式即可獲得測試樣本的預測值Y*。
本實驗數據來源于某互聯網服務提供商收集的兩段網絡流量序列,分別記錄了兩個不同地區(qū)網絡流量的分時使用情況,如圖2所示。其中序列一記錄了從2005年7 月7 日到2005 年7 月31 日共25 天采樣間隔為10 min的7 386個數據;序列二記錄了從2004年11月到2004 年12 月采樣間隔為15 min 的3 000 個數據。網絡流量序列反映的是人們對流量的使用情況,受人們工作與生活規(guī)律的影響。由圖2可知,網絡流量序列在不同時間段呈現不同的變化規(guī)律,存在時段差異性,即多模態(tài)特性。例如對于以“周”為周期的網絡流量序列,周一到周五為工作日,設備運行、人員工作等對網絡流量需求巨大。而周六和周天為休息日,消耗的網絡流量將減少。因此一周內不同時間段的網絡流量使用情況不盡相同。其次對于以“天”為周期的網絡流量序列,網絡流量的使用會隨著人們作息時間而起伏,且分布規(guī)律各不相同。如對于網絡流量序列一,周一至周五序列和周六、周天序列分別具有很強相似性;當前周序列與前幾周序列具有很強相似性。整個序列反映出了此地區(qū)流量的使用具有明顯的周期性;對于網絡流量序列二,周一至周五序列和周六、周天序列仍分別具有各自周期性,但以“天”為周期的流量序列差異較大,尤其表現在前兩周的序列中。因此網絡流量序列二的規(guī)律性相對較弱。
對于這兩段以“周”或“天”為周期的網絡流量序列,用單個GP模型難以很好刻畫其不同時間段間的細微差異。因此,本文提出用高斯過程混合(GPM)模型預測網絡流量。其思路是首先基于網絡流量序列構建學習樣本集,然后將樣本集進一步細分成多個樣本組,對每個樣本組分配一個GP模型進行學習預測。這樣既能通過大規(guī)模的GPM 協方差矩陣分解簡化參數學習過程,又精確刻畫了網絡流量不同時間段間的差異,提高了預測準確度和速度。因此將GPM模型用于網絡流量預測可以較好反應網絡流量序列內部特性,從而使預測更加準確高效。
為了更好地展示兩段序列的規(guī)律性和GPM模型對不同規(guī)律網絡流量序列的預測能力,本次實驗分別選取兩個序列中的前1 600 個數據構建樣本集。其中,序列一選取前600 個作為學習樣本,后1 000 個作為測試樣本;序列二選取前950 個作為學習樣本,后650 個作為測試樣本。
由于網絡流量序列為真實采集的實驗數據,不可避免會存在奇異值問題,需要對其進行歸一化處理。處理后的數據將落在(0,1)區(qū)間上。這樣在很大程度上消除了量綱影響,減小了因奇異值而造成的誤差。歸一化完成后,需要將網絡流量序列轉化成可應用于高斯過程混合模型回歸預測的序列對。本文基于相空間重構理論[20-21],目的是將網絡流量序列信息在高維空間中充分展現出來。在重構過程中,合適地嵌入維數d 和時間延遲τ 對于預測結果具有重要意義。它們不僅可以在高維空間中充分展現出網絡流量序列的信息,以便GPM模型獲得更高的預測精度,而且還不易引入過大噪聲。由于假近鄰法和自相關法獲取d 、τ 時比較耗時,本文通過建立( )d,τ 二元組,采用網格遍歷法取值,通過評價指標得到最優(yōu)的d 和τ。
為了展示GPM 模型預測效果的好壞,本文采用以下兩個評價指標:
圖2 網絡流量序列
其中,yp( i )為預測值,yt( i )為真實值,ym為預測樣本均值。 RMSE 為均方根誤差,對過大或過小誤差較靈敏,能夠反映模型的預測精度,RMSE 越小表示預測效果越好。 R2為決定系數,反映了模型的擬合程度,R2越大表示預測效果越好。
GPM 模型用于網絡流量預測時,主要待求參數為模態(tài)數C,相空間重構的嵌入維數d 和時間延遲τ。它們的好壞直接影響著GPM模型預測準確度。本文采用網格遍歷法獲取最佳參數。首先固定C 不變,d 從1到8,τ 從1 到6 遍歷取值,通過比較RMSE 和R2大小選擇出最佳的d 和τ,結果如圖3。
如圖3 所示,參數d 取7、τ 取1 時的RMSE 值最小,R2值最大,由此可知在較大嵌入維數d 和較小時延τ 下模型的預測準確度最優(yōu)。在此參數取值的前提下,設置模態(tài)數C 從1 到6 遍歷取值,通過比較RMSE 和R2大小選出最佳的模態(tài)數C,結果如圖4。
圖4 RMSE、R2 隨C 的變化取值
如圖4 所示,模態(tài)數C=2 時,RMSE 值取得最小,R2值取得最大,此模態(tài)下的預測效果最佳。在獲得模型最優(yōu)參數后,對網絡流量序列一預測,得到圖5 所示的預測結果。圖5(a)中紅色星線為預測值,藍色曲線為真實值。從圖中可以看出真實值曲線與預測值曲線的貼合度很高,表明GPM 具有較高的預測準確度。圖5(b)為網絡流量序列一真實值與預測值對比點狀圖,橫、縱坐標分別表示網絡流量序列一真實值和預測值。圖中藍色點越接近主對角線說明預測效果越好。紅色直線為藍色點擬合直線,坐標方程y=0.987 8x+0.003 2,與主對角線方程y=x 非常接近,證明GPM模型的預測結果非常可靠。
圖6給出了網絡流量序列一預測置信區(qū)間圖,對預測不確定性范圍給出了定量限制,更好地表示了網絡流量預測結果可信性。其中藍色曲線代表置信區(qū)間的上界,紅色曲線代表置信區(qū)間的下界。由圖可以看出,在曲線的上升和下降部分置信區(qū)間的貼合度十分緊密,表明此部分的預測可靠性高、效果好。在曲線拐點部分,由于此處數據抖動幅度較大,平穩(wěn)性較差,貼合度弱于上述兩部分,GPM模型的預測可靠性稍弱。
GPM模型優(yōu)勢是采用多個GP模型來刻畫數據,而網絡流量序列隨著時間變化存在著時段間的差異。為了更好展示GPM 模型的預測效果和網絡流量序列的特性,圖7給出了測試樣本多模態(tài)預測效果展示。圖中不同顏色的點代表了網絡流量不同模態(tài)的數據劃分。圖7(a)為C=1 時模態(tài)效果圖,此時GPM 模型退化為GP 模型。圖7(b)為C=2 時模態(tài)效果圖,由圖5 可知,此時RMSE 最小,R2最大,預測效果最佳。由于工作日晚上和周末屬于人們休息時間,網絡流量的使用相對較少,用紅色模態(tài)來描述。而工作日的白天人們處于工作狀態(tài),大量的互聯網設備消耗著巨大的網絡流量,因此藍色模態(tài)對其進行了很好的描述。圖7(c)中C=3時,對非工作日狀態(tài)下網絡流量使用的高、低峰值進行了模態(tài)劃分。圖7(d)中C=4 時,則又加入了對工作日中網絡流量使用高、低峰值的模態(tài)劃分。相比于C=2模態(tài),C=3 和C=4 模態(tài)的擬合效果細碎,反而整體的預測精度略低于C=2 模態(tài)。
圖5 網絡流量序列一預測結果
圖6 網絡流量序列一預測置信區(qū)間
圖7 網絡流量序列一在不同模態(tài)下的預測結果
為了更好地表現出GPM 模型的優(yōu)勢,在不同參數下將GPM模型與傳統模型分別用于網絡流量序列一預測。本文選取的傳統模型為SVM、核回歸(KR)、最大最小概率機回歸(MPMR)和單個GP模型。其中SVM[22]是一種非常典型的機器學習模型。它基于結構風險最小化原則,通過有限個學習樣本獲得最小的預測誤差,已廣泛應用于風電功率、網絡流量、股市預測。KR[23]是一種基于核的預測模型,通過設置核函數作為權值的分布函數并優(yōu)化核參數,得到誤差最小的最佳預測結果,一直作為預測模型的基礎。MPMR[24-25]對于序列分布不需要提前假設,是在最大化預測值介于實際回歸函數某個界的最小概率下建立起來的模型,對于非線性時間序列具有良好的預測效果。GP模型是GPM模型的基礎,也廣泛用于單一模態(tài)的時間序列預測。表1通過選擇8組不同的d 和τ 組合,對比SVM、KR、MPMR、GP 和GPM模型對網絡流量序列一的預測效果。
由表1 可以看出,通過比較RMSE 和R2,GPM 模型在網絡流量序列一中的預測效果均好于其他四種模型。此外,通過對比發(fā)現隨著d 的增加和τ 的減少,模型的預測效果越來越好。在d=7、τ=1 時RMSE 取得最小值為0.020 9,R2取得最大值為0.994 0。
表1 網絡流量序列一的五種模型預測對比
如圖8 所示為抽取一個周期區(qū)間上的五種模型預測誤差對比曲線圖,通過對比可以更直觀地表現五種模型預測細節(jié)與能力。為了更清晰地展示曲線效果,圖8(a)~(d)區(qū)間大小均為35。其中紅色曲線為GPM模型預測誤差曲線。在多數情況下,無論在波峰處或波谷處,GPM預測誤差值都要優(yōu)于其他模型,整體預測效果最優(yōu)。
圖8 五種模型部分區(qū)間預測誤差對比
與網絡流量序列一預測相同,本實驗同樣采用網格遍歷法取得最佳參數d=5,τ=1,c=2。然后將GPM模型用于網絡流量序列二預測,得到如圖9所示預測結果,表明GPM模型仍取得良好的預測效果。
圖9 網絡流量序列二預測結果
圖10 網絡流量序列二在不同模態(tài)下的預測結果
圖10 為GPM 模型用于網絡流量序列二預測時的多模態(tài)效果圖。模態(tài)數C=2 時,GPM模型達到最佳預測效果。
在最佳d 和τ(d=5,τ=1)下,將5.1節(jié)中五種模型分別用于本實驗的網絡流量序列二預測。現將預測的RMSE 值和R2值列于表2。可以看出GPM模型預測效果要好于其他四種模型,最佳結果為RMSE=0.021 2、R2=0.988 1。
表2 網絡流量序列二的五種模型預測對比
本文將GPM 模型用于網絡流量的多模態(tài)預測,并通過采集的兩組網絡流量序列驗證。模型采用分類迭代學習算法,此算法很好地實現了模態(tài)分配和模型參數學習。對序列進行相空間重構時,通過網格遍歷法搜尋到最佳d 和τ 。發(fā)現d 的增加和τ 的減少會增加預測準確度,當增加和減少到合適值時到達最佳。模態(tài)數反映了網絡流量序列不同部分的內在規(guī)律,最優(yōu)模態(tài)數的選擇沒有明顯規(guī)律,本文通過網格遍歷法得到兩組網絡流量序列的最佳模態(tài)數。最后在選取的d 和τ 下,本文將SVM、KR、MPMR和GP模型分別用于兩組網絡流量序列預測,并通過RMSE 和R2與GPM模型對比,發(fā)現GPM模型優(yōu)于其他四種模型。