国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

面向應(yīng)用性能管理系統(tǒng)的運行負(fù)載預(yù)測

2018-11-28 09:20:46
計算機測量與控制 2018年11期
關(guān)鍵詞:網(wǎng)絡(luò)層特征向量時序

(四川幼兒師范高等??茖W(xué)校,四川 江油 621700)

0 引言

在云計算環(huán)境下,彈性計算[1]能力使用戶按需使用計算資源成為了可能。按需分配計算資源可以有效提高計算資源的使用效率,降低用戶的使用成本。然而,應(yīng)用的計算需求是處于不斷變化之中的,當(dāng)?shù)凸缿?yīng)用未來的系統(tǒng)負(fù)載時,會因為計算能力欠缺無法保證可靠服務(wù),乃至因為系統(tǒng)負(fù)載過大而造成宕機事故[2];當(dāng)高估未來系統(tǒng)負(fù)載時,申請過多的計算資源往往會造成計算資源的浪費,增加企業(yè)運行成本[3]。準(zhǔn)確預(yù)測出應(yīng)用在未來一段時間內(nèi)的系統(tǒng)負(fù)載成為彈性計算的重要一環(huán)。

時序數(shù)據(jù)[4]是應(yīng)用運行過程中常見的數(shù)據(jù)形式,應(yīng)用在單位時間內(nèi)的執(zhí)行指令數(shù)、網(wǎng)絡(luò)連接數(shù)磁盤讀寫數(shù)、內(nèi)存占用率、數(shù)據(jù)讀寫量等是常見時序數(shù)據(jù),針對具體應(yīng)用還可能會有在線用戶數(shù)、單位時間內(nèi)交易數(shù)等指標(biāo)。這些時序數(shù)據(jù)描述了應(yīng)用在運行過程中的負(fù)載波動情況。不同應(yīng)用的負(fù)載波動規(guī)律往往不是不同的,通過收集并分析應(yīng)用運行時的負(fù)載時序數(shù)據(jù)可以挖掘出應(yīng)用負(fù)載的波動變化規(guī)律并以此預(yù)測應(yīng)用未來的負(fù)載情況。

時序預(yù)測方法有多種,比如自回歸移動平均 (autoregressive integrated moving average, ARIMA)[5]、多元線性回歸(multiple linear regression, MLR)[6]和BP神經(jīng)網(wǎng)絡(luò)(back propagation neural network, BPNN)[7]。其中平穩(wěn)自回歸模型在應(yīng)用時需要針對具體時間序列分析其平穩(wěn)性,并根據(jù)差分后平穩(wěn)性結(jié)論給出模型參數(shù),在應(yīng)用時需要太多人工介入,可用性差。多元線性回歸模型可以挖掘出多元時序間的線性關(guān)系,無法挖掘非線性關(guān)系,擬合誤差很大。BP神經(jīng)網(wǎng)絡(luò)的預(yù)測算法提供了非線性擬合能力并避免了ARIMA模型需要太多人工介入分析的繁瑣,但由于BP神經(jīng)網(wǎng)絡(luò)模型沒有記憶能力,無法解決時序預(yù)測中的長跨度依賴的問題。

近年來,深度學(xué)習(xí)技術(shù)的發(fā)展給時序數(shù)據(jù)預(yù)測提供了新的解決問題的思路和工具;深度學(xué)習(xí)模型借助其多層非線性映射層,能夠抽象出數(shù)據(jù)更深層次的潛在規(guī)律[8]。循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural networks, RNN)引入了定向循環(huán),網(wǎng)絡(luò)會記憶之前的輸入信息并應(yīng)用于當(dāng)前的計算中,這就產(chǎn)生了時序的概念;長短期記憶網(wǎng)絡(luò)(long short-term memory, LSTM)[9]是RNN的一種,其解決了傳統(tǒng)RNN梯度消失、記憶跨度較短的問題;門控循環(huán)單元(gated recurrent unit, GRU)是 LSTM 的變種,其簡化了LSTM的門控方式,兩者在時序處理上不分伯仲。

本文針對彈性伸縮計算中的應(yīng)用負(fù)載預(yù)測提出了使用三層LSTM隱層和一層BP層構(gòu)成的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),使用從實驗室服務(wù)器上采集到的應(yīng)用運行監(jiān)控數(shù)據(jù)訓(xùn)練模型,并設(shè)計對比實驗比較其他時間序列預(yù)測模型的預(yù)測效果。實驗表明本文設(shè)計的神經(jīng)網(wǎng)絡(luò)模型的預(yù)測誤差更小。

