CN103561418A - 基于时间序列的异常检测方法 - Google Patents
基于时间序列的异常检测方法 Download PDFInfo
- Publication number
- CN103561418A CN103561418A CN201310548853.4A CN201310548853A CN103561418A CN 103561418 A CN103561418 A CN 103561418A CN 201310548853 A CN201310548853 A CN 201310548853A CN 103561418 A CN103561418 A CN 103561418A
- Authority
- CN
- China
- Prior art keywords
- msub
- mover
- data
- mrow
- segment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 39
- 230000002159 abnormal effect Effects 0.000 claims abstract description 74
- 238000000034 method Methods 0.000 claims abstract description 46
- 238000010219 correlation analysis Methods 0.000 claims abstract description 10
- 238000004364 calculation method Methods 0.000 claims description 34
- 238000007906 compression Methods 0.000 claims description 19
- 230000006835 compression Effects 0.000 claims description 18
- 230000005856 abnormality Effects 0.000 claims description 7
- 230000006837 decompression Effects 0.000 claims description 6
- 238000003672 processing method Methods 0.000 claims description 6
- 230000011218 segmentation Effects 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 3
- 230000002441 reversible effect Effects 0.000 claims description 3
- 238000004458 analytical method Methods 0.000 abstract description 20
- 238000004422 calculation algorithm Methods 0.000 description 29
- 238000002474 experimental method Methods 0.000 description 22
- 230000000694 effects Effects 0.000 description 19
- 238000013144 data compression Methods 0.000 description 7
- 101000935117 Homo sapiens Voltage-dependent P/Q-type calcium channel subunit alpha-1A Proteins 0.000 description 5
- 208000036758 Postinfectious cerebellitis Diseases 0.000 description 5
- 102100025330 Voltage-dependent P/Q-type calcium channel subunit alpha-1A Human genes 0.000 description 5
- 238000005265 energy consumption Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000007621 cluster analysis Methods 0.000 description 3
- 238000000691 measurement method Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000002547 anomalous effect Effects 0.000 description 2
- 238000011524 similarity measure Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明公开了一种基于时间序列的异常检测方法,包括节点内数据相关性分析和节点间数据相关性分析:节点内数据相关性描述的是传感器节点数据的时间相关性,计算当前数据与历史数据之间的数据相关性;节点间数据相关性描述的是不同传感器节点之间的空间数据相关性,计算传感器节点数据与其邻居节点数据之间的数据相关性。本发明提供的基于时间序列的异常检测方法,能有效地检测出异常数据,而且在有错误数据的影响下仍能保持良好的性能;同时本发明应用了一种时间序列数据的近似方法,能够有效地压缩时间序列数据,并给出了压缩时间序列之间相似性的度量方法,用于时间序列的聚类分析,从而实现基于时间序列的异常检测。
Description
技术领域
本发明涉及一种无线传感器网络的异常检测方法,尤其涉及一种基于时间序列的异常检测方法。
背景技术
无线传感器网络异常检测主要用来检测传感器节点采集的数据是否发生异常,也就是检测哪些节点数据与大多数节点数据发生了偏离或不满足正常数据特征,并将结果反馈给用户,以便用户做出相应的决策。
在无线传感器网络中,传感器节点周期性产生的连续数据可以表示为时间序列。因而可以使用时间序列异常检测技术实现传感器网络的数据异常检测。由于时间序列是大量的流式数据,若直接对原始时间序列进行分析、处理并发送给基站,能量消耗和网络通信代价较高。因此需要对原始时间序列进行数据压缩,降低数据维度。为了能够在压缩后的时间序列上进行相似性度量、聚类分析以及异常检测,时间序列的数据压缩率需要在一定的数据误差允许范围内。这样,压缩后的时间序列间的相似度就可以近似代替原始时间序列间的相似度;同时压缩数据也可以近似恢复,实现无线传感器网络数据收集的应用需求。基于时间序列的异常检测可以在压缩时间序列上进行,减少了数据传输量和数据处理时间,降低了无线传感器网络的能量消耗。
现有的时间序列数据近似方法大多都不能直接用于无线传感器网络。文献E.Keogh,M.Pazzani.Scaling up Dynamic Time Warping for Data Mining Application[C].In:Proceeding of theSixth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining,2000:285-289.和文献E.Keogh,K.Chakrabarti,M.Pazzani,et al.Dimensionality Reduction for Fast Similarity Searchin Large Time Series Database[C].In:Proceedings of the ACM SIGMOD International Conference onManagement of Data,2001:151-162.提出了分段聚集近似方法(PAA),并且给出了相应的相似性度量方法。但是,PAA在数据分段压缩时,每段都取同样的长度,且各段的值用该段的平均值来近似,压缩后的数据丢失了原始时间序列的局部特性,因而在时间序列相似性分析时存在较大的误差。文献J.Lin,E.Keogh,S.Lonardi,and B.Chiu.A SymbolicRepresentation of Time Series,with Implications for Streaming Algorithms.In:Proceedings of the2003ACM SIGMOD Workshop on Research Issues in Data Mining and Knowledge Discovery,pages2-11.ACM Press,2003提出了符号化方法(SAX),是在PAA方法的基础上将时间序列转换成了符号序列,因而存在与PAA相同的问题。文献E.Keogh,K.Chakrabarti,S.Mehrotra et al.LocallyAdaptive Dimensionality Reduction for Indexing Large Time Series Databases[C].In:ACM SIGMOD2001,Santa Barbara,California,2001.提出了适应性分段常量近似方法(APCA),给出了相似性度量方法,但是较为复杂。该方法尽管数据压缩率满足给定误差要求,然而仅分析了压缩时间序列与其他原始时间序列之间的相似性度量方法,没有给出压缩时间序列之间的相似性度量方法。
发明内容
发明目的:为了克服现有技术中存在的不足,本发明根据无线传感器网络的时间序列数据特性,提出了一种基于时间序列的异常检测算法(Anomaly Detection AlgorithmBased on Time Series,ADTS),利用时间序列近似方法有效减少数据传输量和数据处理时间,同时还给出了压缩时间序列之间的相似性度量方法,用于时间序列的聚类分析和异常检测。
技术方案:为实现上述目的,本发明采用的技术方案为:
基于时间序列的异常检测方法,包括如下步骤:
(1)各个节点获取自身的检测数据,进入步骤(2);
(2)各节点对本地数据进行时间相关性分析,即计算节点当前时间窗口内数据与历史时间窗口内数据的欧几里德距离:若计算结果小于给定距离阈值,则当前时间窗口内数据与历史时间窗口内数据满足时间相关性,为正常数据,返回步骤(1);否则当前时间窗口内数据与历史时间窗口内数据不满足时间相关性,为不正常数据,进入步骤(3);
(3)各节点将当前窗口内数据进行近似压缩,并将压缩后的数据发送至邻居节点,进入步骤(4);
(4)各节点进行空间相关性计算,计算本节点当前时间窗口内的压缩数据与接收到的邻居节点压缩数据之间的近似欧几里德距离或下界距离:若计算结果小于给定距离阈值,则本节点当前时间窗口内的压缩数据与接收到的邻居节点压缩数据满足空间相关性;否则本节点当前时间窗口内的压缩数据与接收到的邻居节点压缩数据不满足空间相关性;本节点将判定结果反馈给压缩数据发送方节点,进入步骤(5);
(5)各节点根据邻居节点的反馈结果,对本节点的不正常数据进行审查,判别其为异常数据或是错误数据:若存在一定数量的邻居节点与本节点的不正常数据存在相关性,则该不正常数据为异常数据;若不存在邻居节点与本节点的不正常数据具有相关性,则该不正常数据为错误数据。
时间序列是由一系列数据元素组成的有序集合,这些元素本身由记录时刻和记录值构成,记为X=<x1=(t1,v1),x2=(t2,v2),...,xn=(tn,vn)>,其中元素xi=(ti,vi)表示在ti时刻取得记录值为vi,这里记录时刻ti是严格单调增加的,即
通常时间序列的记录时间间隔△t=ti+1-ti是相等的,于是对于上述时间序列可以取t1=0,△t=1,那么时间序列X=<x1=(t1,v1),x2=(t2,v2),......,xn=(tn,vn)>可以简记为X=<x1,x2,......,xn>。|X|称为时间序列XX的模,表示时间序列的长度,即元素x的数量。对于广义时间序列,记录值vi可以是离散符号、结构数据、多媒体数据等,对于狭义的时间序列,记录值vi为实数类型。
在无线传感器网络的一些应用中,如果用户给定数据允许误差为ε,那么数据x就可以用[x-ε,x+ε]范围内的任意一个数据近似代替,即每一个数据都有这样的近似范围。当连续采集数据时,为了用一个近似值代替更多的数据,只要这个近似值在每个数据的近似范围内,那么这个近似值就能代替这一段连续数据,并且满足误差要求。据此,本发明提出ULBA压缩方法,用于本发明中的近似压缩。
所述ULBA压缩方法,即对于一个给定的时间序列X=<x1,x2,…,xn>,使用ULBA产生的分段压缩序列表示为:
具体实现过程为:
a.对于数据x,使用下面的近似函数进行计算:
其中,x′表示x的近似值;Vref表示比x值域最小值还小的参考值,即对任意x,Vref<x恒成立;Vacc表示允许的最大误差,运算符表示向下取整;
x可以使用x′或x′+Vacc来代替;
该数据近似函数的效果相当于以Vacc为宽度在数据值域内划分出n个等宽的区间,每个区间内的数据值用这个区间的下边界值来近似代替;即对任意的x,它都落在[x′,x′+Vacc)区间内,且用x′来近似代替x;因为满足|x-x′|≤Vacc,即满足误差要求,所以可以用x′近似代替x;由观察可知,|x-(x′+Vacc)|≤Vacc同样成立,因此x′+Vacc也可以近似代替x;
b.对于任意分段,分段的近似值有两个,分别为该分段起始时间点数据的近似值与近似值加上允许最大误差值;分段初始时,分段的近似值处于可选状态,近似值有上述两个可选值;
c.按时间顺序依次对数据进行分段:若待分段数据不是该分段的起点,且该分段的近似值处于可选状态,数据的处理方法按d步骤执行;若待分段数据不是该分段的起点,且该分段的近似值处于确定状态,数据的处理方法按e步骤执行;
d.若数据的两个代替值与分段的两个可选值均相等,则数据合并到这个分段,该分段仍然处于可选状态;若数据的两个代替值与分段的两个可选值均不相等,则数据不能合并到这个分段,该分段的近似值选取两个可选值中较小的一个,分段结束,以这个数据为起点开始一个新的分段;若数据的两个代替值与分段的两个可选值有且仅有一个相等,数据合并到这个分段,分段的近似值选取两者相等的那个值,分段状态设置为确定状态;
e.若数据的两个代替值其中之一与分段的近似值相等,则数据合并到这个分段;否则,数据不能合并到这个分段,分段结束,以这个数据为起点开始一个新的分段;
对于两个给定的时间序列Q=<q1,q2,…,qn>和C=<c1,c2,…,cn>,n为时间序列Q和C的长度;对时间序列Q和C进行ULBA压缩后的近似时间序列分别记为和对近似时间序列和进行解压后获得的时间序列记为和
所述欧几里德距离D(Q,C)的计算方式如下:
所述近似欧几里德距离DAE(Q,C)的计算方式如下:
所述近似下界距离DLB(Q,C)的计算方式如下:
其中,1≤i≤n,Vacc=ε/2。
所述节点在本地使用双缓存时间窗口交替进行自身数据的检测。
有益效果:本发明提供的基于时间序列的异常检测方法,能有效地检测出异常数据,而且在有错误数据的影响下仍能保持良好的性能;同时本发明应用了一种时间序列数据的近似方法,不仅能够有效地压缩时间序列数据,而且还给出了压缩时间序列之间相似性度量的方法,用于时间序列的聚类分析,从而实现时间序列的异常检测;由于传感器网络中传输的都是压缩后的数据,因而具有较少的能量消耗。
附图说明
图1为本发明的流程图;
图2为实施例中传感器节点的部署;
图3为时间序列三种欧几里德距离的计算结果比较;
图4为相对湿度数据的压缩比;
图5为近似欧几里德距离的数据计算比;
图6为数据的聚类结果;
图7为距离阈值对异常数据检测效果的影响;
图8为异常数据查全率;
图9为异常数据查准率;
图10为网络通信量。
具体实施方式
下面结合附图对本发明作更进一步的说明。
技术方案说明部分
如图1所示为一种基于时间序列的异常检测方法,包括如下步骤:
(1)各个节点获取自身的检测数据,进入步骤(2);
(2)各节点对本地数据进行时间相关性分析,即计算节点当前时间窗口内数据与历史时间窗口内数据的欧几里德距离:若计算结果小于给定距离阈值,则当前时间窗口内数据与历史时间窗口内数据满足时间相关性,为正常数据,返回步骤(1);否则当前时间窗口内数据与历史时间窗口内数据不满足时间相关性,为不正常数据,进入步骤(3);
(3)各节点将当前窗口内数据进行近似压缩,并将压缩后的数据发送至邻居节点,进入步骤(4);
(4)各节点进行空间相关性计算,计算本节点当前时间窗口内的压缩数据与接收到的邻居节点压缩数据之间的近似欧几里德距离或下界距离:若计算结果小于给定距离阈值,则本节点当前时间窗口内的压缩数据与接收到的邻居节点压缩数据满足空间相关性;否则本节点当前时间窗口内的压缩数据与接收到的邻居节点压缩数据不满足空间相关性;本节点将判定结果反馈给压缩数据发送方节点,进入步骤(5);
(5)各节点根据邻居节点的反馈结果,对本节点的不正常数据进行审查,判别其为异常数据或是错误数据:若存在一定数量的邻居节点与本节点的不正常数据存在相关性,则该不正常数据为异常数据;若不存在邻居节点与本节点的不正常数据具有相关性,则该不正常数据为错误数据。
时间序列是由一系列数据元素组成的有序集合,这些元素本身由记录时刻和记录值构成,记为X=<x1=(t1,v1),x2=(t2,v2),...,xn=(tn,vn)>,其中元素xi=(ti,vi)表示在ti时刻取得记录值为vi,这里记录时刻ti是严格单调增加的,即
所述近似压缩采用ULBA压缩方法,即对于一个给定的时间序列X=<x1,x2,…,xn>,使用ULBA产生的分段压缩序列表示为:
具体实现过程为:
a.对于数据x,使用下面的近似函数进行计算:
x可以使用x′或x′+Vacc来代替;
该数据近似函数的效果相当于以Vacc为宽度在数据值域内划分出n个等宽的区间,每个区间内的数据值用这个区间的下边界值来近似代替;即对任意的x,它都落在[x′,x′+Vacc)区间内,且用x′来近似代替x;因为满足|x-x′|≤Vacc,即满足误差要求,所以可以用x′近似代替x;由观察可知,|x-(x′+Vacc)|≤Vacc同样成立,因此x′+Vacc也可以近似代替x;
b.对于任意分段,分段的近似值有两个,分别为该分段起始时间点数据的近似值与近似值加上允许最大误差值;分段初始时,分段的近似值处于可选状态,近似值有上述两个可选值;
c.按时间顺序依次对数据进行分段:若待分段数据不是该分段的起点,且该分段的近似值处于可选状态,数据的处理方法按d步骤执行;若待分段数据不是该分段的起点,且该分段的近似值处于确定状态,数据的处理方法按e步骤执行;
d.若数据的两个代替值与分段的两个可选值均相等,则数据合并到这个分段,该分段仍然处于可选状态;若数据的两个代替值与分段的两个可选值均不相等,则数据不能合并到这个分段,该分段的近似值选取两个可选值中较小的一个,分段结束,以这个数据为起点开始一个新的分段;若数据的两个代替值与分段的两个可选值有且仅有一个相等,数据合并到这个分段,分段的近似值选取两者相等的那个值,分段状态设置为确定状态;
e.若数据的两个代替值其中之一与分段的近似值相等,则数据合并到这个分段;否则,数据不能合并到这个分段,分段结束,以这个数据为起点开始一个新的分段。
下面给出在实际使用中的一种ULBA压缩具体算法实现,其空间复杂度为O(1),时间复杂度为O(n),同时该算法也是一个在线压缩时间序列的算法。
由上面算法可知,对任意时间序列X=<x1,x2,…,xn>,在允许误差值为Vacc时,它可以近似表示为 而且下面式子恒成立:
其中,xr0=0。
对于两个给定的时间序列Q=<q1,q2,…,qn>和C=<c1,c2,…,cn>,n为时间序列Q和C的长度;对时间序列Q和C进行ULBA压缩后的近似时间序列分别记为和对近似时间序列和进行解压后获得的时间序列记为和对于任意i,1≤i≤n,Vacc=ε/2。
所述欧几里德距离D(Q,C)的计算方式如下:
所述近似欧几里德距离DAE(Q,C)的计算方式如下:
由近似函数式可得,q′i=f(qi),c′i=f(ci),此时有,q′i≤qi≤q′i+ε/2,c′i≤ci≤c′i+ε/2。由ULBA方法的数据压缩与恢复可知,等于q′i或q′i+ε/2,等于c′i或c′i+ε/2。那么在允许误差值为ε时:
1)当 时,则 那么:
即 所以
2)当 时,则 那么
即 所以
3)当 时,则 那么
即 所以
4)当 时,则 那么
即 所以
综上所述,在误差值为ε时,对任意i且1≤i≤n,那么,可以近似地表示所以DAE(Q,C)是D(Q,C)的近似欧几里德距离,但是这并不能保证DAE(Q,C)是D(Q,C)的下边界(lower-bound)。
所述近似下界距离DLB(Q,C)的计算方式如下:
首先定义:
1)当 时,则 由于|qi-ci|≥0,故
2)当 时,则 由于 故
3)当 时,则 由于 故
由上面的分析可知, 即DLB(Q,C)≤D(Q,C),所以DLB(Q,C)是D(Q,C)的下边界(lower-bound)。
近似欧几里德距离(下界距离)具体算法实现部分
在压缩后的时间序列和上直接计算近似欧几里德距离DAE(Q,C)和近似下界距离DLB(Q,C)。由前面的分析可知,近似恢复的数据就是对压缩数据所有分段数据的拓展,即用每个分段的近似值补全这个分段内所有时间点上的数据近似值。
1)因为 那么
2)因为 那么
由上面的分析可知,在压缩后的时间序列和上直接计算DAE(Q,C)或DLB(Q,C),只需要同时遍历和利用它们记录的所有时间点,按时间顺序用相邻两个时间点确定一个分段,对整个时间序列进行概念上的分段。这样划分好的每个分段就可以用前面两式计算该段的值,并且累加所有分段的计算值,那么这个最后的累加值开平方根就是所求的DAE(Q,C)或DLB(Q,C)。
因此,可以在和上直接计算DAE(Q,C)或DLB(Q,C),而且其计算结果与在和上计算DAE(Q,C)或DLB(Q,C)的计算结果是相同的。这样就可以减少数据处理时间,同时能够节省存储空间。依据上面的分析,计算DAE(Q,C)或DLB(Q,C)的算法十分相似,这里仅给出计算近似欧几里德距离的算法,代码如下,其时间复杂度也是现行的。
实验部分
下面就本案的一些实验对本发明的ADTS算法和ULBA算法加以说明。实验采用两组数据,第一组数据主要验证ULBA算法的压缩效果、时间序列相似性计算空间节省效果以及时间序列的聚类效果;第二组数据主要分析ADTS算法的异常检测效果。
实验数据1:实验数据来自于真实传感器网络采集的温度和湿度数据。在一个面积约为70m2的实验室内以及阳台上部署15个Mica2传感器节点,如图2所示。实验数据为该实验室在日常状态下,所有传感器节点采样频率设置为30秒,连续采集3个月的温度和湿度数据。
实验数据2:模拟了1024个节点构成的传感器网络,分布在32×32的空间范围内。传感器节点数据都为正常数据,错误数据和异常数据采用合成的方式加入。错误数据为随机无序的数据;异常数据为缓慢上升的数据。
ULBA数据近似方法的效果
实验1:通过实验说明ULBA数据近似方法中时间序列的原始欧几里德距离与近似欧几里德距离和下界距离计算值近似相等。在实验数据1中,选择出两个传感器节点在某一天半个小时内监测的连续温度数据作为两个时间序列数据,根据不同的数据长度计算它们之间的欧几里德距离,近似欧几里德距离和下界距离,其中温度数据近似的误差为0.5℃,计算结果如图3所示,其中D表示原始欧几里德距离,DAE表示近似欧几里德距离,DLB表示下界距离。
图3说明时间序列的三种欧几里德距离的计算结果都近似相等,这是因为数据近似满足误差要求,因而在时间序列相似度量方面,近似欧几里德距离和下界距离能够近似代替原始的欧几里德距离。
实验2:通过实验说明ULBA压缩方法能够有效地对时间序列压缩降维。文献C.Olston,J.Jian,and J.Widom.Adaptive Filters for Continuous Queries over Distributed DataStreams[C].In SIGMOD2003:563-574和I.Lazaridis and S.Mehrotra.Capturing SensorGenerated Time Series with Quality Guarantees[C].In ICDE2003:429-440.讨论了三种PCA(piecewise constraint approximation)数据压缩方法,它们的压缩效果也十分近似。本文用其中的PMC_Mean数据压缩方法跟ULBA方法进行比较,分析在不同的误差值下湿度数据的数据压缩比,实验结果如图4所示。
图4说明ULBA方法与PMC_Mean有近似的数据压缩效果,即时间序列维度显著下降。但是,ULBA方法还给出了压缩数据之间的相似性度量方法,即能够用压缩时间序列之间的近似欧几里德距离代替原始时间序列的欧几里德距离,减少计算欧几里德距离的所需的存储空间。
实验3:通过实验说明ULBA方法在进行数据相似性分析时可以节省存储空间。这个实验选用11和12号节点采集的温度数据作为实验数据,比较在不同的温度误差值下,ULBA方法和APCA方法在计算相似欧几里德距离时的数据计算比,从而说明他们对存储空间的需求量,实验结果如图5所示。
图5说明了ULBA的数据计算比远小于APCA的数据计算比,即ULBA计算近似欧几里德距离所需的存储空间远小于APCA计算近似欧几里德距离所需的存储空间。这是因为ULBA是在两个压缩后的数据上进行近似欧几里德距离计算的,而APCA是在一个原始数据和一个压缩后的数据上进行近似欧几里德距离计算的。
实验4:通过实验验证ULBA方法中相似性度量的效果。这个实验主要模拟基站对时间序列的聚类分析;同样在网内也可以对一段时间内的数据序列进行聚类分析。这样的分析结果可用于网络分簇或异常检测等。这个模拟实验选用节点采集的温度数据作为实验数据,要求数据近似允许误差值为0.5℃,采用层次聚类的方法对这些传感器节点的温度数据进行聚类,实验结果如图6所示,其中图中标号代表所对应传感器节点采集的温度数据。
图6显示了所有传感器节点的温度数据的聚类效果,这个实验结果也是与实际相符,例如13、14和15节点放置在阳台上,因而它们采集的温度数据是近似的,而且受室外气温影响较大;而6、1和5等节点放置在图中右边的房间内,它们之间的数据相似度极高;同样7、8和10等节点,放置在图中左边的房间内,环境十分稳定,显然它们采集的数据也十分相似。
从上面实验可以看出,ULBA方法能够有效地对数据进行压缩降维,同时能够有效地在压缩后的数据上进行数据相似性分析。由于相似性分析是在压缩后的数据上进行的,只需少量的存储空间和较少的网络传输量,因此能够有效的节省能量延长网络寿命。根据时间序列的相似性分析,能够实现较好的时间序列聚类效果,这可以用于无线传感器网络的异常数据检测,下面讨论基于时间序列的异常检测的效果。
ADTS算法的异常检测效果
ADTS采用的是时间序列聚类分析的方法进行异常数据的检测,而TTSC(TraditionalTemporal-Spatial Correlation Based Anomaly Detection Algorithm,基于时空相关性的异常检测算法)采用数据平均值比较法进行异常数据的检测。平均值比较法在节点内计算当前时间窗口内有多少个数据与前一个时间窗口平均值之间的差值超出了误差允许范围,假设当前时间窗口内有30%这样的数据就认为当前时间窗口的数据不正常;平均值比较法在节点间就是比较当前时间窗口平均值之间是否近似相等。平均值比较法可以有效检测出不正常的数据,但是不能有效地对它们进行聚类分析,因而不能有效地识别异常数据和错误数据,可能会造成异常数据误报,即把错误数据当成异常数据。
实验5:通过实验分析距离阈值d0对异常数据检测效果的影响。设定30%的传感器节点产生的是异常数据,其余的传感器节点产生的都是正常数据,时间窗口的长度为10,实验结果如图7所示。
图7显示了距离阈值d0对异常数据检测效果的影响。当d0越小时,异常数据与正常数据的欧几里德距离都能超过这个距离阈值,异常数据都能被检测出来,因而异常数据查全率越高;然而正常数据之间的欧几里德距离也可能超过这个距离阈值,会有一些正常数据被误认为是异常数据,因而异常数据的查准率会所下降。当d0越大时,异常数据与正常数据的欧几里德距离可能小于这个距离阈值,会有一些异常数据被误认为是正常数据,因而异常数据的查全率会所下降;然而正常数据之间的欧几里德距离不可能超过这个距离阈值,因而异常数据的查准率会较高。
实验6:通过实验分析随着错误数据的增多,对两种算法的异常数据的查全率和查准率的影响,从而分析异常检测的效果,设定30%的传感器节点产生的是异常数据,产生错误数据的传感器节点的数量由0%逐步上升到30%,其余的传感器节点产生的都是正常数据,时间窗口的长度为10,距离阈值为3.5,实验结果如图8和图9所示。
图8显示了产生错误数据的传感器节点数量增多时,ADTS和TTSC算法对异常数据查全率的对比情况。由于TTSC中平均值比较法也受误差阈值的影响,本实验取其最佳值与ADTS算法比较。由图可知,随着产生错误数据的传感器节点数量增多,ADTS和TTSC算法有基本相同的查全率。首先,这是因为产出异常数据的传感器节点数量固定为30%,因而增加产生错误数据的传感器节点数据不影响异常数据的数量。其次,这是因为无论是时间序列的聚类分析法还是平均值比较法,异常数据和错误数据与正常数据之间都不满足时间相关性,在节点内的时间相关性检测阶段都能够被检测出来。因此,在节点内数据的时间相关性分析阶段,ADTS和TTSC算法都能够检测出异常数据和错误数据这两种不正常的数据,因而ADTS和TTSC算法的查全率保持不变,与产生错误数据的传感器节点数量无关。
图9显示了产生错误数据的传感器节点数量增多时,ADTS和TTSC算法对异常数据查准率的对比情况。由图可知,随着产生错误数据的传感器节点数量增多,TTSC算法的异常数据查准率开始下降,而ADTS算法的异常数据查准率保持不变。这是因为在数据的空间相关性分析阶段,ADTS算法采用时间序列的聚类的方法识别异常数据与错误数据,由于异常数据之间的欧几里德距离较小而能够聚类,而错误数据与错误数据之间以及异常数据与错误数据之间的欧几里德距离较大而不能聚类,这样就有效识别出了异常数据和错误数据。然而,TTSC算法在数据的空间相关性分析阶段,仅通过平均值比较法进行聚类分析,不能有效识别错误数据和异常数据。这是因为尽管错误数据是随机乱序的,但是它们之间的均值可能是相等或近似的相等的,因而TTSC算法不能有效识别出了异常数据和错误数据。
实验7:由于传感器节点计算所消耗的能量要远小于通信消耗的能量,因此用节点的通信量表示节点的能量消耗。实验设定时间窗口长度为10,每个数据占两个字节,那么这10个数据共占20个字节;节点数据空间相关性分析时,每个节点与周围的8个节点通信来判定该节点是异常数据还是错误数据。实验分析在产生异常数据的传感器节点的数量由0%逐步上升到30%时,发送原始时间序列数据与发送压缩后时间序列数据的通信量的对比情况,如图10所示。
图10显示了传送原始时间序列数据与压缩时间序列数据时网络通信量的比较,结果表明传输压缩时间序列能够有效的减少网络通信量,从而降低传感器网络的能量消耗。
经过上面的实验,可以得出ADTS算法有很好的异常检测效果,尤其在有错误数据存在的情况下依然有良好的异常数据检测效果;由于节点之间传输的是压缩后的时间序列数据,ADTS算法能有效地减少传感器网络的通信量,有效节省传感器网络的能量。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (4)
1.基于时间序列的异常检测方法,其特征在于:包括如下步骤:
(1)各个节点获取自身的检测数据,进入步骤(2);
(2)各节点对本地数据进行时间相关性分析,即计算节点当前时间窗口内数据与历史时间窗口内数据的欧几里德距离:若计算结果小于给定距离阈值,则当前时间窗口内数据与历史时间窗口内数据满足时间相关性,为正常数据,返回步骤(1);否则当前时间窗口内数据与历史时间窗口内数据不满足时间相关性,为不正常数据,进入步骤(3);
(3)各节点将当前窗口内数据进行近似压缩,并将压缩后的数据发送至邻居节点,进入步骤(4);
(4)各节点进行空间相关性计算,计算本节点当前时间窗口内的压缩数据与接收到的邻居节点压缩数据之间的近似欧几里德距离或下界距离:若计算结果小于给定距离阈值,则本节点当前时间窗口内的压缩数据与接收到的邻居节点压缩数据满足空间相关性;否则本节点当前时间窗口内的压缩数据与接收到的邻居节点压缩数据不满足空间相关性;本节点将判定结果反馈给压缩数据发送方节点,进入步骤(5);
(5)各节点根据邻居节点的反馈结果,对本节点的不正常数据进行审查,判别其为异常数据或是错误数据:若存在一定数量的邻居节点与本节点的不正常数据存在相关性,则该不正常数据为异常数据;若不存在邻居节点与本节点的不正常数据具有相关性,则该不正常数据为错误数据。
2.根据权利要求1所述的基于时间序列的异常检测方法,其特征在于:所述近似压缩采用ULBA压缩方法,即对于一个给定的时间序列X=<x1,x2,…,xn>,使用ULBA产生的分段压缩序列表示为:
其中,表示第i个分段中所有数据的代替值,即第i个分段的近似值;xri表示第i个分段的结束时间;第i个分段的时间段为xri-xri-1;
具体实现过程为:
a.对于数据x,使用下面的近似函数进行计算:
x可以使用x′或x′+Vacc来代替;
b.对于任意分段,分段的近似值有两个,分别为该分段起始时间点数据的近似值与近似值加上允许最大误差值;分段初始时,分段的近似值处于可选状态,近似值有上述两个可选值;
c.按时间顺序依次对数据进行分段:若待分段数据不是该分段的起点,且该分段的近似值处于可选状态,数据的处理方法按d步骤执行;若待分段数据不是该分段的起点,且该分段的近似值处于确定状态,数据的处理方法按e步骤执行;
d.若数据的两个代替值与分段的两个可选值均相等,则数据合并到这个分段,该分段仍然处于可选状态;若数据的两个代替值与分段的两个可选值均不相等,则数据不能合并到这个分段,该分段的近似值选取两个可选值中较小的一个,分段结束,以这个数据为起点开始一个新的分段;若数据的两个代替值与分段的两个可选值有且仅有一个相等,数据合并到这个分段,分段的近似值选取两者相等的那个值,分段状态设置为确定状态;
e.若数据的两个代替值其中之一与分段的近似值相等,则数据合并到这个分段;否则,数据不能合并到这个分段,分段结束,以这个数据为起点开始一个新的分段;
对应ULBA压缩方法,对进行逆向解压获得的时间序列记为
4.根据权利要求1所述的基于时间序列的异常检测方法,其特征在于:所述节点在本地使用双缓存时间窗口交替进行自身数据的检测。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310548853.4A CN103561418A (zh) | 2013-11-07 | 2013-11-07 | 基于时间序列的异常检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310548853.4A CN103561418A (zh) | 2013-11-07 | 2013-11-07 | 基于时间序列的异常检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103561418A true CN103561418A (zh) | 2014-02-05 |
Family
ID=50015535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310548853.4A Pending CN103561418A (zh) | 2013-11-07 | 2013-11-07 | 基于时间序列的异常检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103561418A (zh) |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103886195A (zh) * | 2014-03-14 | 2014-06-25 | 浙江大学 | 数据缺失下时间序列相似性度量方法 |
CN104080108A (zh) * | 2014-04-14 | 2014-10-01 | 西安电子科技大学 | 一种针对无线传感网络数据的可变阈值异常点检测方法 |
CN104484673A (zh) * | 2014-12-05 | 2015-04-01 | 南京大学 | 实时数据流模式识别应用的数据补全方法 |
CN104915846A (zh) * | 2015-06-18 | 2015-09-16 | 北京京东尚科信息技术有限公司 | 一种电子商务时间序列数据的异常检测方法及系统 |
CN105722129A (zh) * | 2016-01-20 | 2016-06-29 | 中国地质大学(武汉) | 一种基于fsax-markov模型的无线传感网事件检测方法及系统 |
CN106156470A (zh) * | 2015-04-16 | 2016-11-23 | 腾讯科技(深圳)有限公司 | 一种时间序列异常检测标注方法及系统 |
CN106448080A (zh) * | 2016-09-20 | 2017-02-22 | 北京工业大学 | 一种基于传感网嗅探的小型空间挥发性易燃液体检测系统 |
CN106792883A (zh) * | 2017-01-20 | 2017-05-31 | 哈尔滨工业大学(威海) | 传感器网络异常数据检测方法与系统 |
CN107194184A (zh) * | 2017-05-31 | 2017-09-22 | 成都数联易康科技有限公司 | 基于时间序列相似性分析的在院人次异常检测方法及系统 |
CN107493277A (zh) * | 2017-08-10 | 2017-12-19 | 福建师范大学 | 基于最大信息系数的大数据平台在线异常检测方法 |
CN107784314A (zh) * | 2016-08-26 | 2018-03-09 | 北京协同创新智能电网技术有限公司 | 一种多变量报警系统的正常异常数据划分方法及系统 |
CN108369551A (zh) * | 2015-11-19 | 2018-08-03 | 西门子股份公司 | 多个相关传感器的异常检测 |
CN108650649A (zh) * | 2018-04-10 | 2018-10-12 | 南京邮电大学 | 适用于无线传感器网络的异常数据检测方法 |
CN108694113A (zh) * | 2017-03-31 | 2018-10-23 | 阿自倍尔株式会社 | 时间序列数据记录方法以及装置 |
CN108762963A (zh) * | 2018-05-21 | 2018-11-06 | 华东师范大学 | 基于全局信息的时间序列数据中异常数据点的修复方法 |
CN108846852A (zh) * | 2018-04-11 | 2018-11-20 | 杭州电子科技大学 | 基于多示例和时间序列的监控视频异常事件检测方法 |
CN108880990A (zh) * | 2018-06-14 | 2018-11-23 | 深信服科技股份有限公司 | 检测外发垃圾邮件的方法、系统、装置及可读存储介质 |
CN109063947A (zh) * | 2018-06-11 | 2018-12-21 | 阿里巴巴集团控股有限公司 | 一种时间序列的异常识别方法、装置、及业务服务器 |
CN109583599A (zh) * | 2018-11-23 | 2019-04-05 | 广州供电局有限公司 | 异常状态检测方法 |
CN110071913A (zh) * | 2019-03-26 | 2019-07-30 | 同济大学 | 一种基于无监督学习的时间序列异常检测方法 |
CN111522246A (zh) * | 2020-05-09 | 2020-08-11 | 刘玉华 | 智能家居系统中单个传感器的异常检测方法 |
CN113364813A (zh) * | 2021-08-09 | 2021-09-07 | 新风光电子科技股份有限公司 | 一种轨道交通能量回馈数据的压缩传输方法及系统 |
CN114090413A (zh) * | 2022-01-21 | 2022-02-25 | 成都市以太节点科技有限公司 | 一种系统数据异常检测方法、系统、电子设备及存储介质 |
CN118277744A (zh) * | 2024-05-31 | 2024-07-02 | 水发投资集团有限公司 | 基于数据分析的丹参育苗环境状态智能监测方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102547812A (zh) * | 2011-11-04 | 2012-07-04 | 南京邮电大学 | 一种无线传感网络故障检测方法及事件检测方法 |
-
2013
- 2013-11-07 CN CN201310548853.4A patent/CN103561418A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102547812A (zh) * | 2011-11-04 | 2012-07-04 | 南京邮电大学 | 一种无线传感网络故障检测方法及事件检测方法 |
Non-Patent Citations (3)
Title |
---|
王进强等: "一种基于相关性的分布式异常检测算法", 《计算机研究与发展》 * |
薛安荣: "无线传感器网络中异常读数检测算法研究", 《计算机应用研究》 * |
魏巨巍等: "无线传感器网络中一种数据近似方法", 《计算机工程与科学》 * |
Cited By (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103886195A (zh) * | 2014-03-14 | 2014-06-25 | 浙江大学 | 数据缺失下时间序列相似性度量方法 |
CN104080108A (zh) * | 2014-04-14 | 2014-10-01 | 西安电子科技大学 | 一种针对无线传感网络数据的可变阈值异常点检测方法 |
CN104484673A (zh) * | 2014-12-05 | 2015-04-01 | 南京大学 | 实时数据流模式识别应用的数据补全方法 |
CN104484673B (zh) * | 2014-12-05 | 2017-10-20 | 南京大学 | 实时数据流模式识别应用的数据补全方法 |
CN106156470B (zh) * | 2015-04-16 | 2020-10-23 | 腾讯科技(深圳)有限公司 | 一种时间序列异常检测标注方法及系统 |
CN106156470A (zh) * | 2015-04-16 | 2016-11-23 | 腾讯科技(深圳)有限公司 | 一种时间序列异常检测标注方法及系统 |
CN104915846A (zh) * | 2015-06-18 | 2015-09-16 | 北京京东尚科信息技术有限公司 | 一种电子商务时间序列数据的异常检测方法及系统 |
CN108369551A (zh) * | 2015-11-19 | 2018-08-03 | 西门子股份公司 | 多个相关传感器的异常检测 |
CN105722129A (zh) * | 2016-01-20 | 2016-06-29 | 中国地质大学(武汉) | 一种基于fsax-markov模型的无线传感网事件检测方法及系统 |
CN107784314A (zh) * | 2016-08-26 | 2018-03-09 | 北京协同创新智能电网技术有限公司 | 一种多变量报警系统的正常异常数据划分方法及系统 |
CN106448080A (zh) * | 2016-09-20 | 2017-02-22 | 北京工业大学 | 一种基于传感网嗅探的小型空间挥发性易燃液体检测系统 |
CN106792883A (zh) * | 2017-01-20 | 2017-05-31 | 哈尔滨工业大学(威海) | 传感器网络异常数据检测方法与系统 |
CN108694113A (zh) * | 2017-03-31 | 2018-10-23 | 阿自倍尔株式会社 | 时间序列数据记录方法以及装置 |
CN107194184A (zh) * | 2017-05-31 | 2017-09-22 | 成都数联易康科技有限公司 | 基于时间序列相似性分析的在院人次异常检测方法及系统 |
CN107194184B (zh) * | 2017-05-31 | 2020-11-17 | 成都数联易康科技有限公司 | 基于时间序列相似性分析的在院人次异常检测方法及系统 |
CN107493277B (zh) * | 2017-08-10 | 2020-06-16 | 福建师范大学 | 基于最大信息系数的大数据平台在线异常检测方法 |
CN107493277A (zh) * | 2017-08-10 | 2017-12-19 | 福建师范大学 | 基于最大信息系数的大数据平台在线异常检测方法 |
CN108650649A (zh) * | 2018-04-10 | 2018-10-12 | 南京邮电大学 | 适用于无线传感器网络的异常数据检测方法 |
CN108650649B (zh) * | 2018-04-10 | 2020-10-02 | 南京邮电大学 | 适用于无线传感器网络的异常数据检测方法 |
CN108846852A (zh) * | 2018-04-11 | 2018-11-20 | 杭州电子科技大学 | 基于多示例和时间序列的监控视频异常事件检测方法 |
CN108846852B (zh) * | 2018-04-11 | 2022-03-08 | 杭州电子科技大学 | 基于多示例和时间序列的监控视频异常事件检测方法 |
CN108762963A (zh) * | 2018-05-21 | 2018-11-06 | 华东师范大学 | 基于全局信息的时间序列数据中异常数据点的修复方法 |
CN108762963B (zh) * | 2018-05-21 | 2021-03-30 | 华东师范大学 | 基于全局信息的时间序列数据中异常数据点的修复方法 |
CN109063947A (zh) * | 2018-06-11 | 2018-12-21 | 阿里巴巴集团控股有限公司 | 一种时间序列的异常识别方法、装置、及业务服务器 |
CN108880990B (zh) * | 2018-06-14 | 2021-02-05 | 深信服科技股份有限公司 | 检测外发垃圾邮件的方法、系统、装置及可读存储介质 |
CN108880990A (zh) * | 2018-06-14 | 2018-11-23 | 深信服科技股份有限公司 | 检测外发垃圾邮件的方法、系统、装置及可读存储介质 |
CN109583599A (zh) * | 2018-11-23 | 2019-04-05 | 广州供电局有限公司 | 异常状态检测方法 |
CN110071913A (zh) * | 2019-03-26 | 2019-07-30 | 同济大学 | 一种基于无监督学习的时间序列异常检测方法 |
CN111522246A (zh) * | 2020-05-09 | 2020-08-11 | 刘玉华 | 智能家居系统中单个传感器的异常检测方法 |
CN113364813A (zh) * | 2021-08-09 | 2021-09-07 | 新风光电子科技股份有限公司 | 一种轨道交通能量回馈数据的压缩传输方法及系统 |
CN114090413A (zh) * | 2022-01-21 | 2022-02-25 | 成都市以太节点科技有限公司 | 一种系统数据异常检测方法、系统、电子设备及存储介质 |
CN114090413B (zh) * | 2022-01-21 | 2022-04-19 | 成都市以太节点科技有限公司 | 一种系统数据异常检测方法、系统、电子设备及存储介质 |
CN118277744A (zh) * | 2024-05-31 | 2024-07-02 | 水发投资集团有限公司 | 基于数据分析的丹参育苗环境状态智能监测方法 |
CN118277744B (zh) * | 2024-05-31 | 2024-08-13 | 水发投资集团有限公司 | 基于数据分析的丹参育苗环境状态智能监测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103561418A (zh) | 基于时间序列的异常检测方法 | |
KR101653692B1 (ko) | 데이터 오브젝트 처리 방법 및 장치 | |
CN107682319B (zh) | 一种基于增强型角度异常因子的数据流异常检测及多重验证的方法 | |
CN110895526A (zh) | 一种大气监测系统中数据异常的修正方法 | |
US7558290B1 (en) | Method and apparatus of data compression for computer networks | |
CN108667684B (zh) | 一种基于局部向量点积密度的数据流异常检测方法 | |
CN110249276A (zh) | 不良状况要因推定装置及不良状况要因推定方法 | |
Cai et al. | Universal entropy estimation via block sorting | |
Al-Qurabat et al. | Important extrema points extraction-based data aggregation approach for elongating the WSN lifetime | |
Saeedi et al. | An energy-saving data aggregation method for wireless sensor networks based on the extraction of extrema points | |
CN111046968B (zh) | 一种基于改进dpc算法的道路网络轨迹聚类分析方法 | |
CN113535706A (zh) | 两阶段布谷鸟过滤器及基于两阶段布谷鸟过滤器的重复数据删除方法 | |
Idrees et al. | Adaptive distributed energy-saving data gathering technique for wireless sensor networks | |
JP2012198598A (ja) | データ保存装置、データ保存方法 | |
TW202115511A (zh) | 缺值補償方法、缺值補償系統及非暫態電腦可讀取媒體 | |
CN116780781B (zh) | 智能电网接入的功率管理方法 | |
CN105491614A (zh) | 基于二次混合压缩的无线传感网异常事件检测方法及系统 | |
CN106375156A (zh) | 电力网络流量异常检测方法及装置 | |
CN115695564A (zh) | 一种物联网数据的高效传输方法 | |
CN112636763B (zh) | 一种面向多数据流的分布式实时压缩方法 | |
CN109446231B (zh) | 一种基于模式关联分析的实值时间序列规则发现方法和装置 | |
Li et al. | Data sampling control, compression and query in sensor networks | |
CN112948639B (zh) | 一种高速公路数据中台数据统一存储管理方法及系统 | |
CN117675230A (zh) | 基于知识图谱的油井数据完整性识别方法 | |
CN105021274B (zh) | 一种基于谱线重要度的频谱压缩方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140205 |
|
WD01 | Invention patent application deemed withdrawn after publication |