王柯
湖南城建職業(yè)技術(shù)學(xué)院,湖南 湘潭 411101
隨著網(wǎng)絡(luò)規(guī)模的急劇增加,網(wǎng)絡(luò)信息流量呈現(xiàn)指數(shù)級(jí)增加,給網(wǎng)絡(luò)管理帶來(lái)嚴(yán)峻挑戰(zhàn),對(duì)網(wǎng)絡(luò)流量進(jìn)行高精度預(yù)測(cè)對(duì)網(wǎng)絡(luò)管理和規(guī)劃具有重要的實(shí)際價(jià)值和理論意義。傳統(tǒng)流量預(yù)測(cè)方法主要集中在回歸分析法[1]、時(shí)間序列法[2]、神經(jīng)網(wǎng)絡(luò)[3]和支持向量機(jī)[4]等。由于網(wǎng)絡(luò)數(shù)據(jù)的復(fù)雜性和不確定性,傳統(tǒng)的方法存在一定局限性,存在預(yù)測(cè)誤差大和預(yù)測(cè)存在滯后性的問(wèn)題,針對(duì)網(wǎng)絡(luò)流量數(shù)據(jù),本文將云計(jì)算和極限學(xué)習(xí)機(jī)相結(jié)合,提出一種基于云計(jì)算和極限學(xué)習(xí)機(jī)的網(wǎng)絡(luò)流量預(yù)測(cè)方法。研究結(jié)果表明,本文方法可以有效提高網(wǎng)絡(luò)流量預(yù)測(cè)的精度,為網(wǎng)絡(luò)流量預(yù)測(cè)提供新的方法和決策依據(jù)。
Hadoop云計(jì)算平臺(tái)是由Apache基金會(huì)開發(fā)的開源軟件工程,其由MapReduce框架和分布式文件系統(tǒng)組成。MapReduce是一個(gè)程序模型,可以用來(lái)在集群中處理海量數(shù)據(jù)集,適合解決分布式存儲(chǔ)問(wèn)題、運(yùn)算問(wèn)題。MapReduce框架可以被抽象為兩個(gè)函數(shù),分別為Map和Reduce函數(shù),這兩個(gè)函數(shù)可以由用戶編寫完成。MapReduce模型的運(yùn)行機(jī)制如圖1所示,具體流程如下:
圖1 MapReduce運(yùn)行機(jī)制Fig.1 Operation mechanism of MapReduce
(1)Input。讀取分布式文件系統(tǒng)中的輸入數(shù)據(jù),將數(shù)據(jù)切分為數(shù)據(jù)片。MapReduce框架中每一個(gè)Map函數(shù)可以分配一個(gè)數(shù)據(jù)片;
(2)Map。將數(shù)據(jù)片當(dāng)作一組鍵值對(duì),根據(jù)Map函數(shù)程序邏輯,運(yùn)行、處理MapReduce框架分配的鍵值對(duì),最后產(chǎn)生新的中間鍵值對(duì);
(3)Shuffle。該階段將中間鍵值對(duì)從Map節(jié)點(diǎn)轉(zhuǎn)移到Reduce節(jié)點(diǎn)中,同時(shí)合并相同的中間鍵值對(duì),形成中間鍵鏈和鍵值排序等工作;
(4)Reduce。執(zhí)行Reduce函數(shù);
(5)Output。輸出Reduce函數(shù)的處理結(jié)果,將結(jié)果保存在指定的分布式文件系統(tǒng)中。
極限學(xué)習(xí)機(jī)[5](Extreme Learning Machine,ELM)是在Moore-Penrose矩陣?yán)碚摶A(chǔ)上所提出的一種新型的單隱含層前饋神經(jīng)網(wǎng)絡(luò)(Single-hidden Layer Feed-forward Neural Networks,SLFNs),其結(jié)構(gòu)模型圖如圖2所示。
圖2 ELM結(jié)構(gòu)模型圖Fig.2 ELM structural model
對(duì)于N個(gè)不同樣本(xi,ti),其中,隱含層神經(jīng)元個(gè)數(shù)為,激勵(lì)函數(shù)為g(x)的SLFN的數(shù)學(xué)模型可表示為[6]:
其中,αi=[αi1,αi2,…,αin]T、βi=[βi1,βi2,…,βim]T和bi分別表示第i個(gè)隱含層神經(jīng)元的輸入權(quán)值、輸出權(quán)值和偏置;ai·xj表示ai和xj的內(nèi)積。公式(1)可表示為矩陣形式:
其中:
求解該問(wèn)題是在保證期望值與實(shí)際值之間的誤差平方和E(W)最小的前提下,尋找最優(yōu)的權(quán)值W=(a,b,β)使代價(jià)函數(shù)E(W)最小的過(guò)程,其數(shù)學(xué)模型為[7]:
其中,εj=[εj1,εj2,…,εjm]表示第j個(gè)樣本的誤差。
隨著網(wǎng)絡(luò)規(guī)模的急劇增加,網(wǎng)絡(luò)信息流量呈現(xiàn)指數(shù)級(jí)增加,給網(wǎng)絡(luò)管理帶來(lái)嚴(yán)峻挑戰(zhàn),對(duì)網(wǎng)絡(luò)流量進(jìn)行高精度預(yù)測(cè)對(duì)網(wǎng)絡(luò)管理和規(guī)劃具有重要的實(shí)際價(jià)值和理論意義。將云計(jì)算和極限學(xué)習(xí)機(jī)結(jié)合,利用MapReduce框架,將網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行切片處理,之后再切片處理的基礎(chǔ)上,利用ELM極限學(xué)習(xí)機(jī)進(jìn)行分布式并行處理實(shí)現(xiàn)網(wǎng)絡(luò)流量的高精度預(yù)測(cè)。通過(guò)Map和Reduce函數(shù)實(shí)現(xiàn)并行化設(shè)計(jì)和計(jì)算,基于MapReduce的分布式MR-ELM的網(wǎng)絡(luò)流量預(yù)測(cè)過(guò)程如下:
(1)讀取云計(jì)算平臺(tái)分布式文件系統(tǒng)中的網(wǎng)絡(luò)流量數(shù)據(jù)訓(xùn)練集,通過(guò)MapReduce框架的底層機(jī)制,實(shí)現(xiàn)網(wǎng)絡(luò)流量數(shù)據(jù)訓(xùn)練集的分割,獲取k個(gè)不同的網(wǎng)絡(luò)流量數(shù)據(jù)訓(xùn)練子集,其中k表示并行Map的個(gè)數(shù);
(2)網(wǎng)絡(luò)流量數(shù)據(jù)的訓(xùn)練子集根據(jù)Map函數(shù)的程序邏輯運(yùn)行,即ELM的訓(xùn)練算法邏輯,對(duì)網(wǎng)絡(luò)流量數(shù)據(jù)的訓(xùn)練集并行訓(xùn)練,也就是k個(gè)不同的ELM;
(3)將k個(gè)不同ELM網(wǎng)絡(luò)流量預(yù)測(cè)結(jié)果,通過(guò)MapReduce框架的Shuffle階段傳輸?shù)絉educe階段,在此基礎(chǔ)上,計(jì)算不同ELM預(yù)測(cè)結(jié)果的權(quán)重確定各Map操作輸出的網(wǎng)絡(luò)流量預(yù)測(cè)的權(quán)重,最后確定網(wǎng)絡(luò)流量預(yù)測(cè)結(jié)果。
本文實(shí)驗(yàn)搭建的Hadoop平臺(tái)由32個(gè)節(jié)點(diǎn)構(gòu)成,每個(gè)節(jié)點(diǎn)電腦配置均為Intel(R)Core(TM)i5-24004-core,中央處理器CPU的主頻為2.60 GHz,內(nèi)存8 GB,云計(jì)算平臺(tái)如圖4所示。
圖3 基于云計(jì)算和ELM的預(yù)測(cè)流程圖Fig.3 Flow chart of ELM prediction on cloud computing
圖4 云計(jì)算平臺(tái)Fig.4 Platform of cloud computing
為了驗(yàn)證MR_ELM進(jìn)行網(wǎng)絡(luò)流量預(yù)測(cè)的有效性,選擇2018年4月15日-2018年4月25日11天的流量文庫(kù)流量數(shù)據(jù)為研究對(duì)象[8,9],其中每天每間隔1 h采集一點(diǎn)流量數(shù)據(jù),一共采集264組流量數(shù)據(jù),流量數(shù)據(jù)如圖5所示。
圖5 流量數(shù)據(jù)Fig.5 Traffic data
為評(píng)價(jià)訪問(wèn)流量的預(yù)測(cè)結(jié)果,選擇MAE、RMSE和nRMSE作為流量預(yù)測(cè)的評(píng)價(jià)指標(biāo)[9-11]:
其中,Xi為模型的第i樣本點(diǎn)流量實(shí)際值,Xj為模型的第i樣本點(diǎn)流量預(yù)測(cè)值;為Xi的平均值;n表示樣本數(shù)量。
為了證明本文算法MR_ELM進(jìn)行網(wǎng)絡(luò)流量預(yù)測(cè)的優(yōu)越性,將其與ELM、和LSSVM進(jìn)行對(duì)比,對(duì)比結(jié)果如圖6~8所示和表1所示。
圖6 對(duì)比結(jié)果Fig.6 Comparative results
圖7 絕對(duì)誤差Fig.7Absolute error
圖8 相對(duì)誤差Fig.8 Relative error
表1 不同算法結(jié)果對(duì)比Table 1 Comparative results of different algorithms
結(jié)合圖6-圖8和表1不同算法進(jìn)行網(wǎng)絡(luò)流量預(yù)測(cè)結(jié)果可知,在RMSE、MAE和nRMSE三個(gè)評(píng)價(jià)指標(biāo)上,與ELM和LSSVM相比較,MR-ELM具有更高的預(yù)測(cè)精度;其次,ELM的預(yù)測(cè)精度優(yōu)于LSSVM;最后,LSSVM的預(yù)測(cè)精度最差,RMSE、MAE和nRMSE分別比MR-ELM低0.5032、0.4421和5.1042%,通過(guò)對(duì)比可知,本文提出的算法MR-ELM可以有效提高網(wǎng)絡(luò)流量預(yù)測(cè)的精度,效果較好,為網(wǎng)絡(luò)流量預(yù)測(cè)提供新的方法和途徑。
針對(duì)傳統(tǒng)的流量預(yù)測(cè)算法存在精度低和誤差大的缺點(diǎn),提出一種基于云計(jì)算和極限學(xué)習(xí)機(jī)的網(wǎng)絡(luò)流量預(yù)測(cè)算法。研究結(jié)果表明,本文提出的算法MR-ELM可以有效提高網(wǎng)絡(luò)流量預(yù)測(cè)的精度,效果較好,為網(wǎng)絡(luò)流量預(yù)測(cè)提供新的方法和途徑。