999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于CNN深度算法改進及故障預測研究

2020-10-28 01:44:06陳彩虹
計算機技術與發展 2020年10期
關鍵詞:故障

陳彩虹,王 誠

(南京郵電大學 通信與信息工程學院,江蘇 南京 210003)

0 引 言

當下社會生活中,對網絡需求不斷增長,如果網絡發生故障,會產生或大或小的影響[1]。如何應對網絡故障、有效提高業務管理效率是一個值得研究的方向。而面對日益擴大的網絡及復雜的網絡結構,如何利用好現有的技術設計出合理可靠且滿足需求的架構具有極大的挑戰性,也有極大的研究價值。

在現有網絡系統中會生成諸如報警信息、詳細記錄、關鍵性能指標的海量數據,這些都被用于網絡檢測研究。但是對于網絡系統中節點的日志信息研究還不夠,這類數據龐大,含有豐富的可挖掘信息。由于日志的半結構化,它的處理多借助人工處理,自動處理困難,因此,對于網絡管理來說,日志具有很大的潛在分析價值[2]。

針對故障預測,大多是使用傳統的統計分析、關聯分析加上人工操作的方法[3]。從方法上看,對日志的分析研究在很大程度上依賴手工提取。

隨著機器學習的發展,海量日志處理出現了新型的研究方法。根據不同的分析對象可分為借助故障日志信息的預測系統和借助狀態信息的預測系統[4]。文中收集網絡系統中故障發生時的日志數據,使用深度學習等方法來分析故障信息之間的隱藏關系,并利用這些聯系進行故障的預測。這屬于前文所述的第一種方式:基于故障日志的預測。

從自然語言學習的流程入手,提出了一種利用網絡系統設備生成的日志來預測未來故障的方法。將日志看作一種文本,并從文本中提取樣本。然后再構建卷積網絡模型,利用數據挖掘技術盡可能挖掘隱藏的信息,以此來預測網絡未來的狀態,預測網絡是否會發生故障。最后對設計模型進行實驗測試,設置不同滑動窗口分別提取參數。此外,為了展現卷積神經網絡預測模型的性能,將之與改進前進行對比,比較同樣滑動窗口間隔下的準確率、召回率等多項評價指標[5]。

1 相關工作

1.1 卷積神經網絡

深度學習中的卷積神經網絡(convolutional neural networks,CNN)的網絡結構含有深度結構的前饋神經網絡(feedforward neural networks,FNN),由卷積層、池化層、全連接層組成。神經網絡中,參數過多,容易產生過擬合。過擬合即模型在訓練集表達能力過強、在測試集表現極差的現象。CNN利用局部連接和參數共享的方法解決了參數過多帶來的易過擬合的問題[6]。

1.2 卷積神經網絡算法簡介

1.2.1 CNN算法原理

傳統全連接神經網絡,隨著輸入層的特征維度增高,全連接訓練參數增幅變高,會導致計算速度遲緩。而卷積神經網絡是未完全連接的,且共享同一層中某些神經元之間連接的偏移量和權重。所以,需要訓練的參數數量大大減少。

卷積神經網絡的結構組成:

·輸入層:用于數據的輸入;

·卷積層:使用卷積核實現特征提取與特征映射;

·池化層:進行下采樣,稀疏處理特征圖,使數據運算量降低;

·全連接層:通常在CNN的末端重新擬合以減少特征信息部分的損失;

·輸出層:用于輸出結果。

在目標檢測算法RCNN中,主要包含以下步驟:

(1)訓練分類網絡。

在使用深度學習特征的時候,不是直接用卷積神經網絡訓練模型或特征,而是用預訓練的模型來對網絡進行訓練。具體使用時可以采用AlexNet在imageNet訓練分類模型。

(2)模型微調fine-tuning。

在RCN分類任務上作模型的遷移,保留主干網絡卷積層的特征,去掉FC層。

(3)特征提取。

