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

基于特征提取和隨機森林的接口服務異常值檢測

2023-06-22 06:02:37左金虎肖忠良陳理華
現代信息科技 2023年5期

左金虎 肖忠良 陳理華

摘? 要:文章提出了一種提取一維統計學中的特征作為屬性,通過隨機森林進行訓練的有監督學習的異常檢測方法。作為屬性的特征有標準分異常值、格拉布斯異常值、中位數方差異常值和平均偏離值等。現階段一般采用無監督模型和集成學習的方法來檢測異常值。文章提出的方法就是基于現階段方法做的一個升級版本,能檢測出大部分跨區換卡、套餐變更和個人開機的中國移動業務接口服務異常值。

關鍵詞:隨機森林;一維特征提取;有監督學習;業務接口服務異常值

中圖分類號:TP311? ? 文獻標識碼:A? 文章編號:2096-4706(2023)05-0163-04

Detection of Interface Service Outlier Based on Feature Extraction and Random Forest

ZUO Jinhu, XIAO Zhongliang, CHEN Lihua

(China Mobile Information Technology Co., Ltd.,? Beijing 102200, China)

Abstract: This paper proposes a outlier detection method with supervised learning that extracts features in one-dimensional statistics as attributes and trains through Random Forest. The features as attributes include standard score outliers, Grubbs outliers, median variance outliers, and mean deviation values. At this stage, unsupervised models and ensemble learning methods are generally used to detect outliers. The method proposed in this paper is an upgraded version based on the method at current stage, which can detect most of the outliers of China Mobile business interface services such as cross-regional card replacement, package change and personal boot.

Keywords: Random Forest; one-dimensional feature extraction; supervised learning; business interface service outlier

0? 引? 言

在運維監控的領域中,時序數據一般有三種類型:周期型、階梯型和無規律型。一般涉及具體業務的,比如在線用戶數量,業務量等有較為明顯的,以日、周、月、節假日為周期的規律。 以磁盤使用率為代表的時序數據一般為階梯增長,而CPU使用率、內存使用率則大多為無規律型。目前針對這些時序數據的檢測算法一般可分為三類:

第一類是基于經驗閾值的檢測方法,這過于依賴專家知識,需要專家在部署監控程序時指定閾值,指標數值超過閾值時則為異常。

第二類是基于有監督的方法,比如xgboost、logistic回歸、隨機森林、神經網絡等方法。這類有監督學習依賴于有標注的數據集。

第三類是基于無監督的方法,這種一般采用線性回歸,ARIMA,移動平均,Holt-Winter,聚類等方法。

當前場景下,在計算機采集的關鍵指標數據上進行異常檢測存在兩方面問題:(1)指標數量多,無標注,且歷史記錄的異常非常少,缺乏已標注的異常數據。(2)類型多。時間序列一般可分為周期性、階梯形和無規律型。但同樣是CPU利用率,可能有周期性,也可能是無規律,并且可能因為業務變更導致該指標從一種類型(比如無規律型)變換為另一種(比如周期型)。

現有方案中,經驗閾值依賴專家經驗,面臨指標數量多,業務調整頻繁等問題;有監督算法依賴于有標注數據,但系統和應用異常在日常生活中屬于極小概率事件,能積累的異常數據非常少,這就導致了哪怕能提供標注數據,其正負樣本也極度不均衡,并且只能檢測數據集中出現過的故障;而單一的無監督算法則面臨時間序列類型多樣,難以使用一個算法應對全部類型的問題。

目前,中國移動的業務支撐系統大部分均采用的分布式服務器,所以一套系統中包含了多個子系統,子系統經常會存在互相調用的情況,有時候服務器處理完請求返回結果的時候進程就會掛掉。此時用戶發現自己的請求沒有返回結果,就會多次請求業務,這時就容易出現異常值,表示出現業務上的故障。現階段的處理方法是:運維人員接到服務器發出的告警之后,人眼觀察此時間段是否出現異常值,然后再處理告警看是否需要升級告警或者處理故障。此時如果是出現故障的話,已經發生了一段時間了,這種方法的弊端是不能及時發現故障和需要有經驗的運維人員判斷是否發生了故障。或者是用多種無監督學習的方法來判斷當前時間點是否為業務上的異常點,然后再經過集成學習投票的方法來最終決定該點是否為異常點[1]。這種方法雖然發現異常的速度快而且不需要人為判斷而且召回率高,但是它的準確率不是特別理想。

