《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于小波神經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)中心KPI預(yù)測(cè)
基于小波神經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)中心KPI預(yù)測(cè)
2019年電子技術(shù)應(yīng)用第6期
姚榮歡1,2
1.華北計(jì)算機(jī)系統(tǒng)工程研究所,北京100083;2.中軟信息系統(tǒng)工程有限公司,北京100081
摘要: 時(shí)間序列預(yù)測(cè)是數(shù)據(jù)中心關(guān)鍵性能指標(biāo)異常檢測(cè)的重要環(huán)節(jié)。針對(duì)時(shí)間序列,利用小波基函數(shù)作為隱含層節(jié)點(diǎn)傳遞函數(shù)來(lái)構(gòu)造小波神經(jīng)網(wǎng)絡(luò)進(jìn)行預(yù)測(cè);同時(shí)選取動(dòng)量梯度下降法提高神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)效率;再根據(jù)粒子群算法訓(xùn)練得到最優(yōu)解作為神經(jīng)網(wǎng)絡(luò)參數(shù)初始值;最后使用MATLAB進(jìn)行仿真,以較高準(zhǔn)確性對(duì)關(guān)鍵性能指標(biāo)時(shí)間序列進(jìn)行了預(yù)測(cè)。
中圖分類號(hào): TP312
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.190146
中文引用格式: 姚榮歡. 基于小波神經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)中心KPI預(yù)測(cè)[J].電子技術(shù)應(yīng)用,2019,45(6):46-49,53.
英文引用格式: Yao Ronghuan. Data center KPI prediction based on wavelet neural network[J]. Application of Electronic Technique,2019,45(6):46-49,53.
Data center KPI prediction based on wavelet neural network
Yao Ronghuan1,2
1.National Computer System Engineering Research Institute of China,Beijing 100083,China; 2.China Software Information System Engineering Co.,Ltd.,Beijing 100081,China
Abstract: Time series prediction is an important part of abnormal detection of key performance indicators in data centers. For the time series, the wavelet basis function is used as the implicit layer node transfer function to construct the wavelet neural network for prediction. At the same time, the momentum gradient descent method is adopted to improve the learning efficiency of the neural network. Then the optimal solution is trained according to the particle swarm algorithm as the initial neural network parameters. The value is finally simulated using MATLAB, and the time series of key performance indicators are predicted with higher accuracy.
Key words : time series;wavelet neural network;momentum gradient descent;particle swarm optimization

0 引言

    隨著軟件和微服務(wù)的發(fā)展,智能運(yùn)維越來(lái)越受到人們的重視。在大量的運(yùn)維數(shù)據(jù)里,最不可忽視的就是各種關(guān)鍵性能指標(biāo)數(shù)據(jù)(Key Performance Indicators,KPI),它們?cè)跀?shù)學(xué)上都可以被表達(dá)為時(shí)間序列的形式。在一個(gè)大型軟件系統(tǒng)里,往往每分鐘能產(chǎn)生百萬(wàn)數(shù)量級(jí)的時(shí)間序列,如何從這些海量數(shù)據(jù)里發(fā)現(xiàn)規(guī)律,指導(dǎo)運(yùn)維并將其智能化,成為了下一代運(yùn)維中最重要的環(huán)節(jié)之一。智能運(yùn)維的一個(gè)主要挑戰(zhàn)是根據(jù)具體需求評(píng)判應(yīng)用哪些機(jī)器學(xué)習(xí)算法,并適配或改造。智能數(shù)據(jù)中心關(guān)鍵性能指標(biāo)數(shù)據(jù)異常檢測(cè)是智能運(yùn)維的重要環(huán)節(jié),可以作為運(yùn)維人員的可靠助手,從而大大減少人力投入并增加運(yùn)維安全性。而時(shí)間序列預(yù)測(cè)是時(shí)間序列異常檢測(cè)的重要組成部分。本文利用小波神經(jīng)網(wǎng)絡(luò)對(duì)時(shí)間序列進(jìn)行預(yù)測(cè),并采用動(dòng)量梯度下降算法和粒子群優(yōu)化算法對(duì)小波神經(jīng)網(wǎng)絡(luò)進(jìn)行了優(yōu)化,在一定程度上提高了時(shí)間序列預(yù)測(cè)的準(zhǔn)確性。

1 KPI概述

