异常检测3——常见方法分类

基于统计学

极值分析

往往只对单独纬度进行研究,使用上有很大的局限性【1】

对数据分布进行假设

对异常数据和正常数据进行不同的分布假设,并用EM算法拟合数据。局限性在于假设往往和实际有较大出入,效果一般

基于线性分析

在低纬度上分析数据间的相关性。比如PCA,Factor Analysis等。但是压缩或找到低维嵌入后,数据的可解释性下降。

基于时空

空间关系造成的异常

在这里插入图片描述
O点单独看来的情况下是正常点,但是考虑到临近点后是异常点

时间序列上的异常

在这里插入图片描述
在这里插入图片描述

基于相似性分析

建立在距离度量上的异常检测

如K近邻为原型的

建立在密度分析上的异常检测

如Local outlier factor(LOF)

基于聚类的异常检测

先把人分群,然后把明显跟大伙儿不同的小群体去掉,那这部分小群体就是异常点。利用聚类检测异常点的方法是丢弃远离其他簇的小簇[3]

基于偏差

这种方法的思想是考虑到异常值跟整个数据集通常的特性(general characteristics)不一致,认为异常值是离中心最远的点,当移除这些点时,整个数据集某个特征的方差就会减小。比如一种模型的方法是定义一个smooth factor,它表示的就是当某条数据从整体里移除时,方差(variance)降低多少,一般来说,异常值降低的值会大于正常值。[2]

高维方法

在高维下做异常检测会出现以下问题:

  1. 随着维度的增加,各个点距离的区分度是很小的;
  2. 数据很稀疏,几乎所有的点都是离群点;
  3. 邻近的概念变得没有意义。
    针对以上的问题,解决方案如下:
  4. 采样更鲁棒的距离函数,并且在full-dimensional找异常点;
  5. 在原始子空间的特征空间里找异常点。
    基于角度的方法往往在高维空间里会很有效。通常来说如果点o是异常点的话,那么它与其它点的角度都差不多,如果不是异常点,它与其它点的角度就多种多样。[2]

其他

集成异常检测

isolation forest
feature bagging

监督异常检测,半监督异常检测,主动学习

图中的异常检测、网络中的异常检测

参考资料:
[1]机器学习门下,有哪些在工业界应用较多,前景较好的小方向? - 微调的回答 - 知乎
[2]数据挖掘中常见的「异常检测」算法有哪些? - 尼古丁布的回答 - 知乎
[3]数据挖掘中常见的「异常检测」算法有哪些? - 恒仔的回答 - 知乎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值