您的位置:首页 > 其它

数据挖掘-离群点检测

2016-05-01 21:22 190 查看
离群点检测 
       离群点检测是数据挖掘中重要的一部分,它的任务是发现与大部分其他对象显著不同的对象。大部分数据挖掘方法都将这种差异信息视为噪声而丢弃,然而在一些应用中,罕见的数据可能蕴含着更大的研究价值。
      离群点检测已经被广泛应用于电信和信用卡的诈骗检测、贷款审批、电子商务、网络入侵、天气预报等领域,如可以利用离群点检测分析运动员的统计数据,以发现异常的运动员。
1)  离群点的成因
离群点的主要成因有:数据来源于不同的类、自然变异、数据测量和收集误差。
2)离群点的类型
  对离群点的地址分类如下表所示:
分类标准
分类名称
分类描述
从数据范围
全局离群点和局部离群点
从整体来看,某些对象没有离群特征,但是从局部来看,却显示了一定的离群性
从数据类型
数值型离群点和分类型离群点
这是以数据集的属性类型进行划分的
从属性的个数
一维离群点和多维离群点
一个对象可能有一个或多个属性
离群点检测方法
常用离群点检测方法:基于统计,基于邻近度,基于密度,基于聚类。
基于统计模型的离群点检测方法需要满足统计学原理,如果分布已知,则检验可能非常有效。甚至邻近度的离群点检测方法比统计学方法更一般、更容易使用,因为确定数据集有意义的邻近度比确定它的统计分布更容易。基于密度的离群点检测与基于邻近度的离群点检测密切相关,因为密度常用邻近度定义。
1.  基于模型的离群点检测方法
     通过估计概率分布的参数来建立一个数据模型,如果一个数据对象不能不能很好的跟该模型拟合,即如果它很可能不服从该分布,则它是一个离群点。
1)一元正态分布中的离群点检测
正态分布是统计学中最常用的分布之一。N(0,1)的数据对象出现在该分布的两边尾部的机会很小,因此可以用它作为检测数据对象是否是离群点的基础。数据对象落在三倍标准差中心区域之外的概率仅有0.0027。
2.离群点常用检测方法

    先将所有数据对象放入正常数据集,这时离群点为空集;再用一个迭代过程将数据对象从正常数据集转移到离群点集,只要该转移能提高数据集的总似然。
3. 基于聚类的离群点检测方法

     聚类分析用于发现局部强相关的对象组,而异常检测用来发现不与其他对象强相关的对象。因此,聚类分析非常自然的可以用于离群点检测。

1)丢弃远离其他簇的小簇

      一种利用聚类检测离群点的方法是丢弃远离其他簇的小簇。通常,该过程可以简化为丢弃小于其个最小阈值的所有簇。

这个方法可以和其他任何聚类计数一起使用,但是需要最小簇大小和小簇与其他簇之间距离的阈值。而且这种方案对簇个数的选择高度敏感,使用这个方案很难将离群点得分附加到对象上。

2)基于原型的聚类

     另一种更系统的方法,首先聚类所有对象,然后评估对象属于簇的程度。在这种方法中,可以用对象到它的簇中心的距离来度量属于簇的程度。特别地,如果删除一个对象导致该目标的显著改进,则可将该对象视为离群点。

     对于基于原型的聚类,评估对象属于簇的程度主要有两种方法:一是度量对象到簇原型的距离,并用它作为该对象的离群点得分;二是考虑到簇具有不同的密度,可以度量簇到原型的相对距离,相对距离是点到质心与簇中所有点到质心距离的中位数之比。

基于聚类的离群点检测改进:

1)离群点对初始聚类的影响:通过聚类检测离群点时,离群点会影响聚类结果。为了处理该问题,可以使用如下方法:对象聚类,删除离群点,对象再次聚类

2)还有一种更复杂的方法:取一组不能很好的拟合任何簇的特殊对象,这组对象代表潜在的离群点。随着聚类过程的进展,簇在变化。不再强属于任何簇的对象被添加到潜在的离群点集合;而当前在该集合中的对象被测试,如果它现在强属于一个簇,就可以将它从潜在的离群点集合中移除。聚类过程结束时还留在该集合中的点被分类为离群点。

对象是否被认为是离群点可能依赖于簇的个数。该问题也没有简单的答案。一种策略是对于不同的簇个数重复该分析;另一种方法是找出大量小簇,其想法是:

1)较小的簇倾向于更加凝聚;

2)如果存在大量小簇时一个对象是离群点,则它多半是一个真正的离群点。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息