• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于ARIMA-RNN組合模型的云服務(wù)器老化預(yù)測方法

      2021-02-28 04:46:24孟海寧童新宇石月開朱磊馮鍇黑新宏
      通信學(xué)報(bào) 2021年1期
      關(guān)鍵詞:老化服務(wù)器軟件

      孟海寧,童新宇,石月開,朱磊,馮鍇,黑新宏

      (1.西安理工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,陜西 西安 710048;2.陜西省網(wǎng)絡(luò)計(jì)算與安全技術(shù)重點(diǎn)實(shí)驗(yàn)室,陜西 西安 710048)

      1 引言

      軟件老化是影響軟件系統(tǒng)可靠性的潛在因素,當(dāng)長期運(yùn)行的軟件系統(tǒng)存在軟件老化現(xiàn)象時(shí),系統(tǒng)將出現(xiàn)性能下降、異常和錯(cuò)誤增加,甚至死機(jī)[1]。軟件老化是由操作系統(tǒng)可分配資源匱乏、碎片化嚴(yán)重以及內(nèi)部錯(cuò)誤積累(如內(nèi)存泄漏和未釋放的文件資源)造成的,而這些錯(cuò)誤在軟件測試階段難以檢測和消除[2]。云計(jì)算系統(tǒng)的體系結(jié)構(gòu)復(fù)雜,系統(tǒng)內(nèi)計(jì)算資源的申請和釋放較為頻繁,且云系統(tǒng)長期運(yùn)行為云用戶提供服務(wù),因此云系統(tǒng)更容易出現(xiàn)軟件老化現(xiàn)象,影響系統(tǒng)可用性和可靠性。

      為了避免軟件老化,Huang 等[3]提出了軟件再生。它是一種主動預(yù)防性的容錯(cuò)技術(shù),通過重置軟件系統(tǒng)內(nèi)部狀態(tài),防止系統(tǒng)未來發(fā)生重大故障。該過程通過有計(jì)劃地重啟系統(tǒng),清理系統(tǒng)運(yùn)行環(huán)境,使系統(tǒng)恢復(fù)到初始健康狀態(tài)。然而軟件再生操作將帶來額外的系統(tǒng)開銷,因此需要選擇最佳時(shí)機(jī)進(jìn)行軟件再生。

      為了減少軟件再生給系統(tǒng)帶來的時(shí)間和資源消耗的成本,學(xué)者們對軟件老化趨勢進(jìn)行預(yù)測,計(jì)算老化閾值,在系統(tǒng)重大故障發(fā)生之前對系統(tǒng)進(jìn)行軟件再生。其中,Okamura 等[4]構(gòu)造了基于馬爾可夫鏈的響應(yīng)時(shí)間序列,評估分布式服務(wù)器系統(tǒng)的軟件老化趨勢。Matos 等[5]針對Eucalyptus 云系統(tǒng)老化現(xiàn)象,提出了基于多閾值的時(shí)間序列預(yù)測方法,該方法求解得到最優(yōu)再生時(shí)機(jī),可減少系統(tǒng)停機(jī)時(shí)間并提高系統(tǒng)可靠性。Islam 等[6]針對亞馬遜EC2云系統(tǒng),采用神經(jīng)網(wǎng)絡(luò)和線性回歸的方法,預(yù)測系統(tǒng)資源使用情況,為資源配置策略提供參考依據(jù)。Langner 等[7]發(fā)現(xiàn)運(yùn)行于同一個(gè)基于內(nèi)核的虛擬機(jī)(KVM,kernel-based virtual machine)之上的3 個(gè)虛擬機(jī)(VM,virtula machine)的CPU 占用率逐步升高,物理內(nèi)存和交換區(qū)使用量逐漸消耗,繼而出現(xiàn)VM 上HTTP 請求響應(yīng)緩慢,最終導(dǎo)致整個(gè)系統(tǒng)老化。Kousiouris 等[8]采用人工神經(jīng)網(wǎng)絡(luò)的方法,預(yù)測云系統(tǒng)中VM 的性能。鄭鵬飛等[9]提出運(yùn)用多元時(shí)間序列模型分析軟件老化的方法。林已杰等[10]針對服務(wù)器軟件老化現(xiàn)象,提出了一種基于BP 神經(jīng)網(wǎng)絡(luò)和馬爾可夫模型結(jié)合的方法對服務(wù)器關(guān)鍵資源進(jìn)行預(yù)測。

      綜上所述,大多數(shù)學(xué)者關(guān)注時(shí)間序列分析或智能算法來預(yù)測軟件老化趨勢。時(shí)間序列分析法采用自回歸移動平均(ARMA,autoregressive moving average)、粒子濾波等模型進(jìn)行趨勢預(yù)測[11-13],模型簡單,但所需數(shù)據(jù)量大且對于波動較大的數(shù)據(jù)預(yù)測精度較低。智能算法包括神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)等[14-15],該類算法在預(yù)測時(shí)間序列數(shù)據(jù)時(shí),預(yù)測精度不高且收斂較慢。因此,僅采用單一模型進(jìn)行軟件老化預(yù)測,很難獲得比較精確的預(yù)測結(jié)果。

      本文探究基于OpenStack[16-17]的云服務(wù)器系統(tǒng)的軟件老化問題,為實(shí)現(xiàn)軟件再生機(jī)制提供理論依據(jù)。本文將整合移動平均自回歸(ARIMA,autoregressive integrated moving average)模型與循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN,recurrent neural network)模型結(jié)合,得到ARIMA-RNN 組合模型,對云服務(wù)器系統(tǒng)老化趨勢進(jìn)行預(yù)測。該方法克服了ARIMA 模型對波動較大的數(shù)據(jù)預(yù)測精度較低的局限性,解決了RNN模型預(yù)測收斂速度慢的問題,最終實(shí)現(xiàn)對云服務(wù)器系統(tǒng)的老化預(yù)測。此外,本文設(shè)計(jì)了負(fù)載實(shí)驗(yàn)方案,模擬云服務(wù)器系統(tǒng)實(shí)際工作狀況,選擇云服務(wù)器的性能服務(wù)參數(shù)響應(yīng)時(shí)間和系統(tǒng)參數(shù)CPU 使用率作為衡量系統(tǒng)老化的重要指標(biāo),驗(yàn)證軟件老化現(xiàn)象的存在,并預(yù)測系統(tǒng)老化趨勢。

      2 ARIMA-RNN 組合模型預(yù)測方法

      基于ARIMA-RNN 組合模型的云服務(wù)器老化預(yù)測方法的工作流程包括4 個(gè)基本步驟:數(shù)據(jù)預(yù)處理、ARIMA 模型構(gòu)建及數(shù)據(jù)擬合、RNN 模型構(gòu)建,以及ARIMA-RNN 組合模型構(gòu)建及數(shù)據(jù)預(yù)測。

      2.1 數(shù)據(jù)預(yù)處理

      對云服務(wù)器進(jìn)行老化預(yù)測前,需對數(shù)據(jù)進(jìn)行歸一化預(yù)處理。這是因?yàn)樵品?wù)器系統(tǒng)性能參數(shù)的時(shí)間序列數(shù)據(jù)分布不均勻且數(shù)據(jù)變化幅度(標(biāo)準(zhǔn)差)較大,數(shù)據(jù)中含有奇異樣本數(shù)據(jù),預(yù)測時(shí)會減慢網(wǎng)絡(luò)的學(xué)習(xí)和收斂速度。因此本文采用歸一化處理方法,將云服務(wù)器原始數(shù)據(jù)映射到[?1,1],使預(yù)測模型收斂速度快,映射轉(zhuǎn)換過程如式(1)所示。

      其中,xmax是數(shù)據(jù)的最大值,xmean是數(shù)據(jù)的平均值,X是原始時(shí)間序列數(shù)據(jù),X˙是預(yù)處理后的時(shí)間序列數(shù)據(jù)。

      2.2 ARIMA 模型構(gòu)建及數(shù)據(jù)擬合

      構(gòu)建ARIMA 模型時(shí),需確定ARIMA 模型中的參數(shù)p、d、q。首先,通過單位根檢驗(yàn)方法,對序列數(shù)據(jù)進(jìn)行平穩(wěn)性檢驗(yàn),若序列數(shù)據(jù)為非平穩(wěn)時(shí)間序列則需反復(fù)進(jìn)行差分處理,直到差分后的時(shí)間序列平穩(wěn)為止。然后,計(jì)算自相關(guān)和偏自相關(guān)函數(shù),確定自回歸項(xiàng)p和移動平均項(xiàng)q的取值范圍。最后,采用赤池信息量準(zhǔn)則(AIC,Akaike information criterion)對p和q的取值進(jìn)行最佳估計(jì),計(jì)算對應(yīng)ARIMA 模型的AIC 值,從而得到最佳ARIMA 模型。其中AIC 值反映了數(shù)據(jù)的擬合效果,AIC 值越小,則數(shù)據(jù)擬合效果越好。采用ARIMA 模型的數(shù)據(jù)預(yù)測過程如圖1 所示。

      圖1 ARIMA 模型預(yù)測流程

      2.3 RNN 模型構(gòu)建

      1) RNN 隱藏層數(shù)

      首先,RNN 與前饋神經(jīng)網(wǎng)絡(luò)(FNN,feedforward neural network)結(jié)構(gòu)相似,具備與FNN 相似的數(shù)據(jù)擬合能力。其次,Hornik 等[18]已證明FNN 只需具備單個(gè)隱藏層和有限個(gè)神經(jīng)元,即能較高精度地?cái)M合任意復(fù)雜度的函數(shù)。因此本文將RNN 模型的隱藏層數(shù)設(shè)置為1。

      2) RNN 輸入層節(jié)點(diǎn)數(shù)

      RNN 模型利用歷史數(shù)據(jù)x(t?1),x(t?2),…,x(t?n)對x(t)進(jìn)行預(yù)測(其中x(t)為時(shí)刻t的數(shù)據(jù)值,n為歷史數(shù)據(jù)的個(gè)數(shù))。因此,RNN 模型中輸入層節(jié)點(diǎn)的數(shù)量由選取的歷史數(shù)據(jù)個(gè)數(shù)決定?;疑P(guān)聯(lián)分析法[19]是衡量序列數(shù)據(jù)相關(guān)程度的方法,灰色關(guān)聯(lián)系數(shù)越大,則序列數(shù)據(jù)的相關(guān)性越強(qiáng)。本文采用灰色關(guān)聯(lián)分析法,計(jì)算序列數(shù)據(jù)中每個(gè)數(shù)據(jù)與若干歷史數(shù)據(jù)的平均相關(guān)性,確定與x(t)相關(guān)性較強(qiáng)的歷史數(shù)據(jù)作為RNN 模型的輸入,從而確定RNN 網(wǎng)絡(luò)輸入層節(jié)點(diǎn)個(gè)數(shù),具體過程如算法1 所示。

      算法1時(shí)間序列數(shù)據(jù)灰色關(guān)聯(lián)分析法

      輸入經(jīng)預(yù)處理的時(shí)間序列數(shù)據(jù)

      輸出時(shí)間序列數(shù)據(jù)中t時(shí)刻的值與歷史值的平均相關(guān)系數(shù)

      3) RNN 隱藏層節(jié)點(diǎn)數(shù)

      本文采用經(jīng)驗(yàn)法確定神經(jīng)網(wǎng)絡(luò)隱藏層節(jié)點(diǎn)數(shù),經(jīng)驗(yàn)法如式(2)所示。

      其中,h為RNN 模型中隱藏層神經(jīng)元的個(gè)數(shù),m為輸入層神經(jīng)元的個(gè)數(shù),n為輸出層神經(jīng)元的個(gè)數(shù),α∈{0≤x≤10,x∈Z} 。

      2.4 ARIMA-RNN 組合模型構(gòu)建及數(shù)據(jù)預(yù)測

      ARIMA-RNN 組合模型的拓?fù)浣Y(jié)構(gòu)如圖2 所示,預(yù)測過程如算法2 所示。ARIMA-RNN 組合模型的輸入數(shù)據(jù)由兩部分構(gòu)成:ARIMA 模型對x(t)的預(yù)測值和x(t)的歷史數(shù)據(jù)x(t?1),x(t?2),…,x(t?n)。RNN 模型訓(xùn)練過程中,誤差函數(shù)采用均方誤差(MSE,mean square error)函數(shù),如式(3)所示。

      圖2 ARIMA-RNN 組合模型拓?fù)浣Y(jié)構(gòu)

      其中,ytrue為實(shí)際輸出,ypredictive為期望輸出。

      算法2ARIMA-RNN 組合模型預(yù)測算法

      輸入預(yù)處理的時(shí)間序列數(shù)據(jù)與ARIMA 模型預(yù)測值

      輸出預(yù)測結(jié)果

      步驟1使用大小為m(m

      步驟2將ARIMA 模型預(yù)測得到的數(shù)據(jù)通過式(1)映射到區(qū)間[?1,1]。

      步驟3將步驟2 得到的序列數(shù)據(jù)截?cái)?,從第m個(gè)時(shí)刻開始取值,即α={αm,αm+1,…,αN},使截?cái)嗪蟮腁RIMA 預(yù)測數(shù)據(jù)與步驟1 的標(biāo)簽數(shù)據(jù)y={y m,ym+1,…,yN}相對應(yīng)。

      步驟4將步驟3 得到的數(shù)據(jù)加入步驟1 數(shù)據(jù)集的特征向量,得到Xt=[xt?1,xt?2,…,x t?m,αt],t=m,m+1,…,n,則ARIMA-RNN 模型的數(shù)據(jù)集為{Xt,yt|t=m,m+1,m+2,…,N}。

      步驟5初始化RNN 各個(gè)權(quán)重矩陣和偏移向量的值。

      步驟6計(jì)算數(shù)據(jù)集特征向量Xt在ARIMARNN 組合模型中的輸出值。

      步驟7依據(jù)式(3),計(jì)算步驟6 中得到預(yù)測序列與期望序列之間的誤差,利用反向傳播算法調(diào)整各個(gè)權(quán)重矩陣和偏移向量的值,使誤差達(dá)到最小。

      步驟8判斷訓(xùn)練次數(shù)是否達(dá)到最大值或誤差達(dá)到閾值,若是則保存調(diào)整好的權(quán)重矩陣和偏移向量,轉(zhuǎn)步驟6 并輸出預(yù)測結(jié)果;否則轉(zhuǎn)至步驟7。

      2.5 時(shí)間復(fù)雜度分析

      基于ARIMA-RNN 組合模型的云服務(wù)器老化預(yù)測方法在預(yù)測時(shí)間序列數(shù)據(jù)時(shí),將ARIMA 模型的預(yù)測值和t?1,t?2,…,t?d時(shí)刻的歷史數(shù)據(jù)作為RNN 模型的輸入特征向量。首先通過ARIMA 模型對序列數(shù)據(jù)進(jìn)行預(yù)測,ARIMA 模型預(yù)測方法的時(shí)間復(fù)雜度為O(n) ;然后將特征矩陣X(維度為[n,d])輸入RNN 模型,與RNN 的隱藏層權(quán)重矩陣(維度為[d,w1])相乘,則時(shí)間復(fù)雜度為O(ndw1);最后將相乘結(jié)果與輸出層權(quán)重矩陣(維度為[w1,1])相乘,則時(shí)間復(fù)雜度為O(nw1)。所以總的時(shí)間復(fù)雜度為

      因此本文提出的ARIMA-RNN 組合模型的時(shí)間復(fù)雜度為O(n),即線性時(shí)間復(fù)雜度。

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

      為探究基于OpenStack 云服務(wù)器的軟件老化現(xiàn)象,實(shí)驗(yàn)中設(shè)計(jì)負(fù)載發(fā)生方案模擬云服務(wù)器的實(shí)際負(fù)載,并收集云服務(wù)器的資源和性能數(shù)據(jù),作為研究軟件老化的實(shí)驗(yàn)數(shù)據(jù)。通過對云服務(wù)器的資源和性能數(shù)據(jù)進(jìn)行老化預(yù)測,為軟件再生機(jī)制的部署提供理論依據(jù)。

      本實(shí)驗(yàn)基于OpenStack 框架和QEMU/KVM 管理程序,實(shí)驗(yàn)系統(tǒng)由一臺云服務(wù)器、一臺MySQL數(shù)據(jù)庫服務(wù)器及一組模擬客戶端組成,如圖3 所示。云服務(wù)器配置環(huán)境為Intel(R)Core(TM)i5-4590 CPU 四核3.3GHz、8GB RAM,操作系統(tǒng)為18.04.1-Ubuntux86_64,云服務(wù)器虛擬機(jī)上運(yùn)行的操作系統(tǒng)為Redhat 7.3_64。云服務(wù)器端部署了一個(gè)基于Webbench 基準(zhǔn)測試的Web 網(wǎng)站系統(tǒng)。在客戶端編寫負(fù)載腳本,依照Webbench 規(guī)范向云服務(wù)器發(fā)送網(wǎng)站商品查詢的請求,同時(shí)監(jiān)控并收集云服務(wù)器的性能參數(shù)和服務(wù)參數(shù)。實(shí)驗(yàn)以響應(yīng)時(shí)間作為老化特征參數(shù),實(shí)驗(yàn)樣本數(shù)據(jù)為2 230 個(gè),采樣時(shí)間間隔為3 s。

      圖3 實(shí)驗(yàn)平臺

      首先,檢驗(yàn)云服務(wù)器系統(tǒng)是否存在軟件老化。響應(yīng)時(shí)間的數(shù)據(jù)變化反映了云服務(wù)器系統(tǒng)運(yùn)行性能表現(xiàn)狀況,若響應(yīng)時(shí)間隨著系統(tǒng)運(yùn)行時(shí)間的增長而增加,則可認(rèn)定系統(tǒng)處于老化狀態(tài)[20]。為了分析云服務(wù)器系統(tǒng)的老化狀態(tài),本文采用線性回歸方法擬合響應(yīng)時(shí)間數(shù)據(jù)的變化趨勢,得到參數(shù)w=0.017,b=?0.71。原始序列數(shù)據(jù)和線性回歸趨勢如圖4 所示,可以看出,云服務(wù)器在工作負(fù)載整體恒定的情況下,隨著時(shí)間的推移,服務(wù)器的響應(yīng)時(shí)間逐步上升,驗(yàn)證了云服務(wù)器出現(xiàn)軟件老化現(xiàn)象。

      圖4 云服務(wù)器響應(yīng)時(shí)間數(shù)據(jù)趨勢

      其次,實(shí)驗(yàn)中應(yīng)用ARIMA-RNN 組合模型進(jìn)行預(yù)測,將響應(yīng)時(shí)間數(shù)據(jù)集劃分為訓(xùn)練集和測試集(其中訓(xùn)練集為前80%的數(shù)據(jù)集,測試集為后20%的數(shù)據(jù)集)。采用組合模型進(jìn)行二步老化預(yù)測,第一步采用ARIMA 模型對響應(yīng)時(shí)間t時(shí)刻的數(shù)據(jù)值做出預(yù)測,第二步將ARIMA 模型預(yù)測結(jié)果值和t時(shí)刻之前的響應(yīng)時(shí)間數(shù)據(jù)一并輸入到RNN 模型,得到響應(yīng)時(shí)間t時(shí)刻的最終預(yù)測值。

      3.1 ARIMA 模型預(yù)測結(jié)果及分析

      用ARIMA 模型對響應(yīng)時(shí)間預(yù)測時(shí),首先,采用單位根檢驗(yàn)方法,對響應(yīng)時(shí)間的序列數(shù)據(jù)進(jìn)行平穩(wěn)性檢驗(yàn),確定ARIMA 模型中參數(shù)d的值。經(jīng)過一次差分處理后,單位根檢驗(yàn)結(jié)果如表1 所示。表1中統(tǒng)計(jì)量值為?20.567 5,小于3 個(gè)置信度(1%,5%,10%)的臨界統(tǒng)計(jì)值,P=0,表示拒絕原假設(shè),因此ARIMA 模型差分系數(shù)d=1。

      表1 單位根檢驗(yàn)結(jié)果

      其次,通過偏自相關(guān)和自相關(guān)分析,確定自回歸項(xiàng)p和移動平均項(xiàng)q的取值范圍。如圖5 所示,偏自相關(guān)分析顯示滯后階數(shù)為1~12 階時(shí),偏自相關(guān)系數(shù)超出了置信邊界,滯后階數(shù)大于12 階后偏自相關(guān)系數(shù)縮小至接近0。自相關(guān)分析顯示滯后階數(shù)大于5 階后,自相關(guān)系數(shù)處于置信區(qū)間。因此p的值可能為11 或12,q的值可能為5 或7。

      圖5 偏自相關(guān)和自相關(guān)分析

      最后,依據(jù)AIC 準(zhǔn)則對待選參數(shù)p和q進(jìn)行最佳估計(jì)。將響應(yīng)時(shí)間數(shù)據(jù)作為輸入,用p和q的可能值構(gòu)建ARIMA 模型,分別計(jì)算模型對應(yīng)的AIC值,如表2 所示??梢钥闯觯珹RIMA(12,1,7)的AIC值最小,因此,選擇ARIMA(12,1,7)模型對響應(yīng)時(shí)間進(jìn)行預(yù)測,預(yù)測結(jié)果如圖6 所示。

      表2 ARIMA 模型的AIC 值

      此外,圖7 給出了響應(yīng)時(shí)間實(shí)際值的變化率,即響應(yīng)時(shí)間隨時(shí)間序列數(shù)據(jù)的斜率變化曲線,其值越大表示響應(yīng)時(shí)間變化越明顯。時(shí)間序列數(shù)據(jù)為0~500 時(shí),響應(yīng)時(shí)間變化率較小,表明該段序列數(shù)據(jù)變化較為平緩;時(shí)間序列數(shù)據(jù)為1 000~1 500 時(shí),響應(yīng)時(shí)間變化率較大,表明該段序列數(shù)據(jù)變化劇烈。圖8 給出了ARIMA 模型對響應(yīng)時(shí)間進(jìn)行預(yù)測的絕對誤差。可以看出,波動平緩的數(shù)據(jù)(時(shí)間序列數(shù)據(jù)為0~500)預(yù)測絕對誤差較小,而波動劇烈的數(shù)據(jù)(時(shí)間序列數(shù)據(jù)1 000~1 500)預(yù)測絕對誤差較大。因此,可以判斷對于波動劇烈的時(shí)間序列數(shù)據(jù),用ARIMA 模型預(yù)測效果較差。

      圖6 ARIMA 模型預(yù)測結(jié)果

      圖7 響應(yīng)時(shí)間實(shí)際值的變化率

      圖8 響應(yīng)時(shí)間預(yù)測絕對誤差

      綜上,由于云服務(wù)器系統(tǒng)性能數(shù)據(jù)和資源數(shù)據(jù)具有突發(fā)性、變化劇烈以及周期性的特點(diǎn),對于變化劇烈的時(shí)間序列數(shù)據(jù),用ARIMA 模型預(yù)測效果較差。因此僅采用單一的ARIMA 模型對云服務(wù)器進(jìn)行老化預(yù)測,效果并不理想。

      3.2 ARIMA-RNN 組合模型預(yù)測結(jié)果及分析

      構(gòu)建ARIMA-RNN 組合模型,需確定RNN 網(wǎng)絡(luò)結(jié)構(gòu)。首先,采用算法1 計(jì)算響應(yīng)時(shí)間序列數(shù)據(jù)的相關(guān)性,如圖9 所示,平均相關(guān)系數(shù)呈波動下降的趨勢,當(dāng)歷史數(shù)據(jù)個(gè)數(shù)為10 時(shí)數(shù)據(jù)的相關(guān)性最強(qiáng),因此ARIMA-RNN 組合模型的輸入層節(jié)點(diǎn)數(shù)為10。然后,根據(jù)式(2)得到隱藏層節(jié)點(diǎn)數(shù)的最佳取值區(qū)間,并經(jīng)過反復(fù)實(shí)驗(yàn)測試,得到隱藏層節(jié)點(diǎn)數(shù)最優(yōu)值為20。此外,本實(shí)驗(yàn)RNN 網(wǎng)絡(luò)中激活函數(shù)選取tanh 函數(shù),該函數(shù)值域?yàn)閇?1,1],對于特征相差大的數(shù)據(jù)處理效果較好。

      圖9 響應(yīng)時(shí)間序列數(shù)據(jù)的相關(guān)性

      然后,使用ARIMA-RNN 組合模型、ARIMA模型[21]以及RNN 模型[22]對響應(yīng)時(shí)間進(jìn)行預(yù)測,預(yù)測結(jié)果如圖 10(a)所示。訓(xùn)練數(shù)據(jù)集區(qū)間為[0,1784],測試數(shù)據(jù)集區(qū)間為[1 785,2 230]。由于數(shù)據(jù)量大且數(shù)據(jù)變化較為劇烈,為了顯示清晰每隔50 個(gè)數(shù)據(jù)點(diǎn)輸出結(jié)果??梢钥闯觯珹RIMARNN 組合模型擬合效果最好。3 種模型的預(yù)測結(jié)果誤差對比情況,如圖10(b)所示??梢夾RIMA模型和RNN 模型各有優(yōu)勢,在數(shù)據(jù)較平穩(wěn)的區(qū)間數(shù)據(jù),如0~500 區(qū)間數(shù)據(jù),ARIMA 模型的預(yù)測精度優(yōu)于RNN 模型預(yù)測精度;而在數(shù)據(jù)波動較為劇烈的區(qū)間數(shù)據(jù),如1 500~2 000 區(qū)間數(shù)據(jù),RNN 模型預(yù)測精度優(yōu)于 ARIMA 模型。ARIMA-RNN 組合模型結(jié)合了這兩者的優(yōu)勢,預(yù)測精度最高。

      3.3 預(yù)測性能評價(jià)

      本文從預(yù)測精度、預(yù)測收斂速度及可擴(kuò)展性3 個(gè)方面,對本文所提預(yù)測方法進(jìn)行性能評價(jià)。首先,在評判算法預(yù)測精度方面,采用均方根誤差RMSE、平均絕對誤差MAE 及平均絕對百分比誤差MAPE作為評價(jià)指標(biāo),計(jì)算式如下所示。

      其中,n為數(shù)據(jù)樣本的個(gè)數(shù),ypredictive為預(yù)測序列數(shù)據(jù),ytrue為實(shí)際序列數(shù)據(jù)。

      圖10 響應(yīng)時(shí)間預(yù)測及誤差對比

      使用ARIMA-RNN 組合模型、ARIMA 模型[21]和RNN 模型[22],對響應(yīng)時(shí)間數(shù)據(jù)進(jìn)行預(yù)測精度對比,如表3 所示。ARIMA-RNN 組合模型的RMSE、MAE 和MAPE 值均最小,其次是RNN模型,ARIMA 模型預(yù)測誤差最大。而ARIMA-RNN 組合模型相較ARIMA 模型和RNN模型,RMSE 分別降低了83.90%和76.61%,MAE分別降低了86.10%和74.24%,MAPE 分別降低了81.23%和71.47%??梢?,本文所提ARIMA-RNN組合模型,在預(yù)測云服務(wù)器性能數(shù)據(jù)時(shí)比ARIMA模型和RNN 模型的預(yù)測精度更高。原因是本文針對OpenStack 云服務(wù)器的系統(tǒng)性能參數(shù)在運(yùn)行時(shí)的數(shù)據(jù)變化特點(diǎn),設(shè)計(jì)ARIMA-RNN 組合模型進(jìn)行系統(tǒng)老化預(yù)測,克服了ARIMA 模型對于波動較大數(shù)據(jù)預(yù)測精度較低的局限性,因而提高了預(yù)測精度。

      表3 各模型誤差對比

      其次,在評價(jià)預(yù)測收斂速度方面,將本文所提的ARIMA-RNN組合模型與RNN模型進(jìn)行了對比,網(wǎng)絡(luò)訓(xùn)練過程的收斂趨勢如圖11 所示。本文基于ARIMA-RNN 組合模型的預(yù)測方法,在模型訓(xùn)練過程中,當(dāng)訓(xùn)練次數(shù)為10 時(shí),均方誤差MSE 值已小于0.0015,之后收斂趨于穩(wěn)定,相較RNN 模型預(yù)測方法,本文基于ARIMA-RNN 組合模型的預(yù)測方法收斂速度更快且誤差更小。原因是本文預(yù)測方法在RNN 網(wǎng)絡(luò)訓(xùn)練前,采用灰色關(guān)聯(lián)分析方法,將相關(guān)性分析后的時(shí)間序列數(shù)據(jù)作為模型輸入再進(jìn)行預(yù)測,減少了相關(guān)性較差數(shù)據(jù)的輸入,從而提高了預(yù)測收斂速度。

      圖11 模型訓(xùn)練收斂趨勢對比

      最后,在評價(jià)預(yù)測方法的可擴(kuò)展性方面,使用ARIMA-RNN 組合模型、ARIMA 模型和RNN 模型,對云服務(wù)器的CPU 使用率時(shí)間序列進(jìn)行預(yù)測并對比,如圖 12 所示。從圖 12 可以看出,本文ARIMA-RNN 組合模型,較單一的ARIMA 模型和RNN 模型,具有更好的預(yù)測效果。

      圖12 CPU 使用率預(yù)測及誤差對比

      綜上,云服務(wù)器處于動態(tài)變化的復(fù)雜環(huán)境中,系統(tǒng)性能參數(shù)的時(shí)間序列波動變化,本文針對數(shù)據(jù)波動平緩和劇烈2 種情況,結(jié)合ARIMA 模型和RNN 模型,預(yù)測云服務(wù)器系統(tǒng)的老化趨勢,預(yù)測精度更高,同時(shí),采用灰色關(guān)聯(lián)度分析法,計(jì)算時(shí)間序列數(shù)據(jù)的相關(guān)性,預(yù)測收斂速度更快。

      4 結(jié)束語

      軟件老化問題一直受到學(xué)術(shù)界和工業(yè)界的關(guān)注。軟件老化預(yù)測及分析可以保障云服務(wù)器系統(tǒng)可靠運(yùn)行,降低系統(tǒng)風(fēng)險(xiǎn)和損失。針對收集到的OpenStack云服務(wù)器性能數(shù)據(jù),本文提出一種基于ARIMARNN 組合模型的預(yù)測方法,對云服務(wù)器的性能資源進(jìn)行老化預(yù)測,并驗(yàn)證了軟件老化現(xiàn)象的存在。實(shí)驗(yàn)結(jié)果表明,ARIMA-RNN 組合模型提高了預(yù)測精度和收斂速度,為云服務(wù)器再生部署提供了參考依據(jù)。

      下一步將研究預(yù)測模型對于數(shù)據(jù)變化情況下的敏感性問題,使數(shù)據(jù)出現(xiàn)急劇變化時(shí),仍能獲得較為精確的預(yù)測結(jié)果。

      猜你喜歡
      老化服務(wù)器軟件
      延緩大腦老化,要怎樣吃
      禪宗軟件
      英語文摘(2021年10期)2021-11-22 08:02:26
      通信控制服務(wù)器(CCS)維護(hù)終端的設(shè)計(jì)與實(shí)現(xiàn)
      軟件對對碰
      節(jié)能技術(shù)在開關(guān)電源老化測試中的應(yīng)用
      電子制作(2018年10期)2018-08-04 03:24:30
      得形忘意的服務(wù)器標(biāo)準(zhǔn)
      計(jì)算機(jī)網(wǎng)絡(luò)安全服務(wù)器入侵與防御
      杜絕初春老化肌
      Coco薇(2016年2期)2016-03-22 02:40:06
      談軟件的破解與保護(hù)
      精品(2015年9期)2015-01-23 01:36:01
      抑制熱老化的三效催化劑技術(shù)的開發(fā)
      大丰市| 海盐县| 云浮市| 神农架林区| 沈丘县| 勃利县| 北碚区| 武山县| 龙陵县| 临沭县| 富源县| 阿巴嘎旗| 稷山县| 巢湖市| 喀喇沁旗| 临江市| 安福县| 曲麻莱县| 舒兰市| 广饶县| 文山县| 穆棱市| 明光市| 溧阳市| 龙海市| 东方市| 白沙| 兴海县| 巧家县| 沂源县| 临湘市| 岳阳市| 遂溪县| 津市市| 锦屏县| 昆山市| 顺昌县| 荔波县| 大城县| 五华县| 宜宾县|