本文就提出一種提取特征的方法,將標準分異常值、格拉布斯異常值、中位數方差異常值和平均偏離值等特征提取出來。從以前的一維特征轉變為多維特征的維度復雜化操作。這相當于每個時間戳上都含有該時間戳附近時間點的信息。然后再把它們喂給隨機森林模型進行訓練,最后由若干個決策樹來判斷該時間點是否為異常點。這個方法能檢測出大部分跨區換卡、套餐變更和個人開機的中國移動業務接口服務異常值。

綜上,我們提出時間序列集成檢測算法(Bagging Detection on Time-Series, BDTS),從統計學習出發,以學習數據的統計分布為目的,將數據中不符合統計分布的小概率數據視為異常點,并采用集成學習bagging的策略,在算法上集成3sigma、Quantile、 ESMA、IForrest等算法,在時間上提取不同粒度的統計特征,集成多類型、多時間粒度層次的無監督學習算法,并通過自行設計的6個評價指標監控模型性能,并在交叉驗證中自動調整子模型權重,使得模型自動適配周期型,階梯型和無規律型時間序列的異常檢測任務,檢測時序上的離群點、不一致點和突變點。

1? 接口服務異常值檢測算法

1.1? 特征提取的方法

在采集后的數據集中只有兩個特征,一個是時間戳,另一個是數值。特征提取的方法就是將數據按照時間戳進行排序再固定一個有意義的時間窗口,然后根據相應的統計學方法計算該時間戳在整個時間窗口中具有統計意義的另外一個值。一個值就對應著該時間戳上的一個特征,從而達到將簡單的一維數據復雜成多維數組。這種復雜化操作,既能降低單一時間戳上預測異常值的隨機性,讓預測的異常值更可信,還能讓只有一個屬性的數組多出幾個具有上下時間戳信息的屬性出來。本文選取了四個統計學的方法提取特征,分別是標準分異常值、格拉布斯異常值、中位數方差異常值、平均偏離值和波形的判斷。

標準分異常值是指以標準差為單位算每個樣本到集合中均值的距離,相當于樣本到均值的平均偏離水平。算法的大致流程:(1)排除最后一個值。(2)求剩余樣本值的平均值;(3)所有樣本減去這個平均值。(4)求剩余樣本的標準差。(5)(中間三個數的平均值-全序列的均值)/全序列的標準差。

格拉布斯異常值是一種從時間窗口的樣本中找異常點的方法,樣本中偏離平均值過遠的數據有可能是極端情況下的正常數據,也有可能是測量數據時候的異常數值。假設樣本是符合正太分布的,然后選定一個臨界值就可以用Grubbs進行檢測,格拉布斯臨界值表如表1所示。

格拉布斯異常值檢測大致流程:(1)將時間窗內樣本從大到小進行排序。(2)求時間窗內樣本的均值和標準偏差。(3)計算最大值和最小值和均值的差,哪個差值大哪個更加可疑。(4)求可疑值的標準分異常值,如果大于格拉布斯中選取的臨界值,它就是異常值。(5)不斷更新格拉布斯臨界值中的檢出水平∝和樣本數量n,排除異常值并重復1~5步驟。

中位數方差異常值和標準分異常值是十分相似的,前者是以均值為評判數據的進奏或者分散程度,后者則是用集合中的中位數為標準。如果集合的元素是偶數,則取中間兩個數的平均值。這個特征就是先算滑動窗口中的中位數,然后每個元素減去這個中位數的值作為新的特征[2]。

平均偏離值的特征值類似3-sigma準則。簡單的算法流程:(1)去除滑動窗口中的最后一個值,求剩余值的均值。

(2)滑動窗口中的每一個值減去這個均值,再求標準差。(3)然后再求滑動窗口中間值和第二步中減去均值后的那個值的絕對值,將得到的值作為新的特征。

波形的判斷是用來判斷滑動窗口中的數據的規律類型,總共分為4中類別:周期型、階梯型、平緩型和無規律型,然后用0、1、2、3位滑動窗口內的數據類型進行分類。

1.2? 隨機森林的生成

通過之前的維度復雜化的操作,一個時間戳下從以前的只有一個值變換成了有六個屬性的復雜特征矩陣。這時本文選擇用隨機森林的方法來進行類別的判斷,判斷該時間戳上是否為異常點,1為異常,0為正常。隨機森林是由若干個決策樹組合而成的,其是一個二叉樹,是一個預測模型,它是根據屬性遞歸進行判斷是否是異常點,直到屬性用完或者得到下一分支的結果就會停止遞歸,決策樹的結構如圖1所示。

