基于統(tǒng)計學(xué)方法的異常檢測

主要內(nèi)容包括:

1、高斯分布

2樟蠕、箱線圖

3贮聂、HBOS

1、概述

在統(tǒng)計學(xué)方法對數(shù)據(jù)的正常性做出假定寨辩。

它們假定正常的數(shù)據(jù)對象由一個統(tǒng)計模型產(chǎn)生吓懈,而不遵守該模型的數(shù)據(jù)是異常點(outlier)

統(tǒng)計學(xué)方法的有效性(efficient)高度依賴于對給定數(shù)據(jù)所做的統(tǒng)計模型假定是否成立靡狞。

異常檢測的統(tǒng)計學(xué)方法的一般思想是:學(xué)習(xí)一個擬合給定數(shù)據(jù)集的生成模型耻警,然后識別該模型低概率區(qū)域中的對象,把它們作為異常點甸怕。

異常檢測的統(tǒng)計學(xué)方法可以劃分為兩個主要類型:參數(shù)方法非參數(shù)方法甘穿。

參數(shù)方法假定正常的數(shù)據(jù)對象被一個以\Theta為參數(shù)的參數(shù)分布產(chǎn)生。

某對象是由給定分布產(chǎn)生的概率值源于該參數(shù)分布的概率密度函數(shù)f(x,\Theta)

該值越小梢杭,x越可能是異常點温兼。

非參數(shù)方法并不假定先驗統(tǒng)計模型,而是試圖從輸入數(shù)據(jù)確定模型武契,參數(shù)靈活而非無參

2募判、參數(shù)方法

2.1 基于正態(tài)分布的一元異常點檢測

一元數(shù)據(jù):僅涉及一個屬性或變量的數(shù)據(jù)

我們假定數(shù)據(jù)由正態(tài)分布產(chǎn)生,然后可以由輸入數(shù)據(jù)學(xué)習(xí)正態(tài)分布的參數(shù)咒唆,并把低概率的點識別為異常點届垫。

假定輸入數(shù)據(jù)集為{x^{(1)}, x^{(2)}, ..., x^{(m)}},且x^{(i)}\sim N(\mu, \sigma^2)$全释,由樣本確定參數(shù)\mu\sigma装处。

\mu=\frac 1m\sum_{i=1}^m x^{(i)}

\sigma^2=\frac 1m\sum_{i=1}^m (x^{(i)}-\mu)^2

求出參數(shù)之后,我們就可以根據(jù)概率密度函數(shù)計算數(shù)據(jù)點服從該分布的概率恨溜。正態(tài)分布的概率密度函數(shù)為

p(x)=\frac 1{\sqrt{2\pi}\sigma}exp(-\frac{(x-\mu)^2}{2\sigma^2})

如果計算出來的概率低于閾值符衔,就可以認(rèn)為該數(shù)據(jù)點為異常點。

閾值:經(jīng)驗值糟袁,可以選擇在驗證集上使得評估指標(biāo)值最大(也就是效果最好)的閾值取值作為最終閾值。

例如常用的3sigma原則中躺盛,如果數(shù)據(jù)點超過范圍(\mu-3\sigma, \mu+3\sigma)项戴,那么這些點很有可能是異常點。

這個方法還可以用于可視化槽惫。我們可以使用箱線圖對數(shù)據(jù)分布做了一個簡單的統(tǒng)計可視化周叮,異常點常被定義為小于Q1-1.5IQR或大于Q3+1.5IQR的那些數(shù)據(jù)辩撑。

用Python畫一個簡單的箱線圖:


2.2 多元異常點檢測

涉及兩個或多個屬性或變量的數(shù)據(jù)稱為多元數(shù)據(jù)。許多一元異常點檢測方法都可以擴(kuò)充仿耽,用來處理多元數(shù)據(jù)合冀。其核心思想是把多元異常點檢測任務(wù)轉(zhuǎn)換成一元異常點檢測問題。例如基于正態(tài)分布的一元異常點檢測擴(kuò)充到多元情形時项贺,可以求出每一維度的均值和標(biāo)準(zhǔn)差君躺。對于第$j$維:

$\mu_j=\frac 1m\sum_{i=1}^m x_j^{(i)}$

$\sigma_j^2=\frac 1m\sum_{i=1}^m (x_j^{(i)}-\mu_j)^2$

計算概率時的概率密度函數(shù)為

$p(x)=\prod_{j=1}^n p(x_j;\mu_j,\sigma_j^2)=\prod_{j=1}^n\frac 1{\sqrt{2\pi}\sigma_j}exp(-\frac{(x_j-\mu_j)^2}{2\sigma_j^2})$

