前面我們熟悉了經典統計處理outlier的方法。 這裡會說明常見的機器學習的方法。

在展示演算法之前, 有幾類特殊的數據類型可能需要強調一下, 因為這些數據特性會影響到具體演算法的選擇的:

1. 基於距離的數據 (Distance based)

2. 相關性維度的數據 (Correlated dimensions)

3. 類別數據 (Categorical data)

4. 高維度數據 (High dimensional)

機器學習方法

機器學習根據是否有監督一般可以分為三類: supervised, unsupervised, semi-supervised。

為什麼要探討這三種模式,其實主要看你是否有經驗數據的積累。

1) 一般來說, 如果你之前人工收集了大量的outlier數據的積累, 你想把這些信息有效的用起來, 那麼監督學習是最好的。

2) 但是如果你沒有outlier的積累, 或者這種手工積累太麻煩, 你就希望自動找出一些outlier來。

3) 如果你通過無監督找到一部分oulier,然後互動式的標記一些, 然後希望找到更為精確, 那麼半監督就是一個很好的方式。

有監督 (Supervised)

1. Gaussian Mixture Model (GMM, 高斯混合模型) :

2. Bayesian Networks (貝葉斯網路)

3. Support Vector Machine (SVM, 支持向量機):

4. Multi-Layer Perceptron (MLP, 多層神經網路):

5. K Nearest Neighbor (KNN, K 近鄰)

Rule-based Systems (基於規則的系統):

無監督 (Unsupervised)

6. DBScan(Density based, 基於密度的聚類)

7. Spectral Clustering (譜聚類)

8. Principal component analysis (PCA, 主成分分析, Dimension Reduction, 維度壓縮) 高維數據

半監督 (Semi-supervised)

Collective anomaly anlaysis (聚集的奇點分析)

優缺點說明

有監督

優點:

  1. 能進一步區分outlier的更細的類別。
  2. 對於新增數據不需要重新計算

缺點:

  1. 要求有大量的標記數據集
  2. 不能捕捉未知outlier
  3. 部分分類演算法不能給定是outlier的可能性

無監督

優點:

  1. 不需要已標記數據
  2. 能夠給定outlier額外的距離,或者概率信息

缺點:

  1. 對樣本的採集有很高要求, 要求樣本分佈和真是分佈一直。
  2. 對於分佈複雜的數據有一定侷限性。
  3. 對聚類演算法本身過於敏感。
  4. 新數據來的計算量會比較大。

半監督

優點:

  1. 能夠兼顧有監督和無監督的優點

缺點:

  1. 沒有固定的演算法
  2. 需要領域背景知識

機器學習 VS 經典統計

經典統計:

優點:

  1. 統計正確,容易解釋
  2. 可以看成無監督過程

缺點:

  1. 對樣本和假設檢驗的設定要求高
  2. 對於複雜結構的數據難以處理

機器學習:

優點:

  1. 可用的方法選擇多, 大量現有工具
  2. 適用的數據範圍廣

缺點:

1. 存在可解釋性的問題

推薦閱讀:

相关文章