sklearn中的异常检测方法

本文是对sklearn 2.7. Novelty and Outlier Detection的一个简单总结。

简介

假设我们有一个数据集,这个数据集中只有两类:正常(又称inliner)和异常(又称outliner)。

怎么就叫正常:

  • 占数据集的大多数
  • 在各个维度上比较聚集

怎么就叫异常:

  • 占少数
  • 通常是比较分散

很多场景下我们需要识别正常和异常,即异常检测,特别常见于数据清洗

异常检测的分类

novelty detection: 训练集中没有异常样本

outlier detection: 训练集中有异常样本

乍一看,novelty detection相对更容易一些,其实不然

让我们再详细看一下novelty detection和outlier detection的区别。

  1. 它们的关注对象不同。novelty detection认为,所有跟训练集样本类别不同的点都是异常,不论它跟正常样本有多像,也不论它的分布有多聚集;而outlier detection要求更宽松,只有那些分布稀疏且离正常样本较远的点才是异常的。
  2. 它们属于不同的机器学习范畴。noverlty detection是半监督学习,因为训练集都是正常样本,所以我们就已经知道了正常样本的数据分布;outlier detection是无监督学习,因为训练集和测试集(真实环境)的分布是一样的,我们无法得知正常样本的分布,只能对数据分布的假设来区分正常和异常。差多少才算异常?这把尺子是握在我们自己手里的。

Sklearn异常检测模型一览

  • 22
    点赞
  • 128
    收藏
    觉得还不错? 一键收藏
  • 17
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值