1 神經(jīng)網(wǎng)絡(luò)相關(guān)技術(shù)簡介

1.1 BP神經(jīng)網(wǎng)絡(luò)

1.2 循環(huán)神經(jīng)網(wǎng)絡(luò)

循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)[12]在結(jié)構(gòu)上與前饋神經(jīng)網(wǎng)絡(luò)非常相似,但是RNN中隱藏層的反饋除了進(jìn)入輸出端,還會進(jìn)入到下一個時間結(jié)點的隱藏層,從而影響下一時間步的各個權(quán)重。

RNN網(wǎng)絡(luò)不同于BP神經(jīng)網(wǎng)絡(luò),其內(nèi)部存在隱藏狀態(tài)h,內(nèi)部狀態(tài)參與節(jié)點輸出值得計算,并根據(jù)輸入值和內(nèi)部隱藏狀態(tài)更新隱藏狀態(tài)。隱藏狀態(tài)的出現(xiàn)使RNN具有了記憶能力,這意味著歷史輸入信息能夠影響后續(xù)的輸出結(jié)果。RNN的這種特性非常適合于處理具有前后關(guān)聯(lián)特征的時序數(shù)據(jù)。如圖1所示,左邊的圖是RNN結(jié)構(gòu)的折疊圖,右邊是RNN結(jié)構(gòu)展開圖。從圖中可以看出,在每個時間步t,每個神經(jīng)元同時接收輸入層數(shù)據(jù)x(t)和前一個時間步隱藏層節(jié)點的輸出h(t)。

圖1 RNN結(jié)構(gòu)圖

RNN在前向傳播的過程中,主要分為輸入層到隱藏層、隱藏層到輸出層兩部分。傳播過程為:

輸入層→隱藏層:

(1)

隱藏層→輸出層:

yt=f(c+Wyht)

(2)

其中:Wx和Wh分別表示輸入xt的權(quán)重和前一個時間步隱層輸出ht-1的權(quán)重;Wy是隱藏層輸出的權(quán)重。

循環(huán)神經(jīng)網(wǎng)絡(luò)的計算過程雖然添加了上一時刻隱藏層的輸入,但是當(dāng)步長過長時,后面的節(jié)點對前面時間節(jié)點的感知能力下降,即RNN存在的長期依賴問題。

1.3 長短時記憶神經(jīng)網(wǎng)絡(luò)

長短期記憶網(wǎng)絡(luò)(LSTM)是RNN的一種,解決了普通RNN梯度消失的問題。LSTM神經(jīng)元內(nèi)部存在輸入門、忘記門、輸出門用來計算信息的重要程度,并據(jù)此對信息進(jìn)行篩選。LSTM通過門限控制解決了傳統(tǒng)RNN的梯度消失問題[13],這樣就為構(gòu)建大型LSTM網(wǎng)絡(luò)提供了可能。LSTM能夠挖掘時序數(shù)據(jù)中的長跨度關(guān)聯(lián)關(guān)系,是時序處理的理想模型。LSTM是建立在RNN基礎(chǔ)上的一種特殊類型的網(wǎng)絡(luò)結(jié)構(gòu),它的提出主要是未來克服RNN中存在的長期依賴導(dǎo)致梯度消失而設(shè)計的。LSTM 的核心是細(xì)胞(cell)的狀態(tài),而在LSTM元中內(nèi)部設(shè)計了輸入門(Input gate)、輸出門(Output gate)和遺忘門(Forget gate),設(shè)計“門”的目的是清除或增加信息到細(xì)胞狀態(tài)中。LSTM的內(nèi)部結(jié)構(gòu)相比RNN更復(fù)雜,單個LSTM神經(jīng)元的具體結(jié)構(gòu)如圖2所示。

圖2 LSTM內(nèi)存單元

為了更好地理解LSTM神經(jīng)元的內(nèi)部結(jié)構(gòu),首先對神經(jīng)元內(nèi)部的符號進(jìn)行假設(shè)。本文假設(shè)h為LSTM單元的輸出,c為LSTM內(nèi)存單元的值,x為輸入數(shù)據(jù)。LSTM單元的更新與前向傳播一樣,可以分為以下幾個步驟。

步驟1:首先,本文先計算當(dāng)前時刻的輸入結(jié)點g(t),Wxg,Whg和Wcg分別是輸入數(shù)據(jù)和上一時刻LSTM 單元輸出的權(quán)值:

(3)

(4)