提取候選框(利用選擇性搜索或滑動窗口的策略)。

Step1:生成區域集R;

Step2:計算區域集R中相鄰區域的相似度S={s1,s2,…};

Step3:將具有最高相似度的兩個區域合并為一個新集合,添加到R中;

Step4:從S中移除所有與Step1中有關的子集;

Step5:計算新集與所有子集的相似度;

Step6:跳至step3,直至S為空。

(4)訓練SVM分類器。

用SVM(support vector machine)分類器進行類別確定,并且每個類別對應一個SVM。采用分類器的時候,如果要識別20種不同的類別,通常SVM在進行分類時會對21個類別進行分類。其中20個類別為目標檢測類別,1個類別是背景。

(5)回歸器精修候選框位置。

用線性回歸模型分析候選框的效果,進一步篩選和合并候選框,最后獲得目標檢測的輸出。

1.2.2 基于CNN算法的改進研究

(1)預測數據處理的改進。

原始算法中,直接利用CNN算法實現對當前序列和日志標簽的故障預測。為了增大有用信息,新引入輸出序列作為信息源,提高算法預測能力。具體實現步驟如下:

(a)預處理初期數據。

修改滑動窗口,利用滑動窗口一收集當前時刻下的輸入序列,同時利用滑動窗口二收集對應的日志標簽。之后,提取第二個滑動窗中日志的輸出序列。因為該部分序列相對于滑動窗口一中的序列生成時間較晚,所以代表未來的日志序列。收集的初期數據經過處理后可以得到三個類別的信息:當前的日志序列I1、將來的日志序列Ia和未來的日志標簽I2。

(b)利用三種類別的序列進行預測。

為了挖掘更多的信息量,在輸入序列和日志標簽聯系的基礎上,基于輸入序列和輸出序列進行建模,預測出新的信息源即輸出序列,利用I2、Ia、I1實現故障預測。算法改進示意圖如圖1所示。

圖1 故障預測算法改進示意圖

(2)隨機梯度下降優化算法的改進。

為了得到好的泛化,需要使用大的訓練集,然而,大型訓練集的計算成本也很大,因此將代價函數劃分為單個日志樣本的代價函數的綜合。訓練數據的負條件對數似然用下式表示:

其中,L是每個樣本的損失,L(x,y,θ)=-logp(y|x;θ)。

梯度下降計算如下[7]:

這個運算的計算代價是O(m)。訓練集大小的增加會造成計算一步梯度耗費時間大幅增長。在該實驗中,用小規模的樣本近似估計梯度,從訓練集中均勻抽出小批量樣本,記為B=x1,x2,…,xm[8]。

梯度的估計可以表示成:

此外,對于SGD中的關鍵參數—學習率,不設定固定的學習率,在實際使用中,學習率ε可以在多次迭代中逐漸減小,第k步迭代后的學習率記為εk。保證SGD收斂的一個充分條件是:

在T步迭代后,一般使ε保持常數。

學習率可通過實驗與誤差來選擇,一般來說最好的方式是監測目標函數值隨時間變化的學習曲線。使用線性策略時,需要選擇的參數是ε0、εT和T。T設置為需要迭代數百次訓練集的次數。通常εT應設為大約ε0的1%。下面簡要說明數次迭代中學習率的更新操作。

算法:隨機梯度下降,迭代更新學習率。

輸入:學習率εk

輸出:初始參數θ

步驟1:判斷是否滿足停止準則,如果不滿足,則轉到下一步,如果滿足,則結束該過程;

步驟2:在訓練集內采集小批量樣本,B={x1,x2,…,xm},樣本個數為m,xi與yi對應;

(3)基本卷積函數使用的改進。