1.1 時(shí)間序列特點(diǎn)

    (1)長(zhǎng)期趨勢(shì)(Trend):現(xiàn)象在較長(zhǎng)時(shí)期內(nèi)受某種根本性因素作用而形成的總的變動(dòng)趨勢(shì);

    (2)循環(huán)變動(dòng)\周期性(Cyclic):現(xiàn)象以若干年為周期所呈現(xiàn)出的波浪起伏形態(tài)的有規(guī)律的變動(dòng);

    (3)季節(jié)性變化(Seasonal variation):現(xiàn)象隨著季節(jié)的變化而發(fā)生的有規(guī)律的周期性變動(dòng);

    (4)不規(guī)則變化(Irregular movement):是一種無(wú)規(guī)律可循的變動(dòng),包括嚴(yán)格的隨機(jī)變動(dòng)和不規(guī)則的突發(fā)性影響很大的變動(dòng)兩種類型[1]

1.2 KPI特點(diǎn)

    KPI是一種特殊的時(shí)序數(shù)據(jù),與普通時(shí)序數(shù)據(jù)相比,存在更多的形狀變化。常見的形狀變化主要包括以下幾種:

    (1)噪聲和異常:曲線上與正常值不符的波動(dòng)。

    (2)振幅差異:KPI曲線可能具有不同量級(jí)的振幅,例如同一服務(wù)的兩個(gè)相關(guān)但不同模塊的每秒查詢率曲線。

    (3)相位偏差:兩條KPI曲線之間的整體相位偏移。例如,同一系統(tǒng)調(diào)用鏈上的一組KPI可能具有相似的形狀,但存在一定的時(shí)延,從而產(chǎn)生相位偏差。

2 小波神經(jīng)網(wǎng)絡(luò)

2.1 小波神經(jīng)網(wǎng)絡(luò)原理

    小波變換針對(duì)傅里葉變換的不足發(fā)展而來(lái)。傅里葉變換把信號(hào)按三角正、余弦基展開,能較好地刻畫信號(hào)的頻率特性,但在時(shí)域或空域上卻無(wú)任何分辨,不能做局部分析。而小波變換有一個(gè)靈活可變的時(shí)間-頻率窗,在時(shí)域和頻域同時(shí)具有良好的局部化特性。

    小波神經(jīng)網(wǎng)絡(luò)是基于小波變換以及小波構(gòu)造理論所搭建的多分辨率、多層的神經(jīng)網(wǎng)絡(luò),即用小波基來(lái)取代常用的Logistic傳遞函數(shù)[2]。

2.2 小波神經(jīng)網(wǎng)絡(luò)的優(yōu)點(diǎn)

    (1)小波變換通過(guò)平移和伸縮變換對(duì)信號(hào)進(jìn)行多尺度分析,能有效提取信號(hào)的多尺度信息;

    (2)神經(jīng)網(wǎng)絡(luò)具有容錯(cuò)性、自學(xué)習(xí)、自適應(yīng)等特點(diǎn),是一類通用的函數(shù)逼近器;

    (3)小波神經(jīng)網(wǎng)絡(luò)的基元和整個(gè)結(jié)構(gòu)由小波分析理論確定,可避免BP神經(jīng)網(wǎng)絡(luò)等在結(jié)構(gòu)設(shè)計(jì)上的盲目性;

    (4)小波神經(jīng)網(wǎng)絡(luò)精度更高,學(xué)習(xí)性更強(qiáng);

    (5)小波神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)簡(jiǎn)單,收斂速度更快。

2.3 小波神經(jīng)網(wǎng)絡(luò)類型

    (1)松散型:小波分析對(duì)神經(jīng)網(wǎng)絡(luò)的輸入進(jìn)行初步處理,使得輸入信號(hào)更利于神經(jīng)網(wǎng)絡(luò)處理;

    (2)融合型:神經(jīng)網(wǎng)絡(luò)與小波直接融合,用小波元代替神經(jīng)元,輸入層到隱含層的權(quán)值及隱含層閾值分別由小波函數(shù)的尺度和平移參數(shù)確定[3-4]

2.4 拓?fù)浣Y(jié)構(gòu)

    本文構(gòu)造的三層小波神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示。圖中,X為輸入,Y為輸出,Ψa,b(t)為隱藏層。

rgzn3-t1.gif

