大数据环境下的分布式跨维度异常数据检测方法技术

技术编号:15437067 阅读:64 留言:0更新日期:2017-05-25 19:16
本发明专利技术提供一种大数据环境下的分布式跨维度异常数据检测方法,包括:数据切分,基于输入数据集的维度对输入数据集进行切分,形成多个数据桶;根据每一维度上切分出来的数据桶形成非平衡二叉编码树;基于非平衡二叉编码树将切分出来的多个数据桶分配到各运算节点上;在各个运算节点上计算执行每个数据点的相对离群量;筛选出相对离群量大于或等于设定阈值的数据点,形成异常点集合。

Distributed cross dimensional anomaly data detection method in large data environment

The invention provides a big data environment for distributed multidimensional outlier detection methods, data segmentation, input data set the dimension of input data set for segmentation based on the formation of multiple data bucket; according to the data of bucket cut out of each dimension on the formation of non balance two binary tree encoding a plurality of data; barrel based on non balance two binary encoding tree segmentation assigned to each computing node; in each operation node calculation the relative amount of each data point of the outlier; selection of outlier is greater than or equal to the threshold of the data points, forming abnormal point set.

【技术实现步骤摘要】
大数据环境下的分布式跨维度异常数据检测方法
本专利技术涉及大数据处理
,且特别涉及一种大数据环境下的分布式跨维度异常数据检测方法。
技术介绍
随着大数据分析和数据挖掘技术的不断发展,数据的体量正变得越来越大,在这大量的数据中,异常数据的数量也随着数据体量的增大而增多,异常数据不同于数据集中的常规数据,其特性偏离常规数据,使得数据分析方法会因为这些数据的存在而使分析结果存在较明显的误差。传统的数据挖掘活动前,数据是经过精心挑选的,保证的数据的完整性和一致性。但大数据环境下的海量数据,无法进行人工的挑选,因此异常数据检测就有十分重要的作用。同时,异常数据,也有其价值,如在信用卡欺骗、网络入侵检测、灾害预警、故障诊断、图像处理分析等领域都是很有价值的数据依据。现有的异常数据检测技术主要有集中式异常数据点检测和分布式异常数据点检测两种。其中集中式异常数据点检测技术属于传统的数据挖掘领域的技术,主要有基于统计的数据集概率分布或模型来筛出严重偏离分布或模型的数据点的检测算法,基于距离的将无足够多相邻数据点的数据点看作异常数据的异常数据点检测算法,基于一定范围内数据点个数及各数据点间的距离来判断异常数据点的数据密度方法,以及基于序列异常的偏差挖掘算法。但这些算法存在可移植性差,对局部数据的异常数据点无能为力,参数设置繁琐,人为因素影响较大和无法应用于多维数据集的缺点和问题。而现有的分布式异常数据点检测技术对异构分布式并行计算环境的适配均存在一定程度的问题,很大程度上存在数据切分不合理,数据分配不倒塌,磁盘I/O和网络I/O较高,开销过大的不足。
技术实现思路
本专利技术为了克服现有技术的不足,提供一种大数据环境下的分布式跨维度异常数据检测方法。为了实现上述目的,本专利技术提供一种大数据环境下的分布式跨维度异常数据检测方法,包括:数据切分,基于输入数据集的维度对输入数据集进行切分,形成多个数据桶;根据每一维度上切分出来的数据桶形成非平衡二叉编码树;基于非平衡二叉编码树将切分出来的多个数据桶分配到各运算节点上;在各个运算节点上计算执行每个数据点的相对离群量;筛选出相对离群量大于或等于设定阈值的数据点,形成异常点集合。于本专利技术一实施例中,数据切分的方法包括:获取待切分的数据桶或输入数据集在某一维度上的中值;以该中值对待切分的数据桶或输入数据集沿所述某一维度进行切分,形成两个子数据桶;当形成的子数据桶中数据点的数量大于或等于平均运算节点数量时,对形成的子数据桶在另一维度上进行再次切分,直到形成的子数据桶中数据点的数量小于平均运算节点数量。于本专利技术一实施例中,基于非平衡二叉编码树将切分出来的多个数据桶分配到各运算节点上的方法包括:以分布式计算环境中运算节点集合Mset为输入,对切分后的数据桶集合Bset进行降序排列得到取中前COUNT(Mnode)个数据桶分别分配给Mset中的每一个节点,COUNT(Mnode)为分布式计算环境中运算节点的数量;计算运算节点集合Mset中的每一个节点现已分配的数据桶中所有数据点dpoint的数量的均值,记为初始化空结点集合Mtmp,将运算节点集合Mset中所有分配到数据点dpoint的数量小于的节点加入Mtmp;对空结点集合Mtmp中的节点按其包含的数据点dpoint的数量升序排列,得到确定与未被分配的数据桶biunalloc邻接的数据桶,将未被分配的数据桶biunalloc分配给和它邻接的数据桶最多的节点mi。于本专利技术一实施例中,确定一个数据桶的邻接数据桶的方法为:获取每一个数据桶在非平衡二叉编码树中的编码;根据获取到的编码计算每一个数据桶在每一维度上的十进制值;将每一维度上的十进制值进行组合形成这个数据桶的坐标;根据每个数据桶的坐标确定其邻接数据桶。于本专利技术一实施例中,在各个运算节点上计算执行每个数据点的相对离群量的具体步骤为:在各个运算节点上计算执行每个数据点的离群度;根据离群度计算数据点的局部离群量;根据数据点的局部离群量计算执行每个数据点的相对离群量。于本专利技术一实施例中,采用以下公式计算执行每个数据点的离群度其中,和分别为维度l上第i个数据点和第j个数据点,COUNT(dpoint)为参与运算的数据点的总数。于本专利技术一实施例中,采用以下公式计算数据点的局部离群量:其中,为数据点的局部离群量。于本专利技术一实施例中,采用以下公式计算执行每个数据点的相对离群量:其中,为执行每个数据点的相对离群量。综上所述本专利技术提供的大数据环境下的分布式跨维度异常数据检测方法,提出一种高效的数据切分算法,并结合编码方式将数据的分配过程进行优化,减少系统开销,加速集群的运算,从而保证了异常点检测过程在分布式并行计算环境中的高效进行,对于解决大数据环境下的海量数据中的异常数据检测这样的复杂问题具有较好的效果。为让本专利技术的上述和其它目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合附图,作详细说明如下。附图说明图1所示为本专利技术一实施例提供的大数据环境下的分布式跨维度异常数据检测方法的流图。图2所示为本专利技术一实施例提供的大数据环境下的分布式跨维度异常数据检测方法中给出的非平衡二叉编码树的结构图。图3所示为确定一个数据桶的邻接数据桶的方法图。具体实施方式如图1所示,本实施例提供的大数据环境下的分布式跨维度异常数据检测方法包括:数据切分,基于输入数据集的维度对输入数据集进行切分,形成多个数据桶(步骤S1)。根据每一维度上切分出来的数据桶形成非平衡二叉编码树(步骤S2)。基于非平衡二叉编码树将切分出来的多个数据桶分配到各运算节点上(步骤S3)。在各个运算节点上计算执行每个数据点的相对离群量(步骤S4)。筛选出相对离群量大于或等于设定阈值的数据点,形成异常点集合(步骤S5)。该方法始于步骤S1,在对高维度大数据的处理中为保证分布式环境下的运算效率,需要对输入的数据集进行切分。于本实施例中,基于输入数据集的维度对输入数据集进行切分,形成bcount个数据桶(Bucket),Bucket集合为Bset={b1,b2,…,bbcount},在Bucket集合中各个Bucket内的数据点dpoint的个数不等,其中具体的切分方法为,首先对输入的数据集进行切分,接着对切分出来的子数据桶再进行切分,数据集和数据桶的切分方法相同,以下以Bucketb在第l维度上的切分为例进行说明。首先,获取Bucketb在第l维度上的中值接着,以该中值对Bucketb沿第l维度进行切分,形成两个子Bucket,分别为bleft和bright。判断bleft中的数据点的数量是否大于或等于平均运算节点数量,当bleft中的数据点的数量大于或等于平均运算节点数量时,对bleft在另一维度上再次采用上述方法进行切分,直到形成的子Bucket上的数据点的数量小于平均运算节点数量。同样的,采用相同的方法对bright进行切分。中值和平均运算节点数量AVGdpoint分别采用以下公式计算:其中,和分别为Bucketb在第l维度上的上下界,COUNTdpoint(bleft)为bleft中数据点的数量,COUNTdpoint(bright)为bright中数据点的数量,为输入数据集中数据点的数量,COUNT(Mnode)为分布式计算环境中运算节点的数量,l∈本文档来自技高网...
大数据环境下的分布式跨维度异常数据检测方法

