美文网首页
异常值检测算法--3sigma模型和置信空间

异常值检测算法--3sigma模型和置信空间

作者: 王金松 | 来源:发表于2019-05-19 20:44 被阅读0次

背景

flow数据对外连接统计,用于检测异常,一般情况下超过一个阈值(threshold),那我们就可以粗略的认为这是一个异常数据
那阈值怎么定义:
第一:通过经验值,比如设置threshold>1000
第二:假设每次事件都是独立的且没有上下文关联,我们可以采用3sigma模型来检测

算法

数据需要服从正态分布。在3∂原则下,异常值如超过3倍标准差,那么可以将其视为异常值。正负3∂的概率是99.7%,那么距离平均值3∂之外的值出现的概率为P(|x-u| 3∂) = 0.003,属于极个别的小概率事件。如果数据不服从正态分布,也可以用远离平均值的多少倍标准差来描述。
3∂的概率为0.3%
2∂的概率为5%
检测这一段时间的统计数据,假如符合正态分布,计算均值与方差。如果后来的统计值不在这个范围3sigma范围内,就可以认为这个值是异常值。

image

置信度和置信区间

案例

3σ原则又称为拉依达准则,该准则具体来说,就是先假设一组检测数据只含有随机误差,对原始数据进行计算处理得到标准差,然后按一定的概率确定一个区间,认为误差超过这个区间的就属于异常值。
  正态分布状况下,数值分布表:


image.png

code

import pandas as pd
import numpy as np

# 定义3σ法则识别异常值函数
def three_sigma(Ser1):
    '''
    Ser1:表示传入DataFrame的某一列。
    '''
    rule = (Ser1.mean()-3*Ser1.std()>Ser1) | (Ser1.mean()+3*Ser1.std()< Ser1)
    index = np.arange(Ser1.shape[0])[rule]
    outrange = Ser1.iloc[index]
    return outrange
# 导入数据并调用three_sigma
df = pd.read_csv('./data.csv',encoding= 'gbk')
three_sigma(df['counts']).head()

相关文章

  • 异常值检测算法--3sigma模型和置信空间

    背景 flow数据对外连接统计,用于检测异常,一般情况下超过一个阈值(threshold),那我们就可以粗略的认为...

  • 异常值算法分析(适用场景)

    异常值算法分析(适用场景) 箱型图(数字异常值|Numberic Outlier) 数字异常值方法是一维特征空间...

  • Udacity 数据分析进阶课程笔记L38:异常值

    通过3个联系,直观认识异常值outliers 异常值检测/删除算法:训练->删除误差最大的10%数据->再训练使用...

  • Arxiv网络科学论文摘要20篇(2020-07-14)

    用于数字联系跟踪的动态图流算法; 冠状病毒时期更安全的工作空间:抗体检测的新用途; SEIR模型中跟踪和测试的有效...

  • 目标检测

    目标检测的简介和评价指标 目标检测算法的定义为分类和定位图像中存在的目标,将其用矩形框选出,并标出其置信度。评价一...

  • 统计学习方法-第一章

    统计学习三要素 方法 = 模型 + 策略 + 算法 ## 模型 1. 假设空间: 假设空间为 *输入空间* 到 *...

  • 目标检测背景学习

    OBJECT DETECTION目标检测 主流算法 目标检测模型分为两类。一类是two-stage,将物体识别和物...

  • Arxiv网络科学论文摘要13篇(2020-11-18)

    图神经网络的设计空间; 通过向量标签传播算法进行社区检测; 基于辐射模型的城市公路货运多样性; Covid-19在...

  • 特征工程

    数据和特征的质量决定了机器学习的上限,而模型和算法只是不断逼近这个上限而已 数据清洗 数据样本抽样 异常值(空值处...

  • 异常值检测算法--箱线图四分位检测异常值

    算法 首先,给大家讲下什么叫四分位数。顾名思义,就是把一堆数据排序会分成四份,找出其中的那三个点。中间那个叫中位数...

网友评论

      本文标题:异常值检测算法--3sigma模型和置信空间

      本文链接:https://www.haomeiwen.com/subject/hmgqzqtx.html