?

基于改進Co-Forest的主機故障預警方法

2017-03-23 10:21鄒保平戚偉強
電子設計工程 2017年5期
關鍵詞:分類器運維分類

鄒保平,戚偉強

(1.國網信通億力科技有限責任公司 福建 福州350001;2.國網浙江省電力有限公司信息通信分公司浙江 杭州310000)

基于改進Co-Forest的主機故障預警方法

鄒保平1,戚偉強2

(1.國網信通億力科技有限責任公司 福建 福州350001;2.國網浙江省電力有限公司信息通信分公司浙江 杭州310000)

針對數據中心中主機故障數據的標記稀缺的問題,提出一種改進的Co-Forest方法,結合少量標記和大量未標記的IT運維數據,實現硬件的故障預警。方法使用評估函數對Co-Forest算法的每輪訓練需要加入的未標記數據進行過濾,避免半監督學習的性能惡化問題。對比實驗結果表明,相比只使用了標記數據的分類模型和傳統Co-Forest,方法能顯著提高分類器的準確度。

半監督學習;Co-Forest;評估函數;故障預警;分類模型

隨著各行業信息化建設的發展,數據中心規模逐漸龐大,其內部主機的軟硬件故障成為影響業務系統可靠性和可用性的關鍵因素。由關鍵節點的硬件損壞、信息系統漏洞、數據庫中斷、并發請求過大等導致的故障可能會使整個集群發生癱瘓。對數據中心的硬件設備、操作系統、數據庫和中間件等IT資源的故障運維由傳統分散的人工式巡查發展為集中統一的監測。傳統的故障監測方式比較簡單,即通過運維管理平臺對各軟硬件資源的性能指標 (如CPU利用率、內存使用率、數據庫運行時長、IO數等)進行判斷,當某個指標超過閾值時就將該資源判定為異常,并發出告警。但是,該方法有3個缺點:1)閾值需要運維專家根據經驗設置;2)未挖掘各資源各指標間的關聯關系;3)經常在故障出現后才能捕捉指標異常。采用機器學習對海量的運維數據進行分析,能夠智能地、及時地實現故障預測,克服以上問題,保證業務正常運行[1]。

傳統的監督學習方法是在有限的標記樣本集上進行訓練來得到分類模型,這需要專家判斷大量樣本的類型并人工標記。在數據中心的IT運維中,主機故障數據的標記過程極為耗時耗力,標記數據的稀缺性為提高故障分類的準確性造成了阻礙。半監督學習[2]是將標記樣本與未標記樣本合并起來進行訓練,以期望在少量標記的基礎上,改善模型的泛化能力。較為常用的半監督學習方法包括協同訓練(Co-Training)[3]、 轉導支持向量機(Transductive Support Vector Machine,TSVM)[4]、基于圖論的方法[5]等。協同訓練方法比較簡單且運行效率高,文中使用它來解決主機故障分類問題。

然而,故障分類具有一定的特殊性:1)IT運維數據量大,這是因為數據中心的資源規模龐大,且性能數據的采集頻度高;2)特征維度高,各軟硬件資源需要采集的指標種類繁多,且資源的指標之間的關系復雜;3)類別比例不平衡,故障數據相比正常數據少得多。在有限樣本上訓練得到的故障分類器通常就具有較強的擬合度和較高的準確度(80%以上)。傳統的協同訓練算法,如Co-Training[6]、Tri-Training[7]、Co-Forest[8]等在擴充訓練集時使用可信度評估無標記樣本,而未考慮樣本的“質量”,使其難以顯著地改善這種強擬合的分類器。本文認為改進這種分類器的關鍵不在于新加入樣本的數量,而在于其是否能改進分類器的決策邊界。此外,分類錯誤的噪聲數據反而會導致性能惡化。故本文基于Co-Forest算法,使用評估函數對無標記樣本進行過濾,篩選出少量靠近決策邊界(高信息量)的數據,同時使用半監督學習所依賴的假設懲罰值以避免加入噪聲點和離群點。

1 Co-Forest算法簡述

Co-Forest算法的本質是將協同訓練與集成學習結合。其中,集成學習是對多個子分類器進行訓練,并且通過對每個分類器引入隨機性,使它們具有不同的決策邊界,最終的分類結果是通過各子分類器的投票決定。相比單分類器,組合分類器能夠改進準確度,但其前提條件在于:1)每個子分類器都是弱分類器;2)各個子分類器之間的差異性足夠大。產生差異性方法包括:對訓練樣本集的隨機化 (如Bagging[9]和AdaBoost[10],每個分類器只基于部分樣本進行訓練)、對特征集合(如Random Subspace[11],每個分類器只基于特征子集進行訓練)的隨機化、以及上述兩種方式的結合 (如Random Forest[12]、Bagging &Random Subspace[13])。

