一种基于多种支撑点的度量空间离群检测方法技术

技术编号:16819196 阅读:35 留言:0更新日期:2017-12-16 12:39
本发明专利技术公开了一种基于多种支撑点的度量空间离群检测方法,包括选择距离函数步骤:根据数据集的数据类型,选择距离函数;支撑点选取步骤:读取数据集,选取不重复的密集支撑点以及边缘支撑点;建立索引步骤:计算所有对象与密集支撑点的距离,进行排序,形成一维索引,计算所有对象与边缘支撑点的距离,记为第二距离,以第一距离和第二距离作为坐标,形成支撑点空间;离群检测步骤:将一维索引划分成多个数据块,并对数据块逐块进行离群点检测。本发明专利技术通过同时选中密集支撑点和多个边缘支撑点,避免出现单支撑点导致的数据空间扭曲的技术问题,同时降低建立索引时间开销,减少距离计算次数,提高离群检测速度。本发明专利技术用于检测数据集中的离群点。

A metric space outlier detection method based on multiple support points

The present invention discloses a support metric spatial outlier detection method based on points, including the choice of the distance function steps: according to the data type, select the distance function; step selection support: read data set, choose not to repeat the intensive support point and edge support; indexing steps: calculating all objects and intensive the supporting point of the distance, sorting, forming a one-dimensional index, calculate all objects and edge point distance, denoted as second distance to the first and second distances as coordinates, support the formation of space; outlier detection steps: one-dimensional index is divided into a plurality of blocks of data, and the data block by block outliers detection. By selecting dense support points and multiple edge support points simultaneously, the invention avoids the technical problem of data distortion caused by single support points, and reduces the time cost of index establishment, reduces the number of distance computation, and improves the speed of outlier detection. The present invention is used to detect outliers in a data set.

