任 瑋
(中北大學 計算機與控制工程學院,山西 太原 030051)
?
基于深度信念網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測模型*
任瑋
(中北大學 計算機與控制工程學院,山西 太原 030051)
摘要:為了提高網(wǎng)絡(luò)流量預(yù)測精度,根據(jù)深度學習理論提出一種基于深度信念網(wǎng)絡(luò)(DBN)的網(wǎng)絡(luò)流量預(yù)測模型。該預(yù)測模型由受限玻爾茲曼機(RBM)單元組成,采用逐層無監(jiān)督貪心算法訓練參數(shù),然后利用反向傳播學習算法微調(diào)整個網(wǎng)絡(luò)參數(shù)。最后基于該預(yù)測模型對收集到的真實網(wǎng)絡(luò)流量進行預(yù)測和分析,并與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)預(yù)測進行對比研究,結(jié)果表明,該預(yù)測模型克服了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)容易陷入局部最優(yōu)、訓練時間長及函數(shù)擬合度不高等缺點,具有更高的預(yù)測精度。
關(guān)鍵詞:網(wǎng)絡(luò)流量;深度學習;深度信念網(wǎng)絡(luò);受限玻爾茲曼機;神經(jīng)網(wǎng)絡(luò);預(yù)測
近年來,目前的網(wǎng)絡(luò)規(guī)模隨著計算機網(wǎng)絡(luò)的迅速發(fā)展變得極為復(fù)雜和龐大,網(wǎng)絡(luò)流量管理日益重要和迫切,其核心是準確預(yù)測網(wǎng)絡(luò)流量并及時做出調(diào)整,可以有效地改善網(wǎng)絡(luò)性能和提高服務(wù)質(zhì)量。目前網(wǎng)絡(luò)流量預(yù)測主要有傳統(tǒng)統(tǒng)計和智能預(yù)測兩大類方法。
傳統(tǒng)統(tǒng)計方法主要是基于線性回歸理論進行預(yù)測,如Sang A等[1]提出的基于自回歸(AR)的預(yù)測模型,鄒柏賢[2]提出自回歸滑動平均(ARMA)的預(yù)測模型以及薛可[3]提出的基于自回歸求和滑動平均(ARIMA)預(yù)測模型,上述模型是難以準確反映網(wǎng)絡(luò)流量的非線性變化規(guī)律,使得模型的預(yù)測結(jié)果不可靠。智能預(yù)測方法是將機器學習算法應(yīng)用于網(wǎng)絡(luò)流量預(yù)測,人工神經(jīng)網(wǎng)絡(luò)算法為目前網(wǎng)絡(luò)流量預(yù)測的主要研究方向。劉杰[4]提出了基于BP神經(jīng)網(wǎng)絡(luò)預(yù)測模型,提高了預(yù)測精度和靈活性,但BP算法本身存在收斂速度慢和存在局部極小點的問題。王俊松[5]提出基于RBF神經(jīng)網(wǎng)絡(luò)的預(yù)測模型解決了BP神經(jīng)網(wǎng)絡(luò)本身存在的問題,趙清艷[6]提出的遺傳優(yōu)化神經(jīng)網(wǎng)絡(luò)預(yù)測模型,用遺傳算法來優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)的模型參數(shù),取得比較好的結(jié)果。但是RBF模型的不足之處在于需要大量的數(shù)據(jù)樣本才能獲得好的效果。
上述預(yù)測模型都是基于淺層結(jié)構(gòu)算法的預(yù)測模型,都不能更接近真實反映網(wǎng)絡(luò)流量數(shù)據(jù)中復(fù)雜的非線性關(guān)系。Hinton[7]提出了深度學習理論為上述問題提供了解決思路。深度學習可通過自學習構(gòu)建一種非線性深層次的網(wǎng)絡(luò)結(jié)構(gòu),能更準確擬合復(fù)雜函數(shù)。基于深度學習理論,Hinton又提出了深度信念網(wǎng)絡(luò)(DBN)[8],其是目前研究和應(yīng)用都比較廣泛的深度學習方法,已經(jīng)成功應(yīng)用于多個領(lǐng)域[9]。
綜上所述,為了更好反映網(wǎng)絡(luò)流量數(shù)據(jù)之間的關(guān)系,提高預(yù)測精度,本文研究了一種基于深度信念網(wǎng)絡(luò)(DBN)的網(wǎng)絡(luò)流量預(yù)測模型,其為非線性深層次網(wǎng)絡(luò)結(jié)構(gòu)[10]模型,克服了傳統(tǒng)預(yù)測模型的不足,具有更高的函數(shù)逼近能力和良好自適應(yīng)性。
1網(wǎng)絡(luò)流量預(yù)測原理
網(wǎng)絡(luò)流量數(shù)據(jù)是由網(wǎng)絡(luò)上在線用戶的行為而產(chǎn)生,而用戶行為又會隨著外界因素的影響而變化,因而其產(chǎn)生的網(wǎng)絡(luò)流量既有規(guī)律性也有偶然性。網(wǎng)絡(luò)流量數(shù)據(jù)本質(zhì)上是一種時間序列數(shù)據(jù)。根據(jù)流量行為的特性,不同時刻之間的流量存在一定的非線性關(guān)系,其動力學特性表示為:
y(t)=f(y(t-1),y(t-2),…,y(t-n)) .
(1)
其中,n為模型的階數(shù),y(t),y(t-1),y(t-2),…,y(t-n)分別為t,t-1,t-2,…,t-n時刻的網(wǎng)絡(luò)流量[5]。
由(1)式網(wǎng)絡(luò)流量時間序列動力學特性可知,通過t,t-1,t-2,…,t-n時刻的網(wǎng)絡(luò)流量可以預(yù)測出t時刻的網(wǎng)絡(luò)流量數(shù)據(jù),它們之間存在復(fù)雜的非線性關(guān)系f(·)。本文使用深度學習算法進行非線性函數(shù)擬合,并在此基礎(chǔ)上提出一種基于深度信念網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測模型。
2深度信念網(wǎng)絡(luò)模型
2.1模型結(jié)構(gòu)
基于深度信念網(wǎng)絡(luò)(DBN)的網(wǎng)絡(luò)流量預(yù)測模型由兩層受限玻爾茲曼機(RBM)和一層BP神經(jīng)網(wǎng)絡(luò)組成。其結(jié)構(gòu)如圖1所示。
圖1 深度信念網(wǎng)絡(luò)模型結(jié)構(gòu)
深度信念網(wǎng)絡(luò)(DBN)的核心是受限玻爾茲曼機(Res-tricted Boltzmann Machines,RBM)單元,RBM是一種典型的人工神經(jīng)網(wǎng)絡(luò),其是由可視層和隱藏層組成的一種特殊的對數(shù)線性馬爾可夫隨機場(Markov Random Field),網(wǎng)絡(luò)中處于同一層的節(jié)點之間無連接。一個深度信念網(wǎng)絡(luò)(DBN)的參數(shù)需要預(yù)訓練和微調(diào)訓練兩個訓練過程來確定。
2.2預(yù)訓練
預(yù)訓練就是網(wǎng)絡(luò)參數(shù)初始化的過程,通過逐層采用無監(jiān)督貪心算法方式來[11]初始化各層間的連接權(quán)重值和偏置值。在訓練過程中,首先將可視向量的值映射給隱含單元,然后可視單元由隱含單元重建,隨后將這些新可視單元再次映射給隱含單元,這樣就獲取了新的隱含單元。反復(fù)執(zhí)行這種步驟的過程叫做吉布斯采樣[12]。下面來分析RBM參數(shù)訓練過程。
RBM層與層的節(jié)點之間相互無連接,其本質(zhì)上是一種能量模型,可視層和隱含層的聯(lián)合組態(tài)能量函數(shù)為:
(2)
式中,vi和hj分別為可視層、隱含層的節(jié)點狀態(tài)。θ={w,a,b}是模型的參數(shù),wij為可視層和隱含層之間連接權(quán)重值,bj和ai分別是可視層節(jié)點和隱含層節(jié)點對應(yīng)的偏置值。則RBM在狀態(tài)參數(shù)θ下的聯(lián)合概率為:
(3)
(4)
然后采用最大似然函數(shù)最大化Pθ(v),得到RBM的參數(shù)并通過隨機梯度下降法推導(dǎo)出RBM的權(quán)值更新準則:
(5)
其中:Edata(vihj)是在真實數(shù)據(jù)集中的期望,Emodel(vihj)是模型中定義的期望。
一層的RBM訓練完成之后,把其隱含層節(jié)點的相應(yīng)參數(shù)作為輸入數(shù)據(jù)來訓練下一層的RBM,以此類推,可訓練多層RBM,最終完成整個DBN的預(yù)訓練過程。
2.3微調(diào)權(quán)值訓練
預(yù)訓練完成后可以初始化RBM每層的參數(shù),然后使用BP神經(jīng)網(wǎng)絡(luò)算法[13]對DBN的所有權(quán)重值進行微調(diào)訓練,利用輸出誤差來估計輸出層的直接前一層誤差,經(jīng)過逐層的反向傳播學習,估計獲得所有其余各層的誤差,再使用梯度下降法計算更新各節(jié)點權(quán)值直到輸出誤差足夠小。權(quán)值微調(diào)算法克服了傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)因隨機初始化權(quán)值參數(shù)而容易陷入局部最小和訓練時間過長的缺點,只需要對已知權(quán)值空間進行微調(diào),大大縮減了參數(shù)尋優(yōu)的收斂時間。
3網(wǎng)絡(luò)流量預(yù)測
3.1模型預(yù)測流程
基于深度信念網(wǎng)絡(luò)模型具體預(yù)測流程如圖2所示。
圖2 模型預(yù)測流程圖
首先從網(wǎng)絡(luò)上收集到的網(wǎng)絡(luò)流量數(shù)據(jù)進行歸一化處理,然后將數(shù)據(jù)集分成訓練集和測試集兩部分,使用訓練集訓練網(wǎng)絡(luò)流量預(yù)測模型參數(shù),最后使用測試集測試模型預(yù)測效果。
3.2網(wǎng)絡(luò)流量數(shù)據(jù)歸一化處理
由于網(wǎng)絡(luò)流量是多種因素影響的綜合結(jié)果,其數(shù)據(jù)值的變化范圍較大,需要對收集到的網(wǎng)絡(luò)流量樣本數(shù)據(jù)進行歸一化處理[14]來提高模型的訓練效率,將所有的網(wǎng)絡(luò)流量數(shù)據(jù)值處理為[0,1]區(qū)間范圍的數(shù)據(jù),采用的方法為最大最小法,其公式為:
(6)
模型預(yù)測完成后,還需要對預(yù)測的結(jié)果進行反歸一化處理,使其恢復(fù)成真實的預(yù)測流量數(shù)據(jù),反歸一化公式為:
xi=x′i(xmax-xmin)+xmin.
(7)
式中,xi表示網(wǎng)絡(luò)流量原始數(shù)據(jù),xmax和xmin表示流量數(shù)據(jù)的最大值和最小值。
3.3模型評價指標
為了檢驗?zāi)P皖A(yù)測準確度和效果,采用均方根誤差RMSE(Root Mean Squared Error)和平均絕對誤差MAE(Mean Absolute Error)等指標對預(yù)測準確度進行衡量,上述指標定義如下:
(8)
(9)
4實驗分析
4.1數(shù)據(jù)來源
實驗數(shù)據(jù)來源于網(wǎng)絡(luò)流量文庫(http://news.cs.nctu.edu.tw/innreport/)主節(jié)點路由器Incoming articles從2014年9月1日到10月20日的每小時訪問流量,得到1 200個流量數(shù)據(jù)樣本,從而形成一個網(wǎng)絡(luò)流量時間序列,如圖3所示。
將前1 000個流量數(shù)據(jù)作為訓練集建立基于深度信念網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測模型,其余200個數(shù)據(jù)作為測試集進行預(yù)測檢驗。模型訓練前需要對網(wǎng)絡(luò)流量原始數(shù)據(jù)進行歸一化處理。
模型預(yù)測前需要確定模型的階數(shù)。在本流量數(shù)據(jù)樣本中的時間粒度為1小時。網(wǎng)絡(luò)流量的自相關(guān)函數(shù)變化曲線如圖4所示。
圖3 網(wǎng)絡(luò)流量原始數(shù)據(jù)
圖4 網(wǎng)絡(luò)流量原始數(shù)據(jù)自相關(guān)函數(shù)
經(jīng)過分析,從圖4中可知,某t時刻的網(wǎng)絡(luò)流量數(shù)據(jù)值與t-1,t-2,t-3,t-4,t-5時刻的網(wǎng)絡(luò)流量數(shù)據(jù)值相關(guān)性高,故設(shè)模型的5階,即將t-1,t-2,t-3,t-4,t-5時刻的網(wǎng)絡(luò)流量數(shù)據(jù)值輸入預(yù)測模型,以此來預(yù)測時刻的網(wǎng)絡(luò)流量值。
4.2結(jié)果與分析
對于圖4的網(wǎng)絡(luò)流量,基于深度信念網(wǎng)絡(luò)預(yù)測模型的預(yù)測結(jié)果和預(yù)測誤差變化曲線分別如圖5和圖6所示。
圖5 DBN模型預(yù)測輸出
圖6 DBN模型預(yù)測誤差
從圖5可知,DBN流量預(yù)測模型可以很好的跟蹤網(wǎng)絡(luò)流量變化趨勢,預(yù)測的網(wǎng)絡(luò)流量值和實際值比較接近,偏差小。從圖6可知,DBN流量預(yù)測模型預(yù)測誤差小,預(yù)測誤差變化范圍波動小。
為了進一步說明基于深度信念網(wǎng)絡(luò)(DBN)的預(yù)測模型的效果,分別與傳統(tǒng)神經(jīng)網(wǎng)絡(luò),即基于BP神經(jīng)網(wǎng)絡(luò)及基于RBF神經(jīng)網(wǎng)絡(luò)流量預(yù)測效果進行比較,如表1所示。
表1 三種預(yù)測模型的性能指標對比
對表1各個模型評價指標進行分析可知,基于DBN的預(yù)測模型相對于BP神經(jīng)網(wǎng)絡(luò)和RBF神經(jīng)網(wǎng)絡(luò)的預(yù)測誤差均有所下降,預(yù)測精度得以提高,表明DBN網(wǎng)絡(luò)流量預(yù)測模型較好的克服了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的缺陷,提高了網(wǎng)絡(luò)流量的預(yù)測精度,可以建立性能更優(yōu)的網(wǎng)絡(luò)流量預(yù)測模型。
上述實驗結(jié)果分析表明,基于深度信念網(wǎng)絡(luò)(DBN)的網(wǎng)絡(luò)流量預(yù)測模型是一種高精度、預(yù)測結(jié)果可靠的網(wǎng)絡(luò)流量預(yù)測模型。
5結(jié)束語
針對網(wǎng)絡(luò)流量變化規(guī)律的復(fù)雜性,提出一種可以更好刻畫數(shù)據(jù)之間復(fù)雜非線性關(guān)系的流量預(yù)測模型。通過用實際的網(wǎng)絡(luò)流量數(shù)據(jù)對預(yù)測模型進行實驗分析,發(fā)現(xiàn)該流量預(yù)測模型能夠更好反映網(wǎng)絡(luò)流量的變化規(guī)律,提高流量預(yù)測精度。同時,深度信念網(wǎng)絡(luò)在隱含層數(shù)量越多、數(shù)據(jù)量越大情況下效果越好。因此,下一步研究工作將適當加大深度信念網(wǎng)絡(luò)的隱含層數(shù)量,并且收集更多網(wǎng)絡(luò)流量數(shù)據(jù)作為訓練樣本,這樣有利于更精確的對網(wǎng)絡(luò)流量做預(yù)測。
參考文獻
[1]Sang A,Li S.Predictability Analysis of Network Traffic[C]//Pro-ceedings of INFOCOM 2000,2000:342-351.
[2]鄒伯賢,劉強.基于ARMA模型的網(wǎng)絡(luò)流量預(yù)測[J].計算機研究與發(fā)展,2002,39(12):1645-1652.
[3]薛可,李增智,劉瀏,等.基于ARIMA模型的網(wǎng)絡(luò)流量預(yù)測[J].微電子學與計算機,2004,21(7):84-87.
[4]劉杰,黃亞樓.基于BP神經(jīng)網(wǎng)絡(luò)的非線性網(wǎng)絡(luò)流量預(yù)測[J].計算機應(yīng)用,2007,27(7):1770-1772.
[5]王俊松,高志偉.基于RBF神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量建模及預(yù)測[J].計算機工程與應(yīng)用,2008,44(13):6-7.
[6]趙清艷.遺傳優(yōu)化神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測[J].微電子學與計算機,2013,30(3):132-135.
[7]Hinton G,Salakhutdinov R.Reducing the Dimensionality of Data with Neural Networks[J].Science,2006,313(5786):504-507.
[8]Hinton G,Osindero S.A Fast Learning Algorithm for Deep Belief Nets[J].Neural Computation,2006,18(7):1527-1554.
[9]余凱,賈磊,陳雨強,等.深度學習的昨天、今天和明天[J].計算機研究與發(fā)展,2013,50(9):1799-1804.
[10]Bengio Y.Learning Deep Architectures for AI[J].Foundations and Trends in Machine Learning,2009,2(1):1-127.
[11]Bengio Y,Lamblin P,Popovici D,et al.Greedy Layer Wise Training of Deep Networks[C]//Proceedings of Advances in Neural Information Processing Systems(NIPS 2006),2007,19:1-8.
[12]孫志軍,薛磊,許陽明,等.深度學習研究綜述[J].計算機應(yīng)用研究,2012,29(8):2806-2810.
[13]Rrumelhart D,Hinton G,Williams R.Learning Representations by Back-propagating Errors[J].Nature,1986,323(6088):533-536.
[14]李振剛.基于高斯過程回歸網(wǎng)絡(luò)流量預(yù)測模型[J].計算機應(yīng)用,2014,34(5):1251-1254.
Network Traffic Forecasting Based on Deep Belief Network
Ren Wei
(SchoolofComputerandControlEngineering,NorthUniversityofChina,TaiyuanShanxi030051,China)
Abstract:The prediction of network traffic flow is the foundation of network performance and service quality; it plays an important role in network layout and management. To improve the network traffic prediction accuracy, a nonlinear network traffic prediction model based on Deep Belief Network (DBN) is proposed. The model consists of Restricted Boltzmann Machine (RBM) unit which optimizes the layer-by-layer parameters by unsupervised greedy algorithm, and then optimizes all parameters by Back-Propagation algorithm. Simulation results on real network traffic show that the proposed prediction model is more efficient, and has better precision compared with the traditional neural network model.
Key words:Network traffi; deep learning; deep Belief Network(DBN); Restricted Boltzmann Machine (RBM); neural network; forecasting
中圖分類號:TP393.02
文獻標識碼:A
文章編號:1674- 4578(2016)01- 0062- 03
作者簡介:任瑋(1988- ),男,碩士研究生,研究領(lǐng)域為信息安全,機器學習。
基金項目:國家自然科學基金資助項目(61379125)
收稿日期:2015-10-21