而協同訓練則是基于標記數據建立分類器,使用模型對無標記數據進行標記,并將高可信度的偽標記數據加入用于擴充訓練集。其難點在于在每輪迭代時對可信度的評估、最早的Co-Training只使用兩個分類器,這需要使用復雜的十折交叉法計算可信度。Tri-Training使用三個分類器投票來方便地評價樣本可信度。Co-Forest則擴展了Tri-Training,使用Random Forest作為基分類器。該算法使得即使在任意兩個子分類器的訓練集相似的情況下,也能通過特征隨機化使它們之間具有差異性,并且使子分類器在每輪迭代中都保持差異性。對于某個子分類器,使用其余多個子分類器的投票數來衡量可信度,提高了新樣本偽標記的準確率。

2 算法改進

2.1 評估函數

Co-Forest在每輪迭代中未對無標記樣本進行過濾,這樣會加入大量無效數據。它們既無法改善分類能力,反而增加了算法運行時間。根據文獻[14-15]的結論,對分類器改進效果明顯的是那些靠近決策邊界的樣本,即對于當前分類器分歧較大的樣本。它們具有較大的信息量,能夠盡可能地縮小假設空間。評估函數的一個重要作用是將這些高“質量”的樣本篩選出來,使得Co-Forest能夠快速地收斂。

假定無標記樣本集為U,包含n個樣本為x1,x2,…,xn;標記樣本集為L,包含m個樣本為z1,z2,…,zm;標記類別集合為Q,包含q個類別為y1,y2,…,yq。

某個無標記數據x的信息量為:

其中Con(x,y)表示組合分類器C(包含N個子分類器)對x的標記分類為y的可信度:

假定C中的某個子分類器Ck的分類結果為Ck(x),其權值為wk,則

另一方面,分類器對高信息度樣本的分類能力也較差,對其進行標記往往很容易出錯,產生的噪聲點會在每一輪訓練過程中將錯誤累積,從而惡化分類器的性能。文中考慮半監督學習的兩個基本假設[2]:

1)平滑假設。在多維空間中,處于密集區域的任意兩個距離相近樣本點應大概率具有相同的標記類別;處于稀疏區域的兩個樣本應具有不同的標記類別。

2)聚類假設。處于相同聚類簇內的任意兩個樣本應大概率具有相同的標記類別。

文中對噪聲樣本的解決方案是,基于上述假設引入樣本的不一致罰值 (Inconsistent Penalty,IP)[16]來盡量過濾可能由當前分類器誤判而產生的噪聲點。為了避免不同屬性取值區間的不同而使樣本鄰近度的計算產生偏差,需要先將各個特征值歸一化。然后,將所有樣本映射為多維空間中的點,并使用距離函數度量任意兩點間的鄰近度。對于一個無標記樣本x,與任意一個樣本點z的不一致罰值用它們對各個類別的可信度差值來度量,且罰值與兩點間距離成反比,定義為

令dx,z表示x和z的距離,權值wx,z表示為

x的總罰值由已標記集合L中與其最鄰近的k個點計算而得

最后,對于無標記樣本集中的離群點,分類器不具有很好的泛化能力。雖然它們可能具有較大的信息量,但由于與標記樣本的整體距離較大,會使得不一致罰值很小。這些孤立點的加入會極大可能引入噪聲,需要使用距離罰值(Distance Penalty,DP)來過濾它們:

綜合(1)、(6)、(7)式,對x的評估函數定義為

2.2 改進的Co-Forest算法流程描述

令初始標記樣本集為L,初始無標記樣本集為U;評估閾值為F,總輪數為T;集成分類器為H,子分類器個數為N,其中第i個子分類器為hi,其在第t輪擁有的標記樣本集為Li,t,擁有的無標記樣本集為Ui,t,另外N-1個子分類器組成的集成分類器為Hi。算法流程描述如表1所示。

表1 改進的Co-Forest算法流程

3 算法性能仿真與評測

3.1 實驗環境搭建與數據獲取

