虞豐檑,徐展琦,張林杰,杜 爽
(1.西安電子科技大學(xué) 綜合業(yè)務(wù)網(wǎng)理論及關(guān)鍵技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,陜西 西安 710071;2.中國(guó)電子科技集團(tuán)公司第五十四研究所,河北 石家莊 050081)
隨著因特網(wǎng)技術(shù)的迅猛發(fā)展和網(wǎng)絡(luò)業(yè)務(wù)的激增,需要有效的網(wǎng)絡(luò)管理以提高網(wǎng)絡(luò)服務(wù)質(zhì)量[1]。網(wǎng)絡(luò)流量作為網(wǎng)絡(luò)管理與運(yùn)營(yíng)中的重要參數(shù),對(duì)其進(jìn)行準(zhǔn)確預(yù)測(cè)有助于優(yōu)化網(wǎng)絡(luò)資源分配,減少網(wǎng)絡(luò)擁塞并提高用戶服務(wù)體驗(yàn)質(zhì)量[2]。
網(wǎng)絡(luò)流量預(yù)測(cè)模型分為線性與非線性兩種,傳統(tǒng)的線性模型包括自回歸(AR)模型、移動(dòng)平均(MA)模型以及自回歸積分移動(dòng)平均(ARIMA)模型[3]等,此類模型原理簡(jiǎn)單、易于實(shí)現(xiàn)。但是,隨著網(wǎng)絡(luò)業(yè)務(wù)的急劇增加和基礎(chǔ)網(wǎng)絡(luò)在規(guī)模、體制以及組網(wǎng)形態(tài)等方面的多樣性發(fā)展,網(wǎng)絡(luò)流量的自相似性、長(zhǎng)相關(guān)性、重尾性和混沌性愈加明顯,線性模型的預(yù)測(cè)誤差較大。在預(yù)測(cè)具有復(fù)雜特性的網(wǎng)絡(luò)流量時(shí),非線性預(yù)測(cè)模型擬合能力強(qiáng),性能明顯優(yōu)于線性預(yù)測(cè)模型,因此得到廣泛應(yīng)用。非線性模型主要包括基于小波的預(yù)測(cè)模型[4]、支持向量機(jī)(SVM)[5]以及神經(jīng)網(wǎng)絡(luò)(NN)等,其中的NN由于具有強(qiáng)魯棒性和自學(xué)習(xí)特性,在流量預(yù)測(cè)中有較好的應(yīng)用。例如,杜振寧[6]結(jié)合反向傳播神經(jīng)網(wǎng)絡(luò)(BPNN)和布谷鳥算法進(jìn)行網(wǎng)絡(luò)流量預(yù)測(cè),Song[7]等提出基于粒子群優(yōu)化(PSO)算法的徑向基神經(jīng)網(wǎng)絡(luò)(RBFNN)預(yù)測(cè)模型,Yang[8]等采用增強(qiáng)學(xué)習(xí)優(yōu)化的長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)(LSTMNN)進(jìn)行超長(zhǎng)期網(wǎng)絡(luò)流量預(yù)測(cè)。
本文簡(jiǎn)述BPNN、RBFNN和LSTMNN的原理,利用這些NN預(yù)測(cè)不同時(shí)間尺度的網(wǎng)絡(luò)流量,分析其預(yù)測(cè)方面的性能、優(yōu)缺點(diǎn)和適用場(chǎng)景,試圖為基于NN的故障預(yù)測(cè)和故障定位的學(xué)術(shù)研究及實(shí)際應(yīng)用提供技術(shù)支撐。
BPNN示意圖如圖1所示,其輸入層與輸出層均是單層,隱含層可以是一層或多層,每層可包含若干神經(jīng)元節(jié)點(diǎn)[9],隱含層和輸出層任意節(jié)點(diǎn)的輸入值y均滿足y=Wx+b,其中x為上一層輸出,W為權(quán)值,b為偏置。BPNN是一種利用反向傳播算法訓(xùn)練的神經(jīng)網(wǎng)絡(luò),該算法將輸出誤差沿原來的連接通路返回到輸入層,逐層調(diào)整網(wǎng)絡(luò)節(jié)點(diǎn)的權(quán)值和偏置,使誤差信號(hào)趨于最小[10]。
圖1 反向傳播神經(jīng)網(wǎng)絡(luò)模型Fig.1 Back propagation neural network model
BPNN可實(shí)現(xiàn)從輸入到輸出的非線性映射,且具有一定的自學(xué)習(xí)能力,已被廣泛應(yīng)用于預(yù)測(cè)領(lǐng)域;然而,反向傳播算法本質(zhì)上為梯度下降算法,可能導(dǎo)致學(xué)習(xí)速度慢,容易陷入局部最優(yōu),尚不適合預(yù)測(cè)相關(guān)性復(fù)雜的數(shù)據(jù)。
RBFNN結(jié)構(gòu)如圖2所示,其輸入層、隱含層和輸出層均為單層,隱含層節(jié)點(diǎn)和輸出層節(jié)點(diǎn)的激勵(lì)函數(shù)分別為徑向基函數(shù)和線性函數(shù)[11]。
圖2 徑向基神經(jīng)網(wǎng)絡(luò)模型Fig.2 Radial basis function neural network model
RBFNN訓(xùn)練算法分兩步:① 確定徑向基函數(shù)(RBF)的中心點(diǎn)和寬度,常用方法包括K聚類[12]、模糊聚類以及自組織映射[13]等;② 通過梯度下降法或最小二乘法計(jì)算隱含層至輸出層的權(quán)值。
RBFNN具有良好的非線性逼近能力和泛化能力,且隱含層至輸出層的權(quán)值可通過最小二乘法得到,訓(xùn)練速度快;但是,其參數(shù)的選擇會(huì)影響RBFNN性能,且根據(jù)不同問題確定相應(yīng)的參數(shù)十分困難[9]。
圖3為L(zhǎng)STMNN結(jié)構(gòu)示意圖[9],它是循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的變體。RNN引入反饋機(jī)制[14],提高對(duì)復(fù)雜時(shí)間序列的預(yù)測(cè)精度;針對(duì)標(biāo)準(zhǔn)RNN可能存在梯度爆炸或梯度消失,難以捕獲時(shí)間序列的長(zhǎng)相關(guān)性特征等問題,LSTMNN在RNN基礎(chǔ)上引入門控機(jī)制,使其具備學(xué)習(xí)時(shí)間序列長(zhǎng)相關(guān)性的能力。
圖3 長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)模型Fig.3 Long short-term memory neural network model
如圖4所示,LSTM記憶單元使用遺忘門、輸入門和輸出門以保持和控制單元的狀態(tài),“門”是一個(gè)選擇性通過信息的結(jié)構(gòu)。遺忘門將上一時(shí)刻隱含層狀態(tài)ht-1和當(dāng)前輸入xt拼接得到的矩陣[ht-1,xt]輸入到Sigmoid函數(shù)中(圖中用σ表示),決定保留或丟棄哪些信息;輸入門將[ht-1,xt]同時(shí)輸入到Sigmoid函數(shù)和tanh函數(shù),兩個(gè)結(jié)果相乘后得到的值決定輸入到LSTM記憶單元的刺激強(qiáng)度,形成當(dāng)前時(shí)刻記憶單元狀態(tài)Ct;輸出門將[ht-1,xt]和Ct分別輸入到Sigmoid函數(shù)和tanh函數(shù)中,兩個(gè)結(jié)果的乘積控制從這個(gè)記憶單元輸出到外界的信息ht,最后把LSTM單元新狀態(tài)Ct和新隱含層狀態(tài)ht輸出給下一時(shí)刻的LSTM記憶單元[9]。
雖然LSTMNN的記憶機(jī)制有利于對(duì)長(zhǎng)期流量的精確預(yù)測(cè),但計(jì)算耗時(shí),該問題可由門控循環(huán)單元神經(jīng)網(wǎng)絡(luò)(GRUNN)改善。GRUNN作為L(zhǎng)STMNN的變體,將LSTMNN的遺忘門和輸入門組合成更新門,同時(shí)合并記憶單元狀態(tài)Ct和隱含層狀態(tài)ht,使得GRUNN在保證預(yù)測(cè)精度的同時(shí),減少訓(xùn)練參數(shù),加快訓(xùn)練速度,已被廣泛應(yīng)用于具有長(zhǎng)期依賴性的時(shí)間序列預(yù)測(cè)。
圖4 長(zhǎng)短期記憶單元Fig.4 LSTM unit
本實(shí)驗(yàn)使用的系統(tǒng)為Windows 8.1,CPU為Core i5-5200U,GPU為AMD R5 M230,計(jì)算機(jī)編程語言為C++,集成開發(fā)環(huán)境是Microsoft Visual Studio 2019。
實(shí)驗(yàn)所用數(shù)據(jù)集來自英國(guó)學(xué)術(shù)骨干網(wǎng)(the UK Academic Network Backbone),時(shí)間從2004年11月19日09:30:00至2005年1月25日00:30:00,第一個(gè)數(shù)據(jù)集按小時(shí)進(jìn)行采集,第二個(gè)數(shù)據(jù)集按天進(jìn)行采集,訓(xùn)練集與測(cè)試集的比例都為4:1。
在利用NN對(duì)網(wǎng)絡(luò)流量進(jìn)行預(yù)測(cè)前,需要確定NN的結(jié)構(gòu)參數(shù)。取輸入層節(jié)點(diǎn)數(shù)為24,輸出層節(jié)點(diǎn)數(shù)為1,隱含層數(shù)目和每層的節(jié)點(diǎn)數(shù)則是通過實(shí)驗(yàn)選取最優(yōu)值,二者的取值范圍分別為{1,2,4,8}和[5,21]。在進(jìn)行實(shí)驗(yàn)前,先采用Min-Max歸一化方法對(duì)流量數(shù)據(jù)進(jìn)行處理,把數(shù)據(jù)映射到0~1范圍內(nèi)。
圖5給出了3種NN的預(yù)測(cè)性能隨隱含層節(jié)點(diǎn)數(shù)變化的趨勢(shì)。由圖5(a)可知,當(dāng)隱含層節(jié)點(diǎn)數(shù)逐漸增加時(shí),3種NN的MAPE先降低再升高,存在一個(gè)極小值點(diǎn)。當(dāng)隱含層節(jié)點(diǎn)數(shù)過少時(shí),NN擬合數(shù)據(jù)能力不足,導(dǎo)致預(yù)測(cè)精度較低;反之,當(dāng)隱含層節(jié)點(diǎn)數(shù)過大時(shí),NN容易陷入過擬合,導(dǎo)致預(yù)測(cè)精度下降,BPNN、RBFNN和LSTMNN分別在隱含層節(jié)點(diǎn)數(shù)為19、16和10時(shí)預(yù)測(cè)精度最高。由圖5(b)可知,3種NN的運(yùn)行時(shí)間隨著隱含層節(jié)點(diǎn)數(shù)增加而成倍增長(zhǎng),這是因?yàn)殡[含層節(jié)點(diǎn)數(shù)越多,NN的計(jì)算復(fù)雜度越高,程序運(yùn)行時(shí)間越長(zhǎng)。因此,綜合考慮預(yù)測(cè)精度和運(yùn)行時(shí)間,選擇BPNN、RBFNN和LSTMNN的隱含層節(jié)點(diǎn)數(shù)分別為19、16和10。
(a) 隱含層節(jié)點(diǎn)對(duì)MAPE影響
RBFNN的隱含層數(shù)目為1,因此只比較隱含層數(shù)目對(duì)BPNN和LSTMNN預(yù)測(cè)精度及運(yùn)行時(shí)間的影響。如圖6所示,隨著隱含層數(shù)目的增加,BPNN和LSTMNN的預(yù)測(cè)精度降低,運(yùn)行時(shí)間增長(zhǎng)。這源于過多的隱含層數(shù)目可能會(huì)使NN陷入過擬合,導(dǎo)致預(yù)測(cè)精度降低,同時(shí)增加NN計(jì)算復(fù)雜度和計(jì)算用時(shí)。因此,綜合考慮預(yù)測(cè)精度和運(yùn)行時(shí)間,BPNN和LSTMNN的隱含層數(shù)目為1時(shí)預(yù)測(cè)性能較好。
下面將分別用BPNN、RBFNN和LSTMNN這3種模型預(yù)測(cè)時(shí)間尺度為小時(shí)和天的網(wǎng)絡(luò)流量。NN的預(yù)測(cè)精度采用均方根誤差(RMSE)[15]、平均絕對(duì)誤差(MAE)[15]和平均絕對(duì)百分比誤差(MAPE)[16]。
(a) 隱含層數(shù)目對(duì)MAPE的影響
圖7給出了時(shí)間尺度為小時(shí)的網(wǎng)絡(luò)流量預(yù)測(cè)結(jié)果,由圖可看出流量呈現(xiàn)周期性,周期為24 h,符合因特網(wǎng)用戶的網(wǎng)絡(luò)使用習(xí)慣,3條預(yù)測(cè)曲線都較好地?cái)M合實(shí)際流量值。
表1給出了3種NN的預(yù)測(cè)精度及其相應(yīng)的訓(xùn)練時(shí)間。在預(yù)測(cè)精度方面,由于LSTMNN的門控機(jī)制有助于捕獲時(shí)間序列的特征,LSTMNN精度最高,RBFNN次之,BPNN最差;RBFNN相比BPNN可以任意精度逼近連續(xù)的非線性函數(shù),具有良好的泛化能力,但由于缺乏記憶機(jī)制,預(yù)測(cè)精度較LSTMNN差;BPNN單純使用梯度下降法,對(duì)非線性時(shí)間序列的擬合能力有限,因此相較于前二者,其預(yù)測(cè)精度最低。在訓(xùn)練時(shí)間方面,BPNN比RBFNN的隱含層節(jié)點(diǎn)數(shù)更多、計(jì)算復(fù)雜,RBFNN耗時(shí)最短,BPNN次之,LSTMNN所花時(shí)間最長(zhǎng);LSTMNN引入反饋系統(tǒng)和門控機(jī)制結(jié)構(gòu)復(fù)雜,導(dǎo)致預(yù)測(cè)所花時(shí)間較長(zhǎng)。
圖7 不同神經(jīng)網(wǎng)絡(luò)的流量預(yù)測(cè)性能比較Fig.7 Traffic prediction performance comparison of different neural networks
表1 神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)精度與訓(xùn)練時(shí)間Tab.1 Prediction accuracy and time consumed of neural networks
圖8給出了時(shí)間尺度為天的網(wǎng)絡(luò)流量預(yù)測(cè)結(jié)果,其同樣具有周期性且周期為7天,LSTMNN預(yù)測(cè)結(jié)果較好地?cái)M合實(shí)際流量值,而BPNN和RBFNN預(yù)測(cè)值與流量實(shí)際值走勢(shì)相近,3種模型中BPNN相差最大。
圖8 不同神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)性能比較Fig.8 Prediction performance comparison of different neural networks
表2列出了3種NN的預(yù)測(cè)精度和訓(xùn)練時(shí)間。當(dāng)時(shí)間尺度為天時(shí),網(wǎng)絡(luò)流量數(shù)據(jù)的關(guān)聯(lián)性降低,BPNN和RBFNN無法很好捕獲數(shù)據(jù)的長(zhǎng)期依存關(guān)系,導(dǎo)致預(yù)測(cè)精度降低;LSTMNN具有記憶單元,可以學(xué)習(xí)流量的長(zhǎng)期特征,因此適合預(yù)測(cè)具有長(zhǎng)相關(guān)性的流量。在訓(xùn)練時(shí)間方面,LSTMNN所花時(shí)間最長(zhǎng),但與BPNN和RBFNN的訓(xùn)練時(shí)間相差較小,這是由于時(shí)間尺度為天的網(wǎng)絡(luò)流量數(shù)據(jù)數(shù)目有限,3種神經(jīng)網(wǎng)絡(luò)所耗費(fèi)的時(shí)間差距不大。
表2 神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)精度與運(yùn)行時(shí)間Tab.2 Prediction accuracy and time consumed of neural networks
根據(jù)上述實(shí)驗(yàn)可知,BPNN和RBFNN具有良好的非線性擬合能力和自學(xué)習(xí)能力,但由于缺乏記憶機(jī)制,只適合短期網(wǎng)絡(luò)流量預(yù)測(cè);LSTMNN引入門控機(jī)制,能夠?qū)W習(xí)時(shí)間序列的長(zhǎng)期依賴性,更適合具有復(fù)雜特性的網(wǎng)絡(luò)流量預(yù)測(cè)[17]。
本文將BPNN、RBFNN和LSTMNN應(yīng)用于網(wǎng)絡(luò)流量預(yù)測(cè),研究超參數(shù)設(shè)置對(duì)3種NN預(yù)測(cè)性能的影響,并對(duì)比3種NN在各自最優(yōu)超參數(shù)下的預(yù)測(cè)性能。在預(yù)測(cè)時(shí)間尺度為小時(shí)的網(wǎng)絡(luò)流量數(shù)據(jù)時(shí),3種NN預(yù)測(cè)精度大致相同,但對(duì)時(shí)間尺度為天的網(wǎng)絡(luò)流量數(shù)據(jù)預(yù)測(cè)時(shí),LSTMNN長(zhǎng)期記憶的優(yōu)勢(shì)得以體現(xiàn),其預(yù)測(cè)精度比BPNN和RNFNN高。通過分析以上3種神經(jīng)網(wǎng)絡(luò)的優(yōu)缺點(diǎn),并結(jié)合現(xiàn)有研究,可得到以下研究設(shè)想:
任何單一模型都有其適應(yīng)場(chǎng)景,無法很好地刻畫網(wǎng)絡(luò)流量的真實(shí)特性,難免會(huì)產(chǎn)生比較大的誤差;組合預(yù)測(cè)模型能夠更加精確地反映真實(shí)的網(wǎng)絡(luò)流量,通常具有更高的預(yù)測(cè)精度。例如,文獻(xiàn)[18]以灰色理論、ARIMA和NN模型為基礎(chǔ),提出了一種固定權(quán)系數(shù)的組合預(yù)測(cè)模型,在相對(duì)誤差與均方誤差等方面均優(yōu)于單一模型,有效性和可行性均高,值得進(jìn)一步研究。
隨著網(wǎng)絡(luò)日益復(fù)雜化以及各類業(yè)務(wù)對(duì)傳輸質(zhì)量(QoT)要求的提高,實(shí)現(xiàn)快速的故障預(yù)測(cè)和故障定位具有重要的實(shí)用價(jià)值,可利用NN強(qiáng)大的自學(xué)習(xí)能力分析網(wǎng)絡(luò)特征參數(shù),實(shí)現(xiàn)網(wǎng)絡(luò)故障的精準(zhǔn)預(yù)測(cè)與快速定位,大幅提高網(wǎng)絡(luò)的智能運(yùn)維性能。