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

?

基于Venn-Abers預(yù)測(cè)器的系統(tǒng)日志異常檢測(cè)方法

2023-11-02 12:37顧兆軍潘蘭蘭劉春波
關(guān)鍵詞:預(yù)測(cè)器日志標(biāo)簽

顧兆軍 潘蘭蘭,2 劉春波 王 志

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

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

3(南開(kāi)大學(xué)網(wǎng)絡(luò)空間安全學(xué)院 天津 300350)

0 引 言

系統(tǒng)異常檢測(cè)是一個(gè)計(jì)算機(jī)系統(tǒng)穩(wěn)定運(yùn)行的必要條件?,F(xiàn)代計(jì)算系統(tǒng)正面臨著由大型服務(wù)器集群支持的爆炸式增長(zhǎng),云計(jì)算、分布式計(jì)算平臺(tái)的出現(xiàn)使大型數(shù)據(jù)中心的部署成為一種趨勢(shì)。這些系統(tǒng)的規(guī)模和復(fù)雜性不斷增加,遭受錯(cuò)誤和故障的概率就會(huì)越來(lái)越大,使異常檢測(cè)變得更具有挑戰(zhàn)性。系統(tǒng)日志詳細(xì)記錄系統(tǒng)運(yùn)行期間的系統(tǒng)狀態(tài)和重要事件,幾乎所有的計(jì)算機(jī)系統(tǒng)中都有相應(yīng)的日志系統(tǒng)。

利用系統(tǒng)日志數(shù)據(jù)進(jìn)行異常檢測(cè)的方法大致分為以下幾類:(1) 基于數(shù)據(jù)分布的統(tǒng)計(jì)學(xué)異常檢測(cè)模型[1],根據(jù)總體數(shù)據(jù)分布識(shí)別突出或不符合分布的數(shù)據(jù)為異常點(diǎn),但是該方法只適用于點(diǎn)異常的檢測(cè);(2) 最近鄰方法[2]和基于聚類的異常檢測(cè)方法[3],假設(shè)正常數(shù)據(jù)位于密集的區(qū)域,異常則遠(yuǎn)離該區(qū)域,這兩種方法對(duì)于數(shù)據(jù)分布稀疏和密集區(qū)域具有未知分布的數(shù)據(jù)集不可用;(3) 基于長(zhǎng)短期記憶網(wǎng)絡(luò)的深度神經(jīng)網(wǎng)絡(luò)模型Deeplog[4],將系統(tǒng)日志建模為自然語(yǔ)言序列,可以通過(guò)日志模式檢測(cè)是否偏離正常行為從而檢測(cè)異常;(4) 基于深度學(xué)習(xí)[5-6]的異常檢測(cè)方法。這些算法只能給出一個(gè)預(yù)測(cè)(對(duì)于分類,它是預(yù)測(cè)標(biāo)簽;對(duì)于回歸,它是預(yù)測(cè)值),并未對(duì)預(yù)測(cè)結(jié)果進(jìn)行可靠性評(píng)估,即對(duì)預(yù)測(cè)結(jié)果的可信程度的評(píng)估以及對(duì)該評(píng)估有效性的保障。目前較為流行的概率預(yù)測(cè)的算法有一致性預(yù)測(cè)器和Venn-Abers預(yù)測(cè)器,一致性預(yù)測(cè)器在置信度下給出p值作為預(yù)測(cè)可靠性的估計(jì)[7],但這不是直接概率。本文將引入一種將常規(guī)預(yù)測(cè)器的結(jié)果轉(zhuǎn)換為概率的算法,給出預(yù)測(cè)結(jié)果的概率估計(jì)值,使結(jié)果更加直觀。

引入統(tǒng)計(jì)學(xué)習(xí)算法Venn-Abers預(yù)測(cè)器是具有有效性保證的,該方法可以對(duì)日志異常檢測(cè)結(jié)果進(jìn)行可靠性評(píng)估,也就是對(duì)預(yù)測(cè)結(jié)果的正確性進(jìn)行有效的概率預(yù)測(cè)。它是基于概率對(duì)數(shù)據(jù)進(jìn)行分類的機(jī)器學(xué)習(xí)框架,任何機(jī)器學(xué)習(xí)算法都可以作為它的底層算法。Venn-Abers預(yù)測(cè)器唯一需要的假設(shè)條件是數(shù)據(jù)服從可交換性假設(shè)[8],可以通過(guò)日志數(shù)據(jù)輕松滿足,并且不需要日志數(shù)據(jù)服從特定分布,就可以保證預(yù)測(cè)概率的有效性。研究表明,Venn-Abers預(yù)測(cè)器在很多領(lǐng)域可以取得有效的概率預(yù)測(cè)結(jié)果[9-11]。將Venn-Abers預(yù)測(cè)器引入日志異常檢測(cè)領(lǐng)域中可以有效地檢測(cè)系統(tǒng)日志異常。