這是在各個維度的特征之間相互獨立的情況下。如果特征之間有相關(guān)性开缎,就要用到多元高斯分布了棕叫。

1.3 多個特征相關(guān),且符合多元高斯分布

$\mu=\frac{1}{m}\sum^m_{i=1}x^{(i)}$

$\sum=\frac{1}{m}\sum^m_{i=1}(x^{(i)}-\mu)(x^{(i)}-\mu)^T$

$p(x)=\frac{1}{(2 \pi)^{\frac{n}{2}}|\Sigma|^{\frac{1}{2}}} \exp \left(-\frac{1}{2}(x-\mu)^{T} \Sigma^{-1}(x-\mu)\right)$

ps:當(dāng)多元高斯分布模型的協(xié)方差矩陣$\sum$為對角矩陣奕删,且對角線上的元素為各自一元高斯分布模型的方差時俺泣,二者是等價的。

3.使用混合參數(shù)分布

在許多情況下假定數(shù)據(jù)是由正態(tài)分布產(chǎn)生的完残。當(dāng)實際數(shù)據(jù)很復(fù)雜時伏钠,這種假定過于簡單,可以假定數(shù)據(jù)是被混合參數(shù)分布產(chǎn)生的谨设。

3贝润、非參數(shù)方法

在異常檢測的非參數(shù)方法中,“正常數(shù)據(jù)”的模型從輸入數(shù)據(jù)學(xué)習(xí)铝宵,而不是假定一個先驗打掘。通常,非參數(shù)方法對數(shù)據(jù)做較少假定鹏秋,因而在更多情況下都可以使用尊蚁。

例子:使用直方圖檢測異常點。

直方圖是一種頻繁使用的非參數(shù)統(tǒng)計模型侣夷,可以用來檢測異常點横朋。該過程包括如下兩步:

步驟1:構(gòu)造直方圖。使用輸入數(shù)據(jù)(訓(xùn)練數(shù)據(jù))構(gòu)造一個直方圖百拓。該直方圖可以是一元的琴锭,或者多元的(如果輸入數(shù)據(jù)是多維的)。

盡管非參數(shù)方法并不假定任何先驗統(tǒng)計模型衙传,但是通常確實要求用戶提供參數(shù)决帖,以便由數(shù)據(jù)學(xué)習(xí)。例如蓖捶,用戶必須指定直方圖的類型(等寬的或等深的)和其他參數(shù)(直方圖中的箱數(shù)或每個箱的大小等)地回。與參數(shù)方法不同,這些參數(shù)并不指定數(shù)據(jù)分布的類型。

步驟2:檢測異常點刻像。為了確定一個對象是否是異常點畅买,可以對照直方圖檢查它。在最簡單的方法中细睡,如果該對象落入直方圖的一個箱中谷羞,則該對象被看作正常的,否則被認(rèn)為是異常點溜徙。

對于更復(fù)雜的方法湃缎,可以使用直方圖賦予每個對象一個異常點得分。例如令對象的異常點得分為該對象落入的箱的容積的倒數(shù)萌京。

使用直方圖作為異常點檢測的非參數(shù)模型的一個缺點是雁歌,很難選擇一個合適的箱尺寸。一方面知残,如果箱尺寸太小靠瞎,則許多正常對象都會落入空的或稀疏的箱中,因而被誤識別為異常點求妹。另一方面乏盐,如果箱尺寸太大,則異常點對象可能滲入某些頻繁的箱中制恍,因而“假扮”成正常的父能。

4、基于角度的方法

基于角度的方法的主要思想是:數(shù)據(jù)邊界上的數(shù)據(jù)很可能將整個數(shù)據(jù)包圍在一個較小的角度內(nèi)净神,而內(nèi)部的數(shù)據(jù)點則可能以不同的角度圍繞著他們何吝。如下圖所示,其中點A是一個異常點鹃唯,點B位于數(shù)據(jù)內(nèi)部爱榕。

如果數(shù)據(jù)點與其余點離得較遠(yuǎn),則潛在角度可能越小坡慌。因此黔酥,具有較小角度譜的數(shù)據(jù)點是異常值,而具有較大角度譜的數(shù)據(jù)點不是異常值洪橘。

考慮三個點X,Y,Z跪者。如果對于任意不同的點Y,Z,有:

$$ W \operatorname{Cos}(\overrightarrow{X Y}, \overrightarrow{X Z})=\frac{\langle\overline{X Y}, X Z\rangle}{|X Y||X Z|} $$ 其中$||\space||$代表L2范數(shù) , $< · > $代表點積熄求。