步驟2:計算輸入門的值i(t)。輸入門用來控制當(dāng)前輸入數(shù)據(jù)對記憶單元狀態(tài)值的影響。所有門的計算受當(dāng)前輸入數(shù)據(jù)x(t)和上一時刻LSTM單元輸出值h(t-1)影響。

(5)

(6)

步驟3:計算遺忘門的值f(t)。遺忘門主要用來控制歷史信息對當(dāng)前記憶單元狀態(tài)值的影響,為記憶單元提供了重置的方式。

(7)

(8)

步驟4:計算當(dāng)前時刻記憶單元的狀態(tài)值c(t)。記憶單元是整個LSTM神經(jīng)元的核心結(jié)點。記憶單元的狀態(tài)更新主要由自身狀態(tài)c(t-1)和當(dāng)前時刻的輸入結(jié)點的值g(t),并且利用乘法門通過輸入門和遺忘門分別對這兩部分因素進(jìn)行調(diào)節(jié)。乘法門的目的是使LSTM存儲單元存儲和訪問時間較長的信息,從而減輕消失的梯度。

c(t)=f(t)?c(t-1)+i(t)?g(t)

(9)

其中:?表示逐點乘積。

步驟5:計算輸出門o(t)。輸出門用來控制記憶單元狀態(tài)值的輸出。

(10)

(11)

步驟6:最后計算LSTM單元的輸出。

h(t-1)=o(t)?tanh(c(t))

(12)

步驟7:更新當(dāng)前序列索引預(yù)測輸出。

2 模型構(gòu)建

系統(tǒng)關(guān)鍵負(fù)載指標(biāo)的預(yù)測模型如圖3所示。模型的輸入數(shù)據(jù)包括CPU、硬盤和網(wǎng)絡(luò)等負(fù)載指標(biāo)數(shù)據(jù),預(yù)測輸出的負(fù)載指標(biāo)為cpu_usr, net_rcv_pkts, disk_all_tps。預(yù)測模型分為歸一化層,神經(jīng)網(wǎng)絡(luò)層,和逆歸一化層。歸一化層將各個參數(shù)數(shù)據(jù)轉(zhuǎn)化到[0,1]區(qū)間上,逆歸一化層將預(yù)測所得數(shù)據(jù)映射到數(shù)據(jù)原有值域。提供預(yù)測功能的神經(jīng)網(wǎng)絡(luò)層有分為兩部分,LSTM網(wǎng)絡(luò)層和BP全連接層;LSTM網(wǎng)絡(luò)層提供對時間序列的特征提取、記憶和特征組合的功能;BP全連接層將最后一層LSTM網(wǎng)絡(luò)輸出的特征向量轉(zhuǎn)化成為輸出結(jié)果。

圖3 關(guān)鍵負(fù)載指標(biāo)預(yù)測模型示意圖

2.1 數(shù)據(jù)處理和歸一化相關(guān)處理

(13)

由于系統(tǒng)負(fù)載指標(biāo)在數(shù)值上不在同一個值域,將數(shù)據(jù)進(jìn)行歸一化能能夠保證訓(xùn)練過程的穩(wěn)定性,更容易訓(xùn)練得到最優(yōu)解。歸一化層和逆歸一化層完成參數(shù)在值域上的轉(zhuǎn)化操作。

2.2 長短期記憶網(wǎng)絡(luò)層

長短期記憶網(wǎng)絡(luò)層接受歸一化后的時序數(shù)據(jù)并對時序數(shù)據(jù)進(jìn)行特征提取并可以通過其記憶功能在內(nèi)部狀態(tài)向量中保留部分和歷史輸入相關(guān)的信息并最終向全連接層提供和未來關(guān)鍵負(fù)載指標(biāo)相關(guān)的特征向量。在本模型中LSTM網(wǎng)絡(luò)層有三層,最下層網(wǎng)絡(luò)接受歸一化的多元時序片段,對其進(jìn)行特征變換和時序中關(guān)鍵信息的記憶功能,生成的特征向量提供給上層LSTM網(wǎng)絡(luò)。上層的LSTM網(wǎng)絡(luò)對下層生成的特征向量進(jìn)行特征組合、變換、記憶、忘記生成更高一層的特征向量,上層LSTM網(wǎng)絡(luò)層能夠從更大維度上描述時序的特征。上層LSTM網(wǎng)絡(luò)輸出的向量的是下層LSTM網(wǎng)絡(luò)輸出特征向量的組合。由于高層神經(jīng)網(wǎng)絡(luò)往往存在梯度消失、梯度爆炸、訓(xùn)練復(fù)雜度過于復(fù)雜的問題,LSTM的層數(shù)不是越多越好,本模型根據(jù)模型訓(xùn)練的實際效果使用了三層LSTM網(wǎng)絡(luò)。由于上層LSTM層所輸出的特征向量是下層LSTM層輸出特征向量的組合,上層所能表達(dá)的特征數(shù)多于下層,因此三層LSTM層中的神經(jīng)元數(shù)目從下到上是遞增的。這樣保證了上層LSTM層能夠提取出足夠多的特征而又不會因為模型過于復(fù)雜造成難以訓(xùn)練的問題。