本文采用真實(shí)系統(tǒng)的HDFS日志數(shù)據(jù)集評(píng)估本文方法,Venn-Abers預(yù)測(cè)器已被證明可以完美校準(zhǔn)[12],根據(jù)三種基礎(chǔ)算法分別開(kāi)發(fā)三種Venn-Abers預(yù)測(cè)器[13]用來(lái)檢測(cè)系統(tǒng)日志異常。從系統(tǒng)日志異常預(yù)測(cè)結(jié)果的有效性和準(zhǔn)確性兩個(gè)方面比較基礎(chǔ)算法和Venn-Abers預(yù)測(cè)器的性能。同時(shí)提出對(duì)Venn-Abers預(yù)測(cè)器處理數(shù)據(jù)的計(jì)算方法,并減少計(jì)算多概率預(yù)測(cè)值的時(shí)間。實(shí)驗(yàn)結(jié)果表明,引入Venn-Abers預(yù)測(cè)器進(jìn)行系統(tǒng)日志異常檢測(cè)正確性的評(píng)估是有效和準(zhǔn)確的。

1 基于Venn-Abers 預(yù)測(cè)器的日志異常檢測(cè)模型

圖1給出了基于日志異常檢測(cè)的總體框架。日志異常檢測(cè)框架總體包含兩個(gè)部分:日志預(yù)處理和日志異常檢測(cè)。日志預(yù)處理包括收集日志信息、日志解析和日志的特征化提取三部分。在日志異常檢測(cè)過(guò)程中,選擇三種基礎(chǔ)算法LR、SVM和RF,基于基礎(chǔ)算法預(yù)測(cè)得分構(gòu)建對(duì)應(yīng)的Venn-Abers預(yù)測(cè)器,Venn-Abers預(yù)測(cè)器得到的是測(cè)試對(duì)象對(duì)應(yīng)標(biāo)簽為1的多概率區(qū)間。為了和基于靜態(tài)閾值的方法進(jìn)行比較,將多概率區(qū)間擬合為單個(gè)概率值,通過(guò)概率值和標(biāo)簽的分布關(guān)系確定動(dòng)態(tài)閾值并實(shí)現(xiàn)最終的分類預(yù)測(cè)。

圖1 基于日志異常檢測(cè)的總體框架

1.1 日志預(yù)處理

系統(tǒng)日志異常檢測(cè)的第一個(gè)階段是日志預(yù)處理,包括收集日志信息、日志解析和日志的特征化提取三部分?,F(xiàn)代大型系統(tǒng)通過(guò)生成日志來(lái)記錄系統(tǒng)運(yùn)行時(shí)信息,每條日志都包含時(shí)間戳、日志優(yōu)先級(jí)、系統(tǒng)組件和日志條目本身等信息的非結(jié)構(gòu)化數(shù)據(jù)。通常,日志消息使用一組字段記錄特定的系統(tǒng)事件,圖1中Logs部分展示了從Amazon EC2平臺(tái)上收集的HDFS日志中提取的1個(gè)日志行[14],為了便于呈現(xiàn),省略了部分字段。

日志解析的目標(biāo)在于提取一組日志事件模板Event,即從日志數(shù)據(jù)內(nèi)容中區(qū)分出常量部分(固定的純文本)和變量部分(例如圖1中的blk_id)[15]。日志事件模板Event主要包括常量部分和通配符,其中常量部分是指構(gòu)成固定的純文本,它對(duì)于每個(gè)事件發(fā)生都保持不變,并且可以顯示日志消息的事件類型;通配符是指攜帶運(yùn)行時(shí)信息的狀態(tài)和參數(shù)的值(例如,IP地址和端口:10.251.31.5:50010),它們?cè)诓煌录l(fā)生之間可能有所不同,使用一個(gè)形如<*>的字符串替代。本文為每個(gè)不同的日志事件模板編號(hào)為Event_id,每個(gè)日志事件模板對(duì)應(yīng)一個(gè)標(biāo)識(shí)符block_id,如圖1中的Parsing部分。

上一步解析的結(jié)果可以用于生成事件計(jì)數(shù)矩陣X,事件計(jì)數(shù)矩陣將被送到日志異常檢測(cè)模型中。在事件計(jì)數(shù)矩陣中,將具有相同block的事件模板放在一行,即每一行代表一個(gè)塊block,將每一行的事件模板統(tǒng)計(jì)出次數(shù),即每一列代表一種事件類型。Xi,j單元格中的值記錄事件j在塊i上發(fā)生的次數(shù)。為了避免直接在矩陣X上檢測(cè)異常,引入TF-IDF[16]為該矩陣進(jìn)行預(yù)處理。TF-IDF是信息檢索中一種公認(rèn)的啟發(fā)式方法,它通常用作信息檢索和文本挖掘中文檔的特征表示。

