一种大数据流中的基于最近邻的时间敏感性异常检测方法技术

技术编号:21344285 阅读:22 留言:0更新日期:2019-06-13 22:45
本发明专利技术提供一种大数据流中的基于最近邻的时间敏感性异常检测方法,属于大数据流、异常检测技术领域,核心是一个以LSH抽样视图为基础的统计估计器,滑动窗口使用确定波模型,将估计确定波窗口内多个随机时间区间的计数和方差以监测数据在不同时间区间的分布,能够快速寻找大数据流中的各数据的邻居,降低计算开销,无需单独为每个数据保存其邻居信息,节省空间占用,提高更新效率,基于时间敏感性能够快速判断数据分布是否异常以及异常发生的时间范围。

A Time Sensitive Anomaly Detection Method Based on Nearest Neighbor in Large Data Stream

The invention provides a time-sensitive anomaly detection method based on nearest neighbor in large data flow, belonging to the technical field of large data flow and anomaly detection. The core of the method is a statistical estimator based on LSH sampling view. The sliding window uses a deterministic wave model to estimate the counts and variances of multiple random time intervals in a wave window to monitor data in different time intervals. Distribution can quickly find the neighbors of each data in large data streams, reduce computing overhead, save space occupation and improve update efficiency without saving neighbor information for each data. Based on time sensitivity, it can quickly judge whether the data distribution is abnormal and the time range of abnormal occurrence.

【技术实现步骤摘要】
一种大数据流中的基于最近邻的时间敏感性异常检测方法
本专利技术属于大数据流、异常检测
,具体涉及一种对时间敏感的异常检测方法。
技术介绍
数据流中的异常检测是欺诈检测、计算机网络安全、医疗和公共卫生异常检测等几个领域的重要任务。异常检测的目标是检测数据中行为或者分布与其他数据差异很大的数据,即离群点。例如在肝部肿瘤检测中,一旦血液中的甲胎蛋白含量大大超过正常值,那么该患者有极大的可能患有肝癌。异常检测帮助发现数据中这种不符合期望行为的异常数据。数据流是一种特殊数据模型,它往往是无限、高速、多维、动态变化的。数据流的新特性给异常检测带来了一些必须考虑的问题,例如如何存储无限的规模庞大的数据,如何使得数据处理速度与数据流速相匹配,如何处理动态更新的高维数据并且从中获取关键信息。由于异常定义的固有模糊性,例如如何定义常规行为,异常与常规行为不一致程度等,异常检测仍然不是一个容易的问题。考虑到数据流的新特性,异常检测问题变得更加复杂异常检测分为监督的和无监督的检测。监督异常检测利用机器学习算法(例如分类)对标记为异常/非异常的数据集进行检测。然而由于缺少关于异常与否的标签信息,监督场景在实际应用中很少发生。因此无监督的异常检测更为常见,它不需要任何标签信息。数据流中的无监督异常检测可以大致分为三类:1)基于统计,2)基于聚类和3)基于最近邻。在基于统计的方法中,目标是学习数据集的正常情况下的统计模型。此后,不符合该模型的数据被标记异常。然而,这种需要关于数据集的基础分布的先验知识,对于随时间动态变化的数据流是不可用的。聚类数据流近年来已成为一个有趣的话题,并引起了许多研究人员的关注并且可以用于数据流中的异常检测。这种方法假定异常数据被分到具有少量数据或低密度的簇中,或者根据数据点到其最近的簇质心的距离来检测。基于聚类的算法需要足够长的学习过程才能得到较为准确的聚类结果。基于最近邻的方法通常基于其自身行为与其近邻的行为之间的差异来定义点的离群程度。给定数据集D和阈值k(k>0),如果数据o在D中有少于k个邻居,则o为离群点。这种方法易于实现,但是无法检测分布偏离正常情况的异常。目前流行的基于最近邻的算法有exact-Storm、abstractC、thresh_LEAP、MCOD和approx-Strom,这五种方法的核心是给定邻居之间的最大距离R,计算滑动窗口内数据的距离从而计算邻居数量。
技术实现思路
本专利技术的目的是提出一种大数据流中的基于最近邻的时间敏感性异常检测方法,为一种改进的基于近邻的异常检测方法(NearestNeighborsbasedTimeSensitiveAnomalyDetection,NN-TS),能够快速寻找大数据流中的各数据的邻居,降低计算开销,无需单独为每个数据保存其邻居信息,节省空间占用,提高更新效率,基于时间敏感性能够快速判断数据分布是否异常以及异常发生的时间范围。为实现上述目的,本专利技术采用的技术方案如下:一种大数据流中的基于最近邻的时间敏感性异常检测方法,其步骤包括:根据大数据流中数据的维度确定数组参数K和L和阈值参数α和β,创建一个L行2K列的二维数组DW_W,数组的每一项是一个确定波窗口,初始化生成KL个随机向量wij,用于构建算法中的L个哈希函数;对到来的大数据流中的数据,利用上述哈希函数将数据哈希到哈希表即2KL个确定波窗口内,每个哈希函数对应一行;计算对应确定波窗口的计数估计c,进而计算上述算法开始至当前的计数估计的平均值μ,如果c<αμ,则判定为数据异常;估计确定波窗口多个随机时间区间的计数c1,c2,…,cw,得到方差δ,进而计算上述算法开始至当前的所有确定波窗口方差的平均值δ',如果δ>βδ',则判定为数据异常。进一步地,所述哈希函数采用签名随机投影技术,初始化随机生成的随机向量wij~N(0,1),i∈[1,L],j∈[1,K]。进一步地,所述L个哈希函数为Hi(x)=[hi1(x);hi2(x);…;hiK(x)],i∈[1,L]。其中sign()为随机投影签名函数,进一步地,利用所述哈希函数将数据哈希到确定波窗口内的方法为:每个哈希函数对应哈希表的一行即2K个确定波窗口,经过L次哈希即K×L次随机投影签名计算得到L个K位二进制哈希结果,每一个行对应位置的确定波窗口DW_W[i][Hi(x)]插入数据。进一步地,所述计数估计进一步地,所述计数估计的平均值n是已经处理的大数据流中的数据数目。进一步地,所述所有确定波窗口方差的平均值n是已经处理的大数据流中的数据数目。一种大数据流中的基于最近邻的时间敏感性异常检测系统,包括存储器和处理器,所述存储器存储计算机程序,所述程序被配置为由所述处理器执行,所述程序包括用于执行上述方法中各步骤的指令。一种存储计算机程序的计算机可读存储介质,所述计算机程序包括指令,所述指令当由服务器的处理器执行时使得所述服务器执行上述方法中的各个步骤。本方法的核心是一个以LSH(LocalitySensitiveHashing)抽样视图为基础的统计估计器。滑动窗口使用确定波模型,这种窗口模型十分适合增量式计算,更新代价小,效率极高。本方法中进一步估计确定波窗口内多个随机时间区间的计数和方差以监测数据在不同时间区间的分布。算法中,当数据邻居数量低于阈值或者窗口内该数据的分布方差超过阈值,数据被判定为异常。本专利技术提出的方法(以下简称NN-TS方法)具有以下的优点及效果:1、时间效率高。利用LSH算法寻找邻居,避免了大量的距离计算,大幅度降低了基于近邻的异常检测算法中的计算开销,大幅度提升了了异常检测的速度。2、空间效率和更新效率高。利用LSH算法寻找数据的邻居,同一个窗口内的数据互为邻居,不在同一个窗口的数据不是邻居,无需单独为每个数据保存其邻居信息,节省了空间。哈希过后的添加和删除操作都是确定波窗口操作,对其他窗口的数据没有影响,大大削减了数据更新开销。3、算法具有时间敏感特性。估计滑动窗口多个时间区间的计数,通过计算方差判断数据的分布是否异常,并根据时间区间定位异常发生的时间范围。4、本专利技术是一种无监督的算法,因此不需要对样本进行标注,也无需进行模型训练。易于部署和降低开发成本。附图说明图1是实施例中的NN-TS方法数据结构图。图2是实施例中的NN-TS方法流程图。图3A-3B是分别针对Shuttle和Tao数据的各算法处理时间曲线图。图4A-4B是分别针对Shuttle和Tao数据的各算法空间占用曲线图。图5A-5B是分别针对Shuttle和Tao数据的各算法召回率曲线图。具体实施方式为使本专利技术的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图作详细说明如下。在举实施例之前,先对数据流中的离群点进行定义如下:定义1.数据流中的离群点:给定数据流DS、当前窗口W、DS中的一个数据xt以及两个阈值参数α和β;NN()和V()分别是邻居计算和方差计算函数。如果或者那么xt是一个离群点,否则是正常数据。本专利技术技术方案原理如下:1.依据基于最近邻的异常检测原理,利用LSH算法寻找大数据流中数据的邻居。相似性很大的数据称之为邻居,正常数据之间通常具有很高的相似性,而与异常数据相似性很低。利用LSH算法,将相似本文档来自技高网
...