在這個決策樹中,每個內部節點代表一個樣本中的其中一個屬性,每個分支代表一個測試輸出,每個葉節點代表一種類別。然后通過無放回的方法,把所有可能的情況全部枚舉出來組成一個由若干個決策樹組成的隨機森林。每顆決策樹都要輸出這個樣本是否是異常點,每顆決策樹都是獨立的,由若干個弱分類器來組成這個強分類的森林[4]。

2? 模型算法實驗

2.1? 數據預處理

通過集中化BOMC系統采集數據,原數據集分為四列:接口服務ID、時間戳、value值和標簽。接口服務ID是區別每個服務器不同的唯一ID。時間戳是指在該接口服務上的時間戳。value值是類似系統健康度一樣一個綜合的評分,每過5秒鐘產生一次。標簽只有0和1,0代表正常,1代表異常。然后把數據集按照8:1:1的比例分為訓練集、驗證機和測試集。并且對value值作歸一化的處理,減少數據的擾動。

接著就需要根據這個value值進行特征維度的擴充,選擇20個數據作為滑動的時間窗口,每一行的數據擴充特征維度的時候都是以該行數據為中心上下依次選取10行數據。然后算標準分布值、格拉布斯值、平均偏離值、中位數方差值和波形的判斷,作為每一行數據新增的屬性,標簽不變。

2.2? 模型的訓練

本文選用機器學習中的隨機森林模型進行訓練。以標準分布值、格拉布斯值、平均偏離值、中位數方差值、波形的判斷和value值作為模型的輸入特征屬性。Batch Size的大小是數據總量-滑動窗口大小/2。在參數的設定方面,本文選擇120個決策樹和10的深度。一般來說森林的規模越大,集成的方差越小,模型泛化能力越強,但是算力開銷也會越大;同時,決策樹深度越深,模型擬合偏差越小,但是也容易模型過擬合和算力開銷大。RF樹的數量與F1得分的關系如圖3所示,RF樹的深度與F1得分的關系如圖4所示。

訓練采用不放回的訓練策略,并且支持決策樹之間交叉驗證。在job的選擇中選擇了1,減少每次迭代訓練之間的影響,并行提高性能。

數據預處理主要分兩部分,有時候因為采集Agent的重啟或者流程重復等因素,采集的數據存在時間戳重復和缺失的情況。一般處理重復時間戳可以考慮直接去除,或者是合并的方式。具體采用哪種跟指標類型有關。一般填補缺失時間戳指標值的方式可以使用統計值,比如均值和中位數來填充,具體統計的時間粒度根據需求而定。

2.3? 特征工程

特征工程的內容包括:提取不同類型和不同時間粒度的統計特征。類型包括均值、標準差、分位數等,時間粒度上,一般默認7種,不分組的、日、周、月、工作日/周末、月初/月中/月末、節假日/非節假日。此外還可以根據業務指定一些特定的周期。采集的統計值可視化結果為:

(1)時間粒度:不分組,從全部的數據中提取全局均值、標準差、分位數等。

(2)時間粒度:日,將每天中的8:00分為一組,并提取前后各5分鐘的數據填充,則按分鐘采樣的數據集可以分為24×60=1 440組,從每一組中提取局部均值、標準差、分位數等。

(3)時間粒度:周,將每周三的8:00分為一組,并提取前后各5分鐘的數據填充,則按分鐘采樣的數據集可以分為7×24×60=10 080組,從每一組中提取局部均值、標準差、分位數等。

(4)其他的時間粒度的數據分組和提取統計特征的方式依次類推。

2.4? 模型測試集結果分析

測試模型在測試集的表現結果是由F1得分決定的。F1得分是統計學中衡量分類任務模型的一種方法,它由準確率和召回率組成。它的本質是一種模型準確率和召回率的加權平均,最大值為1,最小值為0,值越大越好,計算公式為[5]:

模型在測試集的最終F1得分為0.86。

測試集上對模型的性能進行評估之后,在全部的數據上對BDTS模型進行重新訓練。并將模型部署為在線服務。持續從數據平臺中接收實時采集的數據流,在實時數據流上進行異常檢測,并展現異常檢測結果。展示內容包括時序圖,檢測到的異常點及其異常概率,以及整體異常比例,當異常比例高于5%以上時進行告警,檢測結果可視化界面如圖5所示。

3? 結? 論