1.2 日志異常檢測(cè)

1.2.1基于Venn-Abers預(yù)測(cè)器的日志異常檢測(cè)

本節(jié)將介紹基于Venn-Abers預(yù)測(cè)器來(lái)評(píng)估基礎(chǔ)算法對(duì)日志異常檢測(cè)結(jié)果預(yù)測(cè)正確的可能性。Venn-Abers預(yù)測(cè)器是一種將預(yù)測(cè)結(jié)果轉(zhuǎn)換為概率的算法[8],通過(guò)應(yīng)用保序回歸將其他分類器的輸出轉(zhuǎn)換為概率。假設(shè)本文得到了一個(gè)標(biāo)準(zhǔn)的二分類問(wèn)題:一組訓(xùn)練示例(z1,z2,…,zn-1)。每個(gè)zi由一對(duì)對(duì)象xi和標(biāo)簽yi組成,可能的標(biāo)簽有兩種,即y∈Y={0,1}。給出一個(gè)新的對(duì)象xn,任務(wù)是預(yù)測(cè)新對(duì)象xn的標(biāo)簽yn,并對(duì)預(yù)測(cè)正確的可能性進(jìn)行估計(jì)。

為了構(gòu)造Venn-Abers預(yù)測(cè)器,首先用觀察的訓(xùn)練集訓(xùn)練分類器并使用分類器為新對(duì)象xn輸出預(yù)測(cè)分?jǐn)?shù)s(xn),在帶有標(biāo)簽0和1的二分類問(wèn)題中,通過(guò)將預(yù)測(cè)分?jǐn)?shù)與固定閾值c進(jìn)行比較,并在s(xn)>c時(shí)將xn的標(biāo)簽預(yù)測(cè)為1,從而獲得實(shí)際的預(yù)測(cè)類別,因此s(·)在此稱為評(píng)分函數(shù)。許多用于分類的機(jī)器學(xué)習(xí)算法都可作為分類器的評(píng)分函數(shù),在本文中,采用SVM和LR的決策函數(shù)(Decision function)作為評(píng)分函數(shù),RF采用類概率預(yù)測(cè)函數(shù)作為評(píng)分函數(shù)。Venn-Abers預(yù)測(cè)器將遞增函數(shù)f(·)應(yīng)用于s(x);試圖“校準(zhǔn)”分?jǐn)?shù)[17],以便將f(s(x))用作x的標(biāo)簽為1的預(yù)測(cè)概率。

本文使用“成對(duì)相鄰違反者算法”找到的單調(diào)非遞減的保序回歸函數(shù)f(·),給定得分分類器對(duì)應(yīng)的Venn-Abers預(yù)測(cè)器是定義如下的多概率預(yù)測(cè)變量。嘗試將兩個(gè)不同的標(biāo)簽0和1用于測(cè)試對(duì)象xn。令s0為 (z1,z2,…,zn-1,(xn,0))的評(píng)分函數(shù),s1為(z1,z2,…,zn-1,(xn,1))的評(píng)分函數(shù)。

f0對(duì)應(yīng)的保序回歸為:

((s0(x1),y1),(s0(x2),y2),…,(s0(xn-1),yn-1),

(s0(xn),0))

(1)

f1對(duì)應(yīng)的保序回歸為:

((s1(x1),y1),(s1(x2),y2),…,(s1(xn-1),yn-1),

(s1(xn),1))

(2)

這樣Venn-Abers預(yù)測(cè)器輸出的多概率預(yù)測(cè)為(p0,p1),其中p0=f0(s0(x))和p1=f1(s1(x))。

1.2.2Venn-Abers預(yù)測(cè)器運(yùn)行效率優(yōu)化方法

Venn預(yù)測(cè)器會(huì)為每個(gè)測(cè)試對(duì)象嘗試所有可能的標(biāo)簽,需要針對(duì)每個(gè)測(cè)試對(duì)象的可能標(biāo)簽訓(xùn)練一個(gè)基礎(chǔ)算法模型,由于計(jì)算效率低下,故只適用于小數(shù)據(jù)集。隨后提出Venn-Abers預(yù)測(cè)器,對(duì)每個(gè)測(cè)試對(duì)象的所有可能標(biāo)簽只需要訓(xùn)練一個(gè)模型,也就是本文采用的方法可以對(duì)日志異常檢測(cè)結(jié)果進(jìn)行有效性的預(yù)測(cè)。但是在實(shí)驗(yàn)過(guò)程中,發(fā)現(xiàn)由訓(xùn)練集標(biāo)簽和訓(xùn)練集對(duì)象得到的保序回歸序列分布過(guò)于密集,不符合預(yù)期。