【技术保护点】
1.一种大数据流中的基于最近邻的时间敏感性异常检测方法,其步骤包括:根据大数据流中数据的维度确定数组参数K和L和阈值参数α和β,创建一个L行2

【技术特征摘要】
1.一种大数据流中的基于最近邻的时间敏感性异常检测方法,其步骤包括:根据大数据流中数据的维度确定数组参数K和L和阈值参数α和β,创建一个L行2K列的二维数组DW_W,数组的每一项是一个确定波窗口,初始化生成KL个随机向量wij,用于构建算法中的L个哈希函数;对到来的大数据流中的数据,利用上述哈希函数将数据哈希到哈希表即2KL个确定波窗口内,每个哈希函数对应一行;计算对应确定波窗口的计数估计c,进而计算上述算法开始至当前的计数估计的平均值μ,如果c<αμ,则判定为数据异常;估计确定波窗口多个随机时间区间的计数c1,c2,…,cw,得到方差δ,进而计算上述算法开始至当前的所有确定波窗口方差的平均值δ',如果δ>βδ',则判定为数据异常。2.如权利要求1所述的方法,其特征在于,所述哈希函数采用签名随机投影技术,初始化随机生成的随机向量wij~N(0,1),i∈[1,L],j∈[1,K]。3.如权利要求2所述的方法,其特征在于,所述L个哈希函数为Hi(x)=[hi1(x);hi2(x);…;hiK(x)],i∈[1,L];对...

【专利技术属性】
技术研发人员:吴广君贾思宇张磊赵志慧李军
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:北京,11

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

1