2.3 全連接層

全連接層位于預(yù)測模型的最頂層,完成把最后一層LSTM層產(chǎn)生的特征向量映射為輸出向量的功能。由于LSTM層也能夠提供分線性函數(shù)變換的功能,在該模型中使用單層全連接網(wǎng)絡(luò)已經(jīng)能夠滿足需求。該層沒有選擇使用LSTM網(wǎng)絡(luò)層,是因為LSTM為了解決不飽和記憶的問題,門限控制的激活函數(shù)傾向于輸出0或者1,即完全忘記或者完全記住,這樣就會造成輸出結(jié)果的連續(xù)性變差;另一方面,由于最頂層的LSTM節(jié)點個數(shù)很少,所能夠提供的記憶能力十分有限;再者,LSTM網(wǎng)絡(luò)的結(jié)構(gòu)比全連接層要復(fù)雜很多,訓(xùn)練時將更加困難。

2.4 神經(jīng)網(wǎng)絡(luò)的優(yōu)化方法

神經(jīng)網(wǎng)絡(luò)的損失函數(shù)為均方誤差(mean-square error, MSE)[14]。神經(jīng)網(wǎng)絡(luò)的優(yōu)化方法有很多,如SGD[15]、Adagrad[16]、AdaDelta[17]、Adam[18]等。其中Adam算法整體表現(xiàn)優(yōu)異,在實際應(yīng)用中效果良好。

3 實驗驗證

使用實際服務(wù)器中應(yīng)用運行負(fù)載指標(biāo)的時序序列訓(xùn)練模型并分析模型的訓(xùn)練和預(yù)測誤差。實驗中,首先使用不同模型參數(shù)分析擬合方均根差,找到相對合理的模型;之后對比其它時序預(yù)測模型和本論文中設(shè)計的模型的預(yù)測效果,驗證模型的優(yōu)點。

3.1 神經(jīng)網(wǎng)絡(luò)超參數(shù)選取

超參數(shù)選取作為設(shè)計神經(jīng)網(wǎng)絡(luò)模型的重要一環(huán),對模型的實際輸出效果有重大的影響。神經(jīng)網(wǎng)絡(luò)的層數(shù)、每層中的節(jié)點類型、節(jié)點個數(shù)是影響神經(jīng)性能的幾個重要參數(shù)。

圖4所示的為應(yīng)用在運行過程中,歸一化后的對不同硬件資源的消耗情況。觀察改圖不難發(fā)現(xiàn),cpu_user和cpu_sys存在周期性波動的情況,而且兩者存在著某種“同步”變化,這就是說這兩者之間存在著數(shù)值上的關(guān)聯(lián)性。實驗中,預(yù)測cpu_user,net_rcv_ pkts, disk_all_tps三個指標(biāo)的未來8個時間單位的負(fù)載需求。

圖4 關(guān)鍵負(fù)載指標(biāo)時序數(shù)據(jù)

在表1中的網(wǎng)絡(luò)參數(shù)一欄中從左至右的數(shù)字部分表示神經(jīng)網(wǎng)絡(luò)層從下至上各層的節(jié)點個數(shù),數(shù)字后面的L代表該層為長短期記憶網(wǎng)絡(luò)層,D代表該層為全連接層。分析表中的數(shù)據(jù)可知:

1)模型最后一層用全連接層會獲得比較好的擬合效果;

2)使用三層長短期記憶網(wǎng)絡(luò)層取到比較好的效果;

3)當(dāng)模型中的長短期記憶網(wǎng)絡(luò)層中的節(jié)點數(shù)從底層到上層逐漸增加效果優(yōu)于節(jié)點數(shù)逐漸減少的模型。

對比不同參數(shù)條件下的擬合方均根差、模型復(fù)雜度選擇預(yù)測模型中的網(wǎng)絡(luò)類型和網(wǎng)絡(luò)節(jié)點數(shù)量,設(shè)計了如圖3中的關(guān)鍵負(fù)載預(yù)測指標(biāo)模型。