分析原因發(fā)現(xiàn)采用HDFS日志數(shù)據(jù)提取出29個(gè)事件模板從而形成29維的特征向量,但由于HDFS記錄的日志行為單一[18]使不同特征向量之間的差異較小,特征向量高度相似或重復(fù)。這種情況下,模型得分也會(huì)大量重復(fù)或相似,因此設(shè)計(jì)了如下算法。

步驟1得到特征向量的得分s(xi)。

步驟2將得分s(xi)和對(duì)應(yīng)的標(biāo)簽yi打包成具有兩個(gè)元素的元組(s(xi),yi)。

步驟3并對(duì)元組(s(xi),yi)進(jìn)行升序處理。

步驟4對(duì)于重復(fù)的得分,將其標(biāo)簽yi累積求和并取平均值作為該得分新的標(biāo)簽Newy。

這樣有益于保序回歸序列f0和f1的離散化分布同時(shí)降低后續(xù)實(shí)驗(yàn)測(cè)試對(duì)象多概率p0和p1的計(jì)算時(shí)間并提高計(jì)算效率。

2 評(píng)估方法

本文將使用標(biāo)準(zhǔn)損失函數(shù)將Venn-Abers預(yù)測(cè)器與已知的概率預(yù)測(cè)器進(jìn)行比較。由于Venn-Abers預(yù)測(cè)器輸出的是概率對(duì)(p0,p1)而不是點(diǎn)概率,因此需要將它們擬合到標(biāo)準(zhǔn)框架中,以便從p0和p1中提取一個(gè)概率p。

2.1 算法有效性評(píng)估指標(biāo)

概率預(yù)測(cè)可以提供對(duì)預(yù)測(cè)的可靠性估計(jì),同時(shí)估計(jì)的概率是有效的。有效性意味著對(duì)預(yù)測(cè)標(biāo)簽的估計(jì)概率是無(wú)偏的,這意味著該估計(jì)概率等于或接近預(yù)測(cè)正確的觀察頻率。本文使用平方損失函數(shù)來(lái)檢驗(yàn)概率預(yù)測(cè)的有效性。

假設(shè)p是測(cè)試對(duì)象x預(yù)測(cè)標(biāo)簽的概率值,如果該對(duì)象對(duì)應(yīng)的標(biāo)簽預(yù)測(cè)是正確的,y=1,反之y=0。該預(yù)測(cè)的平方損失函數(shù)為:

λsq(p,y)=(y-p)2

(3)

該損失函數(shù)的特點(diǎn)是:當(dāng)預(yù)測(cè)正確時(shí),預(yù)測(cè)的概率值越大,則損失函數(shù)越小;預(yù)測(cè)錯(cuò)誤時(shí),預(yù)測(cè)的概率值越小,則損失函數(shù)越大。

使用平方損失函數(shù)時(shí),Venn-Abers預(yù)測(cè)輸出一個(gè)概率區(qū)間[p0,p1],現(xiàn)階段的任務(wù)是找到最優(yōu)的概率值p[19]。如果預(yù)測(cè)錯(cuò)誤,y=0,則使用p0作為預(yù)測(cè)概率值可以使損失函數(shù)達(dá)到最小。因此,由于本文使用p而沒(méi)有使用p0造成損失p2-p02;同理如果預(yù)測(cè)正確,y=1則由于使用p而沒(méi)有使用p1造成損失(1-p)2- (1-p1)2。p2-p02在p=[0,1]嚴(yán)格增函數(shù),(1-p)2-(1-p1)2在p=[0,1]區(qū)間是嚴(yán)格減函數(shù)(1-p)2-(1-p1)2。因此,當(dāng)p滿足如下方程時(shí)平方損失函數(shù)取得最小值:

(4)

因而,得到:

(5)

在計(jì)算Venn-Abers的預(yù)測(cè)結(jié)果的損失函數(shù)時(shí),將式(5)分別代入λsq中計(jì)算損失函數(shù),損失函數(shù)越小,預(yù)測(cè)的有效性越高。因此,基于損失函數(shù)的概率預(yù)測(cè)或多概率預(yù)測(cè)的有效性的指標(biāo)定義為,對(duì)N個(gè)測(cè)試樣本的概率預(yù)測(cè)結(jié)果中,平均的損失函數(shù)值:

(6)

2.2 算法評(píng)估指標(biāo)

實(shí)驗(yàn)中使用精確率(Precision)、召回率(Recall)、F1值(F1-measure)和準(zhǔn)確率(Accuracy)作為每次預(yù)測(cè)結(jié)果的評(píng)價(jià)指標(biāo)。假設(shè)0代表正常,1代表異常,則統(tǒng)計(jì)模型分類結(jié)果得到:

1)TP:預(yù)測(cè)結(jié)果為異常,實(shí)際也是異常的個(gè)數(shù)。