通常,神經網絡中的卷積是由多個并行卷積組成的。雖然運算是作用在多個空間位置上,但具有單個核的卷積只能提取一種類型的特征。另外,因為卷積網絡使用多通道的卷積,即使使用核翻轉,也不一定能確保網絡的線性運算是可互換的。僅當這些操作中的每個部分的輸出和輸入具有相同數量的通道時,才是可互換的。本實驗中不使用翻轉,只利用卷積獲取輸出。

1.3 整體算法設計

1.3.1 數據生成與處理

(1)數據生成:利用仿真軟件構建所需網絡系統,模擬正常運行狀態和故障發生時的狀態,采取兩種場景下的調試信息。采集的數據包含三種類別的信息數據:軟件運行中人為加入的提示內容;與網絡狀態聯系的對象信息和時間速度存儲信息。在隨后數據處理中,有必要刪除日志中與故障分析無關的標簽內容。日志生成時,先人為加入故障出現和復舊的提示。如在正常狀態轉為錯誤狀態時輸出提示標簽SYSTEM_ERROR,在系統狀態復舊時設置提示標簽SYSTEM_STATE_RECOVER。如上設置可以得到數據格式:

[time][info level]:[location][event] [event description]

對于日志中速度存儲等統計信息,也需要提前作消除處理。

(2)數據預處理:如前所述,直接采集初始時的日志像文本一樣包含內容項多,不是可以直接用作卷積神經網絡輸入的格式化數據,因此會基于原始數據進行處理以保留對象信息。制作出清洗后日志的單詞詞典,在此基礎上實現樣本的提取,做后期的訓練和測試。預處理數據主要為三個部分:數據清洗、字典構建和樣本提取,見圖2。數據處理時,一方面需去除無關信息,另一方面要處理數字符號信息[11]。

圖2 數據處理流程

清洗后,文本數據變為單詞序列,統計單個詞匯詞頻,對單詞集合排序,然后依次進行編號。也可以再加入詞頻閾值,詞頻統計大于設定閾值時,保留繼續處理,否則,替換為未知單詞如UNKNOWN,這樣所有的單詞根據詞頻的不同都有相應的數字編碼。以上處理為字典構造,可以得到如表1所示的數據詞典表[12]。

表1 構造字典表示意

數據預處理的最后環節,是選擇卷積核部分,即利用滑動窗口從日志數據中獲取訓練集和測試集需要的樣本文本,含相應的提示標簽和序列。提取的部分包含當前一段時間的日志和未來一段時間域的狀態。前者用輸入序列表示,后者用提示標簽表示。本研究選用兩個滑動窗口,一個用于提取輸入序列,另一個用來獲取該序列故障存在與否的標簽。

用ls表示滑動窗口大小(實際作業中的樣本數據行數)。本實驗中設定兩窗口獲取數據的行數相等,間隔為lg。滑動窗口的size相當于樣本數據中對應位置數據被輸出經過的時間,size越大,等價于打印此處數據的時長越大。而滑動窗口間距表示當前日志到未來某段日志的間隔時間。由此可見,lg越大,意味著預測的時間越遠。但是,遠的時間段也意味著要預測的未來狀態和現階段的聯系更弱,導致訓練更為復雜[13]。

1.3.2 模型設計

用日志數據對模型進行大量訓練和測試,實現最優化。與傳統CNN不同的是,文中除了CNN特有的三層處理外還包括針對文本處理的詞嵌入層。卷積神經網絡示意圖如圖3所示。

圖3 卷積神經網絡示意圖

(1)詞嵌入層。

在圖像處理時,每張圖片便是一段數值信息,可以將其與卷積核的內積映射為數字。而本實驗中的日志數據具有文本的特征,單單通過預處理時的字典將單詞根據排序得到數字編號是不夠的,還需要通過詞嵌入層將通過詞頻劃分出的編號再次編號,使之能以向量的形式表示,將原始日志的輸入序列映射成輸入矩陣[14]。

記文本形式的序列最大長度是m,輸入文本數據實際長度為n,單詞數量為num,將輸入序列用下式表示:

(1)