這是一個加權(quán)余弦渣玲,因為分母包含L2-范數(shù),其通過距離的逆加權(quán)進(jìn)一步減小了異常點的加權(quán)角抡四,這也對角譜產(chǎn)生了影響柜蜈。然后仗谆,通過改變數(shù)據(jù)點Y和Z指巡,保持X的值不變計算所有角度的方法淑履。相應(yīng)地,數(shù)據(jù)點X的基于角度的異常分?jǐn)?shù)(ABOF)∈ D為:

$$ A B O F(X)=\operatorname{Var}_{{Y, Z \in D}} W \operatorname{Cos}(\overrightarrow{X Y}, \overrightarrow{X Z}) $$

5藻雪、HBOS

HBOS全名為:Histogram-based Outlier Score秘噪。它是一種單變量方法的組合,不能對特征之間的依賴關(guān)系進(jìn)行建模勉耀,但是計算速度較快指煎,對大數(shù)據(jù)集友好。其基本假設(shè)是數(shù)據(jù)集的每個維度相互獨立便斥。然后對每個維度進(jìn)行區(qū)間(bin)劃分至壤,區(qū)間的密度越高,異常評分越低枢纠。

HBOS算法流程:

1.為每個數(shù)據(jù)維度做出數(shù)據(jù)直方圖像街。對分類數(shù)據(jù)統(tǒng)計每個值的頻數(shù)并計算相對頻率。對數(shù)值數(shù)據(jù)根據(jù)分布的不同采用以下兩種方法:

靜態(tài)寬度直方圖:標(biāo)準(zhǔn)的直方圖構(gòu)建方法晋渺,在值范圍內(nèi)使用k個等寬箱镰绎。樣本落入每個桶的頻率(相對數(shù)量)作為密度(箱子高度)的估計。時間復(fù)雜度:$O(n)$

2.動態(tài)寬度直方圖:首先對所有值進(jìn)行排序木西,然后固定數(shù)量的$\frac{N}{k}$個連續(xù)值裝進(jìn)一個箱里畴栖,其中N是總實例數(shù),k是箱個數(shù)八千;直方圖中的箱面積表示實例數(shù)吗讶。因為箱的寬度是由箱中第一個值和最后一個值決定的,所有箱的面積都一樣恋捆,因此每一個箱的高度都是可計算的照皆。這意味著跨度大的箱的高度低,即密度小鸠信,只有一種情況例外纵寝,超過k個數(shù)相等,此時允許在同一個箱里超過$\frac{N}{k}$值星立。

時間復(fù)雜度:$O(n\times log(n))$

2.對每個維度都計算了一個獨立的直方圖爽茴,其中每個箱子的高度表示密度的估計。然后為了使得最大高度為1(確保了每個特征與異常值得分的權(quán)重相等)绰垂,對直方圖進(jìn)行歸一化處理室奏。最后,每一個實例的HBOS值由以下公式計算:

$$ H B O S(p)=\sum_{i=0}^aplww21 \log \left(\frac{1}{\text {hist}_{i}(p)}\right) $$

推導(dǎo)過程

假設(shè)樣本p第?i?個特征的概率密度為$p_i(p)$ 劲装,則p的概率密度可以計算為: $$ P(p)=P_{1}(p) P_{2}(p) \cdots P_phdhdbc(p) $$ 兩邊取對數(shù): $$ \begin{aligned} \log (P(p)) &=\log \left(P_{1}(p) P_{2}(p) \cdots P_brmxil3(p)\right) =\sum_{i=1}^yzkvcpu \log \left(P_{i}(p)\right) \end{aligned} $$ 概率密度越大胧沫,異常評分越小昌简,為了方便評分,兩邊乘以“-1”: $$ -\log (P(p))=-1 \sum_{i=1}^2ueppdu \log \left(P_{t}(p)\right)=\sum_{i=1}^coodobd \frac{1}{\log \left(P_{i}(p)\right)} $$ 最后可得: $$ H B O S(p)=-\log (P(p))=\sum_{i=1}^uzkuua2 \frac{1}{\log \left(P_{i}(p)\right)} $$

5绒怨、總結(jié)

1.異常檢測的統(tǒng)計學(xué)方法由數(shù)據(jù)學(xué)習(xí)模型,以區(qū)別正常的數(shù)據(jù)對象和異常點犬金。使用統(tǒng)計學(xué)方法的一個優(yōu)點是,異常檢測可以是統(tǒng)計上無可非議的该默。當(dāng)然栓袖,僅當(dāng)對數(shù)據(jù)所做的統(tǒng)計假定滿足實際約束時才為真叽赊。

2.HBOS在全局異常檢測問題上表現(xiàn)良好必指,但不能檢測局部異常值恕洲。但是HBOS比標(biāo)準(zhǔn)算法快得多霜第,尤其是在大數(shù)據(jù)集上泌类。

