一种基于快速随机密集支撑点的度量空间离群检测方法技术

技术编号:20944320 阅读:24 留言:0更新日期:2019-04-24 02:19
一种基于快速随机密集支撑点的度量空间离群检测方法,包括以下步骤:步骤A:选取快速随机密集支撑点和边缘支撑点,得到具有最大密度值的支撑点和近似的边缘支撑点;步骤B:建立度量空间索引;步骤C:对数据集进行离群检测,得到离群点集。本发明专利技术提出一种基于快速随机密集支撑点的度量空间离群检测方法,实现快速选取到质量较好的支撑点,快速计算得截断距离,有利于缩短程序运行时间,同时使用多个剪枝规则尽量排除非c近邻和非离群点,从而减少距离计算次数,建立索引时间开销较小,索引加速效果好。

An Outlier Detection Method for Metric Space Based on Fast Random Dense Support Points

A fast random dense support point-based outlier detection method for metric space includes the following steps: step A: select fast random dense support points and edge support points to obtain support points with maximum density and approximate edge support points; step B: establish metric space index; step C: carry out outlier detection for data set to get outlier sets. The invention proposes a metric space outlier detection method based on fast random dense support points, realizes fast selection of better quality support points and fast calculation of truncation distance, which is conducive to shortening the running time of the program, and uses multiple pruning rules to exclude non-C nearest neighbors and non-outliers as far as possible, thereby reducing the calculation times of distance, less time overhead of index establishment and index addition. The effect of speed is good.