2)FP:預(yù)測(cè)結(jié)果為異常,實(shí)際是正常的個(gè)數(shù)。

3)TN:預(yù)測(cè)結(jié)果為正常,實(shí)際也是正常的個(gè)數(shù)。

4)FN:預(yù)測(cè)結(jié)果為正常,實(shí)際是異常的個(gè)數(shù)。

精確率公式為式(7),它表示模型預(yù)測(cè)到的異常中真異常的比例,同時(shí)可以衡量模型降低誤報(bào)率的能力。

(7)

召回率公式見(jiàn)式(8),它表示模型預(yù)測(cè)到的異常占數(shù)據(jù)集中總異常的百分比,同時(shí)可以描述模型識(shí)別正例覆蓋范圍的大小。

(8)

準(zhǔn)確率公式為式(9),它表示模型判斷正常的日志和異常日志占總?cè)罩镜陌俜直取?/p>

(9)

F1值公式為式(10),它指精確率和召回率的調(diào)和平均數(shù),用于綜合衡量模型的精確率和召回率。

(10)

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

實(shí)驗(yàn)環(huán)境為: Intel?CoreTM i5-4200U CPU @ 1.60 GHz,8 GB RAM和Windows操作系統(tǒng)。數(shù)據(jù)集[16]來(lái)自亞馬遜在EC2節(jié)點(diǎn)上部署的Hadoop集群,運(yùn)行樣本Hadoop map-reduce作業(yè)近39個(gè)小時(shí),生成的HDFS日志數(shù)據(jù)是由相應(yīng)領(lǐng)域?qū)<沂謩?dòng)標(biāo)記的。HDFS 數(shù)據(jù)集中每個(gè)標(biāo)簽標(biāo)注的是一個(gè)會(huì)話是否正常。一個(gè)會(huì)話是一個(gè)塊ID相關(guān)的若干條日志,可以認(rèn)為是系統(tǒng)對(duì)一個(gè)塊執(zhí)行的一系列操作。一個(gè)會(huì)話中只要出現(xiàn)一個(gè)異常事件就認(rèn)為該會(huì)話是異常的。具體來(lái)說(shuō),有11 175 629條原始數(shù)據(jù)記錄,形成575 061個(gè)操作會(huì)話,在575 061個(gè)會(huì)話中,16 838個(gè)被標(biāo)記為異常,在實(shí)驗(yàn)過(guò)程中將其作為基本事實(shí)。

該數(shù)據(jù)集僅包含添加、移動(dòng)和刪除等事件的日志及其異常情況。HDFS是以一系列的文件塊為存儲(chǔ)單位的,每個(gè)文件塊都有獨(dú)自的ID[20]。實(shí)驗(yàn)過(guò)程按照8∶2劃分測(cè)試集和訓(xùn)練集。首先將原始數(shù)據(jù)處理為事件模板,共29種不同的事件模板。具有相同塊ID的事件模板組合在一起并形成一個(gè)向量。每個(gè)向量的維度對(duì)應(yīng)著不同的事件模板,維度的值表示該模板的事件出現(xiàn)的次數(shù),因此事件計(jì)數(shù)矩陣具有575 062×29的維度。但是真正實(shí)驗(yàn)過(guò)程中卻發(fā)現(xiàn)許多向量是完全相同的。事實(shí)上,只有580個(gè)不同的向量,即大多數(shù)文件塊都經(jīng)歷共同的執(zhí)行動(dòng)作。圖2和圖3展示了用Venn-Abers繪制出全部向量和根據(jù)1.2.2節(jié)改進(jìn)后的向量對(duì)應(yīng)的f0和f1。在全部向量的圖2中,因?yàn)榇嬖诖罅恐貜?fù)的向量,使f值的離散程度很差,而改進(jìn)后的圖3中,f0和f1值的分布是明顯的。所以在以下實(shí)驗(yàn)結(jié)果中采用580個(gè)特征向量的數(shù)據(jù)集。

圖2 全部向量作圖結(jié)果

3.1 算法有效性比較

采用損失函數(shù)對(duì)算法有效性進(jìn)行比較。平均損失函數(shù)值是在所有情況下真實(shí)類別與預(yù)測(cè)結(jié)果概率之間的差異的平均平方和。真實(shí)類別必須為正常(0)或者異常(1),而預(yù)測(cè)結(jié)果概率可以是0到1之間的值。對(duì)于一組預(yù)測(cè)值,平均損失函數(shù)值越低,預(yù)測(cè)校準(zhǔn)越好。將數(shù)據(jù)按照特征向量的不同分為大小不同的四份數(shù)據(jù)集,用于損失值的測(cè)試,具體運(yùn)行結(jié)果見(jiàn)表1。基于SVM開(kāi)發(fā)的Venn-Abers預(yù)測(cè)器簡(jiǎn)稱為SVM-VA、基于LR開(kāi)發(fā)的Venn-Abers預(yù)測(cè)器簡(jiǎn)稱為L(zhǎng)R-VA和基于RF開(kāi)發(fā)的Venn-Abers預(yù)測(cè)器簡(jiǎn)稱為RF-VA。得到的損失值都產(chǎn)生了不同程度的下降,表明了Venn-Abers預(yù)測(cè)器具有改善分類性能的能力。

