任 瑋
(中北大學(xué) 計(jì)算機(jī)與控制工程學(xué)院,山西 太原 030051)
?
基于深度信念網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測模型*
任瑋
(中北大學(xué) 計(jì)算機(jī)與控制工程學(xué)院,山西 太原 030051)
摘要:為了提高網(wǎng)絡(luò)流量預(yù)測精度,根據(jù)深度學(xué)習(xí)理論提出一種基于深度信念網(wǎng)絡(luò)(DBN)的網(wǎng)絡(luò)流量預(yù)測模型。該預(yù)測模型由受限玻爾茲曼機(jī)(RBM)單元組成,采用逐層無監(jiān)督貪心算法訓(xùn)練參數(shù),然后利用反向傳播學(xué)習(xí)算法微調(diào)整個(gè)網(wǎng)絡(luò)參數(shù)。最后基于該預(yù)測模型對收集到的真實(shí)網(wǎng)絡(luò)流量進(jìn)行預(yù)測和分析,并與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)預(yù)測進(jìn)行對比研究,結(jié)果表明,該預(yù)測模型克服了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)容易陷入局部最優(yōu)、訓(xùn)練時(shí)間長及函數(shù)擬合度不高等缺點(diǎn),具有更高的預(yù)測精度。
關(guān)鍵詞:網(wǎng)絡(luò)流量;深度學(xué)習(xí);深度信念網(wǎng)絡(luò);受限玻爾茲曼機(jī);神經(jīng)網(wǎng)絡(luò);預(yù)測
近年來,目前的網(wǎng)絡(luò)規(guī)模隨著計(jì)算機(jī)網(wǎng)絡(luò)的迅速發(fā)展變得極為復(fù)雜和龐大,網(wǎng)絡(luò)流量管理日益重要和迫切,其核心是準(zhǔn)確預(yù)測網(wǎng)絡(luò)流量并及時(shí)做出調(diào)整,可以有效地改善網(wǎng)絡(luò)性能和提高服務(wù)質(zhì)量。目前網(wǎng)絡(luò)流量預(yù)測主要有傳統(tǒng)統(tǒng)計(jì)和智能預(yù)測兩大類方法。
傳統(tǒng)統(tǒng)計(jì)方法主要是基于線性回歸理論進(jìn)行預(yù)測,如Sang A等[1]提出的基于自回歸(AR)的預(yù)測模型,鄒柏賢[2]提出自回歸滑動(dòng)平均(ARMA)的預(yù)測模型以及薛可[3]提出的基于自回歸求和滑動(dòng)平均(ARIMA)預(yù)測模型,上述模型是難以準(zhǔn)確反映網(wǎng)絡(luò)流量的非線性變化規(guī)律,使得模型的預(yù)測結(jié)果不可靠。智能預(yù)測方法是將機(jī)器學(xué)習(xí)算法應(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算法本身存在收斂速度慢和存在局部極小點(diǎn)的問題。王俊松[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ù)測模型,都不能更接近真實(shí)反映網(wǎng)絡(luò)流量數(shù)據(jù)中復(fù)雜的非線性關(guān)系。Hinton[7]提出了深度學(xué)習(xí)理論為上述問題提供了解決思路。深度學(xué)習(xí)可通過自學(xué)習(xí)構(gòu)建一種非線性深層次的網(wǎng)絡(luò)結(jié)構(gòu),能更準(zhǔn)確擬合復(fù)雜函數(shù)?;谏疃葘W(xué)習(xí)理論,Hinton又提出了深度信念網(wǎng)絡(luò)(DBN)[8],其是目前研究和應(yīng)用都比較廣泛的深度學(xué)習(xí)方法,已經(jīng)成功應(yīng)用于多個(gè)領(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)生,而用戶行為又會(huì)隨著外界因素的影響而變化,因而其產(chǎn)生的網(wǎng)絡(luò)流量既有規(guī)律性也有偶然性。網(wǎng)絡(luò)流量數(shù)據(jù)本質(zhì)上是一種時(shí)間序列數(shù)據(jù)。根據(jù)流量行為的特性,不同時(shí)刻之間的流量存在一定的非線性關(guān)系,其動(dòng)力學(xué)特性表示為:
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時(shí)刻的網(wǎng)絡(luò)流量[5]。
由(1)式網(wǎng)絡(luò)流量時(shí)間序列動(dòng)力學(xué)特性可知,通過t,t-1,t-2,…,t-n時(shí)刻的網(wǎng)絡(luò)流量可以預(yù)測出t時(shí)刻的網(wǎng)絡(luò)流量數(shù)據(jù),它們之間存在復(fù)雜的非線性關(guān)系f(·)。本文使用深度學(xué)習(xí)算法進(jìn)行非線性函數(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ù)測模型由兩層受限玻爾茲曼機(jī)(RBM)和一層BP神經(jīng)網(wǎng)絡(luò)組成。其結(jié)構(gòu)如圖1所示。
圖1 深度信念網(wǎng)絡(luò)模型結(jié)構(gòu)
深度信念網(wǎng)絡(luò)(DBN)的核心是受限玻爾茲曼機(jī)(Res-tricted Boltzmann Machines,RBM)單元,RBM是一種典型的人工神經(jīng)網(wǎng)絡(luò),其是由可視層和隱藏層組成的一種特殊的對數(shù)線性馬爾可夫隨機(jī)場(Markov Random Field),網(wǎng)絡(luò)中處于同一層的節(jié)點(diǎn)之間無連接。一個(gè)深度信念網(wǎng)絡(luò)(DBN)的參數(shù)需要預(yù)訓(xùn)練和微調(diào)訓(xùn)練兩個(gè)訓(xùn)練過程來確定。
2.2預(yù)訓(xùn)練
預(yù)訓(xùn)練就是網(wǎng)絡(luò)參數(shù)初始化的過程,通過逐層采用無監(jiān)督貪心算法方式來[11]初始化各層間的連接權(quán)重值和偏置值。在訓(xùn)練過程中,首先將可視向量的值映射給隱含單元,然后可視單元由隱含單元重建,隨后將這些新可視單元再次映射給隱含單元,這樣就獲取了新的隱含單元。反復(fù)執(zhí)行這種步驟的過程叫做吉布斯采樣[12]。下面來分析RBM參數(shù)訓(xùn)練過程。
RBM層與層的節(jié)點(diǎn)之間相互無連接,其本質(zhì)上是一種能量模型,可視層和隱含層的聯(lián)合組態(tài)能量函數(shù)為:
(2)
式中,vi和hj分別為可視層、隱含層的節(jié)點(diǎn)狀態(tài)。θ={w,a,b}是模型的參數(shù),wij為可視層和隱含層之間連接權(quán)重值,bj和ai分別是可視層節(jié)點(diǎn)和隱含層節(jié)點(diǎn)對應(yīng)的偏置值。則RBM在狀態(tài)參數(shù)θ下的聯(lián)合概率為:
(3)
(4)
然后采用最大似然函數(shù)最大化Pθ(v),得到RBM的參數(shù)并通過隨機(jī)梯度下降法推導(dǎo)出RBM的權(quán)值更新準(zhǔn)則:
(5)
其中:Edata(vihj)是在真實(shí)數(shù)據(jù)集中的期望,Emodel(vihj)是模型中定義的期望。
一層的RBM訓(xùn)練完成之后,把其隱含層節(jié)點(diǎn)的相應(yīng)參數(shù)作為輸入數(shù)據(jù)來訓(xùn)練下一層的RBM,以此類推,可訓(xùn)練多層RBM,最終完成整個(gè)DBN的預(yù)訓(xùn)練過程。
2.3微調(diào)權(quán)值訓(xùn)練
預(yù)訓(xùn)練完成后可以初始化RBM每層的參數(shù),然后使用BP神經(jīng)網(wǎng)絡(luò)算法[13]對DBN的所有權(quán)重值進(jìn)行微調(diào)訓(xùn)練,利用輸出誤差來估計(jì)輸出層的直接前一層誤差,經(jīng)過逐層的反向傳播學(xué)習(xí),估計(jì)獲得所有其余各層的誤差,再使用梯度下降法計(jì)算更新各節(jié)點(diǎn)權(quán)值直到輸出誤差足夠小。權(quán)值微調(diào)算法克服了傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)因隨機(jī)初始化權(quán)值參數(shù)而容易陷入局部最小和訓(xùn)練時(shí)間過長的缺點(diǎn),只需要對已知權(quán)值空間進(jìn)行微調(diào),大大縮減了參數(shù)尋優(yōu)的收斂時(shí)間。
3網(wǎng)絡(luò)流量預(yù)測
3.1模型預(yù)測流程
基于深度信念網(wǎng)絡(luò)模型具體預(yù)測流程如圖2所示。
圖2 模型預(yù)測流程圖
首先從網(wǎng)絡(luò)上收集到的網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行歸一化處理,然后將數(shù)據(jù)集分成訓(xùn)練集和測試集兩部分,使用訓(xùn)練集訓(xùn)練網(wǎng)絡(luò)流量預(yù)測模型參數(shù),最后使用測試集測試模型預(yù)測效果。
3.2網(wǎng)絡(luò)流量數(shù)據(jù)歸一化處理
由于網(wǎng)絡(luò)流量是多種因素影響的綜合結(jié)果,其數(shù)據(jù)值的變化范圍較大,需要對收集到的網(wǎng)絡(luò)流量樣本數(shù)據(jù)進(jìn)行歸一化處理[14]來提高模型的訓(xùn)練效率,將所有的網(wǎng)絡(luò)流量數(shù)據(jù)值處理為[0,1]區(qū)間范圍的數(shù)據(jù),采用的方法為最大最小法,其公式為:
(6)
模型預(yù)測完成后,還需要對預(yù)測的結(jié)果進(jìn)行反歸一化處理,使其恢復(fù)成真實(shí)的預(yù)測流量數(shù)據(jù),反歸一化公式為:
xi=x′i(xmax-xmin)+xmin.
(7)
式中,xi表示網(wǎng)絡(luò)流量原始數(shù)據(jù),xmax和xmin表示流量數(shù)據(jù)的最大值和最小值。
3.3模型評(píng)價(jià)指標(biāo)
為了檢驗(yàn)?zāi)P皖A(yù)測準(zhǔn)確度和效果,采用均方根誤差RMSE(Root Mean Squared Error)和平均絕對誤差MAE(Mean Absolute Error)等指標(biāo)對預(yù)測準(zhǔn)確度進(jìn)行衡量,上述指標(biāo)定義如下:
(8)
(9)
4實(shí)驗(yàn)分析
4.1數(shù)據(jù)來源
實(shí)驗(yàn)數(shù)據(jù)來源于網(wǎng)絡(luò)流量文庫(http://news.cs.nctu.edu.tw/innreport/)主節(jié)點(diǎn)路由器Incoming articles從2014年9月1日到10月20日的每小時(shí)訪問流量,得到1 200個(gè)流量數(shù)據(jù)樣本,從而形成一個(gè)網(wǎng)絡(luò)流量時(shí)間序列,如圖3所示。
將前1 000個(gè)流量數(shù)據(jù)作為訓(xùn)練集建立基于深度信念網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測模型,其余200個(gè)數(shù)據(jù)作為測試集進(jìn)行預(yù)測檢驗(yàn)。模型訓(xùn)練前需要對網(wǎng)絡(luò)流量原始數(shù)據(jù)進(jìn)行歸一化處理。
模型預(yù)測前需要確定模型的階數(shù)。在本流量數(shù)據(jù)樣本中的時(shí)間粒度為1小時(shí)。網(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時(shí)刻的網(wǎng)絡(luò)流量數(shù)據(jù)值與t-1,t-2,t-3,t-4,t-5時(shí)刻的網(wǎng)絡(luò)流量數(shù)據(jù)值相關(guān)性高,故設(shè)模型的5階,即將t-1,t-2,t-3,t-4,t-5時(shí)刻的網(wǎng)絡(luò)流量數(shù)據(jù)值輸入預(yù)測模型,以此來預(yù)測時(shí)刻的網(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ò)流量值和實(shí)際值比較接近,偏差小。從圖6可知,DBN流量預(yù)測模型預(yù)測誤差小,預(yù)測誤差變化范圍波動(dòng)小。
為了進(jìn)一步說明基于深度信念網(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ù)測效果進(jìn)行比較,如表1所示。
表1 三種預(yù)測模型的性能指標(biāo)對比
對表1各個(gè)模型評(píng)價(jià)指標(biāo)進(jìn)行分析可知,基于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ù)測模型。
上述實(shí)驗(yàn)結(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ù)測模型。通過用實(shí)際的網(wǎng)絡(luò)流量數(shù)據(jù)對預(yù)測模型進(jìn)行實(shí)驗(yàn)分析,發(fā)現(xiàn)該流量預(yù)測模型能夠更好反映網(wǎng)絡(luò)流量的變化規(guī)律,提高流量預(yù)測精度。同時(shí),深度信念網(wǎng)絡(luò)在隱含層數(shù)量越多、數(shù)據(jù)量越大情況下效果越好。因此,下一步研究工作將適當(dāng)加大深度信念網(wǎng)絡(luò)的隱含層數(shù)量,并且收集更多網(wǎng)絡(luò)流量數(shù)據(jù)作為訓(xùn)練樣本,這樣有利于更精確的對網(wǎng)絡(luò)流量做預(yù)測。
參考文獻(xiàn)
[1]Sang A,Li S.Predictability Analysis of Network Traffic[C]//Pro-ceedings of INFOCOM 2000,2000:342-351.
[2]鄒伯賢,劉強(qiáng).基于ARMA模型的網(wǎng)絡(luò)流量預(yù)測[J].計(jì)算機(jī)研究與發(fā)展,2002,39(12):1645-1652.
[3]薛可,李增智,劉瀏,等.基于ARIMA模型的網(wǎng)絡(luò)流量預(yù)測[J].微電子學(xué)與計(jì)算機(jī),2004,21(7):84-87.
[4]劉杰,黃亞樓.基于BP神經(jīng)網(wǎng)絡(luò)的非線性網(wǎng)絡(luò)流量預(yù)測[J].計(jì)算機(jī)應(yīng)用,2007,27(7):1770-1772.
[5]王俊松,高志偉.基于RBF神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量建模及預(yù)測[J].計(jì)算機(jī)工程與應(yīng)用,2008,44(13):6-7.
[6]趙清艷.遺傳優(yōu)化神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測[J].微電子學(xué)與計(jì)算機(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]余凱,賈磊,陳雨強(qiáng),等.深度學(xué)習(xí)的昨天、今天和明天[J].計(jì)算機(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]孫志軍,薛磊,許陽明,等.深度學(xué)習(xí)研究綜述[J].計(jì)算機(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].計(jì)算機(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
中圖分類號(hào):TP393.02
文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1674- 4578(2016)01- 0062- 03
作者簡介:任瑋(1988- ),男,碩士研究生,研究領(lǐng)域?yàn)樾畔踩瑱C(jī)器學(xué)習(xí)。
基金項(xiàng)目:國家自然科學(xué)基金資助項(xiàng)目(61379125)
收稿日期:2015-10-21