異常檢測的學習筆記并非原創(chuàng),而是搜索各位大佬的帖子整理而得。如有冒犯,請聯(lián)系我。
前幾張所敘述的模型基本是處理低位數(shù)據(jù)的,隨著維度的增加,數(shù)據(jù)空間的??。w積)會以指數(shù)級別增?,使數(shù)據(jù)變得稀疏,這便是維度詛咒的難題。
維度詛咒不?給異常檢測帶來了挑戰(zhàn),對距離的計算,聚類都帶來了難題。在?維場景下,?個常?的?法是?空間?法。
集成是?空間思想中常?的?法之?,可以有效提?數(shù)據(jù)挖掘算法精度。集成?法將多個算法或多個基檢測器的輸出結(jié)合起來。常見的集成算法有Feature Baggingd,Isolation Forests
1. Feature Bagging
Feature Bagging,基本思想與bagging相似,只是對象是feature。集成?法的設(shè)計有以下兩個主要步驟:
1.1 步驟
- 選擇基檢測器:這些基本檢測器可以彼此完全不同,或不同的參數(shù)設(shè)置,或使?不同采樣的?數(shù)據(jù)集。
- 分數(shù)標準化和組合?法:不同檢測器可能會在不同的尺度上產(chǎn)?分數(shù)。
需要將來?各種檢測器的分數(shù)轉(zhuǎn)換成可以有意義的組合的歸?化值。分數(shù)標準化之后,還要選擇?個組合函數(shù)將不同基本檢測器的得分進?組合,最常?的選擇包括平均和最?化組合函數(shù)。
?度優(yōu)先?法?先將所有異常檢測向量排序到排序向量 中,并返回給出得分向量的排序元素與排序向量的原始元素之間的對應(yīng)關(guān)系的索引
。
參考鏈接:算法——廣度優(yōu)先搜索
2. Isolation Forests
孤?森林(Isolation Forest)算法是周志華教授等?于2008年提出的異常檢測算法,不斷對特征空間進行劃分。異常點一般在root的上面,在2008年提出來,南京大學周志華老師提出,利用了集成學習的方法,可以并行,同時生成多棵樹。也可以用于高維數(shù)據(jù)。
如何導入
import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
from sklearn.ensemble import IsolationForest
?須標注樣本,在?業(yè)界應(yīng)??泛。孤?森林屬于?參數(shù)和?監(jiān)督的算法,既不需要定義數(shù)學模型也不需要訓練數(shù)據(jù)有標簽。假設(shè)我們??個隨機超平?來切割數(shù)據(jù)空間,切?次可以?成兩個?空間。
?四個樣本做簡單直觀的理解,d是最早被孤?出來的,所以d最有可能是異常。

孤?森林也是?種基于?空間的?法,孤?森林檢測異常的假設(shè)是:異常點?般都是?常稀有的,在樹中會很快被劃分到葉?節(jié)點,因此可以?葉?節(jié)點到根節(jié)點的路徑?度來判斷?條記錄是否是異常的。
3. 總結(jié)
- feature bagging可以降低?差
- 孤?森林不適?于超?維數(shù)據(jù),因為?勵森林每次都是隨機選取維度,如果維度過?,則會存在過多噪?。