【技术实现步骤摘要】
一种基于多种支撑点的度量空间离群检测方法
本专利技术涉及数据挖掘领域,更具体地说涉及一种基于多种支撑点的度量空间离群检测方法。
技术介绍
离群点是数据集中与众不同的数据点,其表现与其它点如此不同,以至于使人怀疑这些数据并非随机的偏差,而是由另外一种完全不同的机制所产生的。离群点也称异常点或者异常对象。离群点检测也称为异常检测、偏差检测或离群点挖掘,它就是按照一定的算法把数据集中的离群点检测出来。换言之,离群点检测就是挖掘海量数据中极少数与主流数据显著不同的点。传统的离群检测技术,大多数是面向多维空间的,仅适用于多维数据,对于图像、音频视频、蛋白质等复杂数据类型无可奈何。仅有的少数离群检测方法基于度量空间,适用于大多数数据类型,但是却存在着索引效率低下,离群检测速度较慢等问题,其中以iORCA算法以及HIOD算法最为常用。所述iORCA算法是本领域代表性算法,该算法随即选取数据集一对象作为支撑点,然后计算所有对象与支撑点的距离,再按降序排序,从而建立简单索引,检测离群点时,便是基于该索引,相当于按照与支撑点的距离,从远到近检测。上述iORCA算法缺点在于仅仅使用一个支撑点,在节省建立索引时间的同时却导致了数据空间的扭曲,降低了索引质量,不能很好地发挥剪枝效率,而且该算法并未提供支撑点选取算法,所选取的支撑点是随即选取的,离群检测效果部稳定,最后该算法只用一个终止规则来判断是否停止检测离群点,未能发挥度量空间三角不等性作用来进一步减少距离计算次数。所述HIOD算法针对iORCA算法中数据扭曲和忽略稀疏区域的问题而提出的,该算法首先选取两个支撑点以减少数据扭曲,然后用Hilbert曲线降维以建立索引,同时优先检测稀疏区域,并运用基于距离三角不等性的多个剪枝规则减少距离计算次数,提高检测速度。上述HIOD算法克服了iORCA算法的缺点,但是该算法只选取一种支撑点同时达到密集支撑点和边缘支撑点目标,建立索引时间较长。
技术实现思路
本专利技术要解决的技术问题是:提供一种快速的基于多种支撑点的度量空间离群检测方法。本专利技术解决其技术问题的解决方案是:一种基于多种支撑点的度量空间离群检测方法,所述方法包括以下步骤:选择距离函数步骤:根据数据集的数据类型,选择相应的距离函数;支撑点选取步骤:读取数据集,在数据集中选取密集支撑点以及边缘支撑点,所述密集支撑点与边缘支撑点不重复;建立索引步骤:分别计算数据集中所有对象与密集支撑点的距离,记为第一距离,按第一距离从大到小顺序排序,形成一维索引,分别计算数据集中所有对象与边缘支撑点的距离,记为第二距离,以第一距离和第二距离作为坐标,形成支撑点空间;离群检测步骤:将所述一维索引划分成多个数据块,并对所述数据块逐块进行离群点检测。作为上述技术方案的进一步改进,所述支撑点选取步骤中选取密集支撑点包括以下步骤:从数据集中随机选取一个对象作为第一基准点;计算数据集中所有对象与第一基准点的距离,记为第三距离;按照第三距离大小对数据集中的所有对象进行排序,并将所述数据集划分成多个数据段,每个数据段中对象的数量相等;计算每个数据段的距离增量,距离增量最小的数据段记为最密集区域;计算所述最密集区域的中点,记为密集支撑点。作为上述技术方案的进一步改进,所述支撑点选取步骤中选取边缘支撑点包括以下步骤:设置支撑点数量阈值,设置边缘支撑点集并初始化为空集;在数据集中随机选取一个对象作为第二基准点;计算数据集中除边缘支撑点集以外所有对象与边缘支撑点集的距离,记为第四距离,选取第四距离最大的对象作为下一个边缘支撑点并添加到边缘支撑点集中,判断边缘支撑点集中对象的数目是否等于支撑点数量阈值,如果是,完成边缘支撑点选取,如果不是,重复此步骤;通过所述距离函数,计算边缘支撑点集中各个边缘支撑点与密集支撑点的距离,若边缘支撑点与密集支撑点距离为零,删除该边缘支撑点,返回上一个步骤,继续选取下一个边缘支撑点并将其添加到边缘支撑点集中,直到边缘支撑点集中对象的数目等于支撑点数量阈值且边缘支撑点集中各个边缘支撑点与密集支撑点的距离均不为零;边缘支撑点选取完成后,将所述第二基准点从边缘支撑点集中删除。作为上述技术方案的进一步改进,所述离群检测步骤包括以下步骤:将所述一维索引划分成多个对象数量相同的数据块;设置离群度阈值,并初始化为0,按顺序逐个读取每个数据块;如果当前数据块中第一个对象不可能为离群点,结束检测,输出离群点;如果当前数据块中存在可能为离群点的对象,按顺序逐个检测当前数据块对象,从待检测对象所在数据块的中位对象开始以螺旋顺序搜索待检测对象的k最近邻,直到覆盖整个一维索引,并将判断为不可能是离群点的对象从当前数据块中移除,直到当前数据块中的所有对象都处理完毕后更新离群点和离群度阈值,并读取下一个数据块;当所有数据块处理完成后,输出离群点。本专利技术的有益效果是:本专利技术通过同时选中密集支撑点和多个边缘支撑点,建立一维索引以及支撑点空间,避免出现像传统技术一般出现单支撑点导致的数据空间扭曲的技术问题,同时有利于降低建立索引时间开销,有利于减少距离计算次数,提高离群检测速度。本专利技术用于检测数据集中的离群点。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单说明。显然,所描述的附图只是本专利技术的一部分实施例,而不是全部实施例,本领域的技术人员在不付出创造性劳动的前提下,还可以根据这些附图获得其他设计方案和附图。图1是本专利技术离群检测方法的流程图;图2是本专利技术中选取密集支撑点的步骤流程图;图3是本专利技术中选取边缘支撑点的步骤流程图;图4是本专利技术中离群点检测步骤的具体流程图。具体实施方式以下将结合实施例和附图对本专利技术的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本专利技术的目的、特征和效果。显然,所描述的实施例只是本专利技术的一部分实施例,而不是全部实施例,基于本专利技术的实施例,本领域的技术人员在不付出创造性劳动的前提下所获得的其他实施例,均属于本专利技术保护的范围。为更好地说明本专利技术创造的技术方案,现就说明书中出现的本领域技术名词作出解释:离群度:一个对象的离群度表示其离群的程度,常用其与k最近邻的距离的平均值作为离群度,或者其与第k个最近邻的距离值作为离群度。TOPn离群点:整个数据集之中,离群度最大的n个对象(点)。数据块:离群检测的一个单位,由数据集中的若干个对象组成。螺旋顺序:例如有一个索引1,2,3,4,5,6,7,8,9,10,如果以5为起点,它的螺旋顺序是5,4,6,3,7,2,8……,或者5,6,4,7,3,8,2……,就是一前一后,以此类推的意思。参照图1~图4,本专利技术创造公开了一种基于多种支撑点的度量空间离群检测方法,用于对数据集中离群点进行有效快速的检测,所述检测方法包括以下步骤:选择距离函数步骤:根据数据集的数据类型,选择相应的距离函数,用于后续步骤中距离的计算;支撑点选取步骤:读取数据集,在数据集中选取密集支撑点以及边缘支撑点,所述密集支撑点与边缘支撑点不重复;建立索引步骤:分别计算数据集中所有对象与密集支撑点的距离,记为第一距离,按第一距离从大到小顺序排序,形成一维索引,分别计算数据集中所有对象与边缘支撑点的距离,记为第二距离,以第一距离和第二距离作为坐标本文档来自技高网
...
一种基于多种支撑点的度量空间离群检测方法