表1 不同大小數(shù)據(jù)集下LR-VA、SVM-VA、RF-VA、LR、SVM和RF算法的平均損失函數(shù)值結(jié)果對(duì)比

箱型圖主要用于顯示數(shù)據(jù)統(tǒng)計(jì)分布,圖像生成方式是通過(guò)排序,提取一組數(shù)據(jù)的上邊緣、下邊緣、中位數(shù)和兩個(gè)四分位數(shù),連接兩個(gè)四分位數(shù)形成箱體,再連接中位數(shù)和上下邊緣。圖4為L(zhǎng)R、SVM、RF、LR-VA、SVM-VA、RF-VA在全部數(shù)據(jù)集下?lián)p失值的箱型圖。從損失值的中位數(shù)可以看出,LR-VA模型相對(duì)于LR模型降低了3.6%, SVM-VA模型相對(duì)于SVM模型降低了6%, RF-VA模型相對(duì)于RF模型降低了4%。從整體分布來(lái)看,LR-VA、LR、SVM-VA、SVM、RF-VA和RF的四分位差分別為0.085、0.088、0.035、0.06、0.04和0.12,可以很容易看出RF-VA和SVM-VA模型主要分布在較低的區(qū)域并且跨度很小。綜合評(píng)價(jià)具有最低的損失值的模型是RF-VA和SVM-VA模型;其次是LR-VA模型;表現(xiàn)最差的是RF模型,損失值數(shù)據(jù)比較發(fā)散。Venn-Abers預(yù)測(cè)器的有效性評(píng)估標(biāo)準(zhǔn)均小于相應(yīng)的基礎(chǔ)方法的評(píng)估標(biāo)準(zhǔn),這表明Venn-Abers預(yù)測(cè)器進(jìn)行的概率預(yù)測(cè)比相應(yīng)的基礎(chǔ)預(yù)測(cè)方法更有效。

圖4 數(shù)據(jù)集的平均損失函數(shù)值結(jié)果箱型圖

3.2 算法性能比較

在第2節(jié)將Venn-Abers預(yù)測(cè)器輸出的概率對(duì)(p0,p1)擬合為一個(gè)概率值p,從而和基于靜態(tài)閾值的基礎(chǔ)算法方法進(jìn)行比較。由于概率值p代表預(yù)測(cè)標(biāo)簽為0的概率,p值越大則預(yù)測(cè)標(biāo)簽為0的可能性越高,p值越小則預(yù)測(cè)標(biāo)簽為0的可能性越低,即標(biāo)簽為1的可能性越高。在本文的日志異常檢測(cè)過(guò)程中,標(biāo)簽為0代表預(yù)測(cè)日志是正常的,標(biāo)簽為1代表預(yù)測(cè)日志是異常的。本文展示出預(yù)測(cè)標(biāo)簽(0和1)和概率值p之間的分布散點(diǎn)圖,若Venn-Abers預(yù)測(cè)器得到的p值結(jié)果在[0, 1]區(qū)間呈現(xiàn)兩極分化,說(shuō)明Venn-Abers預(yù)測(cè)器的質(zhì)量很好,如圖5(d)、圖6(d)和圖7(d)所示。但是在實(shí)驗(yàn)過(guò)程中發(fā)現(xiàn)p值的分布并不僅僅局限于0和1的附近,存在處于中間的p值。那么根據(jù)p值在[0, 1]區(qū)間的分布情況對(duì)測(cè)試對(duì)象的標(biāo)簽進(jìn)行再次預(yù)測(cè)。具體可以通過(guò)設(shè)置閾值c,來(lái)對(duì)2.1節(jié)的準(zhǔn)確性評(píng)價(jià)指標(biāo)進(jìn)行一定程度的控制,若p>c則說(shuō)明該測(cè)試對(duì)象對(duì)應(yīng)的標(biāo)簽為異常。在實(shí)驗(yàn)過(guò)程中,通過(guò)調(diào)整閾值c的大小[21],以使預(yù)測(cè)準(zhǔn)確性盡可能接近1。

圖5 不同閾值下LR模型預(yù)測(cè)概率值p和標(biāo)簽分布關(guān)系

圖7 不同閾值下RF模型預(yù)測(cè)概率值p和標(biāo)簽分布關(guān)系