2.5 神經(jīng)元節(jié)點(diǎn)數(shù)確定

    小波神經(jīng)網(wǎng)絡(luò)輸入層神經(jīng)元個(gè)數(shù)由輸入數(shù)據(jù)特征向量的維數(shù)決定,輸出層神經(jīng)元個(gè)數(shù)由網(wǎng)絡(luò)預(yù)測(cè)值個(gè)數(shù)決定。隱藏層節(jié)點(diǎn)數(shù)沒(méi)有具體確定的計(jì)算方法。隱藏層節(jié)點(diǎn)數(shù)太少則可能出現(xiàn)欠擬合,隱藏層節(jié)點(diǎn)個(gè)數(shù)太多則容易過(guò)擬合,并且訓(xùn)練時(shí)間增加。假設(shè)輸入層有L個(gè)節(jié)點(diǎn),輸出層有N個(gè)節(jié)點(diǎn)。則隱藏層節(jié)點(diǎn)個(gè)數(shù)選擇可參考公式有:

     rgzn3-gs1-3.gif

式中,M為隱藏層節(jié)點(diǎn)個(gè)數(shù),a為0~10之間的常數(shù)。

    實(shí)際應(yīng)用時(shí)可根據(jù)參考公式確定隱藏節(jié)點(diǎn)數(shù)的大概范圍,然后使用誤差率調(diào)整節(jié)點(diǎn)個(gè)數(shù)。本文選擇式(2)。

2.6 傳遞函數(shù)

2.6.1 隱藏層傳遞函數(shù)

    本文構(gòu)造的神經(jīng)網(wǎng)絡(luò)隱含層采用的小波基函數(shù)為Morlet母小波基函數(shù),數(shù)學(xué)公式為:

    rgzn3-gs4.gif

    函數(shù)圖形如圖2所示。

rgzn3-t2.gif

    因此隱含層輸出計(jì)算公式為:

    rgzn3-gs5.gif

式中,hj為隱含層第j個(gè)節(jié)點(diǎn)輸出值,wij為輸入層到隱含層的連接權(quán)值,bj為小波基函數(shù)的時(shí)移因子,aj為小波基函數(shù)的頻率因子。

2.6.2 輸出層傳輸函數(shù)

    本文構(gòu)造的神經(jīng)網(wǎng)絡(luò)輸出層采用線性函數(shù),數(shù)學(xué)公式為:

    rgzn3-gs6.gif

    函數(shù)圖形如圖3所示。

rgzn3-t3.gif

    因此輸出層計(jì)算公式為:

    rgzn3-gs7.gif

式中,Ok為輸出層第k個(gè)節(jié)點(diǎn)輸出值,wjk為隱含層到輸出層的連接權(quán)值,hj為隱藏層輸出[5-7]。

2.7 附加動(dòng)量梯度修正法

    梯度學(xué)習(xí)優(yōu)化算法因其學(xué)習(xí)速率的不變性致使神經(jīng)網(wǎng)絡(luò)收斂速率很慢并且容易陷入局部最優(yōu),可以通過(guò)附加動(dòng)量法提高網(wǎng)絡(luò)學(xué)習(xí)效率。

rgzn3-gs8.gif

    即k+1次迭代動(dòng)量項(xiàng)為上k次和k-1次參數(shù)取值之差。

3 粒子群算法優(yōu)化小波神經(jīng)網(wǎng)絡(luò)

3.1 粒子群算法簡(jiǎn)介

    粒子群(PSO)算法從鳥類種群捕食行為特征得到啟發(fā),算法每個(gè)粒子代表一個(gè)潛在解,粒子速度代表了粒子移動(dòng)方向和距離,速度根據(jù)自身及其他粒子的經(jīng)驗(yàn)動(dòng)態(tài)調(diào)整。

    具有D個(gè)參數(shù)的優(yōu)化問(wèn)題構(gòu)成D維搜索空間,初始化N個(gè)粒子組成種群X=(X1,X2,…,XN),第i個(gè)粒子Xi=(xi1,xi2,…,xiD)。根據(jù)優(yōu)化目標(biāo)計(jì)算粒子適應(yīng)度,第i個(gè)粒子的速度Vi=(vi1,vi2,…,viD),每次迭代記錄個(gè)體極值Pi=(pi1,pi2,…,piD)(從開始迭代到本次迭代個(gè)體粒子使用度最佳位置),以及種群群體極值Pg=(pg1,pg2,…,pgD)。粒子根據(jù)個(gè)體極值和群體極值的啟發(fā)式信息更新位置,公式如下:

rgzn3-gs9-10.gif

3.2 粒子群算法優(yōu)化過(guò)程