本文提出了一種基于特征提取和隨機森林的接口服務器異常檢測的方法,將本身比較簡單和單一的異常值擴充成多維度的特征屬性,使得模型訓練和測試時更加復雜和準確。這種方法幫助了運維系統的人員更加快捷的發現故障,減少系統故障延時發現的頻率,提升了系統的穩定性。文章提出了一種提取一維統計學中的特征作為屬性,把屬性喂給隨機森林進行訓練的有監督學習的異常檢測方法。作為屬性的特征有標準分異常值、格拉布斯異常值、中位數方差異常值和平均偏離值等。現階段一般采用無監督模型和集成學習的方法來檢測異常值。本文提出的方法就是基于現階段方法做的一個升級版本,能檢測出大部分跨區換卡、套餐變更和個人開機的中國移動業務接口服務異常值。

參考文獻:

[1] BREIMAN L. Bagging predictors [J].Mach Learn,1996,24(2):123-140.

[2] BREIMAN L. Random Forests [J].Machine Language,45(1):5-32.

[3] GILLES L. Understanding Random Forests [D].Liege University of Liège,2015.

[4] BARTLETT P,FREUND Y,LEE W S. Boosting the margin:a new explanation for the effectiveness of voting methods [J].Ann.Statist.,1998,26(5):1651-1686.

[5] KAGGLE. Macro F1-Score Keras [EB/OL].[2022-09-06].https://www.kaggle.com/code/guglielmocamporese/macro-f1-score-keras/notebook.

作者簡介:左金虎(1983—),男,漢族,湖北漢川人,應用業務架構師,碩士研究生,研究方向:應用系統架構演進及AIOps;肖忠良(1986—),男,漢族,山西朔州人,高級工程師,碩士研究生,研究方向:AIOps算法;陳理華(1985—),男,漢族,湖南邵陽人,集團專家,碩士研究生,研究方向:AIOps運營。

收稿日期:2022-10-26

主站蜘蛛池模板: 成年av福利永久免费观看| 午夜免费小视频| 五月天丁香婷婷综合久久| 欧美在线三级| 看国产毛片| WWW丫丫国产成人精品| 国产 日韩 欧美 第二页| 亚洲男人的天堂网| 国产拍在线| 3344在线观看无码| 亚洲综合亚洲国产尤物| 亚亚洲乱码一二三四区| 日韩人妻无码制服丝袜视频| 亚洲欧美日韩精品专区| 国产综合欧美| 超清无码一区二区三区| 国产乱子伦无码精品小说| 国产精品午夜福利麻豆| 免费看美女自慰的网站| 国产99精品久久| 香蕉视频在线观看www| 亚洲男人的天堂在线观看| 亚洲最大在线观看| 91娇喘视频| 狠狠色噜噜狠狠狠狠色综合久| 国产精品永久免费嫩草研究院| 久久久久久尹人网香蕉| 久久精品亚洲热综合一区二区| 国产高潮视频在线观看| 欧美在线综合视频| 一本一道波多野结衣av黑人在线| 狠狠色婷婷丁香综合久久韩国| 亚洲性影院| 国产无码高清视频不卡| 激情亚洲天堂| 2020极品精品国产| 亚洲an第二区国产精品| 欧美人人干| 一级毛片免费播放视频| 尤物成AV人片在线观看| 欧美成人精品高清在线下载| 国产免费高清无需播放器| 热伊人99re久久精品最新地| 欧美一级在线播放| 蜜芽一区二区国产精品| 国产波多野结衣中文在线播放| 综1合AV在线播放| 国产自在自线午夜精品视频| 91色在线视频| 国产精品美女网站| 人妻21p大胆| 日韩精品欧美国产在线| 亚洲欧美日韩综合二区三区| 精品人妻AV区| 亚洲国产第一区二区香蕉| 国产福利在线免费| 久久国产高清视频| 亚洲国产一区在线观看| 久久精品国产精品青草app| 亚洲精品爱草草视频在线| 尤物视频一区| 黄色a一级视频| 思思热在线视频精品| 精品第一国产综合精品Aⅴ| 青青热久免费精品视频6| 伊人婷婷色香五月综合缴缴情| 国产区免费| 亚洲 欧美 日韩综合一区| 国产精品成人观看视频国产 | 国产永久在线观看| 亚洲欧美另类视频| 丰满人妻一区二区三区视频| 亚洲天堂免费观看| 国产高清在线精品一区二区三区| 亚洲精品动漫| 97国产精品视频人人做人人爱| 国产精品男人的天堂| 人人妻人人澡人人爽欧美一区| 亚洲精品不卡午夜精品| 久久鸭综合久久国产| 在线欧美日韩| 一级毛片在线播放免费|