1.离群点:是一个数据对象,它显著不同于其他数据对,好像它是被不同的机制产生的一样
产生离群点的原因:
计算的误差或者操作的错误所致
数据本身的可变性或弹性所致
2.离群点与噪声数据:
离群点不同于噪声数据
噪声数据是被观测变量的随机误差或方差
噪声数据应在离群点检测前被删除
3.离群点的类型:
三类: 全局离群点, 条件离群点和集体离群点。
全局离群点 (或点异常):如果一个数据对象显著的偏离数据集的其余部分,则这个数据对象为全局离群点。
条件离群点:一个数据对象,如果关于对象的特定情境,它显著偏离其他对象。
数据对象的属性划分为两组。
情境属性: 定义对象的情境,例如, 时间和地点。
行为属性: 定义对象的特征, 并用来评估对象关于它所处的情境是否为离群点。例如,温度
集体离群点:给定一个数据集,数据对象的一个子集作为整体显著偏离整个数据集,数据对象的这个子集称为集体离群点。
数据集可能有多种类型的离群点。
一个对象可能属于多种类型的离群点
4.离群点的检测:
离群点的检测方法有很多,每种方法在检测时,都会对正常数据对象或离群点做出假设。离群点检测方法可以分为:
基于统计学的离群点检测;
基于近邻的离群点检测;
基于聚类的离群点检测;
基于分类的局部离群点检测
(1).统计学方法:基于统计分布的检测方法是为数据集构建一个概率统计模型(例如正态、泊松、二项式分布等,其中的参数由数据求得),然后根据模型采用不和谐检验识别离群点。
设定数据集的分布模型---不和谐检验 ---发现离群点
不和谐检测:不和谐检验需要检查两个假设:工作假设和备择假设。工作假设指的是如果某样本点的某个统计量相对于数据分布的是显著性概率充分小,则认为该样本点是不和谐的,工作假设被拒绝,此时备择假设被采用,它声明该样本点来自于另一个分布模型。如果某个样本点不符合工作假设,那么认为它是离群点。如果它符合备择假设,认为它是符合某一备择假设分布的离群点
基于正态分布的一元离群点检测
正态分布曲线特点:N(μ,σ 2 )
变量值落在(μ-σ,μ+σ)区间的概率是68.27%
变量值落在(μ-2σ,μ+2σ)区间的概率是95.44%
变量值落在(μ-3σ,μ+3σ)区间的概率是99.73%
统计方法的离群点检测的优缺点:
优点:建立在非常标准的统计学原理之上,当数据和检验的类型十分充分时,检验十分有效
缺点:
①多数情况下,数据的分布是未知的或数据几乎不可能用标准的分布来拟合,虽然可以使用混合分布对数据建模,基于这种模型开发功能更强的离群挖掘方案,但这种模型更复杂,难以理解和使用。
②当观察到的分布不能恰当地用任何标准的分布建模时,基于统计方法的挖掘不能确保所有的离群点被发现,而且要确定哪种分布最好的拟合数据集的代价也非常大。
③即使这类方法在低维(一维或二维)时的数据分布己知,但在高维情况下,估计数据对象的分布是极其困难的,对每个点进行分布测试,需要花费更大的代价
(2).基于近邻的离群点检测
假定离群点对象与它最近邻的邻近性显著偏离数据集中其它对象与它们邻近之间的邻近性。
两种方法:
基于距离的离群点检测;基于密度的离群点检测
基于距离的离群点检测:
如果数据对象集D中大多数对象都远离d,即都不在d的r-邻域内,d可视为一个离群点。
r 是距离阈值, α是分数阈值,如果有
则d是一个DB(r, α)离群点。
计算DB(r, α)-离群点:嵌套循环:对每个对象 di( 1=<i<=n), 计算 与其它对象之间的距离,统计r-邻域中其它对象的个数,一旦找到 n * α 个,内循环可以中止
基于密度的离群点检测:
基于密度的离群点检测能够检测出基于距离的异常算法所不能识别的一类异常数据——局部离群点
局部离群点:是指一个对象相对于它的局部邻域,特别是关于邻域密度,它是远离的
局部离群点因子(LOF)算法计算的离群度不在一个通常便于理解的范围[0,1],而是一个大于的数,并且没有固定的范围。而且数据集通常数量比较大,内部结构复杂,LOF极有可能因为取到的近邻点属于不同数据密度的聚类簇,使得计算数据点的近邻平均数据密度产生偏差,而得出与实际差别较大甚至相反的结果。
优点: 通过基于密度的局部离群点检测就能在样本空间数据分布不均匀的情况下也可以准确发现离群点
(3) 基于聚类的方法
该对象如果不属于某个簇,则它被识别为离群点。
该对象如果与最近的簇之间的距离很远,则它是离群点。
该对象如果是小簇或稀疏簇的一部分,则该簇中的所有对象都是离群点
基于聚类的离群点检测挖掘方法有两种 :
基于对象离群因子法:假设数据集 D 被聚类算法划分为 k 个簇 C ={ C 1 , C 2 ,…, C k },对象 p 的离群因子(Outlier Factor) OF 1( p )定义为 p 与所有簇间距离的加权平均值
计算数据集D中所有对象p的离群因子OF1(p),及其平均值Ave_OF和标准差Dev_OF,满足条件:OF1(p)>=Ave_OF+β*Dev_OF(1=<β<=2) 的对象判定为离群点。通常取 β=1 或1.285
基于簇的离群因子法 :假设数据集 D 被聚类算法划分为 k 个簇 C ={ C 1 , C 2 ,…, C k },簇 C i 离群因子(Outlier Factor) OF 2( C i )定义为簇 C i 与其他所有簇间距离的加权平均值,如果一个簇离几个大簇的距离都比较远,则表明该簇偏离整体比较远,其离群因子也较大。OF 2( C i )度量了 C i 偏离整个数据集的程度,其值越大,说明 C i 偏离整体越远
基于聚类的离群点检测方法:
优点:它们可以检测离群点,而不要求数据是有标号的,即它们以无监督方式检测。它们对许多类型的数据都有效。簇可以看做数据的概括。一旦得到簇,基于聚类的方法只需要把对象与簇进行比较,以确定该对象是否是离群点。这一过程通常很快,因为与对象总数相比,簇的个数通常很小。
缺点:它的有效性高度依赖于所使用的聚类方法。这些方法对于离群点检测而言可能不是最优的。对于大型数据集,聚类方法通常开销很大,这可能成为一个瓶颈
(4)基于分类的方法:
使用基于分类检测离群点的时候,分类器可以使用如SVM、KNN、决策树等。为解决正常数据和离群点数据分布的不均衡,可以使用一类模型进行分类。就是构建一个描述正常数据的分离器,不属于正常的数据就是离群点