3.2.1 基本思想

    基于粒子群優(yōu)化算法優(yōu)化小波神經(jīng)網(wǎng)絡(luò)的基本思想:將各連接權(quán)值和小波伸縮以及時(shí)移參數(shù)作為粒子群算法的微粒向量,每一個(gè)微粒向量經(jīng)過(guò)解碼到各個(gè)系數(shù)。網(wǎng)絡(luò)將訓(xùn)練樣本輸入,計(jì)算輸出和誤差,將誤差的倒數(shù)作為適應(yīng)度函數(shù)(誤差越小,適應(yīng)度越大)。然后將粒子群算法的最優(yōu)值賦給小波神經(jīng)網(wǎng)絡(luò)以代替小波神經(jīng)網(wǎng)絡(luò)初始隨機(jī)賦值,最后小波神經(jīng)網(wǎng)絡(luò)根據(jù)反向傳播算法訓(xùn)練直至收斂[8-9]。 

3.2.2 算法步驟及流程

    算法主要分為3個(gè)階段:

    (1)構(gòu)建小波神經(jīng)網(wǎng)絡(luò);

    (2)使用粒子群算法訓(xùn)練網(wǎng)絡(luò);

    (3)將粒子群算法訓(xùn)練得到的最優(yōu)解作為網(wǎng)絡(luò)參數(shù)初始值,使用反向傳播算法訓(xùn)練網(wǎng)絡(luò)。

    算法流程如圖4所示。

rgzn3-t4.gif

3.2.3 粒子解碼

    假設(shè)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)為輸入層L個(gè)節(jié)點(diǎn),隱藏層M個(gè)節(jié)點(diǎn),輸出層N個(gè)節(jié)點(diǎn)。則網(wǎng)絡(luò)輸入層到隱藏層L×M個(gè)權(quán)值參數(shù),隱藏層到輸出層有M×N個(gè)權(quán)值,隱藏層每個(gè)節(jié)點(diǎn)還有一個(gè)時(shí)移參數(shù)和一個(gè)頻率參數(shù)共2×N個(gè)參數(shù),因此共L×M+2×N+M×N個(gè)參數(shù)。粒子向量編碼順序?yàn)榍癓×M個(gè)參數(shù)為輸入層到隱藏層L×M個(gè)權(quán)值,然后N個(gè)參數(shù)為頻率參數(shù),其次N個(gè)參數(shù)為時(shí)移參數(shù),其余參數(shù)為隱藏層到輸出層的M×N個(gè)權(quán)值[10-13]。

4 實(shí)驗(yàn)結(jié)果與分析

4.1 實(shí)驗(yàn)環(huán)境

    本實(shí)驗(yàn)操作系統(tǒng)為L(zhǎng)inux-3.13.0-57-generic-x86_64-with-Ubuntu-14.04-trusty,開發(fā)語(yǔ)言為MATLAB 7.9.0(R2009b),在Vim開發(fā)環(huán)境下進(jìn)行。

4.2 數(shù)據(jù)集描述

    為驗(yàn)證本文算法的有效性,選取某數(shù)據(jù)中心KPI指標(biāo)1 210個(gè)。其中,905個(gè)作為小波神經(jīng)網(wǎng)絡(luò)訓(xùn)練數(shù)據(jù),305個(gè)作為預(yù)測(cè)數(shù)據(jù)。數(shù)據(jù)集部分示例如表1所示。

rgzn3-b1.gif

4.3 評(píng)價(jià)準(zhǔn)則

    針對(duì)預(yù)測(cè)結(jié)果,本文采用兩種度量標(biāo)準(zhǔn):

    (1)平均絕對(duì)誤差,公式如下:

    rgzn3-gs11.gif

    (2)皮爾森相關(guān)系數(shù),公式如下:

rgzn3-gs12.gif

4.4 實(shí)驗(yàn)結(jié)果

    小波神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)實(shí)驗(yàn)結(jié)果如圖5、圖6所示。

rgzn3-t5.gif

rgzn3-t6.gif

    由圖5、圖6可以看出小波神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)結(jié)果與原KPI序列相似程度較高,具體數(shù)值與趨勢(shì)性預(yù)測(cè)均較為準(zhǔn)確。

    本文利用傳統(tǒng)Arima(Autoregressive Integrated Moving Average Model)算法進(jìn)行了對(duì)比試驗(yàn)[14],實(shí)驗(yàn)結(jié)果如圖7、圖8所示。

rgzn3-t7.gif

rgzn3-t8.gif

    由圖7、圖8可以看出傳統(tǒng)Arima模型也能較好地預(yù)測(cè)KPI數(shù)值及趨勢(shì),具體性能對(duì)比由表2所示。

