【Python算法】离群点检测概述
离群点检测概述
1.离群点检测概念
离群点是由系统受外部干扰而产生的。但是,形成离群点的系统外部干扰非常多。可能是采样中的误差,计算错误等,都有可能产生极端大值或者极端小值。其次可能是被研究的对象受到非正常的因素影响而引起的,例如在人口死亡序列中,由于某年发生了海啸,使该月死亡人数剧增,形成离群点;在股票价格序列中,由于受某项政策出台或某种谣传等等,都会出现极增,极减现象,变现为序列中的离群点。
就餐饮企业而言,经常会碰到如下问题。
(1) 如何根据客户的消费记录检测是否为异常刷卡消费?
(2) 如何检测是否有异常订单?
这一类异常问题可以通过离群点检测来解决。 离群点检测是数据挖掘中重要的一部分,它的任务是发现与大部分其他对象显著不同的对象。大部分数据挖掘方法都将这种差异信息视为噪声而丢弃,然而在一些应用中,罕见的数据可能蕴含着更大的研究价值。
在数据的散布图中,图1所示离群点远离其他数据点。因为离群点的属性值明显偏离期望的或常见的属性值,所以离群点检测也称偏差检测。
离群点检测已经被广泛应用于电信和信用卡的诈骗检测、贷款审批、电子商务、网络入侵和天气预报等领域。例如,可以利用离群点检测分析运动员的统计数据,以发现异常的运动员。
2.离群点的成因
离群点的主要成因有:数据来源于不同的类、自然变异、数据测量和收集误差。
3.离群点的类型
从数据范围:全局离群点和局部离群点;从整体来看,某些对象没有离群特征,但是从局部来看,却显示了一定的离群性。如图所示,C是全局离群点,D是局部离群点。
从数据类型 :数值型离群点和分类型离群点,这是以数据集的属性类型进行划分的。
从属性的个数:一维离群点和多维离群点,一个对象可能有一个或多个属性。
4.常用离群点检测方法
常用离群点检测方法描述与评估如图所示:
基于统计模型的离群点检测方法需要满足统计学原理,如果分布已知,则检验可能非常有效。基于邻近度的离群点检测方法比统计学方法更一般、更容易使用,因为确定数据集有意义的邻近度量比确定它的统计分布更容易。基于密度的离群点检测与基于邻近度的离群点检测密切相关,因为密度常用邻近度定义:
(1) 一种是定义密度为到K个最邻近的平均距离的倒数,如果该距离小,则密度高;
(2) 另一种是使用DBSCAN聚类算法,一个对象周围的密度等于该对象指定距离d内对象的个数。
- 点赞
- 收藏
- 关注作者
评论(0)