在圖5(a)LR模型中,會(huì)發(fā)現(xiàn)p處于[0.6, 0.8]之間比較密集,這部分p值對(duì)應(yīng)什么樣的標(biāo)簽對(duì)實(shí)驗(yàn)結(jié)果有很大的影響。故設(shè)置三個(gè)閾值c取值分別為0.6、0.72和0.8來(lái)檢測(cè)密集區(qū)間內(nèi)的日志異常的變化情況,p值和測(cè)試標(biāo)簽的分布情況如圖5所示。當(dāng)c取0.6時(shí)對(duì)應(yīng)圖5(b),此時(shí)處于[0.6, 0.8]區(qū)間內(nèi)的p值對(duì)應(yīng)的標(biāo)簽均為異常。當(dāng)c取0.8時(shí)對(duì)應(yīng)圖5(c),此時(shí)處于[0.6, 0.8]區(qū)間內(nèi)的p值對(duì)應(yīng)的標(biāo)簽均為正常。

取中間值0.72時(shí),使[0.6, 0.8]區(qū)間內(nèi)對(duì)應(yīng)的p值對(duì)應(yīng)的標(biāo)簽既有正常又有異常,如圖5(a)所示。這樣可以通過(guò)評(píng)價(jià)指標(biāo)得出使異常檢測(cè)結(jié)果更加準(zhǔn)確的閾值。通過(guò)這種方式可以把概率值轉(zhuǎn)化為預(yù)測(cè)結(jié)果,進(jìn)而得到三組基于Venn-Abers的實(shí)驗(yàn)結(jié)果,簡(jiǎn)稱VA_0.6、VA_0.72和VA_0.8,與基于靜態(tài)閾值的基礎(chǔ)算法通過(guò)柱狀圖進(jìn)行實(shí)驗(yàn)對(duì)比。實(shí)驗(yàn)結(jié)果顯示與基于靜態(tài)閾值分類的方式相比,基于Venn-Abers的分類方式不僅能夠成功檢測(cè)異常,而且其Accuracy、Recall、Precision和F1值均有不同程度的提高。圖8為L(zhǎng)R和Venn-Abers實(shí)驗(yàn)結(jié)果對(duì)比柱狀圖,當(dāng)c=0.72時(shí),通過(guò)Venn-Abers分類器得到的實(shí)驗(yàn)結(jié)果最好,其中Accuracy和Recall提高了0.02和0.03,Precision和F1值提高0.01。在c=0.8和0.6時(shí)其結(jié)果不如基于靜態(tài)閾值的基礎(chǔ)算法,因?yàn)榇藭r(shí)Venn-Abers分類器得到的實(shí)驗(yàn)結(jié)果出現(xiàn)較多的FP和FN。

圖6中顯示了在SVM算法中當(dāng)閾值c=0.6、0.72和0.8時(shí),p值和標(biāo)簽的分布情況。圖9為基于靜態(tài)閾值的基礎(chǔ)算法SVM和基于Venn-Abers預(yù)測(cè)器的實(shí)驗(yàn)結(jié)果,可以看出c=0.72時(shí)基于Venn-Abers預(yù)測(cè)器的Accuracy和F1值提高了近0.07,Recall提高了0.13,誤報(bào)率從0.12降低到0.03;c=0.8時(shí),由于FP數(shù)量增多導(dǎo)致Accuracy、Precision和F1值降低;c=0.6時(shí),FP數(shù)量減少但是效果沒(méi)有c=0.72好。補(bǔ)充在RF算法中的情況,在圖7中展示了RF算法中當(dāng)閾值c=0.6、0.72和0.8時(shí),p值和標(biāo)簽的分布情況。會(huì)發(fā)現(xiàn)RF算法中p值和標(biāo)簽的分布會(huì)更加趨于兩極,中間的離散點(diǎn)相對(duì)較少,說(shuō)明RF算法相對(duì)適合這種日志異常檢測(cè)問(wèn)題的分類。從圖10可以看出基礎(chǔ)算法RF的實(shí)驗(yàn)結(jié)果是三種算法中最好的,當(dāng)c=0.72時(shí),Accuracy和Recall提高了0.03和0.05, F1值提高0.02,但是Precision降低0.02。從圖10可以看出,基于Venn-Abers算法的Precision均低于基礎(chǔ)算法RF,說(shuō)明基礎(chǔ)算法RF對(duì)日志異常中的漏報(bào)檢測(cè)效果很好。實(shí)驗(yàn)結(jié)果表明,與三種基于靜態(tài)閾值的基礎(chǔ)算法相比,開(kāi)發(fā)的三種Venn-Abers預(yù)測(cè)器的方法會(huì)動(dòng)態(tài)改變c值以適應(yīng)數(shù)據(jù)的變化,大多數(shù)情況下能作出更好的判斷。

圖9 SVM和Venn-Abers實(shí)驗(yàn)結(jié)果柱狀圖

圖10 RF和Venn-Abers實(shí)驗(yàn)結(jié)果柱狀圖

