异常值检验
什么是异常值
异常点(outlier)是一个数据对象,它明显不同于其他的数据对象,分为记录异常和非记录异常。
异常值检验的应用
信用卡欺诈检测、电信欺诈检测、网络入侵检测、故障检测。
怎样确定异常值
- 数据中有多少离群值(怎么界定)
- 方法往往是无人监督的,验证可能相当具有挑战性(就像聚类)
异常检测的方法
- 基于规则的方法
- 基于模型的方法
可视化判断
箱形图(1-D)和散点图(2-D)检验方法:
基于统计和规则
假设描述数据分布的参数模型
应用取决于的统计测试
- 数据分布
- 分布参数(如:平均值,方差)
- 预期异常值的数量
特征变换
意义:对于非高斯分布的数据,虽然也可以使用上面的算法,但效果不是很好,所以我们尽量将非高斯分布转化成(近似)高斯分布,然后再进行处理。
假设检验
假设数据来自正态分布,检测单变量数据中的异常值
一次检测一个异常值,删除异常值,然后重复
基于距离的模型
最近邻法:计算每对数据点之间的距离
k近邻法:计算k邻近数据点之间的距离,不适宜低密度数据集情况
基于线性的模型
- PCA的重构差异
基于非线性的模型 - 基于聚类——DBSCAN
孤立点即可视为异常点 - iForest 孤立森林
- RNNs