表1 不同參數(shù)的模型擬合誤差

3.2 對比實驗

為了進(jìn)一步驗證論文中設(shè)計神經(jīng)網(wǎng)絡(luò)預(yù)測模型對時間序列的優(yōu)勢,使用不同時序預(yù)測模型進(jìn)行對比。首先從易用性的角度排除了ARIMA模型,ARIMA模型由于需要具體分析時序的平穩(wěn)性,需要太多人工干預(yù),單一參數(shù)的適用性太差。在實驗中具體比較了多元線性回歸(MLR)、BP神經(jīng)網(wǎng)絡(luò),將圖3中的LSTM替換為普通RNN和GRU,不斷調(diào)整參數(shù)達(dá)到最優(yōu)后和論文介紹的模型輸出結(jié)果進(jìn)行對比,驗證模型的優(yōu)越性。

表2 不同模型實驗結(jié)果對比

由于沒有備激活函數(shù),不具備擬合非線性函數(shù)的能力,只能挖掘輸出數(shù)據(jù)和輸入數(shù)據(jù)之間的線性關(guān)聯(lián)關(guān)系,在數(shù)據(jù)集上的表現(xiàn)不理想,誤差較大。BP神經(jīng)網(wǎng)絡(luò)能夠擬合非線性函數(shù),但由于其每次輸出的結(jié)果僅僅依賴于該次輸入數(shù)據(jù),不能挖掘非輸入時序數(shù)據(jù)和輸出的關(guān)聯(lián)關(guān)系。RNN和GRU這兩種模型雖然具備一定的記憶能力,普通RNN存在梯度消失的問題,不能挖掘時間序列中長跨度依賴關(guān)系;GRU是LSTM的簡化版本,在很多問題上兩者不相伯仲,實驗結(jié)果表明,該模型稍遜于LSTM,這是由于GRU模型在訓(xùn)練過程中抖動比較嚴(yán)重,而LSTM表現(xiàn)穩(wěn)定,損失保持相對穩(wěn)定下降。

4 結(jié)論

本文給出了基于LSTM循環(huán)神經(jīng)網(wǎng)絡(luò)的應(yīng)用運行關(guān)鍵負(fù)載指標(biāo)的預(yù)測模型,并設(shè)計了相關(guān)實驗比較了其它預(yù)測模型的預(yù)測效果。實驗結(jié)果表明,本論文提出的基于LSTM的神經(jīng)網(wǎng)絡(luò)模型的預(yù)測效果更優(yōu),精度更高。論文初步驗證了應(yīng)用運行負(fù)載指標(biāo)日志并在線預(yù)測未來應(yīng)用關(guān)鍵負(fù)載指標(biāo)的可行性,可以為彈性計算根據(jù)預(yù)測負(fù)載調(diào)整集群容量提供參考。

猜你喜歡
網(wǎng)絡(luò)層特征向量時序
Noise-Tolerant ZNN-Based Data-Driven Iterative Learning Control for Discrete Nonaffine Nonlinear MIMO Repetitive Systems
基于時序Sentinel-2數(shù)據(jù)的馬鈴薯遙感識別研究
二年制職教本科線性代數(shù)課程的幾何化教學(xué)設(shè)計——以特征值和特征向量為例
克羅內(nèi)克積的特征向量
基于Sentinel-2時序NDVI的麥冬識別研究
一類特殊矩陣特征向量的求法
EXCEL表格計算判斷矩陣近似特征向量在AHP法檢驗上的應(yīng)用
一種毫米波放大器時序直流電源的設(shè)計
電子制作(2016年15期)2017-01-15 13:39:08
基于WPA的物聯(lián)網(wǎng)網(wǎng)絡(luò)層安全的研究
DPBUS時序及其設(shè)定方法
河南科技(2014年15期)2014-02-27 14:12:36
桃园市| 裕民县| 繁峙县| 邯郸市| 中江县| 南靖县| 贵阳市| 金门县| 泸定县| 清涧县| 昔阳县| 新昌县| 昭平县| 普兰县| 朝阳县| 沭阳县| 开化县| 如皋市| 浙江省| 南和县| 香港| 富川| 印江| 甘洛县| 樟树市| 秦皇岛市| 明星| 梁平县| 江都市| 武威市| 龙川县| 漾濞| 通许县| 措美县| 安泽县| 黄山市| 湖南省| 申扎县| 鹤山市| 随州市| 东明县|