0 1
异常数据及其特殊意义
异常的定义
-
Hawkins的定义:异常是在数据集中偏离大部分数据的数据,使人怀疑这些数据的偏离并非由随机因素产生,而是产生于完全不同的机制。
-
Weisberg的定义:异常是与数据集中其余部分不服从相同统计模型的数据。
-
Samuels的定义:异常是足够地不同于数据集中其余部分的数据。
-
Porkess的定义:异常是远离数据集中其余部分的数据
异常数据的特殊意义
在许多应用领域中,异常数据通常作为噪音而忽略,许多数据挖掘算法试图降低或消除异常数据的影响。在有些应用领域识别异常数据是许多工作的基础和前提,异常数据会带给我们新的视角。
-
在欺诈检测中,异常数据可能意味欺诈行为的发生
-
在入侵检测中,异常数据可能意味入侵行为的发生
-
在医疗检测中,分析药品所产生的异常反应
02
异常的产生及检验描述
产生原因
- 测量、输入错误或系统运行错误所致
- 数据内在特性所决定
- 客体的异常行为所致
由于异常产生的机制是不确定的,异常挖掘算法检测出的“异常数据”是否真正对应实际的异常行为,不是由异常挖掘算法来说明、解释的,只能由领域专家来解释,异常挖掘算法只能为用户提供可疑的数据,以便用户引起特别的注意并最后确定是否真正的异常。
异常检测
前提假设:认为正常的点数远远超过被认为异常的点数
异常检测描述:给定N个数据对象和所期望的异常数据个数k,发现明显不同、意外,或与其它数据不一致的前k个对象。
异常挖掘问题由两个子问题构成:(1)如何度量异常 (2)如何有效发现异常。
03
异常检验需要处理的问题
用于定义异常的属性个数
定义异常需要指明如何使用多个属性的值确定一个对象是否异常 一个对象只有单个属性 一个对象具有多个属性:可能某个属性异常,某个属性正常
点的异常程度
以二元方式来报告对象是否异常的,即:异常或正常 通过定义对象的异常程度来给对象打分 ,如都为异常的情况下,也还有分高和分低的区别。——异常点得分(outlier score)
检测结果的评估方法
可以利用分类性能、精度、召回率度量来评估异常检测方案的有效性。更常用的还是ROC与ACR的度量方法
检测方法的有效性
各种异常检测方案的计算开销是显著不同的 基于分类的方案建立模型消耗资源大,但模型一旦建好,使用时的开销通常很小 基于邻近度的方法,其时间复杂度通常为O(n2)
04
异常检验方法的分类
基于统计的异常值检验
基本思想: 将与统计模型不一致(即分布不符合)的数据标识为异常数据。
优点:
利用数据的分布来观察异常值,有坚实的统计学理论基础,对于单维数据非常好用
当存在充分的数据和所用的检验类型的知识时,这些检验可能非常有效。
缺点:
对于高维数据不太友好,性能较差
一些方法甚至需要一些分布条件,而在实际中数据的分布很难达到一些假设条件,在使用上有一定的局限性。
统计方法检测还只是一个划分的算法,并不能给出数据的好坏程度。
基于距离的异常值检验
基本思想: 如果一个对象远离大部分其它对象,则认为它是异常的。
强假设: 正常数据都较为集中,有很多邻居,而异常数据都特立独行
这里给出一些常用的距离计算
优点:
-
确定数据集的有意义的邻近性度量比确定它的统计分布更容易,综合了基于分布的思想,克服了基于分布方法的主要缺陷 。
-
比统计学方法更一般、更容易使用,因为一个对象的离群点得分根据它的距离给定。
缺点:
-
基于邻近度的方法需要O(m2)时间,大数据集不适用;
-
当采用k近邻计算距离时,该方法对参数k的选择很敏感;
-
不能处理具有不同密度区域的数据集,因为它使用全局阈值,不能考虑这种密度的变化。
当数据集含有多种分布或由不同密度子集混合而成时,数据是否异常不仅仅取决于它与周围数据的距离大小,而且与邻域内的密度状况有关
基于密度的异常值检验
基本思想: 异常点是在低密度区域中的对象。
与基于距离的检测有相同的强假设:正常数据都较集中、邻居,而异常数据都特立独行
优点:
给出了对象是离群点的定量度量。并且不仅仅考虑了它与周围数据的距离大小,而且考虑与邻域内的密度状况,即使数据具有不同的区域也能够很好的处理;
缺点:
- 结果对参数k的选择很敏感,尚没有一种简单而有效的方法来确定合适的参数k;
- 时间复杂度为O(m*N^2),难以用于大规模数据集;
- 需要有关异常因子阈值或数据集中异常数据个数的先验知识,在实际使用中有时由于先验知识的不足会造成一定的困难。
在能够使用距离位置检测的情况下,优先使用距离位置检测的方法。密度方法的前提几乎与距离方法的前提一致,但是在计算量级上而言,存在较大的差异差别。
基于模型的异常值检验
基本思想: 大多数基于模型的异常检验方法都是通过建立一个数据模型,将不能很好适应模型的数据作为异常值。
优点:
- 基于分类的检验在测试阶段速度较快,训练阶段决策树会较快
- 基于线性和接近线性复杂度(k均值)的聚类技术来发现离群点可能是高度有效的,同时测试阶段页很快
- 只需要扫描数据集若干次,效率较高,适用于大规模数据集。
缺点:
- 多分类问题需要精确的多分类标签
- 聚类算法产生的簇的质量对该算法产生的离群点的质量影响非常大 ;产生的离群点集和它们的得分可能非常依赖所用的簇的个数和数据中离群点的存在性;计算复杂度为O(N^2)
- 大多基于模型的异常检测都是为其他目的产生的算法的副产品,为临时特设的。
END
添加助手微信回复研究方向或专业即可加入我们的微信交流群或QQ交流群
扫码关注我们
携手2021年,为梦想启程!