參考資料

[1] Goldstein, M. and Dengel, A., 2012. Histogram-based outlier score (hbos):A fast unsupervised anomaly detection algorithm . InKI-2012: Poster and Demo Track, pp.59-63.

[2]?http://speech.ee.ntu.edu.tw/~tlkagk/courses.html

[3]?http://cs229.stanford.edu/

[4] 《Outlier Analysis》——Charu C. Aggarwal

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末弹砚,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子茅诱,更是在濱河造成了極大的恐慌瑟俭,老刑警劉巖尔当,帶你破解...
    沈念sama閱讀 218,036評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異畜号,居然都是意外死亡简软,警方通過查閱死者的電腦和手機(jī)述暂,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來察郁,“玉大人皮钠,你說我怎么就攤上這事赠法÷蠛洌” “怎么了?”我有些...
    開封第一講書人閱讀 164,411評論 0 354
  • 文/不壞的土叔 我叫張陵砖织,是天一觀的道長款侵。 經(jīng)常有香客問我,道長镶苞,這世上最難降的妖魔是什么喳坠? 我笑而不...
    開封第一講書人閱讀 58,622評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮茂蚓,結(jié)果婚禮上壕鹉,老公的妹妹穿的比我還像新娘剃幌。我一直安慰自己,他們只是感情好晾浴,可當(dāng)我...
    茶點故事閱讀 67,661評論 6 392
  • 文/花漫 我一把揭開白布负乡。 她就那樣靜靜地躺著,像睡著了一般脊凰。 火紅的嫁衣襯著肌膚如雪抖棘。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,521評論 1 304
  • 那天狸涌,我揣著相機(jī)與錄音切省,去河邊找鬼。 笑死帕胆,一個胖子當(dāng)著我的面吹牛朝捆,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播懒豹,決...
    沈念sama閱讀 40,288評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼芙盘,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了脸秽?” 一聲冷哼從身側(cè)響起儒老,我...
    開封第一講書人閱讀 39,200評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎记餐,沒想到半個月后驮樊,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,644評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡剥扣,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,837評論 3 336
  • 正文 我和宋清朗相戀三年巩剖,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片钠怯。...
    茶點故事閱讀 39,953評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡佳魔,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出晦炊,到底是詐尸還是另有隱情鞠鲜,我是刑警寧澤,帶...
    沈念sama閱讀 35,673評論 5 346
  • 正文 年R本政府宣布断国,位于F島的核電站贤姆,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏稳衬。R本人自食惡果不足惜霞捡,卻給世界環(huán)境...
    茶點故事閱讀 41,281評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望薄疚。 院中可真熱鬧碧信,春花似錦赊琳、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至呈枉,卻和暖如春趁尼,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背猖辫。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評論 1 269
  • 我被黑心中介騙來泰國打工酥泞, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人住册。 一個月前我還...
    沈念sama閱讀 48,119評論 3 370
  • 正文 我出身青樓婶博,卻偏偏與公主長得像,于是被迫代替她去往敵國和親荧飞。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,901評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 1名党、概述 “異程纠”通常是一個主觀的判斷,什么樣的數(shù)據(jù)被認(rèn)為是“異炒茫”的耳幢,需要結(jié)合業(yè)務(wù)背景和環(huán)境來具體分析確定。 ?...
    noob鴿閱讀 592評論 0 0
  • 基于統(tǒng)計學(xué)的異常檢測 主要內(nèi)容包括: - 高斯分布 可以通過 3** 來檢測欧啤,樣本為正態(tài)分布或者近似正態(tài)分布的數(shù)據(jù)...
    noob鴿閱讀 607評論 0 0
  • 異常檢測——基于統(tǒng)計學(xué)的方法 主要內(nèi)容包括: 高斯分布 箱線圖 1睛藻、概述 統(tǒng)計學(xué)方法對數(shù)據(jù)的正常性做出假定。它們假...
    Q_cy閱讀 1,868評論 0 0
  • 項目背景分析 斯特魯普效應(yīng)簡要的說法是當(dāng)有與原有認(rèn)知不同的情況出現(xiàn)時邢隧,人們的反應(yīng)時間會較長店印。 為了驗證這種效應(yīng)的存...
    DylanXing閱讀 3,928評論 2 3
  • 基于統(tǒng)計學(xué)的方法 1、概述 統(tǒng)計學(xué)方法對數(shù)據(jù)的正常性做出假定倒慧。它們假定正常的數(shù)據(jù)對象由一個統(tǒng)計模型產(chǎn)生按摘,而不遵守該...
    58506fd3fbed閱讀 696評論 0 0