异常检测之基于相似度方法

感谢datawhale大部队!

一、概述

基于相似度判断异常也是异常检测中常用方法,其主要思想是异常点和正常点之间存在不同。

又可主要细分为:

  1. - 基于距离度量相似度来判断

    基于距离的异常检测有这样一个前提假设,即异常点的近邻距离要远大于正常点。
    a.基于索引的算法
    b.嵌套循环算法
    c.基于单元的方法

  2. - 基于密度度量相似度来判断

基于密度的算法主要有局部离群因子(LocalOutlierFactor,LOF),以及LOCI、CLOF等基于LOF的改进算法。

LOF(Local Outlier Factor):
又称局部异常因子算法,PYOD中的LOF是对 sk-learn中LOF 类的封装。
该算法主要思想是:通过计算一个数值 score 来反映一个样本的异常程度。
具体实现方式:求 一个样本点周围的样本点所处位置的平均密度该样本点所在位置的密度 的比值。这个比值比 1 越大,表示该点所在位置的密度比其周围样本所在位置的密度越小,这个点就越有可能是异常点。

二、实现(基于PYOD库LOF算法进行异常检测)

代码部分:

from pyod.<
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于密度的时序数据异常检测方法是一种常用的异常检测方法,其优缺点如下: 优点: 1. 适用性广:基于密度的方法适用于各种类型的数据,包括连续和离散的数据,可以用于时间序列、图像、文本等各种数据类型。 2. 精度高:基于密度的方法能够准确地检测出数据中的异常点,能够发现各种类型的异常。 3. 无需标签数据:基于密度的方法通常不需要标签数据,即可以进行无监督学习,从而节省了人力成本。 4. 可解释性强:基于密度的方法可以通过计算数据点的密度来判断其是否为异常点,因此可以直观地解释检测结果。 缺点: 1. 计算复杂度高:基于密度的方法需要计算每个数据点与其他数据点之间的距离或相似度,因此对于大规模数据集,计算复杂度较高。 2. 敏感性差:基于密度的方法对于噪声点和局部异常点比较敏感,对于全局异常点的检测效果较差。 3. 数据分布要求高:基于密度的方法对数据的分布有一定的要求,如果数据分布较为稀疏或不均匀,可能会出现误判。 4. 参数选择困难:基于密度的方法需要选择合适的密度估计方法和参数,这对于非专业人员来说可能比较困难。 综上所述,基于密度的时序数据异常检测方法在实际应用中需要根据具体情况进行选择和调整,以充分发挥其优势,提高检测精度和鲁棒性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值