【技术实现步骤摘要】
一种基于快速随机密集支撑点的度量空间离群检测方法
本专利技术涉及数据集检测领域,尤其涉及一种基于快速随机密集支撑点的度量空间离群检测方法。
技术介绍
度量空间离群检测适用于大多数数据类型,图像、音视频、蛋白质等复杂数据类型,现有技术中近似的技术有ADPOD方法。ADPOD方法,即基于快速随机密集支撑点的离群检测算法,随机选取若干候选支撑点,然后每个候选支撑点都与全局数据集计算距离,按自适应截断距离计算每个候选支撑点的密度,排序得出密度最大者,作为支撑点。离群检测算法则基于该支撑点建立简单索引,从远到近检测离群点。但是ADPOD方法存在以下缺陷:1、对于每个候选支撑点都与全局数据集计算距离,计算量较大,不适用于较大的数据集,特别是无法一次性调入内存的数据集;2、对于截断距离的确定依赖于候选支撑点与全局数据集的距离计算,计算开销较大;3、单独使用密集支撑点,对减少距离计算次数的效果较差。
技术实现思路
本专利技术的目的在于针对
技术介绍
中的缺陷,提出一种基于快速随机密集支撑点的度量空间离群检测方法,以解决
技术介绍
中的缺陷问题。为达此目的,本专利技术采用以下技术方案:一种基于快速随机密集支撑点的度量空间离群检测方法,包括以下步骤:步骤A:选取快速随机密集支撑点,得到支撑点的最大密度值;步骤B:建立度量空间索引;步骤C:对数据集进行离群检测,得到离群点集。优选的,在步骤A中,选取快速随机密集支撑点的具体步骤如下:步骤A1:在数据集中随机选取m个候选支撑点,组成候选支撑点集,m为数据集规模的0.1%-1%;步骤A2:计算候选支撑点集中,每个候选支撑点与其他m-1个候选支撑点的距离并存储为距离信息,保存其中的最大距离值maxDistance及该最大距离相对应的两个候选支撑点,将其命名为第一边缘支撑点pe1和第二边缘支撑点pe2;步骤A3:每一个候选支撑点与其他m-1个候选支撑点的距离之和,称为稀疏度;计算第一个候选支撑点与其他m-1个候选支撑点的距离之和,将其作为第一稀疏度,并将其赋值于当前最小稀疏度,则当前最小稀疏支撑点为第一个候选支撑点(拥有当前最小稀疏度的候选支撑点为当前最小稀疏支撑点);步骤A4:从第二个候选支撑点开始,依次计算每个候选支撑点与其他m-1个候选支撑点的距离之和,设当前计算的是第i个候选支撑点(2≤i≤m),则赋值为第i稀疏度,并与当前最小稀疏度做比较,若第i稀疏度小于当前最小稀疏度,则将第i稀疏度赋值给当前最小稀疏度,将当前最小稀疏支撑点重新赋值为该候选支撑点,即第i稀疏度对应的候选支撑点;将计算第i稀疏度时,是将某个候选支撑点与其他m-1个候选支撑点的距离进行累加,并将每累加一次得到的第i稀疏度实时与当前最小稀疏度作比较,若出现第i稀疏度大于或等于当前最小稀疏度,则停止计算该候选支撑点的稀疏度;若出现第i稀疏度小于或等于当前最小稀疏度,则继续累加该候选支撑点与后续其他候选支撑点的距离然后再次实时比较;步骤A5:当m个候选支撑点都完成步骤A4之后,取具有当前最小稀疏度的当前最小稀疏支撑点作为密集支撑点pm3并将其输出。优选的,在步骤B中,建立度量空间索引的具体步骤如下:步骤B1:将整个数据集的所有对象与第一边缘支撑点、第二边缘支撑点和密集支撑点计算距离,并保存距离信息命名为支撑点空间;步骤B2:将整个数据集的所有对象,按照其与密集支撑点的距离从大到小进行排序,形成支撑点索引。优选的,基于快速随机密集支撑点的度量空间离群检测方法还包括计算终止规则和支撑点空间剪枝规则,根据终止规则和支撑点空间剪枝规则判断离群检测的结果;计算终止规则的步骤如下:首先根据公式一:c=0.2*maxDistance计算截断距离,在公式一中,c表示截断距离,maxDistance表示第一边缘支撑点pe1和第二边缘支撑点pe2的最大距离值;根据公式二:d(x,pm3)+d(pm3,nnk(pm3,D))<c,计算终止规则,在公式二中,D为数据集,k为密集度阈值,pm3为密集支撑点,x为离群检测过程中正在检测的对象,d()为距离函数,nnk(p,D)表示对象p在数据集D中的第k最近邻;当d(x,pm3)+d(pm3,nnk(pm3,D))<c,则终止离群检测并得到正确结果。优选的,根据支撑点空间剪枝规则判断离群检测的结果包括:根据公式三排除非c近邻的对象;若公式三:||dist(xt,p)-dist(xj,p)||>c,则对象xj不为对象xt的c近邻;在公式三中,P为第一边缘支撑点pe1、第二边缘支撑点pe2及密集支撑点pm3之中的任一个支撑点;xt和xj表示离群检测过程中正在检测的对象,dist()表示距离函数,c表示截断距离。优选的,在步骤C中,对数据集进行离群检测的具体步骤如下:步骤C1:读取支撑点索引,并划分支撑点索引序列为数据块,得到离群检测的顺序;步骤C2:将离群点集初始化为空集,按照步骤C1中的离群检测的顺序,逐数数据块读取整个数据集;步骤C3:若所有数据块都已检测完毕,则输出离群点检测结果,即离群点集;步骤C4:若存在未检测的数据块,则按照离群检测的顺序检测下一个数据块,并且在该数据块中,判断其当前正在检测的对象的终止规则是否成立;若终止规则成立,则输出离群点集;若终止规则不成立,则该数据块每个对象相对整个数据集以螺旋顺序搜索c近邻,当发现该数据块中的某个对象的密集度高于密集度阈值k时,则将该对象从该数据块移除;若该数据块的该对象的支撑点空间剪枝规则成立,则直接将该对象从该数据块中移除;当检测完该数据块中所有对象后,将符合要求的对象加入离群点集中。有益效果:1.本专利技术可快速选取到质量较好的支撑点(密集支撑点和边缘支撑点)。2.本专利技术可快速计算得截断距离,有利于缩短程序运行时间。3.本专利技术同时使用多个剪枝规则尽量排除非c近邻和非离群点,从而减少距离计算次数。4.建立索引时间开销较小,索引加速效果好。附图说明图1是本专利技术的基于快速随机密集支撑点的度量空间离群检测整体流程图;图2是本专利技术的离群检测的细节流程图。具体实施方式下面结合附图并通过具体实施方式来进一步说明本专利技术的技术方案。本实施例中的名词介绍:截断距离:用来衡量近邻数量多少的距离范围,在本专利技术中以字母c表示。c近邻:对象p的c近邻表示与p距离小于等于c的对象(近邻)。密集度:一个对象的密集度表示与其距离在“截断距离”的范围内有多少个近邻。密集度可反映离群的程度,因为密集度越小,意味着该对象所在区域越稀疏,离群度就越大。数据块:离群检测的一个单位,由数据集中的若干个对象组成,例如常用1000个对象作为一个数据块。密集度阈值:确定是否离群点的密集度值,密集度小于该值则为离群点,否则不是离群点。在本专利技术中以字母k表示。离群点:c近邻数量小于等于密集度阈值k的对象,或者密集度小于等于密集度阈值k的对象。螺旋顺序:例如有一个索引序列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所示,本专利技术分为三部分:步骤A:选取快速随机密集支撑点,得到支撑点的最大密度值;步骤B:建立度量空间索本文档来自技高网...

