基于top-k(σ)算法的异常数据检测方法

文档序号:8925758阅读:517来源:国知局
基于top-k(σ)算法的异常数据检测方法
【技术领域】
[0001] 本发明设及一种无线传感器网络异常数据检测方法,具体是设及一种基于 t〇p-k(〇 )算法的无线传感器网络异常数据检测方法。
【背景技术】
[0002] 在真实的生活环境中存在很多物理现象(比如温度、湿度、大气压力等)都需要持 续地被监测。无线传感器网络作为一种非常重要的数据来源,其采集的数据非常容易受到 各种噪声来源的影响,比如节点软硬件故障,节点通信时遇到的环境噪声。该些噪声会严重 影响传感器的读数,W及数据的分布情况,导致传感器产生不精确的或不正确的数据。因 此,设计一种有效的数据流分析处理方法是近年来无线传感器网络异常检测研究的重点。
[0003] 异常检测技术在各个领域中都是一个深入研究的问题,无线传感器网路独特的特 点W及严格的约束条件使得该问题的研究更具有挑战性。针对无线传感器网路中的异常数 据检测问题,目前已经提出过很多种方法,该些方法可W分为基于分布的、基于深度的、基 于聚类的、基于距离的W及基于密度的方法。此外,按照传感器网络体系机构异常检测技术 又可W集中分为集中式的和分布式的。
[0004] 化ai化SA等人提出的基于top-k算法在数据挖掘等领域中具有广泛的应用,该 算法主要是通过构造构造数据列表,将列表中的某列按数据特征进行升序排列,从而进行 异常数据的判断,该方法的优点是根据构造的数据列表可W直观地识别异常数据点分布的 区域及数目,且该方法在无线传感器网络异常数据检测应用中尚未见到。但是,由于目前大 规模无线传感器网络数据异常值的出现并无特定规律,如果传感器采集到的无线传感网络 数据的异常值持续、频繁出现,或者异常值在正常值周围分布比较均匀时,基于top-k算法 的无线传感器网络异常检测方法则不能有效地检测出异常值。
[0005] 因此,需要提出一种新型的无线传感器网络异常值检测方法。

【发明内容】