當輸入序列的實際長度n小于序列最大長度m時,用padding的方法將長度補足為m,反之,用truncating的方法將多余的部分去除。如圖4,m=4,n=2,使用多個0填補矩陣。

00000xx00xx00000

下面解釋再次編碼過程,用獨熱編碼(ONE-HOT encoding)將i表示成I(m*n),輸入矩陣表示為Y,輸出Y可定義為:

Y=Me?I

(2)

其中,Me表示權值矩陣(n*k),Y是輸出矩陣(m*k)[15]。

(2)卷積層和池化層。

卷積層和池化層是預測模型中不可或缺的一部分,本實驗中設計了多個該部分以更大程度地獲取輸入序列的信息。多層卷積和池化層,可以保證卷積窗含有更長時間段內的樣本數據,對應的單詞矩陣也更大[8]。此部分的輸出與輸入序列的關系為:

ai=f(Mb?xi,j+h-1)+c

(3)

其中,f表示激活函數,X表示輸入序列,xi表示第i個詞向量,ai表示卷積層的輸出。

(3)全連接層。

根據輸入序列包含的重要信息,確認系統是否有故障發生。定義f是激活函數,使用sigmoid函數,用mo表示該層的輸出。則有式子y=f(wmo+b)。

1.3.3 訓練和測試

先簡單說明模型訓練和測試的幾個基本概念的作用。訓練集可用來訓練與擬合模型,在通過訓練集訓練出了多個模型之后,可以借助驗證集實現數據校正和比較預測。k-fold交叉驗證用于將數據集劃分為K個部分,輪流作為一次測試集,其他作為訓練集。因為卷積神經網絡中滑動窗口相關參數、神經層個數等都是可以人為設計的,所以可以通過改變這些參數,比較訓練測試的性能,調整參數達到最優性能。

CNN訓練和測試流程示意圖如圖5所示。

圖5 CNN訓練和測試流程示意圖

在預處理樣本中采取若干個獨立的小批量樣本,分別計算各自的梯度,通過這些樣本均值算出梯度的無偏估計值。

1.4 實 驗

1.4.1 實驗環境

系統的神經網絡建立使用的是高層深度學習API—Keras。CPU為8 300 H,內存大小為8 G,硬盤大小為2 T,編程環境為python(發行版本anaconda)。使用GPU類型學習框架,系統程序語言為python。

1.4.2 測試性能評價指標

故障的預測測試中,評價標準主要使用二分類模型中的F1SCORE(即F1分數)。該指標兼具分類模型的準確率、召回率。平衡F函數在信息檢索、統計分析、文檔分析處理方面有著廣泛的應用。以下是實際值和預測值的簡單介紹。正常樣本(true positive,TP)指預測正確的正樣本,故障樣本(true negative,TN)是預測正確的負樣本。而FP和FN分別是預測錯誤的正樣本和預測錯誤的負樣本。以上4個評價指標有如下定義:

召回率和精確率的調和平均數(用F1 Score表示):

1.4.3 結果研究

本實驗顯示了不同卷積窗參數下模型的訓練和測試性能。使用上文說明的評價指標對各窗口size下進行對比研究,數據整理見表2。

表2 不同卷積窗間隔的性能

從測試數據可知,滑動窗口的長度不變時,隨著窗口間隔變大,4項指標變低,顯示出性能的降低。由此可知,對于未來的預測,更遠的狀態預測難度會更大。此外,保持窗口間隔不變來觀察不同窗口長度下模型的性能。從實驗數據可以得到結論,隨著長度的遞增,預測性能逐漸提高。

為了對優化后的隨機梯度算法進行驗證,分別測試學習率更新下和使用固定學習率的準確率。

實驗中,通過檢測目標函數值的波動曲線,在多次迭代中獲取最佳效果的學習曲線。如果學習率設置偏大,會導致學習曲線劇烈震蕩、代價函數的增大,影響系統的性能。

