【摘要】為了提高網(wǎng)絡(luò)流量預(yù)測精度,提出一種基于遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測模型(GA-BPNN)。首先采集網(wǎng)絡(luò)流量數(shù)據(jù),并進(jìn)行相應(yīng)預(yù)處理,然后將網(wǎng)絡(luò)流量訓(xùn)練樣本輸入到BP神經(jīng)網(wǎng)絡(luò)進(jìn)行學(xué)習(xí),并采用遺傳算法對BP神經(jīng)網(wǎng)絡(luò)參數(shù)進(jìn)行優(yōu)化,最后采用建立的網(wǎng)絡(luò)流量預(yù)測模型對網(wǎng)絡(luò)流量測試集進(jìn)行預(yù)測,并通過仿真實(shí)驗(yàn)對模型性能進(jìn)行測試。結(jié)果表明,GA-BPNN提高了網(wǎng)絡(luò)流量的預(yù)測精度,獲得比較理想的網(wǎng)絡(luò)流量預(yù)測結(jié)果。
【關(guān)鍵詞】網(wǎng)絡(luò)流量;BP神經(jīng)網(wǎng)絡(luò);遺傳算法;參數(shù)優(yōu)化
【中圖分類號(hào) 】TP183【文獻(xiàn)標(biāo)識(shí)碼】A
1引言
網(wǎng)絡(luò)流量預(yù)測對于分析和理解網(wǎng)絡(luò)將要發(fā)生的網(wǎng)絡(luò)行為、指導(dǎo)網(wǎng)絡(luò)安全檢測與控制具有重要的意義,網(wǎng)絡(luò)流量具有非線性、多時(shí)間和多尺度等變化特性,如何建立高精度的網(wǎng)絡(luò)流量預(yù)測模型已經(jīng)成為研究熱點(diǎn)之一。
當(dāng)前網(wǎng)絡(luò)流量均基于統(tǒng)計(jì)方法進(jìn)行建模,是通過對預(yù)測網(wǎng)絡(luò)流量過去的數(shù)據(jù)及資料進(jìn)行統(tǒng)計(jì)和分析,對其未來的網(wǎng)絡(luò)流量發(fā)展趨勢進(jìn)行定量的預(yù)測,主要有時(shí)間序列法和BP神經(jīng)網(wǎng)絡(luò)方法。時(shí)間序列預(yù)測法因根據(jù)事物過去的變化趨勢預(yù)測未來的發(fā)展,突出時(shí)間因素,外界因素不計(jì)入影響,在短期且沒有相對比較大的變化時(shí)預(yù)測結(jié)果比較理想,但是當(dāng)外界出現(xiàn)巨變,往往會(huì)出現(xiàn)比較大的偏差。因此,時(shí)間序列預(yù)測法適用于漸進(jìn)變化的預(yù)測對象,沒有明顯波動(dòng),而網(wǎng)絡(luò)流量受到多種因素影響,具有非線性、多時(shí)間和多尺度等變化的特性,因此時(shí)間序列法預(yù)測精度比較低。BP(Back Propagation)網(wǎng)絡(luò)是一種按誤差逆向傳播算法訓(xùn)練的多層前饋網(wǎng)絡(luò),是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一,具有自組織、自適應(yīng)、自學(xué)習(xí)等特點(diǎn),具有很強(qiáng)的輸入輸出非線性映射能力,對解決非線性問題有著獨(dú)特的先進(jìn)性,成為當(dāng)前網(wǎng)絡(luò)流量建模與預(yù)測主要工具。但是,由于采用了誤差函數(shù)按梯度下降的學(xué)習(xí)算法,極易陷入局部最小值點(diǎn)。此外,BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法收斂慢,系統(tǒng)魯棒性差,網(wǎng)絡(luò)的性能對初始設(shè)置值依賴比較大。因此BP神經(jīng)網(wǎng)絡(luò)需要進(jìn)行改進(jìn)才能更好地應(yīng)用到實(shí)際中。
為了提高網(wǎng)絡(luò)流量預(yù)測精度,提出一種基于遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測模型(GA-BPNN)。首先采集網(wǎng)絡(luò)流量數(shù)據(jù),并進(jìn)行相應(yīng)預(yù)處理,然后將網(wǎng)絡(luò)流量訓(xùn)練樣本輸入到BP神經(jīng)網(wǎng)絡(luò)進(jìn)行學(xué)習(xí),并采用遺傳算法對BP神經(jīng)網(wǎng)絡(luò)參數(shù)進(jìn)行優(yōu)化,最后采用建立的網(wǎng)絡(luò)流量預(yù)測模型對網(wǎng)絡(luò)流量測試集進(jìn)行預(yù)測,并通過仿真實(shí)驗(yàn)對模型性能進(jìn)行測試。
2BP神經(jīng)網(wǎng)絡(luò)和遺傳算法
2.1BP神經(jīng)網(wǎng)絡(luò)概述
BP神經(jīng)網(wǎng)絡(luò)基本思想是網(wǎng)絡(luò)訓(xùn)練過程由正向傳播與誤差反向傳播兩個(gè)過程組成。正向傳播輸入樣本由輸入層傳入經(jīng)隱層單元處理并計(jì)算每個(gè)單元實(shí)際輸出傳向輸出層,若此時(shí)實(shí)際輸出與期望輸出相符,則網(wǎng)絡(luò)訓(xùn)練成功結(jié)束,否則轉(zhuǎn)入誤差反向傳播。誤差反向傳播從輸出層開始經(jīng)隱層向輸入層逐層返回,根據(jù)實(shí)際輸出與期望輸出的誤差修改各層單元連接權(quán)值。
BP神經(jīng)網(wǎng)絡(luò)正向傳播與反向傳播對各層單元權(quán)值修改是一個(gè)反復(fù)的過程,直到實(shí)際輸出與期望相符或達(dá)到最大的訓(xùn)練次數(shù)為止。典型三層BP神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)如圖1所示。
設(shè)wij為輸入層第i個(gè)神經(jīng)元與隱層第j個(gè)神經(jīng)元的連接權(quán)值。
1)正向傳播。輸入層:神經(jīng)元i的輸出值Oi等于輸入值Ii對隱層,輸出層:
Ij =wijOi-θi(1)
Oj =f(Ij)(2)
作用函數(shù)f為Sigmoid函數(shù),f(Ij) = 。
2)反向傳播。輸出層實(shí)際輸出yk與期望dk不一致時(shí),有誤差函數(shù):
E=(dk -yk)2(3)
連接權(quán)值的修改按以下公式計(jì)算:
wjk(t+1) = wjk(t)+△wjk(4)
BP算法采用梯度下降方向修改連接權(quán)值,變化權(quán)值為:
△wjk =-η =-η δkOj(5)
其中學(xué)習(xí)率η取值為0<η<1,即對于輸出層:
△wjk =ηyk(1-yk)(dk-yk) (6)
對于隱層:
△wjk =ηOj(1-Oj) δkwjk(7)
2.2BP神經(jīng)網(wǎng)絡(luò)算法實(shí)現(xiàn)步驟
(1)初始化,對所有聯(lián)結(jié)權(quán)w隨機(jī)生成任意小的值,閾值θ的初始值及設(shè)定訓(xùn)練次數(shù)。
(2)輸入訓(xùn)練樣本及期望(xn,dm)。
(3)前向傳播。計(jì)算隱層及輸出層j單元輸入
Ij=wijOi-θi ,單元j輸出Oj =;
(4) 輸出層yk與dk不相符按反向誤差傳播調(diào)整權(quán)值,從輸出到隱層按下式更新權(quán)值。
wjk(t+1) = wjk(t)+△wjk(8)
當(dāng)k為輸出層:△w=ηyk(1-yk)(dk-yk) ,當(dāng)k為隱層:△w =ηOj(1-Oj) δkwjk計(jì)算。
(5) 轉(zhuǎn)(2)重復(fù)執(zhí)行,直到誤差滿足或達(dá)到最大訓(xùn)練次數(shù)為止。
標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)用梯度下降算法求解,易陷入局部極小值,在網(wǎng)絡(luò)訓(xùn)練學(xué)習(xí)中難以避免學(xué)習(xí)收斂速度慢及訓(xùn)練過程出現(xiàn)振蕩的問題,為此采用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的參數(shù)。
2.3遺傳算法
遺傳算法的優(yōu)化原理是從隨機(jī)生成的初始群體出發(fā),采用基于優(yōu)勝劣汰的選擇策略選擇優(yōu)良個(gè)體作為父代,通過父代個(gè)體的復(fù)制、雜交和變異來繁衍進(jìn)化的子代種群。經(jīng)過多代的進(jìn)化,種群的適應(yīng)性會(huì)逐漸增強(qiáng)。遺傳算法的優(yōu)化是通過遺傳算法中復(fù)制、雜交和變異算子的操作來實(shí)現(xiàn)的。
(1) 復(fù)制是進(jìn)化個(gè)體經(jīng)過輪盤賭選擇,使父代的優(yōu)良個(gè)體以較大的概率在子代中得到繼承的遺傳過程。
(2) 雜交是指父代中個(gè)體隨機(jī)的交換染色體的基因在子代中產(chǎn)生新的個(gè)體。endprint
(3) 變異是個(gè)體染色體的基因以變異概率發(fā)生隨機(jī)質(zhì)變的過程。
雜交和變異使后代中產(chǎn)生新個(gè)體,復(fù)制使父代的基因在子代中得以繼承,從而使生物物種在繼承的基礎(chǔ)上不斷進(jìn)化。它可以避免局部優(yōu)化從而保證收斂的全局搜索性。
3遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測模型
(1) 收集網(wǎng)絡(luò)流量歷史數(shù)據(jù),并對其進(jìn)行預(yù)處理。
(2) 初始化種群。隨機(jī)產(chǎn)生一組個(gè)體,每一個(gè)個(gè)體包括BP神經(jīng)網(wǎng)絡(luò)初始連接權(quán)值和初始閾值。
(3) 對個(gè)體進(jìn)行解碼,根據(jù)相關(guān)聯(lián)函數(shù)法確定τ、m,并對網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行重構(gòu),并初始連接權(quán)值和閾值作為BP神經(jīng)網(wǎng)絡(luò)參數(shù)進(jìn)行網(wǎng)絡(luò)流量訓(xùn)練,根據(jù)預(yù)測結(jié)果計(jì)算個(gè)體適應(yīng)度值。適應(yīng)度函數(shù)f(x)定義如下:
f(x)=(y-)(9)
式中,y為BP神經(jīng)網(wǎng)絡(luò)的預(yù)測值,為網(wǎng)絡(luò)流量實(shí)際值,n表示訓(xùn)練樣本個(gè)數(shù)。
(4) 采用最佳保留策略和輪盤賭選擇較優(yōu)的個(gè)體進(jìn)行下一代。
(5) 根據(jù)交叉概率選擇兩個(gè)個(gè)體進(jìn)行交叉操作,選擇最優(yōu)個(gè)體進(jìn)行下一代。
(6) 根據(jù)變異概率選擇兩個(gè)個(gè)體進(jìn)行變異操作,選擇最優(yōu)個(gè)體進(jìn)行下一代。
(7) 判斷算法結(jié)束條件,若滿足結(jié)束條件則返回全局最優(yōu)個(gè)體,若不滿足,進(jìn)化代數(shù)加1,并跳轉(zhuǎn)至(3)繼續(xù)優(yōu)化。
(8) 將最優(yōu)個(gè)體解碼成為BP神經(jīng)網(wǎng)絡(luò)的初始連接權(quán)值和閾值。
(9) 根據(jù)初始連接權(quán)值和閾值建立最優(yōu)網(wǎng)絡(luò)流量預(yù)測模型。
4仿真實(shí)驗(yàn)
4.1數(shù)據(jù)來源
實(shí)驗(yàn)數(shù)據(jù)來源于某學(xué)校網(wǎng)絡(luò)中心服務(wù)器,從2013年2月1日到2月21日每天網(wǎng)絡(luò)的每小時(shí)訪問流量,得到480個(gè)數(shù)據(jù),以前380個(gè)數(shù)據(jù)作為訓(xùn)練集建立網(wǎng)絡(luò)流量預(yù)測模型,后100個(gè)數(shù)據(jù)作為測試集進(jìn)行預(yù)測檢驗(yàn),具體如圖2所示。
4.2數(shù)據(jù)歸一化處理
BP神經(jīng)網(wǎng)絡(luò)模型在訓(xùn)練時(shí)對在0-1之間的數(shù)據(jù)最為靈敏,然而實(shí)際網(wǎng)絡(luò)流量具有突變性,變化幅度較大,為了提高訓(xùn)練的效率,對其進(jìn)行歸一化處理,具體為:
x'=(10)
最后對網(wǎng)絡(luò)流量預(yù)測結(jié)果進(jìn)行反歸一化處理,恢復(fù)真實(shí)預(yù)測值。
x=x'(xmax-xmin) +xmin(11)
式中x表示網(wǎng)絡(luò)流量原始數(shù)據(jù),xmin和xmax表示分別最小值和最大值。
4.3模型評價(jià)指標(biāo)
為了說明GA-BPNN模型的有效性,在Matlab2021環(huán)境下進(jìn)行仿真實(shí)驗(yàn)。同時(shí)為了使GA-BPNN模型的預(yù)測結(jié)果具有可比性,采用標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)(BPNN)作為對比模型。模型性能的評價(jià)指標(biāo)為均方根誤差(root mean squared predict error,RMSE)和平均絕對百分誤差(mean absolute percentage error,MAPE),具體定義如下:
RMSE=(12)
MAPE=
×100(13)
式中y表示網(wǎng)絡(luò)流量實(shí)際觀測值,表示預(yù)測值。
4.4結(jié)果與分析
4.4.1 不含噪網(wǎng)絡(luò)流量的預(yù)測結(jié)果分析
首先采用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)參數(shù),然后采用最優(yōu)參數(shù)BP神經(jīng)網(wǎng)絡(luò)建立網(wǎng)絡(luò)流量預(yù)測模型,GA-BPNN、BPNN對測試集的預(yù)測結(jié)果及預(yù)測誤差如圖3和4所示。從圖3可知,GA-BPNN的預(yù)測結(jié)果與實(shí)際網(wǎng)絡(luò)流量的值相當(dāng)吻合,十分接近,這表明GA-BPNN可用于現(xiàn)代復(fù)雜多變、隨機(jī)的網(wǎng)絡(luò)流量預(yù)測,同時(shí)從圖4可知,GA-BPNN的預(yù)測誤差相當(dāng)小,可以滿足網(wǎng)絡(luò)流量預(yù)測精度的要求。
GA-BPNN與對比模型的預(yù)測誤差見表1。根據(jù)表1可知,相對于對比模型,GA-BPNN預(yù)測誤差更高,相應(yīng)的網(wǎng)絡(luò)流量預(yù)測精度更高,這表明,GA-BPNN通過遺傳算法對BPNN參數(shù)優(yōu)化和選擇,克服BP神經(jīng)網(wǎng)絡(luò)等預(yù)測精度低的缺陷,GA-BPNN是一種精度高、預(yù)測結(jié)果可靠的網(wǎng)絡(luò)流量預(yù)測模型。
4.4.2 含噪網(wǎng)絡(luò)流量的預(yù)測結(jié)果分析
為了測試GA-BPNN的通用性,對一個(gè)含噪的網(wǎng)絡(luò)流量進(jìn)行仿真實(shí)驗(yàn),含噪的網(wǎng)絡(luò)流量如圖5所示。GA-BPNN的含噪網(wǎng)絡(luò)流量數(shù)據(jù)預(yù)測結(jié)果及預(yù)測誤差如圖6和7所示。從圖6和7可知,對于含噪的網(wǎng)絡(luò)流量,GA-BPNN同樣獲得了較理想的預(yù)測結(jié)果,這表明GA-BPNN采用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò),獲得了較好的網(wǎng)絡(luò)流量訓(xùn)練集,增加了模型的魯棒性和通用性,拓寬了GA-BPNN在網(wǎng)絡(luò)流量的應(yīng)用范圍。
GA-BPNN與BPNN對含噪網(wǎng)絡(luò)流量預(yù)測誤差見表2。從表2可知,相對于對比模型,GA-BPNN的整體預(yù)測性能更優(yōu),建立了誤差更小的網(wǎng)絡(luò)流量預(yù)測模型,再一次證明了GA-BPNN的優(yōu)越性。
5結(jié)束語
為了提高網(wǎng)絡(luò)流量預(yù)測精度,針對BP神經(jīng)網(wǎng)絡(luò)參數(shù)優(yōu)化難題,提出一種遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測模型,仿真結(jié)果表明,GA-BPNN不僅提高了網(wǎng)絡(luò)流量的預(yù)測精度,為復(fù)雜多變的網(wǎng)絡(luò)流量提供了一種新的研究思路。
參考文獻(xiàn)
[1] Nguyen T T, Armitage G. A survey of techniques for internet traffic classification using machine learning [J]. IEEE Communications Surveys and Tutorials, 2008, 10(4):56-76.
[2] 馬華林.基于灰色模型和自適應(yīng)過濾的網(wǎng)絡(luò)流量預(yù)測[J].計(jì)算機(jī)工程,2009,35(1):130-131.
[3] Mao Yongyi, Li Baochun. A factor graph approach to link loss monitoring in wireless sensor networks [J]. IEEE Journal on Selected Areas in Communications, 2006,23(4):820-829.
[4] Callado A, Keu R J, Sadok D, et a1.Better network traffic identification through the independent combination of techniques [J]. Journal of Network and Computer Applications, 2010, 33(4):433-446.
[5] 姚奇富,李翠鳳,馬華林,張森. 灰色系統(tǒng)理論和馬爾柯夫鏈相結(jié)合的網(wǎng)絡(luò)流量預(yù)測方法[J].浙江大學(xué)學(xué)報(bào)(理學(xué)版),2007,34(4):396-400.
[6] 劉淵,戴悅,曹建華.基于小波神經(jīng)網(wǎng)絡(luò)的流量混沌時(shí)間序列預(yù)測[J].計(jì)算機(jī)工程,2008,34(16):105-106.
[7] 陳曉天,張順頤,田婷婷. 基于BP神經(jīng)網(wǎng)絡(luò)的IP網(wǎng)絡(luò)流量預(yù)測[J].南京郵電大學(xué)學(xué)報(bào)(自然科學(xué)版),2012, 30(2):16-21.
[8] 李松,羅勇,張銘銳. 遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的混沌時(shí)間序列預(yù)測[J].計(jì)算機(jī)工程與應(yīng)用,2011, 47(29):52-55.
[9] 趙振江. 基于PSO-BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測與研究[J]. 計(jì)算機(jī)應(yīng)用與軟件,2009,26(1):218-211.
[10] 張穎路. 基于遺傳算法優(yōu)化支持向量機(jī)的網(wǎng)絡(luò)流量預(yù)測[J].計(jì)算機(jī)科學(xué),2008,35(5):177-179.
作者簡介:
劉春(1981-),男,碩士,四川建筑職業(yè)技術(shù)學(xué)院網(wǎng)絡(luò)管理中心,講師;主要研究方向和關(guān)注領(lǐng)域:計(jì)算機(jī)網(wǎng)絡(luò)管理。endprint
(3) 變異是個(gè)體染色體的基因以變異概率發(fā)生隨機(jī)質(zhì)變的過程。
雜交和變異使后代中產(chǎn)生新個(gè)體,復(fù)制使父代的基因在子代中得以繼承,從而使生物物種在繼承的基礎(chǔ)上不斷進(jìn)化。它可以避免局部優(yōu)化從而保證收斂的全局搜索性。
3遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測模型
(1) 收集網(wǎng)絡(luò)流量歷史數(shù)據(jù),并對其進(jìn)行預(yù)處理。
(2) 初始化種群。隨機(jī)產(chǎn)生一組個(gè)體,每一個(gè)個(gè)體包括BP神經(jīng)網(wǎng)絡(luò)初始連接權(quán)值和初始閾值。
(3) 對個(gè)體進(jìn)行解碼,根據(jù)相關(guān)聯(lián)函數(shù)法確定τ、m,并對網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行重構(gòu),并初始連接權(quán)值和閾值作為BP神經(jīng)網(wǎng)絡(luò)參數(shù)進(jìn)行網(wǎng)絡(luò)流量訓(xùn)練,根據(jù)預(yù)測結(jié)果計(jì)算個(gè)體適應(yīng)度值。適應(yīng)度函數(shù)f(x)定義如下:
f(x)=(y-)(9)
式中,y為BP神經(jīng)網(wǎng)絡(luò)的預(yù)測值,為網(wǎng)絡(luò)流量實(shí)際值,n表示訓(xùn)練樣本個(gè)數(shù)。
(4) 采用最佳保留策略和輪盤賭選擇較優(yōu)的個(gè)體進(jìn)行下一代。
(5) 根據(jù)交叉概率選擇兩個(gè)個(gè)體進(jìn)行交叉操作,選擇最優(yōu)個(gè)體進(jìn)行下一代。
(6) 根據(jù)變異概率選擇兩個(gè)個(gè)體進(jìn)行變異操作,選擇最優(yōu)個(gè)體進(jìn)行下一代。
(7) 判斷算法結(jié)束條件,若滿足結(jié)束條件則返回全局最優(yōu)個(gè)體,若不滿足,進(jìn)化代數(shù)加1,并跳轉(zhuǎn)至(3)繼續(xù)優(yōu)化。
(8) 將最優(yōu)個(gè)體解碼成為BP神經(jīng)網(wǎng)絡(luò)的初始連接權(quán)值和閾值。
(9) 根據(jù)初始連接權(quán)值和閾值建立最優(yōu)網(wǎng)絡(luò)流量預(yù)測模型。
4仿真實(shí)驗(yàn)
4.1數(shù)據(jù)來源
實(shí)驗(yàn)數(shù)據(jù)來源于某學(xué)校網(wǎng)絡(luò)中心服務(wù)器,從2013年2月1日到2月21日每天網(wǎng)絡(luò)的每小時(shí)訪問流量,得到480個(gè)數(shù)據(jù),以前380個(gè)數(shù)據(jù)作為訓(xùn)練集建立網(wǎng)絡(luò)流量預(yù)測模型,后100個(gè)數(shù)據(jù)作為測試集進(jìn)行預(yù)測檢驗(yàn),具體如圖2所示。
4.2數(shù)據(jù)歸一化處理
BP神經(jīng)網(wǎng)絡(luò)模型在訓(xùn)練時(shí)對在0-1之間的數(shù)據(jù)最為靈敏,然而實(shí)際網(wǎng)絡(luò)流量具有突變性,變化幅度較大,為了提高訓(xùn)練的效率,對其進(jìn)行歸一化處理,具體為:
x'=(10)
最后對網(wǎng)絡(luò)流量預(yù)測結(jié)果進(jìn)行反歸一化處理,恢復(fù)真實(shí)預(yù)測值。
x=x'(xmax-xmin) +xmin(11)
式中x表示網(wǎng)絡(luò)流量原始數(shù)據(jù),xmin和xmax表示分別最小值和最大值。
4.3模型評價(jià)指標(biāo)
為了說明GA-BPNN模型的有效性,在Matlab2021環(huán)境下進(jìn)行仿真實(shí)驗(yàn)。同時(shí)為了使GA-BPNN模型的預(yù)測結(jié)果具有可比性,采用標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)(BPNN)作為對比模型。模型性能的評價(jià)指標(biāo)為均方根誤差(root mean squared predict error,RMSE)和平均絕對百分誤差(mean absolute percentage error,MAPE),具體定義如下:
RMSE=(12)
MAPE=
×100(13)
式中y表示網(wǎng)絡(luò)流量實(shí)際觀測值,表示預(yù)測值。
4.4結(jié)果與分析
4.4.1 不含噪網(wǎng)絡(luò)流量的預(yù)測結(jié)果分析
首先采用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)參數(shù),然后采用最優(yōu)參數(shù)BP神經(jīng)網(wǎng)絡(luò)建立網(wǎng)絡(luò)流量預(yù)測模型,GA-BPNN、BPNN對測試集的預(yù)測結(jié)果及預(yù)測誤差如圖3和4所示。從圖3可知,GA-BPNN的預(yù)測結(jié)果與實(shí)際網(wǎng)絡(luò)流量的值相當(dāng)吻合,十分接近,這表明GA-BPNN可用于現(xiàn)代復(fù)雜多變、隨機(jī)的網(wǎng)絡(luò)流量預(yù)測,同時(shí)從圖4可知,GA-BPNN的預(yù)測誤差相當(dāng)小,可以滿足網(wǎng)絡(luò)流量預(yù)測精度的要求。
GA-BPNN與對比模型的預(yù)測誤差見表1。根據(jù)表1可知,相對于對比模型,GA-BPNN預(yù)測誤差更高,相應(yīng)的網(wǎng)絡(luò)流量預(yù)測精度更高,這表明,GA-BPNN通過遺傳算法對BPNN參數(shù)優(yōu)化和選擇,克服BP神經(jīng)網(wǎng)絡(luò)等預(yù)測精度低的缺陷,GA-BPNN是一種精度高、預(yù)測結(jié)果可靠的網(wǎng)絡(luò)流量預(yù)測模型。
4.4.2 含噪網(wǎng)絡(luò)流量的預(yù)測結(jié)果分析
為了測試GA-BPNN的通用性,對一個(gè)含噪的網(wǎng)絡(luò)流量進(jìn)行仿真實(shí)驗(yàn),含噪的網(wǎng)絡(luò)流量如圖5所示。GA-BPNN的含噪網(wǎng)絡(luò)流量數(shù)據(jù)預(yù)測結(jié)果及預(yù)測誤差如圖6和7所示。從圖6和7可知,對于含噪的網(wǎng)絡(luò)流量,GA-BPNN同樣獲得了較理想的預(yù)測結(jié)果,這表明GA-BPNN采用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò),獲得了較好的網(wǎng)絡(luò)流量訓(xùn)練集,增加了模型的魯棒性和通用性,拓寬了GA-BPNN在網(wǎng)絡(luò)流量的應(yīng)用范圍。
GA-BPNN與BPNN對含噪網(wǎng)絡(luò)流量預(yù)測誤差見表2。從表2可知,相對于對比模型,GA-BPNN的整體預(yù)測性能更優(yōu),建立了誤差更小的網(wǎng)絡(luò)流量預(yù)測模型,再一次證明了GA-BPNN的優(yōu)越性。
5結(jié)束語
為了提高網(wǎng)絡(luò)流量預(yù)測精度,針對BP神經(jīng)網(wǎng)絡(luò)參數(shù)優(yōu)化難題,提出一種遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測模型,仿真結(jié)果表明,GA-BPNN不僅提高了網(wǎng)絡(luò)流量的預(yù)測精度,為復(fù)雜多變的網(wǎng)絡(luò)流量提供了一種新的研究思路。
參考文獻(xiàn)
[1] Nguyen T T, Armitage G. A survey of techniques for internet traffic classification using machine learning [J]. IEEE Communications Surveys and Tutorials, 2008, 10(4):56-76.
[2] 馬華林.基于灰色模型和自適應(yīng)過濾的網(wǎng)絡(luò)流量預(yù)測[J].計(jì)算機(jī)工程,2009,35(1):130-131.
[3] Mao Yongyi, Li Baochun. A factor graph approach to link loss monitoring in wireless sensor networks [J]. IEEE Journal on Selected Areas in Communications, 2006,23(4):820-829.
[4] Callado A, Keu R J, Sadok D, et a1.Better network traffic identification through the independent combination of techniques [J]. Journal of Network and Computer Applications, 2010, 33(4):433-446.
[5] 姚奇富,李翠鳳,馬華林,張森. 灰色系統(tǒng)理論和馬爾柯夫鏈相結(jié)合的網(wǎng)絡(luò)流量預(yù)測方法[J].浙江大學(xué)學(xué)報(bào)(理學(xué)版),2007,34(4):396-400.
[6] 劉淵,戴悅,曹建華.基于小波神經(jīng)網(wǎng)絡(luò)的流量混沌時(shí)間序列預(yù)測[J].計(jì)算機(jī)工程,2008,34(16):105-106.
[7] 陳曉天,張順頤,田婷婷. 基于BP神經(jīng)網(wǎng)絡(luò)的IP網(wǎng)絡(luò)流量預(yù)測[J].南京郵電大學(xué)學(xué)報(bào)(自然科學(xué)版),2012, 30(2):16-21.
[8] 李松,羅勇,張銘銳. 遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的混沌時(shí)間序列預(yù)測[J].計(jì)算機(jī)工程與應(yīng)用,2011, 47(29):52-55.
[9] 趙振江. 基于PSO-BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測與研究[J]. 計(jì)算機(jī)應(yīng)用與軟件,2009,26(1):218-211.
[10] 張穎路. 基于遺傳算法優(yōu)化支持向量機(jī)的網(wǎng)絡(luò)流量預(yù)測[J].計(jì)算機(jī)科學(xué),2008,35(5):177-179.
作者簡介:
劉春(1981-),男,碩士,四川建筑職業(yè)技術(shù)學(xué)院網(wǎng)絡(luò)管理中心,講師;主要研究方向和關(guān)注領(lǐng)域:計(jì)算機(jī)網(wǎng)絡(luò)管理。endprint
(3) 變異是個(gè)體染色體的基因以變異概率發(fā)生隨機(jī)質(zhì)變的過程。
雜交和變異使后代中產(chǎn)生新個(gè)體,復(fù)制使父代的基因在子代中得以繼承,從而使生物物種在繼承的基礎(chǔ)上不斷進(jìn)化。它可以避免局部優(yōu)化從而保證收斂的全局搜索性。
3遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測模型
(1) 收集網(wǎng)絡(luò)流量歷史數(shù)據(jù),并對其進(jìn)行預(yù)處理。
(2) 初始化種群。隨機(jī)產(chǎn)生一組個(gè)體,每一個(gè)個(gè)體包括BP神經(jīng)網(wǎng)絡(luò)初始連接權(quán)值和初始閾值。
(3) 對個(gè)體進(jìn)行解碼,根據(jù)相關(guān)聯(lián)函數(shù)法確定τ、m,并對網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行重構(gòu),并初始連接權(quán)值和閾值作為BP神經(jīng)網(wǎng)絡(luò)參數(shù)進(jìn)行網(wǎng)絡(luò)流量訓(xùn)練,根據(jù)預(yù)測結(jié)果計(jì)算個(gè)體適應(yīng)度值。適應(yīng)度函數(shù)f(x)定義如下:
f(x)=(y-)(9)
式中,y為BP神經(jīng)網(wǎng)絡(luò)的預(yù)測值,為網(wǎng)絡(luò)流量實(shí)際值,n表示訓(xùn)練樣本個(gè)數(shù)。
(4) 采用最佳保留策略和輪盤賭選擇較優(yōu)的個(gè)體進(jìn)行下一代。
(5) 根據(jù)交叉概率選擇兩個(gè)個(gè)體進(jìn)行交叉操作,選擇最優(yōu)個(gè)體進(jìn)行下一代。
(6) 根據(jù)變異概率選擇兩個(gè)個(gè)體進(jìn)行變異操作,選擇最優(yōu)個(gè)體進(jìn)行下一代。
(7) 判斷算法結(jié)束條件,若滿足結(jié)束條件則返回全局最優(yōu)個(gè)體,若不滿足,進(jìn)化代數(shù)加1,并跳轉(zhuǎn)至(3)繼續(xù)優(yōu)化。
(8) 將最優(yōu)個(gè)體解碼成為BP神經(jīng)網(wǎng)絡(luò)的初始連接權(quán)值和閾值。
(9) 根據(jù)初始連接權(quán)值和閾值建立最優(yōu)網(wǎng)絡(luò)流量預(yù)測模型。
4仿真實(shí)驗(yàn)
4.1數(shù)據(jù)來源
實(shí)驗(yàn)數(shù)據(jù)來源于某學(xué)校網(wǎng)絡(luò)中心服務(wù)器,從2013年2月1日到2月21日每天網(wǎng)絡(luò)的每小時(shí)訪問流量,得到480個(gè)數(shù)據(jù),以前380個(gè)數(shù)據(jù)作為訓(xùn)練集建立網(wǎng)絡(luò)流量預(yù)測模型,后100個(gè)數(shù)據(jù)作為測試集進(jìn)行預(yù)測檢驗(yàn),具體如圖2所示。
4.2數(shù)據(jù)歸一化處理
BP神經(jīng)網(wǎng)絡(luò)模型在訓(xùn)練時(shí)對在0-1之間的數(shù)據(jù)最為靈敏,然而實(shí)際網(wǎng)絡(luò)流量具有突變性,變化幅度較大,為了提高訓(xùn)練的效率,對其進(jìn)行歸一化處理,具體為:
x'=(10)
最后對網(wǎng)絡(luò)流量預(yù)測結(jié)果進(jìn)行反歸一化處理,恢復(fù)真實(shí)預(yù)測值。
x=x'(xmax-xmin) +xmin(11)
式中x表示網(wǎng)絡(luò)流量原始數(shù)據(jù),xmin和xmax表示分別最小值和最大值。
4.3模型評價(jià)指標(biāo)
為了說明GA-BPNN模型的有效性,在Matlab2021環(huán)境下進(jìn)行仿真實(shí)驗(yàn)。同時(shí)為了使GA-BPNN模型的預(yù)測結(jié)果具有可比性,采用標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)(BPNN)作為對比模型。模型性能的評價(jià)指標(biāo)為均方根誤差(root mean squared predict error,RMSE)和平均絕對百分誤差(mean absolute percentage error,MAPE),具體定義如下:
RMSE=(12)
MAPE=
×100(13)
式中y表示網(wǎng)絡(luò)流量實(shí)際觀測值,表示預(yù)測值。
4.4結(jié)果與分析
4.4.1 不含噪網(wǎng)絡(luò)流量的預(yù)測結(jié)果分析
首先采用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)參數(shù),然后采用最優(yōu)參數(shù)BP神經(jīng)網(wǎng)絡(luò)建立網(wǎng)絡(luò)流量預(yù)測模型,GA-BPNN、BPNN對測試集的預(yù)測結(jié)果及預(yù)測誤差如圖3和4所示。從圖3可知,GA-BPNN的預(yù)測結(jié)果與實(shí)際網(wǎng)絡(luò)流量的值相當(dāng)吻合,十分接近,這表明GA-BPNN可用于現(xiàn)代復(fù)雜多變、隨機(jī)的網(wǎng)絡(luò)流量預(yù)測,同時(shí)從圖4可知,GA-BPNN的預(yù)測誤差相當(dāng)小,可以滿足網(wǎng)絡(luò)流量預(yù)測精度的要求。
GA-BPNN與對比模型的預(yù)測誤差見表1。根據(jù)表1可知,相對于對比模型,GA-BPNN預(yù)測誤差更高,相應(yīng)的網(wǎng)絡(luò)流量預(yù)測精度更高,這表明,GA-BPNN通過遺傳算法對BPNN參數(shù)優(yōu)化和選擇,克服BP神經(jīng)網(wǎng)絡(luò)等預(yù)測精度低的缺陷,GA-BPNN是一種精度高、預(yù)測結(jié)果可靠的網(wǎng)絡(luò)流量預(yù)測模型。
4.4.2 含噪網(wǎng)絡(luò)流量的預(yù)測結(jié)果分析
為了測試GA-BPNN的通用性,對一個(gè)含噪的網(wǎng)絡(luò)流量進(jìn)行仿真實(shí)驗(yàn),含噪的網(wǎng)絡(luò)流量如圖5所示。GA-BPNN的含噪網(wǎng)絡(luò)流量數(shù)據(jù)預(yù)測結(jié)果及預(yù)測誤差如圖6和7所示。從圖6和7可知,對于含噪的網(wǎng)絡(luò)流量,GA-BPNN同樣獲得了較理想的預(yù)測結(jié)果,這表明GA-BPNN采用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò),獲得了較好的網(wǎng)絡(luò)流量訓(xùn)練集,增加了模型的魯棒性和通用性,拓寬了GA-BPNN在網(wǎng)絡(luò)流量的應(yīng)用范圍。
GA-BPNN與BPNN對含噪網(wǎng)絡(luò)流量預(yù)測誤差見表2。從表2可知,相對于對比模型,GA-BPNN的整體預(yù)測性能更優(yōu),建立了誤差更小的網(wǎng)絡(luò)流量預(yù)測模型,再一次證明了GA-BPNN的優(yōu)越性。
5結(jié)束語
為了提高網(wǎng)絡(luò)流量預(yù)測精度,針對BP神經(jīng)網(wǎng)絡(luò)參數(shù)優(yōu)化難題,提出一種遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測模型,仿真結(jié)果表明,GA-BPNN不僅提高了網(wǎng)絡(luò)流量的預(yù)測精度,為復(fù)雜多變的網(wǎng)絡(luò)流量提供了一種新的研究思路。
參考文獻(xiàn)
[1] Nguyen T T, Armitage G. A survey of techniques for internet traffic classification using machine learning [J]. IEEE Communications Surveys and Tutorials, 2008, 10(4):56-76.
[2] 馬華林.基于灰色模型和自適應(yīng)過濾的網(wǎng)絡(luò)流量預(yù)測[J].計(jì)算機(jī)工程,2009,35(1):130-131.
[3] Mao Yongyi, Li Baochun. A factor graph approach to link loss monitoring in wireless sensor networks [J]. IEEE Journal on Selected Areas in Communications, 2006,23(4):820-829.
[4] Callado A, Keu R J, Sadok D, et a1.Better network traffic identification through the independent combination of techniques [J]. Journal of Network and Computer Applications, 2010, 33(4):433-446.
[5] 姚奇富,李翠鳳,馬華林,張森. 灰色系統(tǒng)理論和馬爾柯夫鏈相結(jié)合的網(wǎng)絡(luò)流量預(yù)測方法[J].浙江大學(xué)學(xué)報(bào)(理學(xué)版),2007,34(4):396-400.
[6] 劉淵,戴悅,曹建華.基于小波神經(jīng)網(wǎng)絡(luò)的流量混沌時(shí)間序列預(yù)測[J].計(jì)算機(jī)工程,2008,34(16):105-106.
[7] 陳曉天,張順頤,田婷婷. 基于BP神經(jīng)網(wǎng)絡(luò)的IP網(wǎng)絡(luò)流量預(yù)測[J].南京郵電大學(xué)學(xué)報(bào)(自然科學(xué)版),2012, 30(2):16-21.
[8] 李松,羅勇,張銘銳. 遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的混沌時(shí)間序列預(yù)測[J].計(jì)算機(jī)工程與應(yīng)用,2011, 47(29):52-55.
[9] 趙振江. 基于PSO-BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)流量預(yù)測與研究[J]. 計(jì)算機(jī)應(yīng)用與軟件,2009,26(1):218-211.
[10] 張穎路. 基于遺傳算法優(yōu)化支持向量機(jī)的網(wǎng)絡(luò)流量預(yù)測[J].計(jì)算機(jī)科學(xué),2008,35(5):177-179.
作者簡介:
劉春(1981-),男,碩士,四川建筑職業(yè)技術(shù)學(xué)院網(wǎng)絡(luò)管理中心,講師;主要研究方向和關(guān)注領(lǐng)域:計(jì)算機(jī)網(wǎng)絡(luò)管理。endprint