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

一種基于Grubbs和孤立森林的多維序列異常檢測方法

2022-05-26 03:04:24王銳
移動通信 2022年4期
關鍵詞:檢測模型

王銳

(中國移動通信集團廣東有限公司,廣東 廣州 510623)

0 引言

異常檢測[1-3]也稱為離群檢測,用于發現數據流中的異常類型并確定其發生的詳細信息。但是隨著移動通信的發展,整個通信業務急劇膨脹,為了適配多種終端、不同接入方式,運行場景日趨復雜,各類監控指標繁多且數據量巨大,海量多維序列數據給運維人員帶來更高的挑戰。

面對大數據場景,傳統的單指標檢測結果可能會出現片面性問題,且效率較低。文獻[4]綜述了多維時間序列異常檢測算法,并指出了要注意盡量降低算法的復雜度以及開展實時監測的研究;文獻[5-7]針對智能運維、安全駕駛和交易消費等領域,分別提出了基于VRNN、自動編碼器和模糊孤立森林等算法,研究了多維序列異常檢測算法及應用,并取得良好的效果。上述研究方法中部分算法復雜度較高,面對多樣化的海量數據,算法模型的泛化能力和計算開銷有一定局限。因此,本文提出了一種多維時間序列的異常檢測算法,采用優化的孤立森林(iForest,isolation Forest)算法,實現了較好的異常檢測效果。該算法易于理解,計算開銷小,并且泛化能力和實用性較好。

1 單指標異常檢測的局限

傳統的單指標異常檢測就是KPI異常檢測[8],也是運維領域中的一個重要環節。KPI指的是對系統、服務等運維對象的監控指標(如訪問量、利用率等),其數據是按發生的時間先后順序排列而成的數列,也就是時間序列。

為了發現異常數據,建立了一個單指標的時間序列異常檢測系統[9],基本遵循以下步驟:

(1)數據采集:數據流的持續采集;

(2)正常行為建模:識別異常的第一步是建立一個模型,設計一個統計測試來確定數據點,如果模型沒有解釋它們,則可能就是異常點;

(3)異常行為檢測:通過對比正常模型發現異常的數據,并描述異常的各種屬性。

時間序列異常檢測系統通過觀察度量行為的各個方面,假設數據變化滿足一種分布(如高斯分布或者正態分布)來計算動態閾值模型,對數據按照一定的規律波動來判斷異常是否有效,判別速度快。通過應用異常檢測算法將每個時間點標記為正常/異常或者預測某個點的信號,然后測試該點實際值是否與預測值相差足夠大以將其視為異常。

但是,一旦數據在某一段時間變化幅度加大,數據不夠平滑,對于多指標(多維序列)數據來說,復雜度更高、無效和干擾信息更加嚴重。針對多維度時間序列,如果需要將每個維度指標單獨進行檢測,會存在效率低下的問題;另一方面,大多數檢測只選取獨立的維度進行分析,很難發現相關聯的異常指標數據,不利于整體分析問題。

2 多維序列異常檢測

2.1 孤立森林的簡介

孤立森林(iForest)[10-11]屬于集成學習方法,廣泛應用于異常檢測領域。iForest對數據集的適應能力很強,同時在訓練樣本以及樣本屬性的選擇方面都是隨機的,在處理多維序列存在一定的優勢。其算法流程大致如下:

(1)從訓練數據中隨機選擇φ個點作為子樣本,放入一棵孤立樹的根節點;

(2)隨機指定一個維度,在當前節點數據范圍內隨機產生一個切割點p,切割點產生于當前節點數據中指定維度的最大值與最小值之間;

(3)此切割點的選取生成了一個超平面,將當前節點數據空間切分為2個子空間:把當前所選維度下小于p的點放在當前節點的左分支,把大于等于p的點放在當前節點的右分支;

(4)在節點的左分支和右分支節點遞歸步驟,不斷構造新的葉子節點,直到葉子節點上只有一個數據(無法再繼續切割)或樹已經生長到了所設定的高度,此時獲得了一個iTree。

獲得t個iTree之后,iForest訓練就結束,然后可以用生成的iForest來評估測試數據。對于一個訓練數據X,令其遍歷每一棵iTree,然后計算X最終落在每個樹第幾層(X在樹的高度),可以得出X在每棵樹的高度平均值。獲得每個測試數據的高度平均值后,可以設置一個閾值(邊界值),高度平均值低于此閾值的測試數據即為異常。

2.2 改進的孤立森林異常檢測

孤立森林檢測算法具有較大的隨機性,且對噪聲維度魯棒性不夠強,可靠性較低。在建立樹的同時,可能會有部分維度的信息沒有被完全利用,這些因素都影響了樹的構建,導致在實際異常檢測中一些檢測點會被誤判,使檢測結果的準確率低下。

鑒于上述這些問題,本文提出一種基于格拉布斯準則(Grubbs算法)的孤立森林算法改進,該算法邏輯簡潔且實用性強,通過引入格拉布斯準則,增加每個指標檢測的正常值閾值,同時利用孤立森林進行離群點檢測。實驗結果表明,該算法具有較好的檢測效果,與孤立森林相比,檢測結果更加穩定,可以過濾一些無關維度造成的影響。改進的算法流程說明如下:

