亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        面向日志的半監(jiān)督一致性異常檢測(cè)

        2024-02-27 09:07:16顧兆軍侯晶雯
        關(guān)鍵詞:檢測(cè)方法模型

        顧兆軍,侯晶雯,2

        1(中國(guó)民航大學(xué) 信息安全測(cè)評(píng)中心,天津 300300)

        2(中國(guó)民航大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院科學(xué)院,天津 300300)

        0 引 言

        由于軟件系統(tǒng)規(guī)模的迅速發(fā)展,系統(tǒng)維護(hù)的困難也逐漸加劇[1-4].日志是軟件系統(tǒng)中重要的信息存儲(chǔ)載體,記錄著系統(tǒng)運(yùn)行時(shí)的各種關(guān)鍵信息,也是維護(hù)軟件系統(tǒng)運(yùn)行狀態(tài)的重要數(shù)據(jù)來(lái)源.系統(tǒng)管理人員可以通過(guò)日志數(shù)據(jù)了解軟件系統(tǒng)的運(yùn)行狀態(tài),檢測(cè)系統(tǒng)異常并探究根本原因,防范惡意攻擊.但是,系統(tǒng)規(guī)模擴(kuò)大導(dǎo)致日志數(shù)據(jù)數(shù)量激增,且具有復(fù)雜性和多樣性,使得手動(dòng)檢查日志是困難甚至不可行的.因此,有效的基于日志的自動(dòng)異常檢測(cè)模型[5,6]可以幫助計(jì)算機(jī)系統(tǒng)運(yùn)維人員快速定位異常原因和解決問(wèn)題.

        現(xiàn)存的日志異常檢測(cè)方法通常使用日志解析器,從原始日志數(shù)據(jù)中提取日志事件模版,然后采用有監(jiān)督算法或無(wú)監(jiān)督算法進(jìn)行異常檢測(cè).但仍存在一些問(wèn)題:1)日志解析錯(cuò)誤會(huì)導(dǎo)致異常檢測(cè)模型的性能降低;2)由于異常數(shù)據(jù)較少,且異常數(shù)據(jù)與正常數(shù)據(jù)混合在一起很難分離,導(dǎo)致模型難以訓(xùn)練學(xué)習(xí)異常數(shù)據(jù)的分布,降低了模型的泛化能力;3)有監(jiān)督方法需要大量的數(shù)據(jù)標(biāo)簽,但是,日志數(shù)據(jù)具有多樣性和復(fù)雜性,導(dǎo)致人工標(biāo)記數(shù)據(jù)耗時(shí)耗力且不可行.無(wú)監(jiān)督方法由于缺少歷史數(shù)據(jù)的引導(dǎo)往往性能較差;4)基于靜態(tài)閾值的機(jī)器學(xué)習(xí)方法以粗粒度檢測(cè)異常,不考慮同類型日志數(shù)據(jù)間的差異性或不一致性.

        針對(duì)上述問(wèn)題,本文設(shè)計(jì)實(shí)現(xiàn)了一種半監(jiān)督一致性異常檢測(cè)算法SemiCAD(Semi-supervised Conformal Anomaly Detection).該算法首先使用詞袋模型(Bag-of-Words,BOW)從原始日志數(shù)據(jù)中提取詞頻特征向量,避免日志解析錯(cuò)誤影響模型性能.然后通過(guò)基于分層密度的帶噪聲應(yīng)用空間聚類(Hierarchical Density-Based Spatial Clustering of Applications with Noise,HDBSCAN)的正例無(wú)標(biāo)記樣本(Positive and Unlabeled Learning,PU)學(xué)習(xí)算法[7],根據(jù)訓(xùn)練集中有標(biāo)簽的數(shù)據(jù)(全部為正常日志序列)對(duì)訓(xùn)練集中未標(biāo)記的數(shù)據(jù)(包括正常日志序列和異常日志序列)進(jìn)行偽標(biāo)簽估計(jì).最后,選擇合適的集成學(xué)習(xí)算法作為不一致性度量模塊計(jì)算P值,得出待測(cè)日志的標(biāo)簽及其標(biāo)簽置信度,并將其不一致性得分反饋到相應(yīng)數(shù)據(jù)標(biāo)簽的得分集中,作為現(xiàn)有經(jīng)驗(yàn),計(jì)算后續(xù)待測(cè)日志序列的P值.

        1 相關(guān)工作

        大多數(shù)日志異常檢測(cè)方法通常分為4步:日志收集、日志解析、特征提取和異常檢測(cè).其中,日志解析是指在數(shù)據(jù)預(yù)處理階段通過(guò)日志解析對(duì)半結(jié)構(gòu)化的日志數(shù)據(jù)進(jìn)行預(yù)處理,將每條日志消息轉(zhuǎn)換為特定的事件模板.如LogRobust[8]、PLELog[9]等都使用日志解析器Drain將半結(jié)構(gòu)化的日志數(shù)據(jù)解析為日志事件模版,然后通過(guò)Word2Vec提取日志事件的語(yǔ)義特征向量,輸入神經(jīng)網(wǎng)絡(luò)進(jìn)行異常檢測(cè).但是,日志解析錯(cuò)誤往往會(huì)導(dǎo)致異常檢測(cè)模型的性能下降一個(gè)數(shù)量級(jí).比如,Le等人[10]使用了4種不同的日志解析器(IPLoM[11]、Drain[12]、AEL[13]、Spell[14])在LogRobust[8]和SVM[15]兩個(gè)異常檢測(cè)模型上進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果證明日志解析錯(cuò)誤使LogRobust[8]和SVM[15]的模型性能分別下降了25%和29%.He等人[16]的研究也表明4%的日志解析錯(cuò)誤會(huì)導(dǎo)致模型性能下降一個(gè)數(shù)量級(jí).

        根據(jù)訓(xùn)練數(shù)據(jù)是否帶有標(biāo)簽可將日志異常檢測(cè)方法分為有監(jiān)督方法和無(wú)監(jiān)督方法.有監(jiān)督的方法包括邏輯回歸(Logistic Regression,LR)、決策樹(shù)(Decision Tree,DT)等.如Zhang等人提出的LogRobust[8]使用基于注意力機(jī)制的雙向長(zhǎng)短期記憶網(wǎng)絡(luò)(Bi-LSTM),識(shí)別和處理不穩(wěn)定的日志序列和事件.以上異常檢測(cè)方法雖然可以有效檢測(cè)異常,卻存在一定的局限性,即需要大量有標(biāo)簽的訓(xùn)練數(shù)據(jù).在實(shí)際生產(chǎn)環(huán)境中,日志數(shù)據(jù)形式復(fù)雜多樣且是半結(jié)構(gòu)化的字符串,限制了人工標(biāo)記的可行性.為了克服有監(jiān)督方法對(duì)數(shù)據(jù)標(biāo)簽及標(biāo)簽質(zhì)量的依賴性,大量的研究人員進(jìn)行了無(wú)監(jiān)督方法的研究.如Du等人提出的DeepLog[6]方法使用長(zhǎng)短期記憶網(wǎng)絡(luò)(LSTM)對(duì)日志模版和參數(shù)值進(jìn)行協(xié)同異常檢測(cè),并根據(jù)用戶反饋對(duì)異常檢測(cè)進(jìn)行權(quán)重更新;Lin等人提出的LogCluster[17]方法通過(guò)線性模式挖掘和日志聚類檢測(cè)異常;Meng等提出的LogAnomaly[18]方法使用LSTM分別從序列模式和定量模式進(jìn)行異常檢測(cè).無(wú)監(jiān)督方法雖然克服了真實(shí)數(shù)據(jù)缺少標(biāo)簽的局限性,卻往往由于缺乏歷史數(shù)據(jù)分布規(guī)律的引導(dǎo)導(dǎo)致模型性能較差.

        從異常檢測(cè)方法上看,基于靜態(tài)閾值的機(jī)器學(xué)習(xí)方法往往以粗粒度檢測(cè)異常,不考慮同類型日志數(shù)據(jù)間的差異性.若一種算法可以為預(yù)測(cè)結(jié)果附加一個(gè)風(fēng)險(xiǎn)水平(置信度),根據(jù)風(fēng)險(xiǎn)水平評(píng)估預(yù)測(cè)結(jié)果,可以使樣本預(yù)測(cè)錯(cuò)誤的概率可控.顧兆軍等人[19]使用Vovk等人[20]提出的一致性預(yù)測(cè)算法(Conformal Predictor,CP)進(jìn)行日志異常檢測(cè).CP是一種基于置信度的機(jī)器學(xué)習(xí)算法,相比傳統(tǒng)的基于閾值的機(jī)器學(xué)算法,CP使用不一致性得分有效衡量相同類標(biāo)簽日志數(shù)據(jù)以及不同類標(biāo)簽日志數(shù)據(jù)之間的不一致性大小,充分體現(xiàn)了日志數(shù)據(jù)間的相似性和差異性大小.通過(guò)不一致性度量還可以將新舊日志數(shù)據(jù)聯(lián)系起來(lái),結(jié)合歷史經(jīng)驗(yàn)做出預(yù)測(cè),并給出帶有置信度的數(shù)據(jù)標(biāo)簽.但是該方法采用基于日志事件計(jì)數(shù)向量的特征提取方法,忽略了日志數(shù)據(jù)中單詞的語(yǔ)義信息,無(wú)法識(shí)別日志事件的不同重要程度.此外,日志事件計(jì)數(shù)向量的維度也會(huì)隨著日志數(shù)據(jù)的變化而改變.

        如表1所示,本文分別從日志解析方法(表格中“-”表示該模型沒(méi)有進(jìn)行日志解析)、特征提取方法、異常檢測(cè)模型或框架以及算法類型(根據(jù)訓(xùn)練數(shù)據(jù)是否帶有或部分帶有標(biāo)簽進(jìn)行分類,表中“有”代表有監(jiān)督算法,“無(wú)”代表無(wú)監(jiān)督算法,“半”代表半監(jiān)督算法)4個(gè)方面,對(duì)相關(guān)研究工作中不同的異常檢測(cè)模型進(jìn)行了詳細(xì)的對(duì)比描述.表1中所提及的異常檢測(cè)模型也用于后續(xù)對(duì)比實(shí)驗(yàn)中.

        表1 異常檢測(cè)模型對(duì)比Table 1 Comparison of anomaly detection models

        2 模型方法

        在本節(jié)中,我們將詳細(xì)描述SemiCAD模型中的每個(gè)主要步驟.如圖1所示,SemiCAD主要包括3個(gè)步驟:數(shù)據(jù)預(yù)處理;偽標(biāo)簽估計(jì);不一致性異常檢測(cè).我們首先將半結(jié)構(gòu)化的原始日志消息預(yù)處理為結(jié)構(gòu)化的詞頻向量特征矩陣;然后,通過(guò)基于HDBSCAN的PU學(xué)習(xí)算法對(duì)訓(xùn)練集中未標(biāo)記數(shù)據(jù)的進(jìn)行偽標(biāo)簽估計(jì),后續(xù)可以充分利用帶有偽標(biāo)簽的訓(xùn)練數(shù)據(jù)集訓(xùn)練分類器,提高模型的異常檢測(cè)性能.最后,選擇合適的分類器組成不一致性度量模塊,如AdaBoost集成學(xué)習(xí)和隨機(jī)森林(Random Forest,RF),為每個(gè)待測(cè)日志序列輸出一個(gè)帶置信度的標(biāo)簽,將每個(gè)可能標(biāo)簽的置信度與預(yù)先給定的顯著性水平進(jìn)行對(duì)比,從而判斷日志序列是否異常.

        圖1 SemiCAD模型組成Fig.1 Consists of the SemiCAD model

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

        日志數(shù)據(jù)預(yù)處理是構(gòu)建異常檢測(cè)模型的第1步,例如,HDFS日志數(shù)據(jù)預(yù)處理的主要步驟如圖2所示.為了避免日志解析錯(cuò)誤對(duì)異常檢測(cè)模型性能造成影響,SemiCAD首先對(duì)原始日志數(shù)據(jù)進(jìn)行預(yù)處理,然后采用BOW模型進(jìn)行特征提取便于后續(xù)異常檢測(cè).

        圖2 數(shù)據(jù)預(yù)處理Fig.2 Data preprocessing

        2.1.1 預(yù)處理

        日志數(shù)據(jù)通常是半結(jié)構(gòu)化的文本字符串,每條日志消息包括無(wú)結(jié)構(gòu)化的數(shù)據(jù)(例如,時(shí)間戳、日志優(yōu)先級(jí)、系統(tǒng)組件)和日志序列.日志事件中的大多數(shù)標(biāo)記都是英語(yǔ)單詞.此外,還包括非字符標(biāo)記(例如,分隔符、運(yùn)算符、標(biāo)點(diǎn)符號(hào)和數(shù)字)、停止詞(例如,a、the)和復(fù)合單詞(例如,NullPointerException).在日志數(shù)據(jù)預(yù)處理階段,若日志數(shù)據(jù)具有記錄每個(gè)作業(yè)執(zhí)行的標(biāo)識(shí)符,則將具有相同標(biāo)識(shí)符的日志消息合并;若沒(méi)有標(biāo)識(shí)符,則使用大小固定的時(shí)間窗口將日志切片為日志序列,合并后的每條日志序列被視為一個(gè)自然語(yǔ)言句子.然后,根據(jù)常用分隔符(即空格、冒號(hào)、逗號(hào)等)分割單詞并使用Camel Case[21]拆分復(fù)合單詞,刪除非字符標(biāo)記.因?yàn)榉亲址麡?biāo)記通常表示日志消息中的變量,并不提供任何信息.例如,原始日志消息為“081109 203519 145INFO dfs.DataNodeMYMPacketResponder:PacketResponder 1 for block blk_-1608999687919862906 terminating”,經(jīng)過(guò)預(yù)處理后拆分為一組單詞集合{info,dfs,data,node,packet,responder,for,block,terminating}.最后,過(guò)濾掉合并后的每條日志序列所產(chǎn)生的單詞集合中的超高頻詞匯,即出現(xiàn)的數(shù)量占比大于等于該日志序列總詞匯數(shù)量的70%.因?yàn)槌霈F(xiàn)頻率過(guò)高的詞匯(例如,info、for、block等)在后續(xù)異常檢測(cè)中無(wú)法起到?jīng)Q定性作用.

        2.1.2 特征提取

        特征提取的目的是從日志事件中提取有價(jià)值的特征提供給異常檢測(cè)模型.在特征提取階段,SemiCAD使用BOW模型提取日志序列的詞頻向量表示,即特征提取的輸入為日志預(yù)處理過(guò)程中生成的日志詞匯集合,輸出為詞匯計(jì)數(shù)矩陣.在日志文件中,詞語(yǔ)在上下文語(yǔ)境中的關(guān)聯(lián)性較弱,某個(gè)詞語(yǔ)的出現(xiàn)就可以判斷該日志序列是否異常,而B(niǎo)OW模型可以很好的突出單個(gè)單詞的重要性.

        2.2 偽標(biāo)簽估計(jì)

        使用基于HDBSCAN的PU學(xué)習(xí)算法根據(jù)訓(xùn)練集中部分有標(biāo)簽的數(shù)據(jù)(僅含正常日志序列)對(duì)無(wú)標(biāo)簽的數(shù)據(jù)(包括正常日志序列和異常日志序列)進(jìn)行偽標(biāo)簽估計(jì),將訓(xùn)練集中的數(shù)據(jù)聚類到不同的簇中,同一簇中的數(shù)據(jù)具有相同的類標(biāo)簽,即某一簇的簇心為正常日志序列,則該簇中的日志數(shù)據(jù)標(biāo)簽全為正常,反之為異常.然后將帶有偽標(biāo)簽的數(shù)據(jù)應(yīng)用于一致性異常檢測(cè)模型的訓(xùn)練中.HDBSCAN算法使用相互可達(dá)距離來(lái)表示兩個(gè)樣本點(diǎn)之間的距離,使得密集區(qū)域的樣本點(diǎn)之間的距離不受影響,而稀疏區(qū)域的樣本點(diǎn)與其他樣本點(diǎn)之間的距離被放大,這樣做增加了聚類算法對(duì)散點(diǎn)的魯棒性.相互可達(dá)距離的計(jì)算方法如公式(1)所示:

        dmreach-k(a,b)=max{corek(a),corek(b),d(a,b)}

        (1)

        其中,d(a,b)表示點(diǎn)a與點(diǎn)b之間的原始度量距離,corek(x)為點(diǎn)x與第k個(gè)最近鄰樣本點(diǎn)的距離,即核心距離:

        corek(x)=d(x,Nk(x))

        (2)

        通過(guò)偽標(biāo)簽估計(jì)可以在部分樣本標(biāo)簽的引導(dǎo)下,充分利用無(wú)標(biāo)簽的數(shù)據(jù)樣本提高模型學(xué)習(xí)性能,避免了數(shù)據(jù)資源的浪費(fèi).雖然偽標(biāo)簽估計(jì)的過(guò)程中難免會(huì)在原始數(shù)據(jù)中引入噪聲,但是后續(xù)的一致性異常檢測(cè)模型可以通過(guò)不一致性得分,有效衡量相同類標(biāo)簽日志數(shù)據(jù)以及不同類標(biāo)簽日志數(shù)據(jù)之間的相似性和差異性大小,然后將新舊日志數(shù)據(jù)聯(lián)系起來(lái),使用多模型協(xié)同檢測(cè)共同決策,降低了偽標(biāo)簽估計(jì)過(guò)程中引入噪聲對(duì)模型性能造成的影響.

        2.3 不一致性異常檢測(cè)

        2.3.1 不一致性度量

        一致性預(yù)測(cè)框架理論基于隨機(jī)性和可交換性假設(shè).隨機(jī)性假設(shè)是機(jī)器學(xué)習(xí)中的一個(gè)標(biāo)準(zhǔn)假設(shè),可交換性假設(shè)意味著變量具有相同的分布[22].

        在日志異常檢測(cè)中,給定一個(gè)訓(xùn)練樣本集合(z1,…,zn-1),每一個(gè)樣本zi∈Z由一個(gè)實(shí)例xi(通常是一個(gè)屬性向量)及其標(biāo)簽yi組成,即(xi,yi),i=1,2,…,n-1.檢測(cè)新數(shù)據(jù)zn時(shí),一致性預(yù)測(cè)嘗試每一個(gè)可能標(biāo)簽,即yc={正常,異常}作為xn的備選標(biāo)簽.在隨機(jī)性假設(shè)下,即(xi,yi)是獨(dú)立同分布的,選擇不一致性度量函數(shù)來(lái)計(jì)算不一致性得分,如公式(3)所示:

        αi=An()i=1,…,n-1

        (3)

        αi表示第i個(gè)樣本與其他樣本的不一致性大小,αi越小,即不一致性越小,表示屬于樣本序列的可能性越大.根據(jù)得到的不一致性得分通過(guò)公式(4)計(jì)算P值:

        (4)

        其中,分子為i=1,2,…,n時(shí)滿足αi≥αn的個(gè)數(shù),P(z1,…,zn)∈(1/n,1).如果P(zi)的值較小,表明zi與其余樣本的不一致性較大.分別計(jì)算待測(cè)實(shí)例xn的正常P值PN和異常P值PA,比較兩者大小,標(biāo)簽所對(duì)應(yīng)的置信度為1減去兩者中較小的值.然后,將置信度與預(yù)先給定的顯著性水平ε∈(0,1)進(jìn)行比較,從而判斷待測(cè)樣本xn是否異常.

        2.3.2 置信度和可信度

        一致性預(yù)測(cè)框架提供了兩個(gè)關(guān)鍵的指標(biāo):置信度和可信度.如上所述,測(cè)試對(duì)象xn嘗試每個(gè)可能的標(biāo)簽yc={正常,異常}作為xn的標(biāo)簽,然后計(jì)算P值.最后選擇具有最大的P值對(duì)應(yīng)標(biāo)簽作為檢測(cè)對(duì)象xn的標(biāo)簽.

        檢測(cè)標(biāo)簽將由置信度(confidence)和可信度(credibility)來(lái)衡量.置信度定義為1減去第2大的P值,而可信度定義為最大的P值.

        4種可能的結(jié)果如下:1)高可信度—高置信度:一個(gè)測(cè)試樣本對(duì)應(yīng)且只對(duì)應(yīng)一個(gè)類;2)高可信度—低置信度:測(cè)試樣本很相似,屬于兩個(gè)或兩個(gè)以上的類;3)低可信度—高置信度:測(cè)試樣本不能與數(shù)據(jù)集現(xiàn)存類別的任何一個(gè)類別聯(lián)系起來(lái);4)低可信度—低置信度:算法給測(cè)試樣本檢測(cè)一個(gè)標(biāo)簽,但它似乎與另一個(gè)標(biāo)簽更相似.

        2.4 算法描述

        SemiCAD模型偽代碼描述如表2所示.

        3 實(shí)驗(yàn)環(huán)境及評(píng)價(jià)指標(biāo)

        3.1 數(shù)據(jù)集介紹

        如表3所示,實(shí)驗(yàn)采用兩個(gè)廣泛使用的公共數(shù)據(jù)集來(lái)評(píng)估SemiCAD,即Hadoop分布式文件系統(tǒng)數(shù)據(jù)集(HDFS)和超級(jí)計(jì)算機(jī)數(shù)據(jù)集(Blue Gene/L Supercomputer,BGL).HDFS是通過(guò)在超過(guò)2000個(gè)Amazon的EC2節(jié)點(diǎn)上運(yùn)行基于Hadoop的MapReduce作業(yè)38.7小時(shí)生成的.根據(jù)日志消息的block_id,可以直接提取日志序列.BGL由勞倫斯利弗莫爾國(guó)家實(shí)驗(yàn)室(LLNL)的Blue Gene/L超級(jí)計(jì)算機(jī)產(chǎn)生.與HDFS數(shù)據(jù)集不同,BGL日志沒(méi)有記錄每個(gè)作業(yè)執(zhí)行的標(biāo)識(shí)符.因此,我們使用大小為120的固定窗口將日志切片為日志序列.

        表3 日志數(shù)據(jù)集細(xì)節(jié)描述Table 3 Log data set detail description

        如果一個(gè)日志序列存在任何失敗日志,則被視為異常日志序列.實(shí)驗(yàn)以7∶3的比例按照日志序列的時(shí)間順序?qū)?shù)據(jù)集分割為訓(xùn)練集和測(cè)試集,以保證訓(xùn)練集中的所有日志序列都是在測(cè)試集中的日志序列之前生成的來(lái)模擬實(shí)際場(chǎng)景.為了模擬半監(jiān)督場(chǎng)景,在訓(xùn)練集中按順序遍歷日志序列,若該日志數(shù)據(jù)標(biāo)簽為正常,則記為訓(xùn)練集中已知標(biāo)簽樣本,直至數(shù)量達(dá)到訓(xùn)練集樣本數(shù)量的50%為止,其余數(shù)據(jù)作為未標(biāo)記的日志序列.

        3.2 實(shí)驗(yàn)設(shè)置

        為了驗(yàn)證SemiCAD模型的異常檢測(cè)效果,搭建仿真實(shí)驗(yàn)環(huán)境,實(shí)驗(yàn)環(huán)境配置如表4所示.

        表4 實(shí)驗(yàn)環(huán)境配置Table 4 LabEnvironment configuration

        3.3 實(shí)驗(yàn)評(píng)價(jià)指標(biāo)

        日志數(shù)據(jù)異常檢測(cè)是一個(gè)二分類問(wèn)題,記正常數(shù)據(jù)標(biāo)簽為0,異常數(shù)據(jù)標(biāo)簽為1,則TP、FP、TN、FN為以下4種情況:

        TP:真實(shí)值為1,預(yù)測(cè)值為1,預(yù)測(cè)正確.

        FP:真實(shí)值為0,預(yù)測(cè)值為1,預(yù)測(cè)錯(cuò)誤.

        TN:真實(shí)值為0,預(yù)測(cè)值為0,預(yù)測(cè)正確.

        FN:真實(shí)值為1,預(yù)測(cè)值為0,預(yù)測(cè)錯(cuò)誤.

        實(shí)驗(yàn)采用的評(píng)價(jià)指標(biāo)均由表5所示的混淆矩陣中的4個(gè)值計(jì)算得出:即準(zhǔn)確率(Accuracy)、精確率(Precision)、召回率(Recall)和后面兩種指標(biāo)的調(diào)和平均數(shù)(F1)值.這些指標(biāo)被用來(lái)評(píng)價(jià)SemiCAD模型的有效性.評(píng)價(jià)指標(biāo)的計(jì)算方法如公式(5)~公式(8)所示:

        (5)

        表5 混淆矩陣Table 5 Confusion matrix

        (6)

        (7)

        (8)

        如上所示,Precision表示所報(bào)告的異常中正確的百分比,Recall表示所檢測(cè)到的真實(shí)異常的百分比,F1表示Precision和Recall的調(diào)和平均值.

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

        4.1 最佳顯著性水平的確定

        本節(jié)我們探究不同顯著性水平下,SemiCAD各指標(biāo)的性能(如圖3、圖4所示),從而確定最佳的顯著性水平來(lái)進(jìn)行后續(xù)實(shí)驗(yàn).如圖3所示,Recall、F1等隨著顯著性水平的增加而緩慢提高,在顯著性水平為0.99時(shí)取得最大值.所以,對(duì)HDFS日志數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)時(shí)將顯著性水平設(shè)置為0.99.

        圖3 HDFS數(shù)據(jù)集SemiCAD各項(xiàng)指標(biāo)變化Fig.3 HDFS datasets has different indicators in the SemiCAD

        圖4 BGL數(shù)據(jù)集SemiCAD各項(xiàng)指標(biāo)變化Fig.4 BGL datasets has different indicators in the SemiCAD

        如圖4所示,當(dāng)顯著性水平在0.5~0.9之間時(shí),Recall、F1等指標(biāo)值隨著顯著性水平的增加整體呈上升趨勢(shì),當(dāng)顯著性水平為0.90時(shí),Recall、F1等性能指標(biāo)值整體達(dá)到最大.所以,在BGL數(shù)據(jù)集上,我們將顯著性水平設(shè)置為0.90.

        4.2 SemiCAD的有效性

        由于SemiCAD是一種半監(jiān)督的日志異常檢測(cè)方法,本文將其與基于半監(jiān)督方法(如PLELog)、無(wú)監(jiān)督方法(如LogCluster、LogAnomaly)和有監(jiān)督方法(如LogRobust)等日志異常檢測(cè)模型性能進(jìn)行對(duì)比,對(duì)比模型具體描述如第2章節(jié)中表1所示.

        表6和表7展示了不同異常檢測(cè)模型在Precision、Recall和F1值方面的對(duì)比結(jié)果,可以看出SemiCAD在HDFS和BGL上的性能基本優(yōu)于所比較的異常檢測(cè)方法.盡管在BGL數(shù)據(jù)集中LogCluster[17]和LogAnomaly[18]較SemiCAD分別獲得了更好的Precision和Recall,但SemiCAD的F1分?jǐn)?shù)明顯優(yōu)于其他方法.在F1分?jǐn)?shù)方面,SemiCAD相比其他方法在HDFS上的提升范圍為4.7%~46.6%,在BGL上的提升范圍為3.2%~70.1%.此外,我們發(fā)現(xiàn)幾乎所有的方法在BGL上的性能都比HDFS差.這是因?yàn)榕cHDFS相比,BGL的時(shí)間跨度更長(zhǎng),因此包含了更多的不穩(wěn)定數(shù)據(jù).

        表6 不同異常檢測(cè)算法在HDFS數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果Table 6 Experimental results of different anomaly detection algorithms on HDFS data set

        表7 不同異常檢測(cè)算法在BGL數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果Table 7 Experimental results of different anomaly detection algorithms on BGL data set

        進(jìn)一步分析實(shí)驗(yàn)結(jié)果可得,SemiCAD在HDFS數(shù)據(jù)集上的召回率為1.00,這意味著SemiCAD能夠高精度地識(shí)別該數(shù)據(jù)集中的所有異常.SemiCAD是一種半監(jiān)督的日志異常檢測(cè)模型,實(shí)驗(yàn)結(jié)果說(shuō)明使用帶有偽標(biāo)簽的訓(xùn)練數(shù)據(jù)集訓(xùn)練一致性異常檢測(cè)模型,可以有效結(jié)合歷史知識(shí),學(xué)習(xí)數(shù)據(jù)分布規(guī)律,提高模型檢測(cè)性能.其次,SemiCAD的Recall和F1值也優(yōu)于無(wú)日志解析的LogCluster[17]和NeuralLog[20],表明基于原始數(shù)據(jù)進(jìn)行特征提取,有效避免解析錯(cuò)誤影響檢測(cè)結(jié)果的情況下,SemiCAD可以檢測(cè)到更多更全面的異常.最后,SemiCAD相比于半監(jiān)督異常檢測(cè)模型PLELog[9]檢測(cè)性能也有所提高,因?yàn)橐恢滦灶A(yù)測(cè)使用不一致性得分可以有效度量日志數(shù)據(jù)間的相似性和差異性大小,充分學(xué)習(xí)歷史數(shù)據(jù)分布規(guī)律的的同時(shí),將新舊日志數(shù)據(jù)聯(lián)系起來(lái),結(jié)合多模型協(xié)同檢測(cè)共同做出決策,有效緩解了偽標(biāo)簽估計(jì)時(shí)引入噪聲對(duì)檢測(cè)模型造成的影響.實(shí)驗(yàn)結(jié)果充分證明了SemiCAD在缺少標(biāo)簽的日志數(shù)據(jù)中,通過(guò)提取原始數(shù)據(jù)特征,使用帶有偽標(biāo)簽的數(shù)據(jù)集訓(xùn)練多模型協(xié)同的一致性預(yù)測(cè)模型,可以有效的檢測(cè)數(shù)據(jù)異常.

        4.3 底層算法選擇

        在一致性異常檢測(cè)框架中不同底層算法的差異性會(huì)對(duì)模型性能產(chǎn)生重要影響,為探究此問(wèn)題,本文分別選擇LR、DT、SVM、NB和集成學(xué)習(xí)作為底層算法進(jìn)行實(shí)驗(yàn)對(duì)比,分別記作CP-LR、CP-SVM、CP-DT、CP-NB和SemiCAD.在選擇集成學(xué)習(xí)作為底層算法時(shí),文中分別選擇LR、SVM、DT、NB作為AdaBoost的弱分類器以及RF進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果取達(dá)到最好效果的一種.圖5和圖6分別記錄了在HDFS和BGL數(shù)據(jù)集中,使用不同底層算法的異常檢測(cè)模型性能.

        圖5 不同底層算法在HDFS數(shù)據(jù)集上的異常檢測(cè)結(jié)果Fig.5 Anomaly detection results of different underlying algorithms on HDFS data sets

        圖6 不同底層算法在BGL數(shù)據(jù)集上的異常檢測(cè)結(jié)果Fig.6 Anomaly detection results of different underlying algorithms on BGL data sets

        從圖5可以看出,一致性異常檢測(cè)在HDFS數(shù)據(jù)集使用不同模型作為底層算法時(shí),CP-SVM的F1值最高,但SemiCAD的F1值仍高于CP-SVM 7.5%.從圖6中看到,一致性異常檢測(cè)在BGL數(shù)據(jù)集使用不同模型作為底層算法時(shí),CP-DT的F1值最高,但SemiCAD的F1值仍高于CP-NB 14.2%.實(shí)驗(yàn)結(jié)果表明選擇相比傳統(tǒng)的分類器,使用集成學(xué)習(xí)作為底層算法時(shí)可以有效提高檢測(cè)精度.同時(shí),SemiCAD的Recall也優(yōu)于其他異常檢測(cè)模型,這意味著采用集成學(xué)習(xí)作為底層算法時(shí)可以檢測(cè)到更多的異常,這在系統(tǒng)維護(hù)中更加重要.

        5 總結(jié)與展望

        基于日志的異常檢測(cè)方法已經(jīng)成為維護(hù)系統(tǒng)運(yùn)行和檢測(cè)系統(tǒng)異常的重要手段之一.但是,隨著軟件系統(tǒng)規(guī)模擴(kuò)大,日志數(shù)據(jù)變得數(shù)量龐大且類型復(fù)雜多樣,手動(dòng)進(jìn)行數(shù)據(jù)標(biāo)記代價(jià)高昂甚至不可行,導(dǎo)致有監(jiān)督方法難以應(yīng)用于實(shí)際生產(chǎn)環(huán)境中.然而,不需要數(shù)據(jù)標(biāo)簽的無(wú)監(jiān)督方法往往由于缺乏歷史經(jīng)驗(yàn)導(dǎo)致檢測(cè)性能較差.其次,大多數(shù)現(xiàn)存的日志異常檢測(cè)方法在日志數(shù)據(jù)預(yù)處理階段使用日志解析器提取事件模版,實(shí)證研究表明日志解析錯(cuò)誤會(huì)導(dǎo)致模型性能大大降低.

        本文提出了一種基于置信度的半監(jiān)督一致性異常檢測(cè)方法——SemiCAD,該方法首先基于原始日志數(shù)據(jù)提取詞頻特征向量;然后,使用基于HDBSCAN的PU學(xué)習(xí)算法對(duì)訓(xùn)練集中未標(biāo)記的數(shù)據(jù)進(jìn)行偽標(biāo)簽估計(jì),使用帶有偽標(biāo)簽的訓(xùn)練數(shù)據(jù)對(duì)模型進(jìn)行訓(xùn)練;最后,在一致性預(yù)測(cè)框架中使用集成學(xué)習(xí)算法作為底層算法進(jìn)行協(xié)同異常檢測(cè),通過(guò)不一致性度量將待測(cè)數(shù)據(jù)和訓(xùn)練數(shù)據(jù)聯(lián)系起來(lái),結(jié)合歷史經(jīng)驗(yàn)做出預(yù)測(cè)的同時(shí),能夠適應(yīng)數(shù)據(jù)的變化.SemiCAD在有效避免日志解析錯(cuò)誤影響模型性能的同時(shí),通過(guò)偽標(biāo)簽估計(jì)充分利用現(xiàn)有數(shù)據(jù),學(xué)習(xí)歷史數(shù)據(jù)分布規(guī)律,克服了有監(jiān)督方法需要大量數(shù)據(jù)標(biāo)簽的局限性.通過(guò)使用多個(gè)異常檢測(cè)模型在HDFS和BGL數(shù)據(jù)集上進(jìn)行對(duì)比實(shí)驗(yàn),驗(yàn)證了該模型的性能,進(jìn)一步證明該模型具有較好的異常檢測(cè)效果.

        猜你喜歡
        檢測(cè)方法模型
        一半模型
        “不等式”檢測(cè)題
        “一元一次不等式”檢測(cè)題
        “一元一次不等式組”檢測(cè)題
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
        可能是方法不對(duì)
        3D打印中的模型分割與打包
        小波變換在PCB缺陷檢測(cè)中的應(yīng)用
        用對(duì)方法才能瘦
        Coco薇(2016年2期)2016-03-22 02:42:52
        国产亚洲精品97在线视频一| 亚洲无人区乱码中文字幕| 玩弄放荡人妻一区二区三区| 欧美一级在线全免费| 亚洲 日韩 在线精品| 国产亚洲曝欧美不卡精品| 日本精品久久中文字幕| 国产中文字幕一区二区视频| 亚洲av迷人一区二区三区| 香蕉成人伊视频在线观看| 国内精品久久久久久久97牛牛 | 亚洲av网一区二区三区| 亚洲va韩国va欧美va| 国产精品无码久久久久久| 中文字幕乱码免费视频| 91精选视频在线观看| 一区二区视频观看在线| 亚洲av乱码一区二区三区女同 | 在线无码国产精品亚洲а∨| 麻豆av一区二区天堂| 中文字幕日韩精品中文字幕| 亚洲av无一区二区三区| 日本动漫瀑乳h动漫啪啪免费| 国产成人精品av| AV无码一区二区三区国产| 少妇特殊按摩高潮惨叫无码| 中文字幕亚洲永久精品| 高清午夜福利电影在线| 国产日产桃色精品久久久| 国产精品无码制服丝袜| 又粗又大又硬毛片免费看| 久久久久久好爽爽久久| 日韩中文字幕欧美亚洲第一区| 国产精品入口蜜桃人妻| 日本精品久久中文字幕| 亚洲男人天堂黄色av| 久久精品国产亚洲av高清热| 狠狠躁夜夜躁人人爽天天天天97 | 无码高清视频在线播放十区| 好看的国内自拍三级网站| 激情五月开心五月麻豆|