表3 不同學習率下的性能比較

考慮到卷積網絡使用多通道卷積的特性,在卷積網絡中,即使使用核翻轉,也不一定能確保網絡的線性運算是可互換的。本實驗中,不使用核翻轉,只利用卷積獲取輸出。比較兩者使用性能(見圖6),可以看出在改進后性能有所提高。

圖6 不同運算函數指標對比

2 結束語

從故障數據入手,采用深度學習方法分析故障之間的潛在聯系,利用告警日志來推斷信息系統運行狀態,并通過檢測現有狀態,預測未來狀態參數,及時發現可能會出現的故障。實驗驗證了預測算法在網絡系統中的有效性。在今后工作中,可以考慮使用真實網絡日志進行分析,測試該模型的適應能力。利用仿真數據和真實數據,進一步測試改進算法的實用性和優越性。

猜你喜歡
故障
故障一點通
奔馳R320車ABS、ESP故障燈異常點亮
WKT型可控停車器及其故障處理
基于OpenMP的電力系統并行故障計算實現
電測與儀表(2016年5期)2016-04-22 01:13:50
故障一點通
故障一點通
故障一點通
故障一點通
故障一點通
江淮車故障3例
主站蜘蛛池模板: 真实国产精品vr专区| 最新亚洲人成无码网站欣赏网| 国产精品蜜臀| 中国成人在线视频| 高潮毛片无遮挡高清视频播放 | 欧美人与动牲交a欧美精品| 国产日韩欧美精品区性色| 国产专区综合另类日韩一区| 国产69囗曝护士吞精在线视频| 激情爆乳一区二区| 国产欧美视频综合二区| 婷婷亚洲视频| 无遮挡一级毛片呦女视频| 色综合手机在线| 呦系列视频一区二区三区| 亚洲欧美日韩成人在线| 国产午夜人做人免费视频中文| 亚洲欧美成人影院| 99久久无色码中文字幕| 18黑白丝水手服自慰喷水网站| 欧美69视频在线| 日韩 欧美 国产 精品 综合| AV熟女乱| 99久久99这里只有免费的精品| 激情综合婷婷丁香五月尤物| 日韩国产高清无码| 99国产在线视频| 日本免费一级视频| 五月天综合婷婷| AV不卡无码免费一区二区三区| 亚洲中文久久精品无玛| 国产第三区| 亚洲午夜国产精品无卡| 福利视频一区| 亚洲精品国产精品乱码不卞| 丁香六月综合网| 成人在线不卡视频| 区国产精品搜索视频| 亚洲成人免费在线| 国产va在线| 人人看人人鲁狠狠高清| 依依成人精品无v国产| 特级做a爰片毛片免费69| 在线五月婷婷| 无码电影在线观看| 国产麻豆福利av在线播放 | 日韩AV手机在线观看蜜芽| 国产剧情一区二区| 少妇精品久久久一区二区三区| 在线永久免费观看的毛片| 国产精品自在拍首页视频8| 欧美日韩精品一区二区视频| 中国精品久久| 午夜色综合| 国产精品对白刺激| 久久精品电影| 一级爱做片免费观看久久| 青青国产视频| 欧美成人第一页| 久久伊人久久亚洲综合| 亚洲二区视频| 在线观看网站国产| 亚洲天堂首页| 精品国产91爱| 全色黄大色大片免费久久老太| 欧美日韩国产在线播放| 国产美女精品一区二区| 久久综合伊人 六十路| 五月天综合网亚洲综合天堂网| 福利视频久久| 国产第一页屁屁影院| 亚洲国产系列| 日韩123欧美字幕| 成人福利一区二区视频在线| 国产精品美女网站| 亚洲91精品视频| 免费毛片视频| 亚洲国产天堂久久综合226114| 1769国产精品免费视频| 天天做天天爱夜夜爽毛片毛片| 99国产精品国产高清一区二区| 久无码久无码av无码|