第一步:

對同一系統中多個設備所對應的指標同時進行檢測,實時采集各個指標數據,每個指標即對應一個維度,各指標數據組成多維序列。對指標的采樣時間粒度可根據實際需要進行設定,如5分鐘。

預先獲取多維序列的歷史數據,選取的歷史時間范圍可以為一年或數月,通常是相對完整的時間周期。

進一步地,由于任一系統中各設備的運行狀態在不同的時間片段內存在規律性的變化,如對于一個IT系統其各設備的使用率在每天白天和晚上會存在較大的差別,或者在一周中工作日與節假日也會存在差別,因此在獲取各指標的正常閾值區間時,需要根據各時間片段內的規律進行劃分。時間片段的劃分規則可根據實際系統的運行規則進行設置,如一周的時間按照一天進行劃片,得到的時間片段為周一、周二、……;也可以將一天的時間按一個小時進行劃分,得到的時間片段為00:00~00:59、01:00~01:59、……、23:00~23:59;還可以將一天的時間按照白天和晚上進行劃分等。

多維序列歷史數據通過時間劃片,建立了各個時間片段對應的多維序列組。在每個維度序列組內,通過預設的閾值計算方法,獲得指標(即維度)在對應的時間片段內的正常閾值區間,從而得到各指標在不同的時間片段內的規律。本文采用閾值計算方法是Grubbs離群數據檢測方法。

Grubbs離群數據檢測方法[12]以任一維度i的采樣值組成數據集Xi={Xij},尋找其中最大的z-score,也就是計算每一個采樣值Xij對平均值偏離與標準差Si的比值,其中z-score的計算如下:

其中,zij即為z-score;為數據的均值;Si為數據的標準差。

如果z-score大于給定顯著性水平a下的離群檢測的臨界值gc,則認定該數為離群值,并把這個值進行剔除。其中,tc是一個選定的值,它服從具有n-2個自由度的t分布。

通過上述Grubbs離群數據檢測算法對數據集進行清洗后,所述數據集合中將不存在z-score大于所述臨界值gc的采集值,從而得到該維度i對應的正常閾值區間Oseti。

第二步:

獲取歷史數據作為訓練集,歷史時間可為近期范圍,如最近一個月內。從所述訓練集中進行采樣,通過孤立森林算法,構建異常檢測模型。

上述異常檢測模型是通過歷史數據訓練得到的,建議定期重新訓練更新。

第三步:

將所有同一采樣時間采集到的各指標數據組成待測的多維序列,輸入到第二步訓練得到異常檢測模型,輸出得到異常時間點集合,再結合各維度對應的正常閾值區間進行排除比對處理,最后得到改進算法的最終異常點集合。

綜合以上三步,整體基于Grubbs和孤立森林的多維序列異常檢測算法說明如下:

(1)對多維序列的歷史數據中,按時間劃片規則進行分組,分別針對每個時間片段中多維序列數據集使用Grubbs算法求得Oset,得到各個維度數據在每個時間片段內的正常閾值區間;

(2)將近期多維序列歷史數據通過孤立森林算法,獲得異常檢測模型ForestModel;

(3)對待測的當前多維序列采用異常檢測模型ForestModel進行檢測,得到異常序列集合Anomaly;

(4)結合待測的多維序列的采樣時間對應的時間片的Oset,對異常序列集合Anomaly進行排除比對,同一時間片段內異常序列集合Anomaly中存在Xij不在所對應維度的正常閾值區間,則標注為最終異常序列,Xij為異常數據值,最后遍歷得到最終的異常序列集合Anomaly*。

3 實驗過程

3.1 數據介紹

實驗中采用的數據為某IT系統運行環境采集的CPU使用率、內存使用率、數據庫等待事件等多個指標的一個數據集,時間跨度為2020年9月至11月共計8 000余條的數據集,時間粒度為15分鐘。篩選了部分有價值的檢測指標后,對數據進行預處理,將要進行訓練的數據如表1所示:

表1 多維序列數據示例

多維時間序列數據展示圖如圖1所示。可以看出,時間序列的數據中有一些突增突降的點,這些點可能是異常值,而各個指標之間發生突增突降的時間是相近的,證明各個指標之間的異常情況是有關聯的。

圖1 多維時間序列數據展示圖

3.2 結果對比

對數據進行了孤立森林算法訓練,并得出相應的模型,然后用2020年11月23日至25日系統采集15分鐘粒度總計288條的數據進行擬合,初步得出了異常結果。如表2所示,選取25日下午3點至6點的時間段進行展示,其中字段異常情況為0的時刻表示正常、-1的時刻表示異常。

表2 孤立森林算法檢測結果

在實際情況中,這兩天的時間段共有19處故障異常點。孤立森林算法找出的異常點共有43條,在展示的時間段中,部分模型找出的時間點與實際情況相吻合,但是與實際的結果相對比,有許多不關聯的時間點也被認為是異常點,產生了誤判的情況。為了檢驗模型的實際情況,畫出了模型的ROC曲線進行模型評估。孤立森林ROC曲線圖如圖2所示。

