異常點檢測演算法(一)概率統計
異常點檢測(又稱為離群點檢測)是找出其行為很不同於預期物件的一個檢測過程。這些物件被稱為異常點或者離群點。異常點檢測在很多實際的生產生活中都有著具體的應用,比如信用卡欺詐,工業損毀檢測,影象檢測等。
異常點(outlier)是一個數據物件,它明顯不同於其他的資料物件,就好像它是被不同的機制產生的一樣。例如下圖紅色的點,就明顯區別於藍色的點。相對於藍色的點而言,紅色的點就是異常點。
一般來說,進行異常點檢測的方法有很多,最常見的就是基於統計學的方法。
(一)基於正態分佈的一元離群點檢測方法
假設有 n 個點 ,那麼可以計算出這 n 個點的均值 和方差。均值和方差分別被定義為:
在正態分佈的假設下,區域
(二)多元離群點的檢測方法
涉及兩個或者兩個以上變數的資料稱為多元資料,很多一元離群點的檢測方法都可以擴充套件到高維空間中,從而處理多元資料。
(1)基於一元正態分佈的離群點檢測方法
假設 n 維的資料集合形如 ,那麼可以計算每個維度的均值和方差 具體來說,對於,可以計算
在正態分佈的假設下,如果有一個新的資料 ,可以計算概率 如下:
根據概率值的大小就可以判斷 x 是否屬於異常值。運用該方法檢測到的異常點如圖,紅色標記為異常點,藍色表示原始的資料點。
(2)多元高斯分佈的異常點檢測
假設 n 維的資料集合 ,可以計算 n 維的均值向量
和 的協方差矩陣:
如果有一個新的資料 ,可以計算
根據概率值的大小就可以判斷 是否屬於異常值。
(3)使用 Mahalanobis 距離檢測多元離群點
對於一個多維的資料集合 D,假設 是均值向量,那麼對於資料集 D 中的其他物件,從 到 的 Mahalanobis 距離是
其中 是協方差矩陣。
在這裡, 是數值,可以對這個數值進行排序,如果數值過大,那麼就可以認為點 是離群點。或者對一元實數集合 進行離群點檢測,如果 被檢測為異常點,那麼就認為 在多維的資料集合 D 中就是離群點。
運用 Mahalanobis 距離方法檢測到的異常點如圖,紅色標記為異常點,藍色表示原始的資料點。
(4)使用 統計量檢測多元離群點
在正態分佈的假設下, 統計量可以用來檢測多元離群點。對於某個物件, 統計量是
其中, 是 在第 i 維上的取值, 是所有物件在第 i 維的均值,n 是維度。如果物件 的 統計量很大,那麼該物件就可以認為是離群點。
運用 統計量檢測到的異常點如圖,紅色標記為異常點,藍色表示原始的資料點。
原文地址:https://zr9558.com/2016/06/13/outlierdetectionone/