檢測異常值的常用方法,除了超過幾倍標準差,還有哪些

時間 2021-05-09 17:45:19

1樓:學掌門資料分析

異常值(outlier)是指樣本中的個別值,其數值明顯偏離所屬樣本的其餘觀測值,在數理統計裡一般是指一組觀測值中與平均值的偏差超過兩倍標準差的測定值。

常見的異常值的檢驗方法:基於統計的方法、基於距離的方法、基於密度的方法、基於聚類的方法、基於偏差的方法、基於深度的方法等。

篩選異常值的方法有z-scores, modified z-score, box plots, Grubb』s test,Tietjen-Moore測試指數平滑法,Kimber測試指數分布和移動視窗濾波演算法。然而比較詳細的兩個方法是:

Inter Quartile Range

An outlier is a point of data that lies over 1.5 IQRs below the first quartile (Q1) or above third quartile (Q3) in a given data set.

High = (Q3) + 1.5 IQR

Low = (Q1) – 1.5 IQR

Tukey Method

It uses interquartile range to filter very large or very small numbers. It is practically the same method as above except that it uses the concept of 「fences」. The two values of fences are:

Low outliers = Q1 – 1.5(Q3 – Q1) = Q1 – 1.5(IQR)

High outliers = Q3 + 1.5(Q3 – Q1) = Q3 + 1.5(IQR)

在這個區域外的任何值都是異常值

這個原因是至關重要的。如果歸因於異常值錯誤,你可能把它排除,但如果他們意味著一種新趨勢、模式或顯示乙個有價值的深度資料,你應該保留它。

2樓:黃晨

首先明確異常值的型別:全域性異常和區域性異常。乙個二維空間的示例:

其中,C1 和 C2 是兩個不同的簇類。o1 是全域性異常(明顯偏離 C1 和 C2);o2 是區域性異常(明顯偏離 C1 ,但是離 C2 較近)。

常見的方法:

單變數分析方法:

一般而言,大於3倍標準差的方法只適合正態分佈的資料。另外使用1.5倍的四分位間距作為閾值也常用,傳統的箱型圖就是基於此判斷異常值。

然而,實際應用中單變數的資料不常見,更多的是使用多變數分析。

多變數分析方法:

基於最鄰近的方法:主要有 Distance-based 和 Density-based 兩大類。由這兩種基礎的演算法衍生出一系列變種共同組成了這一類異常檢測技術的內容。

Distance-based 演算法由3個關鍵的要素組成:1.TOPk近鄰目標搜尋;2.

樣本之間的相似性度量(通常是高維);3.異常得分的建模。代表的方法s有 k-NN 及其變種;Density-based 演算法的代表演算法是 LOF(有很多的變種演算法),演算法計算每個樣本的異常得分:

樣本點最鄰近的平均密度比上該樣本點的密度。其中,密度也是基於距離定義的。基於最鄰近的方法的有點事原理簡單,容易理解;缺點是計算的時間消耗較大。

注意, LOF 演算法可以處理區域性異常問題。

基於資訊理論的方法:該類方法依賴於熵、條件熵、資訊增益、互資訊等多種資訊測度,建立了合適的異常檢測模型。然而,資訊理論的定義只能應用於離散變數,連續變數或數值變數必須先進行離散化 。

基於PCA的方法:將資料對映到更易區分的主成分空間,計算每一主成分方向上的異常程度,然後加權累加。該方法原理簡單,時間複雜度低。

找到正確的主成分方向可以獲得很好的檢測效能。缺點是PCA演算法容易受異常值的影響發生偏離。

其它方法:孤立森林 iForest 及其改進版本。該演算法被認為是目前無監督異常檢測最優選擇的演算法。

iForest 通過隨機劃分隨機選擇的特徵來隔離例項,其中分割值是在所選特徵的最大值和最小值之間隨機選擇的。顯然,異常值需要的分割槽數比正常例項要少。但是,iForest 在高維空間的時間代價大。

基於直方圖的演算法 HBOS。它是基於單變數直方圖的組合計算離群點得分。此外,還有基於深度學習技術的:

GANomaly ;基於 SVM 的 one-class SVM (這些方法不適合無監督語境)等等。