【技术保护点】
1.一种基于快速随机密集支撑点的度量空间离群检测方法,其特征在于:包括以下步骤:步骤A:选取快速随机密集支撑点和边缘支撑点,得到具有最大密度值的支撑点和近似的边缘支撑点;步骤B:建立度量空间索引;步骤C:对数据集进行离群检测,得到离群点集。

【技术特征摘要】
1.一种基于快速随机密集支撑点的度量空间离群检测方法,其特征在于:包括以下步骤:步骤A:选取快速随机密集支撑点和边缘支撑点,得到具有最大密度值的支撑点和近似的边缘支撑点;步骤B:建立度量空间索引;步骤C:对数据集进行离群检测,得到离群点集。2.根据权利要求1所述一种基于快速随机密集支撑点的度量空间离群检测方法,其特征在于:在步骤A中,选取快速随机密集支撑点的具体步骤如下:步骤A1:在数据集中随机选取m个候选支撑点,组成候选支撑点集,m为数据集规模的0.1%-1%;步骤A2:计算候选支撑点集中,每个候选支撑点与其他m-1个候选支撑点的距离并存储为距离信息,保存其中的最大距离值maxDistance及该最大距离相对应的两个候选支撑点,将其命名为第一边缘支撑点pe1和第二边缘支撑点pe2;步骤A3:每一个候选支撑点与其他m-1个候选支撑点的距离之和,称为稀疏度;计算第一个候选支撑点与其他m-1个候选支撑点的距离之和,将其作为第一稀疏度,并将其赋值于当前最小稀疏度,则当前最小稀疏支撑点为第一个候选支撑点(拥有当前最小稀疏度的候选支撑点为当前最小稀疏支撑点);步骤A4:从第二个候选支撑点开始,依次计算每个候选支撑点与其他m-1个候选支撑点的距离之和,设当前计算的是第i个候选支撑点(2≤i≤m),则赋值为第i稀疏度,并与当前最小稀疏度做比较,若第i稀疏度小于当前最小稀疏度,则将第i稀疏度赋值给当前最小稀疏度,将当前最小稀疏支撑点重新赋值为该候选支撑点,即第i稀疏度对应的候选支撑点;将计算第i稀疏度时,是将某个候选支撑点与其他m-1个候选支撑点的距离进行累加,并将每累加一次得到的第i稀疏度实时与当前最小稀疏度作比较,若出现第i稀疏度大于或等于当前最小稀疏度,则停止计算该候选支撑点的稀疏度;若出现第i稀疏度小于或等于当前最小稀疏度,则继续累加该候选支撑点与后续其他候选支撑点的距离然后再次实时比较;步骤A5:当m个候选支撑点都完成步骤A4之后,取具有当前最小稀疏度的当前最小稀疏支撑点作为密集支撑点pm3并将其输出。3.根据权利要求2所述一种基于快速随机密集支撑点的度量空间离群检测方法,其特征在于:在步骤B中,建立度量空间索引的具体步骤如下:步骤B1:将整个数据集的所有对象与第一边缘支撑点、第二边缘支撑点和密集支撑点计算距离,并保存距离信息命名为支撑点空间;步骤B2:将整个数据集的所有对象,按照其与密集支撑点的距离从大到小进行...

【专利技术属性】
技术研发人员:许红龙黄文俊罗云喻骏
申请(专利权)人:广东奥博信息产业股份有限公司
类型:发明
国别省市:广东,44

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

1