文中實驗數據來源于福建省電力數據中心,使用國家電網已有的數據采集平臺對集群內主機系統的性能指標進行采集和入庫。采集的軟硬件目標資源包括硬件、操作系統 (Windows、Linux)、數據庫(Oracle、DB2、Sql Server)、中間件(Tomcat、Weblogic)和信息系統五大類。樣本的特征集是從指標集中篩選出與故障相關的部分,共計51個特征,各類資源的特征明細如表2所示。標記類別包括正常與故障,其中故障數據細分為5類,分別對應各類資源的故障。不同種類資源的特征以及故障之間存在著相互聯系 (如操作系統的存儲空間超負荷導致信息系統崩潰),因此將所有特征集合為一個分類問題。

表2 各類資源的特征

實驗樣本集是通過對10臺web服務器在一個月內的定期監測數據抽取獲得。在客戶端隨機使用正常訪問、安全攻擊和壓力測試等方式訪問服務器,并去除各屬性值都較為接近的重復正常樣本,以適當提高各類故障的樣本所占比例??偣蔡崛?6427條,不同標記的樣本比例如表3所示。分類器需要識別監測數據是否正常,如果是故障數據還需要辨別是由哪類資源引起的故障。

表3 各類標記的樣本比例

將其中50%作為訓練樣本,50%作為測試樣本。每組實驗結果使用不同的標記比例,并通過10次算法訓練得到,每次訓練對各類樣本分別進行隨機采樣,防止類別比例失衡。使用分類錯誤率來評價模型的性能。實驗對Random Forest、Co-Forest(CF)與改進的Co-Forest(Improved Co-Forest,ICF)進行比較。文中算法的參數設置為:α=3.6,β=3.6,F=0.8,k=8。算法集成分類器個數均為40,子分類器的算法為C45決策樹。

3.2 算法對比結果分析

圖1、2、3分別給出3種算法在標記比例為5%、10%、20%時的分類錯誤率。

圖1 標記比例為5%

圖2 標記比例為10%

圖3 標記比例為20%

結果表明,在不同標記比例的情況下,CF與ICF均能通過挖掘無標記樣本的價值,在每輪訓練中加入無標記數據及其偽標記,以擴大訓練樣本集合,從而降低Random Forest的錯誤率。當標記比例為5%時,ICF的結果錯誤率(10.9%)優于標記比例為10%時的Random Forest(13.1%),表明當達到相同分類性能的情況下,ICF能夠節省一倍的人工標記量。此外,ICF的結果在訓練輪數很小時 (一般小于4),就能快速收斂,且迭代后的分類能力明顯優于CF。表4統計了二者相較初始分類器Random Forest的錯誤率改進幅度、二者的算法運行時長以及最終標記樣本量(訓練結束后,各子分類器的標記樣本平均數量)。

表4 CF與ICF的改進幅度

ICF的改進幅度優于CF的原因在于其通過評估函數給予噪聲樣本和離群樣本一定的罰值,提高新加入樣本的偽標記可信度。表4說明,ICF通過篩選位于決策邊界的高信息量樣本,達到快速收斂的效果,算法效率優于CF。由于在第一輪的監督學習訓練中,獲得的Random Forest分類器為強擬合模型,從而使得CF在每一輪迭代中會加入大量遠離決策邊界并位于聚類簇內部的無標記樣本。這些樣本雖然具有高可信度的偽標記,但難以優化模型的泛化能力,還會增加算法運行時間。此外,CF的改進幅度隨著標記比例提高而降低,這也說明當初始分類器的擬合度越強時(準確度越高),無標記樣本越難以使之改善。但是,ICF的效果則與標記比例無關,這表明算法具有穩定性。

4 結束語

文中對數據中心主機的故障預警分類問題進行了研究,對與各類資源故障關聯的指標進行了篩選。針對運維數據的標記難以獲得的問題,使用半監督學習中的協同訓練方法,將少量標記樣本和大量無標記樣本結合,降低故障分類的錯誤率。具體地,本文分析了故障分類時的強擬合分類器難以改善問題,提出一種改進的Co-Forest方法。通過建立評估函數,方法在Co-Forest訓練的每一輪,篩選出能有效改善分類能力的高信息度樣本,加速算法迭代。同時,設置不一致罰值和距離罰值用于過濾可能的噪聲點和離群點,避免分類性能惡化。通過對比實驗表明評估函數在Co-Forest算法中應用的有效性。

[1]Yuan S F,Chu F L.Support vector machines-based fault diagnosis for turbo-pump rotor[J].Mechanical Systems&Signal Processing,2006,20(4):939-952.

