郭海蓉
(成都醫學院 現代教育技術中心, 成都 610500)
隨著大數據時代的到來,各個領域的數據向海量、大規模方向發展,尤其是網絡流量數據,每天有大量流量數據產生,它們不斷的在網絡上進行傳輸,使得網絡流量管理系統的負載日益嚴重,到了周末或者節假日,網絡的速度極慢,而且經常出現網絡擁塞,如何改善網絡流量的傳輸速度和網絡流量的管理效率引起了人們的高度關注[1]。
網絡流量的建模與預測是一種網絡管理的重要技術,其對將來一段時間內的網絡流量變化趨勢進行預測,得到的預測結果可以提供給網絡管理者,讓他們提前準備一定的網絡流量管理方案進行應對,因此當前存在許多網絡流量預測模型[2]。當前網絡流量預測模型可以劃分為兩種:周期性的網絡流量預測模型和隨機性的網絡流量預測模型[3,4],其中周期性預測模型認為網絡流量是一種周期性的變化規律,在一段時間內有一定的相似性,如聚類分析的網絡流量預測模型,通過聚類分析算法從歷史樣本中選擇與當前預測點相似的樣本組成訓練樣本,然后采用回歸算法實現網絡流量預測,而實際上網絡流量不僅只有周期性變化規律,由于受到上網用戶的行為影響,其具有十分強烈的隨機性,因此周期性預測模型只能描述網絡流量的局部變化特點,無法對網絡流量變化特點進行全面描述,網絡流量的穩定性差[5];隨機性的網絡流量預測模型基于非線性理論進行建模與分析,通過引入一些機器學習算法如極限學習機、神經網絡進行訓練和學習[6-8],其網絡流量預測的性能要優于周期性預測模型,成為網絡流量預測研究中的主要方向。當前周期性預測模型或者隨機的預測模型均采用單機處理模式,而現代網絡流量數據朝大規模方向發展,使得單機處理模式缺陷十分明顯,不能適應現代網絡流量預測的發展要求[9]。
根據網絡流量數據變化特點,為了解決單機處理技術的局限性,以提高網絡流量預測效果,設計了基于大數據環境下的網絡流量非線性預測模型,并與其它模型進行了對照實驗,本文模型的網絡流量預測精度高,網絡流量訓練時間短,相對于對比模型,本文的網絡流量預測結果具有顯著的優越性。
云計算技術是在互聯網的基礎上發展起來的、專門針對海量數據的一種處理技術,集成了分布式處理、并行計算等優點,其采用Map/Reduce計算模型,基于分層次計算,處理數據的速度相當快,其工作基本思想為:將一個大數據集拆分為多個子數據,每一個子數據集對應一個Map任務,然后采用不同節點對Map任務進行執行,得到中間處理結果,最后通過Reduce對中間處理結果進行收集和融合,得到最終處理結果,其工作原理如圖1所示。

圖1 Map/Reduce的工作原理
受流體狀態機模型的啟發,有學者提出了回聲狀態網絡,解決了傳統神經網絡的瓶頸問題,其包括前端輸入、儲備池和輸出層,它們對應的向量分別如式(1)、(2)、(3)。
u(n)=(u1(n),u2(n),…,uK(n))T
(1)
x(n)=(x1(n),x2(n),…,xN(n))T
(2)
y(n)=(y1(n),y2(n),…,yL(n))T
(3)
在第n個時刻,回聲狀態網絡的狀態更新方程和輸出計算公式分別為式(4)、(5)。
x(n+1)=f1(Winu(n+1)+Wx(n))
(4)
y(n+1)=f2(Woutx(n+1))
(5)
式中,Win、W、Wout分別表示前端輸入、儲備池和輸出層的連接權值,f1和f2分別表示儲備池和輸出層的激活函數。
回聲狀態網絡的工作步驟:
(1)根據具體預測問題,初始化儲備池大小、譜大小、輸入縮放系數、稀疏度等參數。
(2)建立輸入樣本和期望輸出之間的映射關系。
(3)由于在回聲狀態網絡學習過程中,Win、W的值固定不變,對Wout進行訓練,根據式(5)和訓練樣本u(n)對期望信號y(n)進行逼近,具體為式(6)。
Woutx(n)≈yt(n+1)
(6)
根據式(3)可知,狀態向量x(n)由u(n)決定,即:u(n)?x(n),輸入向量和期望輸出序列之間的映射關系為[10]式(7)。
u(n)→yt(n)
(7)
(4)設狀態矩陣向量為X,其對應的期望的輸出向量為Y,則有式(8)。
Y=WoutX
(8)
其中,Wout訓練目標可以表示為式(9)。
(9)
采用違逆法對Wout進行訓練,得到Wout式(10)。
Wout=Yt×X+
(10)
式中,X+表示X的違逆矩陣。
(5)根據訓練得到的Wout對實際輸出信號進行預測,預測結果為式(11)。
(11)
大數據環境下的網絡流量非線性預測原理為:首先采集大規模的網絡流量歷史數據,然后根據云計算技術的Map/Reduce處理模式對其進行細分,得到多個數據量相對較小的子訓練樣本集合,并引入數據挖掘技術中的狀態回聲網絡對子訓練樣本集合的網絡流量進行預測,最后對子訓練樣本集合的網絡流量預測結果進行融合,輸出網絡流量的最終預測結果,具體工作原理如圖2所示。

