Chap5-4 离群点检测.pptx

  1. 1、本文档共72页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Chap5-4 离群点检测

1 5.4 离群点(异常)检测 Outlier Analysis 离群点简介 基于统计的检测方法 基于距离的检测方法 基于偏差的检测方法 基于密度的检测方法 高维数据的异常探测 目录 2 什么是异常(outlier)? Hawkins(1980)给出了异常的本质性的定义:异常是在数据集中与众不同的数据,使人怀疑这些数据并非随机偏差,而是产生于完全不同的机制。 聚类算法对异常的定义:异常是聚类嵌于其中的背景噪声。 异常探测算法对异常的定义:异常是既不属于聚类也不属于背景噪声的点。他们的行为与正常的行为有很大不同。 基于统计的方法 假设给定的数据集服从一个随机分布(如正态分布等),用不一致性测试(discordancy test)识别异常。 存在问题 在许多情况下,用户并不知道这个数据分布。而且现实数据也往往不符合任何一种理想状态的数学分布; 即使在低维(一维或二维)时的数据分布已知,在高维情况下,估计数据点的分布是极其困难的。 基于距离的方法 Knorr和Ng(VLDB’1998)提出一种基于距离的异常探测方法 基于距离的异常定义 数据集S中一个对象O称为DB(p, D )-outlier,如果它满足下列性质:数据集S中至少p*100%的对象与O的距离大于距离D 。 采用不同的参数p和D , DB(p, D )-outlier可以表示所有的基于统计的异常。 基于距离的异常探测的算法 基于索引(index-based)的算法 嵌套循环(nested-loop)算法 基于单元(cell-based)的方法 基于索引的算法 寻找所有的DB(p, D )-outlier可以通过对最近邻查询或以O为中心的范围查询的回答来实现 基于多维索引结构R-Tree或kd-Tree 算法复杂度是O(k N2 ) k——维数 N——数据点数 缺点: 需要建立多维索引结构 费时 嵌套循环算法NL 将内存缓冲区空间划分成相等的两部分,数据集分成几个大小和每部分缓冲区相等的逻辑块,通过认真选择调入每一部分缓冲区的次序,使I/O次数最小 算法复杂度是O(k N2 ) k——维数 N——数据点数 特点: 不需要建立多维索引结构 较费时 基于单元的方法 单元划分 数据空间被划分为边长为D/(2k1/2)的单元; 每个单元有两个包围层 第一层为1倍的单元厚 第二层为int(2k1/2 -1)+1倍的单元厚 确定异常 若cell_+_1_layer_countM,单元中的对象都不是异常; 若cell_+_2_layer_count=M,单元中的所有对象都是异常; 否则,单元中的一些对象可能为异常,逐个对象进行处理。 算法复杂度是O(ck+ N ) 基于距离的算法小结 由于索引建立的开销很大,简单索引算法没有竞争性 当k=4时,基于单元的算法在N越大时优越性越明显 当k=5之后,嵌套循环算法开始显现出优势 基于距离的算法的改进 Knorr和Ng(VLDB’1998)基于距离的异常探测方法的缺陷 输入参数p与D很难确定,并且对于不同参数,结果有很大不稳定性。这就需要用户反复输入p与D进行测试,以确定一个满意解; 不能给定异常的程度; 算法的复杂度较高。 基于距离的算法的改进 Rastogi 和Ramaswamy(SIGMOD’2000)提出了一个新的基于距离异常定义 Dnk 异常 用Dk(p)表示点p和它的第k个最近邻的距离,给定d维空间中包含N个点的数据集,参数n和k(自然数),如果满足Dk(p’) ? Dk(p)的点p’不超过n-1个,那么称p为Dnk 异常。 如果对数据点根据它们的Dk(p)距离进行排序,那么前n个点就被看作异常。 改进的基于距离的算法 循环嵌套算法(Nested-loop Algorithm) 对每个点p,计算它的第k个最近邻的距离Dk(p),把具有极大Dk值前n个点作为异常。上面的算法每次处理一个点p,那么需要扫描一遍数据库,总共需要扫描N遍(N为数据点数)。 基于索引的算法(Index-based Algorithm) 用如R*-树的空间索引结构存储。 基于划分的算法(partition-based Algorithm) 如果某个点的Dk(p)较小的话,那么不可能是Dnk 异常,可以先对数据集进行划分,然后估计每个划分的Dk(p)的上、下界,如果能判定某个划分不可能包含异常的话,那么就可以直接把它删除掉;然后再从剩下的划分(侯选划分)来计算异常。现有的许多聚类算法可以用来划分数据集,如BIRCH 。 基于偏差的方法 Argrawal和Ragaran(KDD’1995)提出一种?

文档评论(0)

骨干 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档