劉 亮,江漢紅,王 潔,芮萬智
(海軍工程大學(xué) 艦船綜合電力技術(shù)國防科技重點實驗室,湖北 武漢430033)
網(wǎng)絡(luò)流量的傳輸受到網(wǎng)絡(luò)拓撲結(jié)構(gòu)、通信協(xié)議和轉(zhuǎn)發(fā)方式等因素的影響,因此其特性能夠在一定程度上反映出所承載的網(wǎng)絡(luò)業(yè)務(wù)的行為,分析和預(yù)測網(wǎng)絡(luò)流量的行為特性對于實現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)目煽啃院途W(wǎng)絡(luò)資源分配的合理性具有重要意義。目前已有相關(guān)預(yù)測模型主要可以分為以下幾大類型:
(1)線性預(yù)測模型。早期學(xué)者在進行網(wǎng)絡(luò)流量建模時,通常假設(shè)網(wǎng)絡(luò)流量服從Poisson分布,或近似為Markov過程,多采用基于自回歸或自回歸滑動平均的線性預(yù)測模型[1]。
(2)非線性預(yù)測模型。目前常用的非線性預(yù)測模型有人工神經(jīng)網(wǎng)絡(luò)模型[2-4]、灰色預(yù)測模型[5]、混沌模型[6]、支持向量回歸機模型[7]等,各種算法都有較好的適用性,但也存在自身固有的問題和改進的空間。
(3)組合預(yù)測模型。這類模型大體上又可分為線性組合預(yù)測模型和小波分解組合預(yù)測模型。與線性組合方式相比,由于小波分解能夠?qū)⒕W(wǎng)絡(luò)流量數(shù)據(jù)分解成為多個成分較為單一的分支流量信號,因此成為了當(dāng)前網(wǎng)絡(luò)流量預(yù)測模型的主要研究方向[8-10]。
在上述研究基礎(chǔ)上,本文提出一種基于小波分解的ARMA-SVR組合預(yù)測模型,該模型綜合了ARMA 模型和SVR 模型的優(yōu)點,在提高預(yù)測精度的同時保證了計算速度,是一種行之有效的網(wǎng)絡(luò)流量預(yù)測方法。
小波變換是一種非線性序列分析方法,適合對非平穩(wěn)數(shù)據(jù)進行分解處理。小波變換可以把具有復(fù)雜特性的網(wǎng)絡(luò)流量進行分解,得到頻率特性相對比較單一、更易于預(yù)測的時間信號,然后建立能夠刻畫不同特性的對應(yīng)信號模型,可以得到能夠反映網(wǎng)絡(luò)流量總體趨勢的預(yù)測值和各個細節(jié)的預(yù)測值,從而實現(xiàn)對網(wǎng)絡(luò)流量的預(yù)測。流量信號x(t)的小波變換可以表示為
重構(gòu)公式為
多分辨分析是小波分析中一種對信號的空間分解方法。其主要思想是把有限能量的信號空間L2(R)分解為一系列具有不同頻率分辨率的子空間,小波變換將原始流量信號x(t)∈L2(R)通過高通和低通兩個濾波器逐一投影到各個子空間,得到低頻信號和各層高頻信號的投影。低頻信號是網(wǎng)絡(luò)流量的主體趨勢項部分,該部分反映的是網(wǎng)絡(luò)流量整體的變化趨勢特征;高頻信號是網(wǎng)絡(luò)流量的隨機性部分,反映隨機擾動等動態(tài)因素對網(wǎng)絡(luò)流量的影響,是對趨勢項部分的細節(jié)補充。對各個投影部分進行線性組合后可以實現(xiàn)對信號x(t)的還原。這樣通過對x(t)在每個子空間投影的分析和預(yù)測就可以得到其在信號空間L2(R)的預(yù)測值。一個三層小波分解結(jié)構(gòu)如圖1所示。
圖1 小波分解樹
小波分析中一般采用Mallat算法對流量信號x(t)進行分解和重構(gòu)。
分解
重構(gòu)
式中:H——一低通濾波器,G——一高通濾波器,H*、G*——H 和G 的對偶濾波器;aj——x(t)經(jīng)過小波分解得到的低頻系數(shù),dj——高頻系數(shù)。
如果一個流量信號在t時刻的流量xt不僅與它以前時刻t-1,t-2,……的流量xt-1,xt-2……有直接關(guān)系,而且與以前時刻t-1,t-1,……的系統(tǒng)擾動項εt-1,εt-2,……存在一定的相關(guān)關(guān)系,那么這類流量信號模型稱為自回歸滑動平均 (ARMA)模型。其一般形式為
式中:εt——具有0均值的正態(tài)分布白噪聲。
即xt=(B)θ(B)εt,記作ARMA(p,q)。
ARMA 模型具有自相關(guān)函數(shù) (ACF)和偏自相關(guān)函數(shù)(PACF)拖尾的特性,如果僅自相關(guān)函數(shù)或者偏自相關(guān)函數(shù)具有拖尾特性,則ARMA 模型退化成為自回歸 (AR)模型或者滑動平均 (MA)模型,具體判定準則見表1。ARMA 模型基本的建模步驟如下:首先計算樣本流量的自相關(guān)函數(shù)和偏自相關(guān)函數(shù),根據(jù)其截尾特性和拖尾特性來對模型的進行辨識和定階:若ACF函數(shù)具有截尾特性則使用MA 模型,若PACF函數(shù)具有截尾特性則使用AR 模型,若兩者都具有拖尾特性則使用ARMA 模型;繼而使用非線性最小二乘法估計該ARMA 模型中的未知參數(shù)的值,最后根據(jù)完成后的模型對流量進行預(yù)測,并根據(jù)需要計算殘差,看其是否滿足白噪聲的特性。
支持向量回歸機的基本思想是尋找一個非線性映射φ(x):R →F,將低維空間R 映射到高維特征空間F,并在高維特征空間中對網(wǎng)絡(luò)流量x(t)進行估計
式中:w——權(quán)值向量,b——偏置項。
通過式 (7)可以將一個低維空間內(nèi)的非線性回歸問題轉(zhuǎn)化為一個高維特征空間的線性回歸問題,因此支持向量回歸機模型可以表示為一個二次規(guī)劃問題
式中:ξi、——松弛變量;ε>0稱為不敏感參數(shù),其大小決定了對網(wǎng)絡(luò)流量的擬合精度。采用Lagrange乘子法對該二次規(guī)劃問題進行求解可得
C 和ε是支持向量回歸機算法中兩個需要調(diào)整的重要參數(shù),對流量預(yù)測模型的性能具有較大影響,可以通過調(diào)整C和ε兩個參數(shù)使得樣本流量預(yù)測的結(jié)構(gòu)風(fēng)險 (即泛化誤差上界)最小。相比于人工神經(jīng)網(wǎng)絡(luò)的經(jīng)驗風(fēng)險最小準則,其優(yōu)化目標(biāo)是即訓(xùn)練誤差最小,容易陷入局部極小點,造成過擬合而影響模型的泛化能力,因此支持向量回歸機在理論上具有更好的泛化性能。一般情況下優(yōu)先選擇較小的C 參數(shù),這樣可以減少支持向量的數(shù)量,從而有效地減少計算量。
本文中采用ARMA 模型與支持向量回歸機的組合模型,綜合雙方各自的優(yōu)點,在更精確地逼近原始流量數(shù)據(jù)的同時,有效地增加了模型的計算速度。本文的預(yù)測模型結(jié)構(gòu)框架如圖2所示。
圖2 ARMA-SVR組合預(yù)測模型框架
建模步驟:
(1)采集待分析的網(wǎng)絡(luò)流量數(shù)據(jù),得到原始的網(wǎng)絡(luò)流量時間信號,從中選擇一部分作為訓(xùn)練樣本,一部分作為測試樣本;
(2)選擇db4母小波函數(shù)對網(wǎng)絡(luò)流量的訓(xùn)練樣本部分進行5層小波分解,得到訓(xùn)練樣本的各高頻系數(shù)序列和低頻系數(shù)序列;
(3)對各高頻系數(shù)序列和低頻系數(shù)序列采用小波逆變換進行重構(gòu),得到低頻分量和各高頻分量;
(4)分別采用SVR 方法和ARMA 方法對低頻分量和各高頻分量進行建模,將各分量的預(yù)測結(jié)果按下式進行線性組合后得到網(wǎng)絡(luò)流量的最終預(yù)測結(jié)果
(5)將網(wǎng)絡(luò)流量的預(yù)測結(jié)果與實際網(wǎng)絡(luò)流量對比,進行預(yù)測誤差分析。
仿真實驗的數(shù)據(jù)來源于某局域網(wǎng)系統(tǒng)中的一臺骨干交換機,通過網(wǎng)絡(luò)流量監(jiān)測軟件采集了該交換機某上聯(lián)端口2013年4月6日的網(wǎng)絡(luò)流量。由于原始數(shù)據(jù)流量較大,并且具有較強的隨機性,因此從原始數(shù)據(jù)中隨機連續(xù)選取2000個數(shù)據(jù)點作為的實驗數(shù)據(jù),繪制其波形如圖3 所示。并從中選取前1800個點作為訓(xùn)練樣本進行建模,后200個數(shù)據(jù)作為測試樣本驗證模型的有效性。
圖3 采集的實際網(wǎng)絡(luò)流量數(shù)據(jù)
針對前1800個訓(xùn)練樣本數(shù)據(jù)點,采用快速Mallat算法對其進行5層小波分解,再分別對每個分支進行重構(gòu),分解和重構(gòu)均選用db4母小波函數(shù),得到的網(wǎng)絡(luò)流量的各層近似分量a1~a5如圖4左邊所示,各層細節(jié)分量d1~d5如圖4右邊所示。
圖4 樣本流量經(jīng)過小波分解得到的各層近似分量和細節(jié)分量
從圖4中左邊可知,近似分量信號a1~a5變得逐漸平滑,體現(xiàn)出了網(wǎng)絡(luò)流量變化的主體趨勢。近似分量信號在進行流量合成的線性組合運算中只需要使用a5 層的流量數(shù)據(jù)。
對于細節(jié)部分d1~d5采取ARMA 模型進行預(yù)測。由于ARMA 模型適用于平穩(wěn)時間序列的預(yù)測分析,具有良好的線性特性,可將所有細節(jié)部分求和后采用一個ARMA 模型進行預(yù)測。令流量信號d=d1+d2+d3+d4+d5為細節(jié)部分之和,通過計算流量信號d的自相關(guān)函數(shù)和偏自相關(guān)函數(shù),根據(jù)兩者的拖尾特性和截尾特性初步判定細節(jié)流量信號d 符合為ARMA(3,0)模型,即AR(3)模型,并通過Matlab對細節(jié)部分流量進行建模預(yù)測,得到d的預(yù)測結(jié)果。
對于趨勢部分a5采取SVR 模型進行預(yù)測。將a5樣本流量進行歸一化后輸入到libsvm 工具箱中,核函數(shù)選擇徑向基 (RBF)函數(shù)。為了對SVR 模型的參數(shù)進行尋優(yōu),通過多次測試和調(diào)整,最后確定SVR 模型的其它參數(shù)取ε=0.2和C =10,徑向基函數(shù)選取g =0.5。建立支持向量回歸機仿真并進行訓(xùn)練,得到趨勢部分a5的預(yù)測結(jié)果。
將SVR 模型和ARMA 模型得到的預(yù)測結(jié)果按照式(12)進行線性組合后得到流量的最終預(yù)測結(jié)果,與實際流量進行對比,得到的結(jié)果如圖5所示。
圖5 流量預(yù)測值與實際值比較結(jié)果
從圖5中的擬合結(jié)果可以看出,由于采用了組合預(yù)測的方法,本模型對于樣本流量主體趨勢和細節(jié)部分都擬合的比較好,這是因為小波分解將高隨機性和非線性的網(wǎng)絡(luò)流量信號分解成多個頻率成分較為單一的流量信號,降低了不同頻率部分信號之間的干擾,從而有效地提高了預(yù)測精度。不過隨著時間的增加,由于流量數(shù)據(jù)的起伏較大,對于測試流量誤差也逐漸有所增大。
為了檢驗本文模型的預(yù)測效果,擬采用單一ARMA 預(yù)測模型、單一SVR 預(yù)測模型和BP神經(jīng)網(wǎng)絡(luò)模型進行對比,并采用平均相對誤差MRE 對各種模型的預(yù)測結(jié)果進行評價。MRE定義如式 (13)所示
通過計算各模型預(yù)測結(jié)果的MRE可以得到誤差對比結(jié)果見表1。
表1 各模型的預(yù)測誤差對比
從表2的平均誤差值對比結(jié)果可知,采用SVR 算法的網(wǎng)絡(luò)流量預(yù)測模型與其它模型相比,具有預(yù)測精度較高和泛化能力較好的優(yōu)點;而ARMA 模型會平滑預(yù)測數(shù)據(jù)的波動,對于線性特性較好的流量具有較好的預(yù)測效果,較適合于短時預(yù)測,且具有預(yù)測精度高、計算速度快的特點,對于具有強烈波動和非線性的流量的預(yù)測誤差較大,所以不宜單獨使用;而神經(jīng)網(wǎng)絡(luò)雖然在訓(xùn)練過程中的樣本擬合誤差較小,但是測試樣本誤差變大,在實際使用中預(yù)測效果不如SVR 方法和本文算法好。本文采用了基于小波分解的組合預(yù)測算法,通過對網(wǎng)絡(luò)流量進行分解,針對不同層的特點綜合了ARMA 模型和SVR 模型的優(yōu)點,進一步提高了網(wǎng)絡(luò)流量的預(yù)測精度。不過由于網(wǎng)絡(luò)流量的隨機性較大,用于仿真實驗的訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù)較多,要想準確地預(yù)測網(wǎng)絡(luò)流量的長期行為還有一定困難。在上述仿真計算的基礎(chǔ)上,經(jīng)過多次對比計算發(fā)現(xiàn),以下因素對模型的預(yù)測結(jié)果具有一定的影響:
(1)分解層數(shù)的影響:隨著分解層數(shù)的增加,預(yù)測誤差逐漸減小并趨于穩(wěn)定。這是由于流量信號主體部分在于近似信號和低層細節(jié)信號部分,而分解層數(shù)的增加只是對于高層細節(jié)部分做進一步的分解,由于這一部分的信號占整體流量信號的比例較小,因而這一部分的預(yù)測誤差對整體流量的預(yù)測影響不大,所以總體預(yù)報誤差將不隨分解尺度而有太大的改變。相反,隨著分解層數(shù)的增加,計算量會有所增大,因此不宜設(shè)置較高的分解層數(shù)。
(2)母小波函數(shù)的影響:由于母小波函數(shù)種類較多,每種母小波函數(shù)都有其各自的特點,最理想的情況是選擇與網(wǎng)絡(luò)流量起伏特點近似的母小波函數(shù),然而目前情況下只能采用多次實驗對比的方法或者依靠經(jīng)驗來選擇。
本文提出一種基于小波分析的網(wǎng)絡(luò)流量組合預(yù)測模型,通過小波變換把網(wǎng)絡(luò)流量分解成低頻近似信號和多個高頻細節(jié)信號之和,采用SVR 模型和ARMA 模型分別對低頻信號和高頻信號進行擬合,然后將各個模型的預(yù)測結(jié)果進行線性組合后得到網(wǎng)絡(luò)流量的預(yù)測值。仿真實驗結(jié)果表明,相比于其它方法,該預(yù)測模型可有效結(jié)合兩種預(yù)測模型的優(yōu)點,克服單一預(yù)測模型的不足,具有更高的預(yù)測精度,改善了網(wǎng)絡(luò)流量的預(yù)測性能。為了進一步提高實際流量的預(yù)測精度,可以對模型采用實時修正的方法,不過由于SVR 算法復(fù)雜度較高,如何提高本算法的實時性是下一步需要重點研究的方向。
[1]GU Zheng,CHU Baojin,JIANG Huikun.WAVELET—ARMA method in the non-stationary time series and its application[J].Systems Engineering,2010,28 (1):73-77 (in Chinese). [谷政,褚保金,江惠坤.非平穩(wěn)時間序列分析的WAVELET—ARMA 組合方法及其應(yīng)用 [J].系統(tǒng)工程,2010,28 (1):73-77.]
[2]LI X Y.Prediction of traffic flow base on neural network[C]//Intelligent Computation Technology and Automation,2009:374-377.
[3]Ardhan S,Satsri S,Chutchavong V,et al.Improved model for traffic fluctuation prediction by neural network [C]//Proceedings of International Conference on Control Automation and Systems,2007:122-125.
[4]ZHU L,QIN L,XUE K,et al.A novel BP neural network model for traffic prediction of next generation network [C]//Natural Computation,2009:32-38.
[5]MA Hualin,LI Cuifeng,ZHANG Liyan.Network traffic prediction based on grey model and adaptive filter[J].Computer Engineering,2009,35 (1):130-131 (in Chinese).[馬華林,李翠鳳,張立燕.基于灰色模型和自適應(yīng)過濾的網(wǎng)絡(luò)流量預(yù)測[J].計算機工程,2009,35 (1):130-131.]
[6]LUO Yunqian,XIA Jingbo.WANG Huanbin.Application of chaos-support vector machine regression in traffic prediction [J].Computer Science,2009,36 (7):244-245 (in Chinese).[羅赟騫,夏靖波,王煥彬.混沌-支持向量機回歸在流量預(yù)測中的應(yīng)用研究[J].計算機科學(xué),2009,36 (7):244-245.]
[7]YANG Mei,ZHAO Xiuli,LIU Yu.Research on wavelet decomposition in prediction of time series[J].Information Technology and Informatization,2011,33 (2):45-48 (in Chinese).[楊玫,趙秀麗,劉瑜.時間序列預(yù)測問題中小波分解的應(yīng)用研究 [J].信息技術(shù)與信息化,2011,33 (2):45-48.]
[8]LI Xiaohang,LIU Yuan,LIU Yuanzhen.Research on network traffic combination prediction method based on wavelet multi scale analysis[J].Microelectronics &Computer,2008,25 (1):130-133 (in Chinese).[李小航,劉淵,劉元珍.基于小波多尺度分析的網(wǎng)絡(luò)流量組合預(yù)測方法研究 [J].微電子學(xué)與計算機,2008,25 (1):130-133.]
[9]LIU Yuan,WANG Peng.Combining wavelet transform and Bayesian least squares support vector machines to predict network traffic [J].Application Research of Computers,2009,26 (6):2229-2231 (in Chinese).[劉淵,王鵬.融合小波變換與貝葉斯LS-SVM 的網(wǎng)絡(luò)流量預(yù)測 [J].計算機應(yīng)用研究,2009,26 (6):2229-2231.]
[10]GONG Linming,ZHANG Zhenguo.Combination prediction model to network traffic based on grey-wavelet[J].Computer Engineering and Design,2010,31 (8):1660-1661 (in Chinese).[鞏林明,張振國.基于灰色小波的網(wǎng)絡(luò)流量組合預(yù)測模型 [J].計算機工程與設(shè)計,2010,31 (8):1660-1661.]