[0006] 发明目的;为了克服现有技术中存在的不足,本发明提供一种高检测率和低误报 率的基于top-k( 0 )算法的异常数据检测方法。
[0007] 技术方案:为实现上述目的,本发明的提供的一种基于top-k(o)算法的异常数 据检测方法,包括W下步骤:
[000引 S1 ;将传感器节点采集的数据进行数据标准化处理;
[0009] S2 ;根据处理后的数据的分布规律构造数据单元格,该数据单元格包括若干个小 数据单元格,小数据单元格表示为Cwj.,其中i表示小数据单元格的行号W及j表示小数据 单元格的列号;
[0010] S3 ;构造PC列表,所述PC列表包括四列数据,第一列数据表示小数据单元格Cw 的位置,第二列数据表示该小数据单元格Cwj.中数据点的个数,第二列数据用N(c)表示,第 S列数据Nd(C)表示该小数据单元格Cwj.的D领域内的数据点的个数,第S列数据用ND(C) 表示,第四列数据RD表示分布数据集到中屯、数据集的距离,第四列数据用RD表示;
[0011] S4 ;将小数据单元格Cw中数据点的个数填入所述PC列表中与该小数据单元格 Cw对应的第二列数据中,将小数据单元格CW的D领域内的数据点的个数填入所述PC列 表中与该小数据单元格Cwj对应的第=列数据中,将分布数据集到中屯、数据集的距离填入 所述PC列表中与该小数据单元格Cwj对应的第四列数据中。
[0012] S5 ;将所述PC列表中的第S列数据进行升序排列;
[001引 S6 ;将排列后的PC列表中位于上层位置的对应的小数据单元格Cw中的数据点 作为潜在异常数据点;
[0014] S7 ;将所述潜在异常数据点对应的小数据单元格Cw对应的第四列数据分别与阔 值0进行比较,如果第四列数据大于阔值0,则与该第四列数据对应的小数据单元格Cw 内的数据点为异常数据点,否则与该第四列数据对应的小数据单元格Cwj.内的数据点为正 常数据点。
[0015] 进一步地,步骤S3中所述小数据单元格Cwj的D领域表示^点〇为中屯、,D为半 径的领域,其中所述点0位于所述小数据单元格Cwj.的正中屯、,所述半径D为正数。
[0016] 进一步地,步骤S3中计算分布数据集到中屯、数据集的距离包括W下步骤:
[0017]S31;设传感器节点采集的所有数据点的集合为样本集r,所述中屯、数据集是指 所述样本集r中正常数据点的集合,所述分布数据集是指所述样本集r中任一子集;
[0018] S32;设数据点〇1是所述中屯、数据集的中屯、数据点,设数据点〇2是所述分布数据集 的中屯、数据点;
[0019]S33 ;计算所述数据点〇1和所述数据点02之间的欧式距离,则所述数据点0 1和所 述数据点〇2之间的欧式距离为所述分布数据集到所述中屯、数据集的距离。
[0020] 进一步地,步骤S7中所述阔值0的取值范围是2. 5~3。
[002U 有益效果;本发明提出的基于top-k(0 )算法主要是针对现有技术中基于top-k 算法的改进,具有的优点是:
[0022] 1、利用基于top-k算法对异常值进行检测时,当异常点在某个单元格内分布比较 密集时,根据Nd(C)所在的列按升序排列后,异常点所在的数据单元格就不会位于PC列表 的前几行,该样容易将异常值误判为正常值;或者当正常数据点分布疏散,根据Nd(C)所在 的列按升序排列后,正常数据点所在的数据单元格可能会出现在PC列表的前几行,该样容 易将正常值误判为异常值;而本发明通过增设距离阔值0和PC列表中数据列RD,利用位 于PC列表中前几行的RD的值与阔值0进行比较来判定无线传感器网络数据异常情况,有 效避免了把异常值误判为正常值或者有效避免了将正常值误判为异常值,大大降低了本发 明算法的误报率,通过具体仿真实验发现,本发明提出的算法的误报率比基于top-k算法 降低了 4.48% ;
[0023] 2、本发明通过调整阔值0的取值大大提高了本发明算法的检测率,通过具体仿 真实验发现,本发明提出的算法检测率达到了 93. 7%,本发明的算法与基于top-k算法比 较检测率提高了 4.94%。
【附图说明】
[0024] 图1是本发明提出的基于top-k(0)算法的异常数据检测方法的流程图;
[0025] 图2是单元格领域示意图;
[0026] 图3是分布数据集到中屯、数据集的距离示意图;
[0027] 图4是样本数据分布示意图;
[002引 图5是不同的阔值0所对应的top-k(0)算法的检测率;
[0029] 图6是不同的阔值0所对应的top-k(0)算法的误报率;
[0030] 图7是基于top-k算法和基于top-k(0)算法两种算法的检测率的对比图; [003U图8是基于top-k算法和基于top-k(0)算法两种算法的误报率的对比图。
【具体实施方式】
[0032] 下面结合实施例对本发明作更进一步的说明。
[003引本发明提出的一种基于top-k(o)算法的异常数据检测方法,参照图1,当无线传 感器网络应用于环境检测时,传感器节点采集的数据属性包括温度、湿度、大气压力等,该 些数据属性的度量单位不一致,所W在利用本发明的方法时首先需要对传感器节点采集的 数据进行数据标准化处理;
[0034] 然后根据处理后的数据的分布规律构造数据单元格,数据点分布在数据单元格 中,该数据单元格是由若干个小数据单元格组成,也可W说是由若干个矩形网格组成,其中 每一个小数据单元格可W表示为Cwj.,其中i表示小数据单元格在数据单元格中的行号W 及j表示小数据单元格在数据单元格中的列号,参照图4,数据单元格是一个7行7列的数 据单元格W第7行第5列的小数据单元格为例,该小数据单元格表示为
[0035] 接着构造PC列表,所述PC列表包括
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1