【技术保护点】
一种基于多种支撑点的度量空间离群检测方法,其特征在于,所述方法包括以下步骤:选择距离函数步骤:根据数据集的数据类型,选择相应的距离函数;支撑点选取步骤:读取数据集,在数据集中选取密集支撑点以及边缘支撑点,所述密集支撑点与边缘支撑点不重复;建立索引步骤:分别计算数据集中所有对象与密集支撑点的距离,记为第一距离,按第一距离从大到小顺序排序,形成一维索引,分别计算数据集中所有对象与边缘支撑点的距离,记为第二距离,以第一距离和第二距离作为坐标,形成支撑点空间;离群检测步骤:将所述一维索引划分成多个数据块,并对所述数据块逐块进行离群点检测。

【技术特征摘要】
1.一种基于多种支撑点的度量空间离群检测方法,其特征在于,所述方法包括以下步骤:选择距离函数步骤:根据数据集的数据类型,选择相应的距离函数;支撑点选取步骤:读取数据集,在数据集中选取密集支撑点以及边缘支撑点,所述密集支撑点与边缘支撑点不重复;建立索引步骤:分别计算数据集中所有对象与密集支撑点的距离,记为第一距离,按第一距离从大到小顺序排序,形成一维索引,分别计算数据集中所有对象与边缘支撑点的距离,记为第二距离,以第一距离和第二距离作为坐标,形成支撑点空间;离群检测步骤:将所述一维索引划分成多个数据块,并对所述数据块逐块进行离群点检测。2.根据权利要求1所述的一种基于多种支撑点的度量空间离群检测方法,其特征在于,所述支撑点选取步骤中选取密集支撑点包括以下步骤:从数据集中随机选取一个对象作为第一基准点;计算数据集中所有对象与第一基准点的距离,记为第三距离;按照第三距离大小对数据集中的所有对象进行排序,并将所述数据集划分成多个数据段,每个数据段中对象的数量相等;计算每个数据段的距离增量,距离增量最小的数据段记为最密集区域;计算所述最密集区域的中点,记为密集支撑点。3.根据权利要求2所述的一种基于多种支撑点的度量空间离群检测方法,其特征在于,所述支撑点选取步骤中选取边缘支撑点包括以下步骤:设置支撑点数量阈值,设置边缘支撑点集并初始化为空集;在数据集中随机选取一个对象作为第二基准点,添加到边缘支撑点...

【专利技术属性】
技术研发人员:许红龙戎海武何敏藩文翰杨勇
申请(专利权)人:佛山科学技术学院
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1