[2]劉建偉,劉媛,羅雄麟.半監督學習方法[J].計算機學報,2015(8):1592-1617.

[3]Blum A,Mitchell T.Combining Labeled and Unlabeled Data with Co-Training[C]//In COLT:Proceedings of the Workshop on Computational Learning Theory.1998:92-100.

[4]Joachims T.Transductive Inference for Text Classification using Support Vector Machines[C]//Sixteenth International Conference on Machine Learning.Morgan Kaufmann Publishers Inc.,1999:200-209.

[5]Blum A,Chawla S.Learning from Labeled and Unlabeled Data using Graph Mincuts[C]//Proceedings oftheEighteenthInternationalConferenceonMachine Learning.Morgan Kaufmann Publishers Inc.,2001:19-26.

[6]Zhang Y,Wen J,Wang X,et al.Semi-supervised learning combining co-training with active learning [J].Expert Systems with Applications,2014,41(5):2372-2378.

[7]Zhou Z H,Li M.Tri-training:exploiting unlabeled data using three classifiers[J].IEEE Transactions on Knowledge&Data Engineering,2005,17(11):1529-1541.

[8]Li M,Zhou Z H.Improve Computer-Aided Diagnosis With Machine Learning Techniques Using Undiagnosed Samples[J].Systems Man&Cybernetics Part A Systems&Humans IEEE Transactions on,2007,37(6):1088-1098.

[9]Breiman L,Breiman L.Bagging predictors"Machine Learning[J].Lecturenotes in Computer Science Ai,1996,volume 20(1-2):35-61(27).

[10]Kim S Y,Upneja A.Predicting restaurant financial distress using decision tree and AdaBoosted decision tree models [J].Economic Modelling,2014,36(1):354-362.

[11]Li H,Wen G,Yu Z,et al.Random subspace evidence classifier[J].Neurocomputing,2013,110(8):62-69.

[12]Mogensen U B,Gerds T A.A random forest approach for competing risks based on pseudo-values[J].Statistics in Medicine,2013,32(18):3102-3114.

[13]Panov P,D eroski S.Combining Bagging and Random Subspaces to Create Better Ensembles[M] //Advances in Intelligent Data Analysis VII.Springer Berlin Heidelberg,2007:118-129.

[14]FreundY,SeungHS,ShamirE,etal.SelectiveSampling Using the Query by Committee Algorithm[J].MachineLearning,2001,volume28(2-3):133-168(36).

[15]Abe N,Mamitsuka H.Query Learning Strategies Using Boosting and Bagging.[C]//Proceedings of the Fifteenth International Conference on Machine Learning.Morgan Kaufmann Publishers Inc.,1998:1-9.

[16]Belkin M,Niyogi P,Sindhwani V.Manifold Regularization:A Geometric Framework for Lear-ning from Labeled and Unlabeled Examples.[J].Journal ofMachineLearningResearch,2006,7(3):2399-2434.

Fault alarming method for host hardware based on improved Co-Forest

ZOU Bao-ping1,QI Wei-qiang2
(1.State Grid Info-Telecom Great Power Science and Technology Co.,LTD,Fuzhou 350001,China;2.Information Communication Branch of(State Grid)Zhejiang Electric Power Co.,Ltd,Zhejiang 310000,China)

Aiming at the problem of sparse labeled data of host faults in data centers,we present an improved co-forest method,combining a few labeled data and mass of unlabeled data,to achieve hardware fault alarming.The method adopts an evaluating function to filter the unlabeled data which need to be joined at each iteration of Co-Forest algorithm,and to avoid the performance degradation of semi-supervised learning.The comparative experiments show that our method can improve the accuracy of the classifier markedly comparing with the classification model which only uses labeled data and the traditional co-forest.

semi-supervised learning;Co-Forest;evaluating function;fault alarming;classification models

TN78

:A

:1674-6236(2017)05-0065-05

2016-03-17稿件編號:201603216

鄒保平(1971—),男,福建龍巖人,高級工程師。研究方向:數據中心,大數據。

猜你喜歡
分類器運維分類
分類算一算
運維技術研發決策中ITSS運維成熟度模型應用初探
分類討論求坐標
風電運維困局
數據分析中的分類討論
雜亂無章的光伏運維 百億市場如何成長
教你一招:數的分類
加權空-譜與最近鄰分類器相結合的高光譜圖像分類
結合模糊(C+P)均值聚類和SP-V-支持向量機的TSK分類器
基于ITIL的運維管理創新實踐淺析
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合