【技术保护点】
一种大数据环境下的分布式跨维度异常数据检测方法,其特征在于,包括:数据切分,基于输入数据集的维度对输入数据集进行切分,形成多个数据桶;根据每一维度上切分出来的数据桶形成非平衡二叉编码树;基于非平衡二叉编码树将切分出来的多个数据桶分配到各运算节点上;在各个运算节点上计算执行每个数据点的相对离群量;筛选出相对离群量大于或等于设定阈值的数据点,形成异常点集合。

【技术特征摘要】
1.一种大数据环境下的分布式跨维度异常数据检测方法,其特征在于,包括:数据切分,基于输入数据集的维度对输入数据集进行切分,形成多个数据桶;根据每一维度上切分出来的数据桶形成非平衡二叉编码树;基于非平衡二叉编码树将切分出来的多个数据桶分配到各运算节点上;在各个运算节点上计算执行每个数据点的相对离群量;筛选出相对离群量大于或等于设定阈值的数据点,形成异常点集合。2.根据权利要求1所述的大数据环境下的分布式跨维度异常数据检测方法,其特征在于,数据切分的方法包括:获取待切分的数据桶或输入数据集在某一维度上的中值;以该中值对待切分的数据桶或输入数据集沿所述某一维度进行切分,形成两个子数据桶;当形成的子数据桶中数据点的数量大于或等于平均运算节点数量时,对形成的子数据桶在另一维度上进行再次切分,直到形成的子数据桶上数据点的数量小于平均运算节点数量。3.根据权利要求1所述的大数据环境下的分布式跨维度异常数据检测方法,其特征在于,基于非平衡二叉编码树将切分出来的多个数据桶分配到各运算节点上的方法包括:以分布式计算环境中运算节点集合Mset为输入,对切分后的数据桶集合Bset进行降序排列得到取中前COUNT(Mnode)个数据桶分别分配给Mset中的每一个节点,COUNT(Mnode)为分布式计算环境中运算节点的数量;计算运算节点集合Mset中的每一个节点现已分配的数据桶中所有数据点dpoint的数量的均值,记为初始化空结点集合Mtmp,将运算节点集合Mset中所有分配到数据点dpoint的数量小于的节点加入空结点集合Mtmp;对空结点集合Mtmp中的节点按其包含的数据点dpoint的数量升序排列,得到确定与未被分配的数据桶biunalloc邻接的数据桶,将未被分配的数据桶biunalloc分配给和它邻接的数据桶最多的节点mi。4.根据权利要求3所述的大数据环境下的分布式跨维度异常数据检测方法,其特征在于,确定一个数据桶的邻接数据桶的方法为:获取每一个数据桶在非平衡二叉编码树中的编...

【专利技术属性】
技术研发人员:刘东升许翀寰
申请(专利权)人:浙江工商大学
类型:发明
国别省市:浙江,33

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

1