經驗之談:

無監督下,首選 iForest及其改進演算法,在許多情況下選用 HBOS 也能有好的檢測效能。基於PCA的方法可以在2維或3 上視覺化,從而直觀的選擇主成分方向。當然演算法的組合應用通常會有奇效。

對於訓練樣本不存在異常點的檢測,首選LOF演算法。

對於監督問題 (存在少量異常標籤),基於整合演算法的思想可以考慮:參見:Extreme Boosting Based Outlier Detection。

3樓:

An outlier is an observation that lies an abnormal distance from other values in a random sample from a population.

故,定義乙個population,再定義乙個distance,就找到了乙個outlier。

P.S. 個人覺得RandomForest很好用。

4樓:張戎

《異常點檢測演算法綜述》

異常點檢測(又稱為離群點檢測)是找出其行為很不同於預期物件的乙個檢測過程。這些物件被稱為異常點或者離群點。異常點檢測在很多實際的生產生活中都有著具體的應用,比如信用卡欺詐,工業損毀檢測,影象檢測等。

本文主要介紹一些常見的異常點檢測演算法,包括基於統計的模型,基於距離的模型,線性變換的模型,非線性變換的模型等。

異常點檢測和聚類分析是兩項高度相關的任務。聚類分析發現資料集中的各種模式,而異常點檢測則是試圖捕捉那些顯著偏離多數模式的異常情況。異常點檢測和聚類模型服務於不同的目的。

5樓:胡青雲

one-class SVM主要用在半監督異常檢測,對於題主說的高維的無監督演算法,建議使用基於近鄰的演算法,如k-NN(不是k-NN分類演算法)等。並且k值要盡可能從小於5的值k開始試。

6樓:齊玉成

1、如果異常點很少,使用高斯分布,通過概率判別,概率低於一定閥值則視為異常;

2、如果異常點很多,則可考慮用分類方法判別;

3、聚類;

4、四分位數;

7樓:

剛好撞上,筆者兩年來的工作一直在這個領域,我只列我用過的方法吧:

1. 統計類方法,題主所說的三倍方差,還有CUSUM,以及X^2檢驗,t檢驗,工作原因細節略去;

2. 聚類方法:聚出類以後找異常類,聚類方法根據你自己的場景選,可以是密度聚類發比如DBSCAN等;

3. ONE-class SVM:該方法只能針對某類異常,泛化能力不足;

4. 基於歷史畫像的方法(profile based)方法,該法雖然簡單,卻有奇效

5. 時間序列中的異常檢測方法。

最近開了乙個專欄,準備些一系列介紹異常檢測的方法的文章,剛開始寫第一篇

異常值對統計推斷的影響有多大?

吳銘 我感覺題主更關心的是如何檢驗是否存在異值點。在做描述性統計的時候,可以用lvr2plot命令去看資料的分布,看能不能發現一些偏離中位數特別大的點。如果資料量特別大的話,Stata Journal雜誌上的bacon命令可以幫助快速檢驗出異值點。但是要注意,任何一種方法都是在它設定的識別標準下幫助...

什麼是 內毒素 ,有哪些特點,目前常用的檢測方法有哪些?

1892 年,法國科學家 Pfeiffer 首次提出內毒素的概念。隨後,人們開始了內毒素化學本質的探索,到1965年證實內毒素是位於革蘭氏陰性細菌外表面的一種生物大分子,並將其命名為脂多醣 lipopolysaccharide,LPS 在此基礎上,人們開始研究內毒素的致病機理,尋找其檢測方法。197...

檢測細胞凋亡並計數的方法除了MTT法和流式細胞儀,還有什麼其他的方法?

uuuul 細胞凋亡檢測 形態觀察法台盼藍,DAPI,吉姆薩 DNA電泳梯狀條帶 DNA斷裂的原位末端標記法 彗星電泳法 流式細胞儀亞二倍體,碘化丙啶 PS翻至外葉 雲海 Mtt不能測調忘的!是測線粒體活力,偶爾能提示細胞數目變化。流失比較好,容易發文章,除了掉網還能測壞死,各種marker。掉網檢...