rgzn3-b2.gif

    由表2可以看出,小波神經(jīng)網(wǎng)絡(luò)與傳統(tǒng)Arima算法在平均絕對(duì)誤差上表現(xiàn)出一定優(yōu)勢(shì),說(shuō)明小波神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)值更加貼近原序列真實(shí)值。而在皮爾森相關(guān)系數(shù)的表現(xiàn)上,小波神經(jīng)網(wǎng)絡(luò)呈現(xiàn)出極大的優(yōu)勢(shì),說(shuō)明小波神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)結(jié)果與原時(shí)間序列相關(guān)性更高,更加可信。

5 結(jié)論

    本文提出利用粒子群算法優(yōu)化小波神經(jīng)網(wǎng)絡(luò)并用附加動(dòng)量梯度修正法加速小波神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)速率來(lái)解決智能數(shù)據(jù)中心KPI預(yù)測(cè)的方法。該方法能以較高準(zhǔn)確率和相關(guān)性對(duì)KPI時(shí)間序列進(jìn)行預(yù)測(cè),在與傳統(tǒng)Arima算法的對(duì)比中顯示了較為明顯的優(yōu)勢(shì)。這將為數(shù)據(jù)中心KPI異常檢測(cè)提供算法技術(shù)支持。

參考文獻(xiàn)

[1] 張玲,劉波.基于殘差統(tǒng)計(jì)的時(shí)間序列加性離群點(diǎn)檢測(cè)算法研究[J].電子技術(shù)應(yīng)用,2015,41(9):85-87.

[2] 劉建成,蔡湛宇.基于神經(jīng)網(wǎng)絡(luò)的腦電信號(hào)的非線性預(yù)測(cè)[J].電子技術(shù)應(yīng)用,1999(7):14-15.

[3] 李靜雯,楊善紅.基于灰色Verhulst-小波神經(jīng)網(wǎng)絡(luò)的裝備故障預(yù)測(cè)研究[J].電子技術(shù)應(yīng)用,2014,40(8):91-93.

[4] 李銀國(guó),張幫禮.小波神經(jīng)網(wǎng)絡(luò)及其結(jié)構(gòu)設(shè)計(jì)方法[J].模式識(shí)別與人工智能,1997(3):197-205.

[5] 臧川,江冰,薛心怡,等.基于小波優(yōu)化神經(jīng)網(wǎng)絡(luò)的故障定位算法研究[J].電子技術(shù)應(yīng)用,2014,40(6):55-58.

[6] 吳祖堂.基于神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)器的傳感器數(shù)據(jù)證實(shí)技術(shù)研究[J].電子技術(shù)應(yīng)用,2001,27(1):22-25.

[7] 劉毅睿,謝芊,呂述望.白噪聲序列檢驗(yàn)的小波分析方法[J].電子技術(shù)應(yīng)用,2005,31(10):48-49.

[8] 魯旭陽(yáng),劉廣怡,張效義.基于改進(jìn)粒子群優(yōu)化的節(jié)點(diǎn)定位算法[J].電子技術(shù)應(yīng)用,2012,38(11):112-115.

[9] 李世文,張紅梅,張向利,等.基于二進(jìn)制粒子群與遺傳算法的數(shù)據(jù)分配研究[J].電子技術(shù)應(yīng)用,2016,42(7):122-125.

[10] 張朝龍,江巨浪,江善和,等.基于改進(jìn)PSO算法的LSSVM入侵檢測(cè)模型[J].電子技術(shù)應(yīng)用,2010(10):132-135.

[11] 陳雙葉,徐文政,丁雙春,等.改進(jìn)PSO-TSFNN智能家居室內(nèi)空氣質(zhì)量檢測(cè)與評(píng)價(jià)[J].電子技術(shù)應(yīng)用,2017(1):84-87,91.

[12] 郝杰.基于改進(jìn)小波神經(jīng)網(wǎng)絡(luò)的上證指數(shù)預(yù)測(cè)研究[D].廣州:華南理工大學(xué),2014.

[13] 趙學(xué)智,鄒春華,陳統(tǒng)堅(jiān),等.小波神經(jīng)網(wǎng)絡(luò)的參數(shù)初始化研究[J].華南理工大學(xué)學(xué)報(bào)(自然科學(xué)版),2003,31(2):77-79,84.

[14] 涂小萌,陳強(qiáng)國(guó).基于ARIMA-LSSVM混合模型的犯罪時(shí)間序列預(yù)測(cè)[J].電子技術(shù)應(yīng)用,2015,41(2):160-162.



作者信息:

姚榮歡1,2

(1.華北計(jì)算機(jī)系統(tǒng)工程研究所,北京100083;2.中軟信息系統(tǒng)工程有限公司,北京100081)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。