圖2 大數據環境下的網絡流量非線性預測原理
(1)對于一個網絡管理系統中的服務器歷史數據進行收集。
(2)Map端將大規模網絡流量數據集進行細分,得到許多子數據集。
(3)每一個網絡流量子數據集通過一個Map任務處理,即通過回聲狀態網絡對網絡流量進行訓練。
(4)得到每一個網絡流量子數據集的回聲狀態網絡預測結果,并將結果輸出到Reduce端。
(5)Reduce端對Map傳來的網絡流量子數據集預測結果進行合并,得到網絡流量的最終預測結果。
為了分析大數據環境下的網絡流量非線性預測的有效性,云計算平臺共包含5個節點,1個節點作為服務器,另外4個作為普通節點,它們具體配置方式如表1所示。
采用不同規模的網絡流量數據作為實驗對象,共5個網絡流量數據集合,它們的大小如表2所示。
為了分析回聲狀態網絡用于網絡流量建模的優越性,選擇BP神經網絡的網絡流量預測模型進行對比測試,采用數據處理技術均為云處理技術,統計5個網絡流量數據集合的預測精度,結果如圖3所示。

表1 云計算平臺的節點配置

表2 5個網絡流量數據集的規模

圖3 5個網絡流量數據集合的預測精度對比
對圖3的5個網絡流量數據集合預測精度進行對比和分析,可以發現,回聲狀態網絡的網絡流量預測精度明顯優于BP神經網絡的網絡流量預測精度,降低了網絡流量預測誤差,這是因為回聲狀態網絡可以對網絡流量隨機性、復雜性的變化特點進行高精度建模,建立了更優的網絡流量預測模型,對比結果驗證了本文將回聲狀態網絡引入到網絡流量預測中的思想是正確的,可以得到理想的網絡流量預測結果。
為了測試云計算處理技術的優越性,選擇單機處理技術進行對比測試,以單機處理技術的訓練時間作為標準,建模方法均采用狀態回聲網絡,在不同數據規模條件下,本文模型的網絡流量訓練時間減少倍數如圖4所示。
從圖4的實驗結果可以看出,當網絡流量數據很小時,云計算處理技術和單機處理技術需要的時間相差不大,單機處理技術的訓練相對更少,這是因為云計算處理技術要經過Map和Reduce兩個階段,但是隨著網絡流量規模的不斷增大,云計算處理技術的優勢慢慢得以體現,網絡流量預測建模的訓練時間不斷在減少,而且網絡流量數據越大,網絡流量建模訓練時間減少的幅度就越大,優勢越明顯,對比測試結果表明,本文模型加快了網絡流量訓練速度,降低計算時間復雜度,提高了網絡流量預測建模的效率,可以滿足網絡流量管理在線要求。

圖4 網絡流量訓練時間對比
網絡用戶的急增,業務種類的多樣性增加,每一天網絡上的流量數據呈指數級增長,網絡流量管理面臨巨大的挑戰,為了提高網絡流量的準確性,結合網絡流量非線性、復雜、海量的特點,設計了一種大數據環境下的網絡流量非線性預測模型,首先結合網絡流量的大規模特性,引入云計算處理模式對訓練樣本進行分解操作,減少網絡流量訓練的時間和空間復雜度,然后引入數據挖掘技術中的回聲狀態網絡對網絡流量的非線性變化特點進行擬合,實現網絡流量高精度預測,對比結果表明,本文模型的網絡流量建模效率高,網絡流量的預測誤差明顯低于當前經典的網絡流量預測結果,本文模型可以應用于大規模網絡流量管理系統中,具有一定的實際應用價值。