异常检测-Task01
异常检测特点
异常数据样本少。
通常来讲,正常的数据占据总体数据量的大多数,而异常数据的占比极小。(例如99% 与 1%的占比)
任务分类
1)有监督:训练集的正例和反例均有标签
2)⽆监督:训练集⽆标签
3)半监督:在训练集中只有单⼀类别(正常实例)的实例,没有异常实例参与训练
常见场景
网络异常检测
欺诈检测
时间序列异常检测
⽇志异常检测
传统方法
1)基于统计学
假设数据服从某个分布,比如高斯分布,然后根据样本,运用极大似然估计求出分布的参数,然后把低概率区域的样本认为是异常值
2)PCA主成分分析方法
3)基于相似度的方法
4)基于cluster簇的方法,如DBSCAN聚类算法。
5)knn聚类算法
6)基于密度的LOF
以上方法对超参数的选择非常敏感,但是比较简单
集成方法
1)feature bagging
https://www.researchgate.net/publication/221653185_Feature_bagging_for_outlier_detection
2)孤立森林
机器学习
如文章开篇所说,异常检测数据分布往往是不平衡的,这时候需要类似于F1 score去评估分类模型,accuracy不能很好的作为评价指标。数据增强扩充样本也能提高模型的性能。