圖2 孤立森林ROC曲線圖

ROC曲線被用于醫學、無線電、生物學等領域中,在機器學習領域也有很好的發展。ROC曲線越靠近上方,曲線下面積AUC越大,則檢測的準確率越高,否則檢測準確率越低[13]。從圖2可以看到,傳統的孤立森林模型的預測模型結果為72.7%,檢測效果一般。

接下來使用改進后的孤立森林算法,首先利用Grubbs算法進行建模,得到異常檢測模型以及各個指標的正常閾值區間(為了便于計算比較,這里統一對應為一個時間分片,即白天)。各個維度的正常值區間范圍如表3所示:

表3 各個維度的正常值區間范圍

利用Grubbs算法得出各個指標的區間范圍,與孤立森林算法的模型所求得的異常時間點進行比對排除,重新求得異常時間點。改進的孤立森林算法檢測結果如表4所示。

表4 改進的孤立森林算法檢測結果

經過改進算法后,異常時間點在原來的基礎上縮減到了32個,每個指標中超出正常值的點也被標注了出來。同樣,畫出ROC曲線進行模型評估。改進的孤立森林ROC曲線圖如圖3所示。

從圖3可以看出,AUC值提升至86.4%,整體效果比原來好了很多。如表5的兩個時間段,系統中出現異常的指標為“Oracle連接數”與“數據庫等待事件數”,這兩個指標可能是引起異常的主要原因。在實際情況中,該時間點確實如此,可見算法的檢測結果是準確的。

表5 實際情況說明

圖3 改進的孤立森林ROC曲線圖

4 結束語

本文提出的改進算法使用了基于孤立森林算法與Grubbs算法對多維序列數據進行異常檢測,實驗結果表明,該算法能夠有效檢測出多維時間序列中存在的異常數據,且在處理海量數據過程中效率較高。目前該檢測方法已經逐步代替了原來的固定閾值方法,應用于業務開通領域IT系統運維場景中各類指標的監控,經過對比分析,面對海量數據計算效率更高,預警更加準確,減少了無效告警,可以得到較好的檢測效果。同時,該方法也能廣泛應用于移動通信的各個業務領域。

猜你喜歡
檢測模型
一半模型
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
小波變換在PCB缺陷檢測中的應用
主站蜘蛛池模板: 亚洲无码A视频在线| 成年A级毛片| 欧美日韩国产在线观看一区二区三区| 一级毛片在线免费视频| 国产99视频精品免费视频7 | 伊人成人在线视频| 99视频在线观看免费| 婷婷综合色| 亚洲第一成人在线| 亚洲国产中文综合专区在| AV无码一区二区三区四区| 青青极品在线| www.youjizz.com久久| 在线观看视频99| 久久久噜噜噜| 特级做a爰片毛片免费69| 思思热精品在线8| 亚洲成A人V欧美综合| 国产亚洲高清在线精品99| 亚洲欧洲日韩综合色天使| 一本久道热中字伊人| 在线观看免费黄色网址| AV熟女乱| 在线免费观看AV| 国产成+人+综合+亚洲欧美| 91成人免费观看| 亚洲乱强伦| 999国产精品| 亚洲无卡视频| 99人妻碰碰碰久久久久禁片| 色爽网免费视频| 国产91无码福利在线| 18禁高潮出水呻吟娇喘蜜芽| 夜夜操国产| 麻豆精品在线视频| 欧美午夜视频| 欧美视频二区| 亚洲人精品亚洲人成在线| A级毛片无码久久精品免费| 亚洲天堂日本| 日本人真淫视频一区二区三区| 喷潮白浆直流在线播放| 亚洲AⅤ综合在线欧美一区| 国产精品免费福利久久播放| 国产香蕉国产精品偷在线观看| 久久网综合| 日韩视频福利| 免费a在线观看播放| 777国产精品永久免费观看| 亚洲黄色成人| 日韩专区欧美| 亚洲福利视频一区二区| 国产成人免费| 亚洲国产亚综合在线区| 国产地址二永久伊甸园| 国产色婷婷| 免费在线a视频| 伊人天堂网| 久久精品娱乐亚洲领先| 免费人成在线观看成人片 | 亚洲色图另类| 亚洲精品成人福利在线电影| 91网红精品在线观看| 波多野结衣一区二区三区AV| 亚卅精品无码久久毛片乌克兰| 无码国产伊人| 亚洲欧美日韩动漫| 亚洲无卡视频| 2048国产精品原创综合在线| 国产精品福利一区二区久久| 内射人妻无码色AV天堂| 激情六月丁香婷婷| 国产欧美视频在线观看| 免费jjzz在在线播放国产| 欧美乱妇高清无乱码免费| 日本一区二区三区精品AⅤ| 亚洲国产理论片在线播放| 最新痴汉在线无码AV| 本亚洲精品网站| 在线毛片免费| 中文字幕乱码中文乱码51精品| 成人av专区精品无码国产|