文章目录
前言
本文章为天池“数据挖掘实战 - 异常检测”学习赛的Task02-学习日志,旨在了解如何通过统计方法进行异常检测。
学习地址:添加链接描述
一、概论学习思维导图
二、统计方法处理异常简介
>>基本假设:假定正常数据均服从一个统计模型,而偏离模型的点为异常点。
>>检测思路:通过对已知数据集进行机器学习模拟一个模型,识别该模型低概率区
域中的对象,把它们作为异常点。
三、参数方法
>>定义:假定正常的数据对象被一个以给定参数的参数分布产生。该参数分布的概率密度函数中该给出对象在服从该分布下产生的概率。该值越小, 越可能是异常点。
1. 一元函数检测异常点——通常使用正态分布
>>设设数据集{X1, X2, X3····Xn}中的样本服从正太分布,可以根据样本数据估计所需参数均值及方差,公式如下:
>>概率密度函数如下:
>>异常值判断标准:3sigma原则
>>常用可视化图像:小提琴图、箱线图等
2.多元异常点检测
>> 方法一:将多元转化为一元,适用于各特征之间相互独立
>> 方法二:拟合多元分布函数(多元正态分布如下图)
3.混合参数分布
>> 实际应用中,单一的参数分布对数据的拟合较差,需要假定数据是被混合参数分布产生的。
四、非参数方法
>> 定义:不假定先验统计模型,而是试图从输入数据确定模型。非参数方法通常假定参数的个数和性质都是灵活的,不预先确定(所以非参数方法并不是说模型是完全无参的,完全无参的情况下从数据学习模型是不可能的)
1.图形检测——常用直方图
>> 步骤如下:
步骤一:输入训练数据构建直方图(需要确定组数,组距)
步骤二:检测异常点,赋予每个对象一个异常点得分,通过图形判断哪些箱中的数据为异常点
>> 缺点:对分组合理性依赖较大
2.基于角度方法
>> 思路:数据边界上的数据很可能将整个数据包围在一个较小的角度内,而内部的数据点则可能以不同的角度围绕着他们,如果数据点与其余点离得较远,则潜在角度可能越小。因此,具有较小角度谱的数据点是异常值,而具有较大角度谱的数据点不是异常值。
>> 常用指标角度异常分数(ABOP):
五、HBOS
>> 定义:Histogram-based Outlier Score,是一种单变量方法的组合,适用于大量的数据集,其假设每个维度相互独立,并对独立的各维度进行区间划分,区间密度越高,异常值可能性越小。
>> 定义:算法流程
步骤一:为每个数据维度做出数据直方图,对分类数据统计每个值的频数并计算相对频率。
步骤二:.对每个维度都计算了一个独立的直方图,对直方图进行归一化,其中每个箱子的高度表示密度的估计。
步骤三:每一个实例的HBOS值由以下公式计算