對(duì)于概率值p在[0, 1]區(qū)間的分布進(jìn)行分析,如果概率值p分布在[0, 1]區(qū)間的兩極,那么檢測(cè)效果會(huì)是最好的。分析LR模型中概率值p的分布會(huì)發(fā)現(xiàn)p=0.487 805出現(xiàn)91次,p=0.689 441出現(xiàn)3 190次,p=0.765 957出現(xiàn)12 665次。追溯概率值p對(duì)應(yīng)的特征向量會(huì)發(fā)現(xiàn),同一個(gè)概率值p對(duì)應(yīng)的特征向量相似度很高,只有某一個(gè)維度不同。比如p=0.689 441對(duì)應(yīng)的特征向量只有事件11出現(xiàn)6次和事件12出現(xiàn)2次的不同。同樣的情況出現(xiàn)在SVM模型和RF模型中,p=0.738 409出現(xiàn)13 258次,概率p值對(duì)應(yīng)的特征向量要么重復(fù),要么高度相似。單個(gè)模型的檢測(cè)不能對(duì)高度相似的特征向量作出很好的判斷,如果能使用模型融合取不同算法的優(yōu)勢(shì),則可以進(jìn)一步細(xì)致地對(duì)日志數(shù)據(jù)進(jìn)行判斷,從而得到更好的檢測(cè)結(jié)果,這也是下一個(gè)階段的研究?jī)?nèi)容。

4 結(jié) 語(yǔ)

在這項(xiàng)工作中,采用HDFS真實(shí)數(shù)據(jù)集來(lái)對(duì)系統(tǒng)日志異常進(jìn)行檢測(cè)。本文引入靈活的機(jī)器學(xué)習(xí)框架Venn-Abers預(yù)測(cè)器,可以對(duì)日志數(shù)據(jù)進(jìn)行精確有效的概率預(yù)測(cè)。代替?zhèn)鹘y(tǒng)分類器僅預(yù)測(cè)未知對(duì)象的單個(gè)標(biāo)簽,這種預(yù)測(cè)器在一定程度上補(bǔ)充了預(yù)測(cè)標(biāo)簽正確的可能性。在概率預(yù)測(cè)有效性方面,開(kāi)發(fā)了三種Venn-Abers預(yù)測(cè)器與三種基礎(chǔ)算法進(jìn)行比較。損失函數(shù)的實(shí)驗(yàn)結(jié)果表明,盡管采用相同的基礎(chǔ)分類方法,但隨著樣本數(shù)量的增加,Venn-Abers預(yù)測(cè)器的有效性保持不變。在概率預(yù)測(cè)準(zhǔn)確性方面,Venn-Abers預(yù)測(cè)器計(jì)算出預(yù)測(cè)標(biāo)簽的概率值,通過(guò)統(tǒng)計(jì)概率值和預(yù)測(cè)標(biāo)簽的分布情況,動(dòng)態(tài)設(shè)置最佳閾值,能更加準(zhǔn)確地檢測(cè)日志異常情況。同時(shí),對(duì)Venn-Abers預(yù)測(cè)器計(jì)算概率值方法的改進(jìn),使算法運(yùn)行效率得到提高。實(shí)驗(yàn)結(jié)果表明Venn-Abers 預(yù)測(cè)器不僅對(duì)機(jī)器學(xué)習(xí)預(yù)測(cè)日志數(shù)據(jù)結(jié)果的正確性進(jìn)行有效性評(píng)估,而且對(duì)日志數(shù)據(jù)進(jìn)行了更高效、準(zhǔn)確的分類。

在下一個(gè)階段的研究中,將研究更多不同的評(píng)分分類器集成到該原型平臺(tái),以檢測(cè)系統(tǒng)日志的異常。不同的模型有各自的長(zhǎng)處,性能具有差異性,將引入模型融合使各個(gè)模型發(fā)揮出優(yōu)勢(shì),來(lái)進(jìn)一步提高日志異常檢測(cè)的準(zhǔn)確性。

猜你喜歡
預(yù)測(cè)器日志標(biāo)簽
輸入延遲系統(tǒng)的切換偽預(yù)測(cè)鎮(zhèn)定控制器
一名老黨員的工作日志
基于真實(shí)歷史反饋的自適應(yīng)值預(yù)測(cè)器的設(shè)計(jì)與優(yōu)化*
扶貧日志
一種改進(jìn)型TAGE分支預(yù)測(cè)器的實(shí)現(xiàn)
無(wú)懼標(biāo)簽 Alfa Romeo Giulia 200HP
不害怕撕掉標(biāo)簽的人,都活出了真正的漂亮
游學(xué)日志
標(biāo)簽化傷害了誰(shuí)
基于多進(jìn)制查詢樹(shù)的多標(biāo)簽識(shí)別方法