摘要:流量建模與預測對于大規模網絡的規劃設計和網絡資源管理等方面都具有積極的意義,是網絡流量工程重要組成部分。該文結合網絡流量的時間序列特性,提出一種基于支持向量機的網絡流量預測算法,并針對由于支持向量機采用先驗知識選擇參數會導致不同數據對先驗知識適應程度不同,給出了一個動態調整優化參數策略。實驗仿真結果表明,該算法具有很好的預測精度和適用性。
關鍵詞:支持向量機;網絡流量;回歸預測
中圖分類號:TP393文獻標識碼:A文章編號:1009-3044(2008)36-3058-03
Network Traffic Model and Prediction Based on Support Vector Machine
ZHU Jun,WANG Qing-hua,YANG Hua
(Information Office of Jiujiang Municipal People's Government,Jiujiang 332000,China)
Abstract: Network traffic model and prediction is significant for design of network and resource management, and it is an important part of traffic engineering. In this paper, a method of traffic prediction based on support vector machine is presented with characteristic of time series of network traffic, and strategy of dynamic optimizing parameter is given because of the defect of parameter selection based on prior knowledge. The experiment simulation result s show that this method is of high precision and applicability.
Key words: SVR; network flowing; prediction
1 引言
由于互聯網業務量急劇增長,網絡性能和網絡安全方面的問題非常突出。通過對網絡流量的測量與預測,可以了解網絡之間的流量情況及趨勢,從而更有效地進行網絡優化,更好地進行路由設計和負載均衡的設計,并且可以發現潛在的攻擊和入侵行為,實現網絡入侵檢測。針對網絡流量的預測的研究, 最初主要有基于AR、ARIMA 的線性預測模型[1], 算法較簡單,但其自適應性較差。隨著智能算法的不斷發展,其良好的非線性映射能力、靈活有效的學習方式在預測領域的應用中表現出較大的優勢和潛力,如BP神經網絡、徑向基函數神經網絡等,已應用于網絡流量、金融、水文等多種預測領域[2]。但是,神經網絡是一種依賴經驗的啟發式技術,其學習過程采用經驗風險最小化原則( ERM) ,在小樣本情況下,容易出現過學習現象從而導致泛化能力低下;另外,神經網絡算法的復雜性受網絡結構復雜性和樣本復雜性的影響較大。這些不足,使得神經網絡在預測中的應用效果不如期望的那樣好。
支持向量機( support vector machines ,SVM) [3]是一種新型的機器學習方法,它具有完備的理論基礎和出色的學習性能,其突出特點是根據結構風險最小化原則(SRM) 進行學習,可以從本質上提高學習機的泛化能力,不存在局部最小問題,并且運用核函數巧妙地解決了維數問題。為此,本文提出了一種基于支持向量機的網絡流量預測模型,由于支持向量機采用先驗知識選擇參數,會導致不同數據對先驗知識適應程度不同[4],本文給出了一個動態調整優化參數策略?;诟倪M支持向量機的網絡流量模型,計算速度快,實時性好,相對于傳統的線性流量模型具有更高的逼近能力和良好的自適應性。
2 支持向量機預測算法原理
預測問題實質上屬于回歸問題,即通過函數估計方法建立輸入變量與輸出變量的關系模型,并根據模型進行未來輸出值的預測。利用支持向量機進行函數估計算法思想在于,首先選擇一非線性映射把樣本向量從原空間映射到高維特征空間,在此高維特征空間構造最優決策函數;利用結構最小化原則,同時引入了損失函數,并巧妙的利用原空間的核函數取代了高維特征空間的點積運算,避免了復雜計算。算法原理如下:
假定訓練數據集記為 ,xi為第i個輸入,yi為對應的期望輸出,且yi=f(xi),1≤i≤l,f(x)為待估計的未知函數。首先用非線性映射 把輸入數據從原空間映射到N 維特征空間,在高維空間實現線性回歸,即被估計函數f(x)有如下形式:
(1)
其中w=(w1,…,wn)是線性權值向量;b為偏置。這樣,在高維空間的線性回歸對應著低維空間的非線性回歸,定義損失函數:
(2)
需要求解的非線性回歸問題就是最小化目標函數:
(3)
式中:ε和C分別為兩個由用戶決定的自由參數,C是函數回歸模型的復雜度和樣本擬合精度之間的折衷, 值越大, 擬合程度越高,ε是回歸允許的最大誤差,控制支持向量的個數和泛化能力,其值越大,支持向量越少。
引入非負的松弛變量ζi,得到等價的原問題:
(4)
相應的對偶問題為:
(5)
其中ai為Lagrange乘子。K 為滿足Mercer 條件的核函數。常用的核函數有:多項式核函數、Sigmoid 核函數、高斯徑向基函數核函數。通過(5)式求得以ai和偏置b,則測試樣本x對應的輸出按下式進行預測:
(6)
3 基于改進支持向量機的網絡流預測
根據支持向量機的建模思想,傳統的支持向量機預測算法在數據預處理部分對嵌入維數、核函數和SVM 參數的選擇由先驗知識確定,由于不同的數據集對先驗知識的適應性不同,針對以往算法流程的不足之處,提出基于改進支持向量機的網絡流量預測方法。
首先,對原始時間序列數據預處理,生成數據集并分組。假定現在相同時間間隔下的時間序列數據為X={Xi}Ni=1先對其進行歸一化數據預處理 ,設xi=(Yi,Yi+1,…Yi+m-1),yi=Yi+m構成的{(xi,yi)}li=1就是由Y={Yi}Ni=1生成的數據集,也可以叫做樣本點集合,其中m稱為嵌入維數,l=N-m,,采用G-P算法[5]確定最小嵌入維數m。
得到數據集之后,選擇徑向基函數(RBF)作為核函數,包含寬度參數δ、C,由于基于先驗知識選擇參數,會導致不同數據對先驗知識適應程度不同。為此,本文采用動態調整優化參數,即用先驗知識固定第1 個參數,用列舉法確定第2個參數,然后再固定已優化了的參數來確定第1個參數,最后將優化后的第2 個參數在各自鄰域內驗證其最優性。
在選定核函數和SVM 參數后,輸入樣本集求得Lagrange 乘子?琢i ( i = 1 ,2,…, l) 和偏置b ,從而確定預測函數 , K 為徑向基函數; x是待預測的向量數據。為求得?琢i和b,在此,我們修改式(4 ) , 以誤差平方和( sum squared error, SSE ) 作為第二項損失函數[6] ,則原始問題變為:
(7)
由此得Lagrange函數為
(8)
由?鄣L/?鄣w=0,得(9)
由?鄣L/?鄣b=0,得 (10)
由?鄣L/?鄣ζi=0,得?琢i=Cζi(11)
由?鄣L/?鄣ai=0,得 (12)
消去式(9) ~ (12)中的w和ζi,得到關于b和?琢i的線性方程組,可以求出b和?琢i的解。
根據生成的預測函數f(x)進行預測,并進行預測誤差評價分析。為了對預測效果進行評價,引入了以下衡量指標,其中Xk為序列實際觀測值, k為Xk的預測值,顯然這兩項指標越小,表明預測效果越準確。
均方根誤差(RMSE):
(13)
相對均方根誤差(RRMSE):
(14)
如果誤差較大則重新調整參數,再次進行預測。
4 網絡流量預測實例仿真
網絡流量的統計一般采用兩種方法:在線數據包過濾統計方法和基于SNMP MIB 采集的方法。在路由器、交換機等一般網絡設備的MIB 庫中,包含設備的網絡端口信息,文中采用SNMP采集網絡設備MIB采集的流量數據。流量樣本數據采自Brandeis大學校園網的中心路由器于2008年3月14日24小時內的監測的流量數據(流量數據可以從http://ita.ee.lbl.gov/html/contrib/LBL-TCP-3.html上獲得),按5分鐘的時間尺度對該流量序列做聚集操作,獲得了用于建模的流量序列,記為TSb,長度為250。
核函數選擇徑向基函數,動態調整法選取參數后,流量預測結果如圖1所示,預測RMSE為2.5136,RRMSE為0.021。各項誤差指標對比如表1所列,在參數優化后, RMSE和RRMSE都少了,表明參數優化后的效果優于優化前。
5 結論
網絡流量工程對于大規模網絡的規劃設計、網絡資源管理以及實現網絡入侵檢測等方面都具有積極的意義,而流量建模與預測是網絡流量工程的重要組成部分。傳統的流量時間序列模型只適合于分析平穩過程及特殊的非平穩過程,難以刻畫大規模網絡的復雜流量行為。文中采用支持向量機回歸方法進行網絡流量預測,首先對觀測序列進行歸一化預處理,根據訓練樣本動態調整參數后,再進行預測。從實際預測結果來看,該方法具有較好的預測效果。
參考文獻:
[1] Kantz H.非線性時間序列分析[M].北京:清華大學出版社,2000.
[2] Chen Bor-Sen ,Peng Sen-Chueh,Wang Ku-Chen. Traffic Modeling,Prediction,and Congestion Control for High-Speed Networks:A Fuzzy AR Approach[J].IEEE Transaction on Fuzzy Systems,2000 ,8(5)
[3] Vapnik V N. Statistical Learning Theory [M].New York Wiley,1998.
[4] 劉勝,李妍妍.自適應GA-SVM 參數選擇算法研究[J]. 哈爾濱工程大學學報,2007,28(4).
[5] 魏海坤.神經網絡結構設計的理論與方法[M].北京:國防工業出版社,2005.
[6] Wang H F, Hu D J. Comparison of SVM and LS2SVM for Regression [C]. Neural Networks and Brain, ICNNB'05 International Conference,2005,1.
注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。”