CN114707570A - 一种时间序列异常值快速检测方法 - Google Patents
一种时间序列异常值快速检测方法 Download PDFInfo
- Publication number
- CN114707570A CN114707570A CN202210160611.7A CN202210160611A CN114707570A CN 114707570 A CN114707570 A CN 114707570A CN 202210160611 A CN202210160611 A CN 202210160611A CN 114707570 A CN114707570 A CN 114707570A
- Authority
- CN
- China
- Prior art keywords
- values
- sequence
- subsequence
- sliding window
- value
- 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.)
- Granted
Links
- 230000002159 abnormal effect Effects 0.000 title claims abstract description 39
- 238000000034 method Methods 0.000 title claims abstract description 16
- 238000013507 mapping Methods 0.000 claims description 4
- 238000013450 outlier detection Methods 0.000 claims 1
- 238000001514 detection method Methods 0.000 abstract description 9
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000000694 effects Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 3
- 238000013508 migration Methods 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002354 daily effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种时间序列异常值快速检测方法,属于时间序列异常值检测技术领域;解决了非单一阈值的情况下不能对时间序列异常值的检测的技术问题;其技术方案为:包括以下步骤:S1、滑动窗口R初始值设为主序列首部三个值;S2、滑动窗口R和减去3的值记为SR2;S3、将2、2插入到左子序列尾部,删除左子序列首部添加的3个值;S4、滑动窗口L和减去3的值记为SL2。本发明的有益效果是:本发明的检测方法是基于一个自定义的二维数组,在减少计算成本的同时,达到了高效的异常检测效果,在一些非单一阈值的实际背景下,对时间序列异常值的检测。
Description
技术领域
本发明涉及时间序列异常值检测技术领域,尤其涉及一种时间序列异常值快速检测方法。
背景技术
随着互联网的发展和大数据技术的提升,每天都会有大量的数据产生,其中,时间序列数据是最广泛的数据类型。时间序列数据,即带有时间戳标记的数据统计量,能够揭示环境的变化、设备的运行状态等与人类生活密切相关的特征。时间序列的异常检测问题在很多领域都具有重要的应用价值,例如智能交通,健康指标,网络入侵检测等。在上述提到的多个领域中,时间序列的异常值大多指的是一个时间点的数据超过了其所设定的阈值,而在一些特殊的日常背景下,不能够简单的依据单一的阈值来判断数据是否异常,例如以下背景。
我国法律统一规定的节假日包括元旦、春节、清明节、劳动节、端午节、中秋节、国庆节七种节日,其中春节和国庆节放假天数为7天,其余节日天数均大于或等于3天。根据百度地图提供的交通出行大数据报告我们可以看到法定节假日期间的交通出行量相对于平常工作日都会有一个小幅度或者大幅度的提升,其中春节和国庆长假前一天为去程人口迁徙高峰,交通出行量有一个大幅度的提升,节假日最后一天为返程人口迁徙高峰,交通出行量也会有一个大幅度的提升。若将时间划分为非节假日,一般节假日和长假三种情况,交通出行量划分为下、中、上三个区间。可以得出结论:非节假日期间,交通出行量一般处于下区间;一般节假日期间,交通出行量一般处于中区间或者上区间;长假期间,分为两种情况:1.国庆长假属于旅游旺季,期间交通出行量一般均为中/上区间;2.春节前期和后期为返乡离乡高峰期,届时交通出行量达到上区间,而春节中期,出行人数变少,交通出行量可能会处于中/下区间。
综上可以定义节假日期间交通出行量高峰期分为三种情况:1.连续四天或四天以上交通出行量处于中/上区间,则此期间定义为节假日交通出行高峰期;2.交通出行量达到上区间时,定义为节假日交通出行高峰期;3.交通出行量达到上区间时前后连续时间内交通出行量为中区间时,此时中区间也包含为节假日交通出行高峰期。特别指出的是,在一些旺季时刻,周末前一天以及周末两天也可能会出现交通出行量小幅度的提升,根据我们的方法,只会检测出节假日期间交通出行高峰期,不会被类似的非节假日期间的异常情况所出现的交通出行高峰期所影响。
本发明的方法可以解决类似上述背景下时间序列异常值的检测问题,目前没有发现同本发明类似技术的说明或报道,也尚未收集到国内外类似的资料。
如何解决上述技术问题为本发明面临的课题。
发明内容
为了解决以上技术问题,本发明提供了一种时间序列异常值快速检测方法,该检测方法基于一个自定义的二维数组,在减少计算成本的同时,达到了高效的异常检测效果,在一些非单一阈值的实际背景下,对时间序列异常值的检测。
为了更好地实现上述发明目的,本发明给出基本定义如下:
1、定义依据背景将时间序列数据依次归类为下区间、中区间、上区间,分别映射为1、 2、5,并且将1、1、1插入到映射后的序列首部,所得到的序列为本方法初始主序列;
2、定义序列中的异常情况分为三种情况:1.当序列中出现连续四个或四个以上的值为 2或5,如2、2、2、2为异常情况;2.序列中出现值为5,如1、5、1,其中5为异常情况; 3.序列中值为5前后连续出现的值为2,如2、5、2,其中2、5、2都为异常情况;
3、定义一个二维数组A[7][7],二维数组示意图如图3所示:
4、定义一个窗口大小为3,移动步长为1的滑动窗口R(R1,R2,R3)在时间序列上向右滑动,其中R1,R2,R3分别对应滑动窗口中第一个值,第二个值和第三个值;
5、定义一个窗口大小为3,移动步长为1的滑动窗口L(L1,L2,L3)在时间序列上向左滑动,其中L1,L2,L3分别对应滑动窗口中第一个值,第二个值和第三个值;
6、定义SR1、SR2、SL1、SL2四个参数用来记录二维数组的行和列值;
本发明具体是通过以下措施实现的,一种时间序列异常值快速检测方法,包括如下步骤:
步骤一、将映射后的序列首部插入1、1、1,初始R为首部3个值,R窗口和减3的值赋值给SR1,A[SR1][SR2]=A[0][0]=0,R向右滑动一个步长,SR1=SR2;
步骤二、A[SR1][SR2]=A[0][1]=0,R向右滑动1个步长;
步骤三、A[SR1][SR2]=A[1][2]=0,R向右滑动1个步长;
步骤四、A[SR1][SR2]=A[2][3]=0,R向右滑动1个步长;
步骤五、A[SR1][SR2]=A[3][3]=1,R3标记为异常值;
步骤六、将序列分割为左子序列和右子序列。
左子序列删除首部添加的3个值,尾部插入2、2,初始L为尾部三个值,L窗口和减3的值赋值给SL1;右子序列首部插入2、2、2作为主序列,初始R为首部3个值,R窗口和减3的值赋值给SR1;
步骤七、A[SL1][SL2]=A[3][3]=1,L1标记为异常值,L、R向左滑动1个步长;
步骤八、A[SL1][SL2]=A[3][3]=1,L1标记为异常值,L、R向左滑动1个步长;
步骤九、A[SL1][SL2]=A[3][3]=1,L1标记为异常值,L滑动至序列首部;
步骤十、左子序列标记结束,删除尾部添加的2个值;
步骤十一、A[SR1][SR2]=A[3][2]=0,R向右滑动1个步长;
步骤十二、A[SR1][SR2]=A[2][2]=0,R向右滑动1个步长;
步骤十三、A[SR1][SR2]=A[3][5]=1,R3标记为异常值;
步骤十四、将序列分割为左子序列和右子序列。
左子序列删除首部添加的3个值,尾部插入2、2,初始L为尾部三个值,L窗口和减3的值赋值给SL1
R滑动至序列尾部,右子序列标记结束;
步骤十五、A[SL1][SL2]=A[6][6]=1,L1标记为异常值,L、R向左滑动1个步长;
步骤十六、A[SL1][SL2]=A[6][5]=0,左子序列标记结束;
至此,左、右子序列标记结束,序列中所有异常值都被标记出来。
与现有技术相比,本发明的有益效果在于:本发明提供的一种时间序列异常值快速检测方法,是一种可以解决类似上述背景技术所提到的某些特殊的实际背景下的异常值检测问题,包括某一时刻的异常值以及某一时间段的异常值检测,并且将实际背景中的具体值划分为三个区间分别映射为三个值,再基于一个事先定义好的二维数组,通过二维数组中的值来判断是否是异常值,属于牺牲空间复杂度来优化时间复杂度的方法,缩减了执行时间,保证了执行效率。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。
图1为本发明实施例提供的时间序列异常检测流程图。
图2为本发明实施例提供的时间序列异常检测步骤示意图。
图3为本发明中二维数组A[7][7]示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
如图1至图3所示,本发明实施例提供一种时间序列异常值快速检测方法,包括如下步骤:
步骤一、将映射后的序列首部插入1、1、1,初始R为首部3个值,R窗口和减3的值赋值给SR1,A[SR1][SR2]=A[0][0]=0,R向右滑动一个步长,SR1=SR2;
步骤二、A[SR1][SR2]=A[0][1]=0,R向右滑动1个步长;
步骤三、A[SR1][SR2]=A[1][2]=0,R向右滑动1个步长;
步骤四、A[SR1][SR2]=A[2][3]=0,R向右滑动1个步长;
步骤五、A[SR1][SR2]=A[3][3]=1,R3标记为异常值;
步骤六、将序列分割为左子序列和右子序列。
左子序列删除首部添加的3个值,尾部插入2、2,初始L为尾部三个值,L窗口和减3的值赋值给SL1;右子序列首部插入2、2、2作为主序列,初始R为首部3个值,R窗口和减3的值赋值给SR1;
步骤七、A[SL1][SL2]=A[3][3]=1,L1标记为异常值,L、R向左滑动1个步长;
步骤八、A[SL1][SL2]=A[3][3]=1,L1标记为异常值,L、R向左滑动1个步长;
步骤九、A[SL1][SL2]=A[3][3]=1,L1标记为异常值,L滑动至序列首部;
步骤十、左子序列标记结束,删除尾部添加的2个值;
步骤十一、A[SR1][SR2]=A[3][2]=0,R向右滑动1个步长;
步骤十二、A[SR1][SR2]=A[2][2]=0,R向右滑动1个步长;
步骤十三、A[SR1][SR2]=A[3][5]=1,R3标记为异常值;
步骤十四、将序列分割为左子序列和右子序列。
左子序列删除首部添加的3个值,尾部插入2、2,初始L为尾部三个值,L窗口和减3的值赋值给SL1
R滑动至序列尾部,右子序列标记结束;
步骤十五、A[SL1][SL2]=A[6][6]=1,L1标记为异常值,L、R向左滑动1个步长;
步骤十六、A[SL1][SL2]=A[6][5]=0,左子序列标记结束;
至此,左、右子序列标记结束,序列中所有异常值都被标记出来。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (1)
1.一种时间序列异常值快速检测方法,其特征在于:包括以下步骤:
S1、根据实际背景,将采样得到的数据划分为下、中、上三个区间,分别映射为1、2、5三个值,将映射后得到的序列首部插入1、1、1作为初始主序列;
S2、滑动窗口R初始值设为主序列首部三个值,滑动窗口R和减去3的值记为SR1,滑动窗口向右滑动一个步长,执行步骤S3;
S3、滑动窗口R和减去3的值记为SR2;
若A[SR1][SR2]=0,滑动窗口向右滑动,将SR2的值赋给SR1,重复执行步骤S3;
若A[SR1][SR2]=1,R3标记为异常值,以R3为标志,将序列进行分割,得到一个以R3为尾部的左子序列,左子序列执行步骤S4;若序列剩余部分不为空,则序列剩余部分为右子序列,若序列剩余部分为空,则右子序列标记结束;
当窗口R滑动至序列尾部时,右子序列标记结束,删除右子序列首部添加的3个值;否则将主序列定义为右子序列首部插入2、2、2后得到的序列,并执行步骤S2;
S4、将2、2插入到左子序列尾部,删除左子序列首部添加的3个值,滑动窗口L初始值设为左子序列尾部三个值,滑动窗口L和减去3的值记为SL1,滑动窗口向左滑动一个步长,执行步骤S5;
S5、滑动窗口L和减去3的值记为SL2;
若A[SL1][SL2]=0或窗口L滑动至左子序列首部,则左子序列标记结束,删除尾部添加的2个值;
若A[SL1][SL2]=1,L1标记为异常值,将SL2的值赋给SL1,滑动窗口向左滑动,重复执行步骤S5直至左子序列标记结束;
至此,从步骤S1到步骤S5,左子序列和右子序列都标记结束,达到快速的时间序列异常值检测。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210160611.7A CN114707570B (zh) | 2022-02-22 | 2022-02-22 | 一种时间序列异常值快速检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210160611.7A CN114707570B (zh) | 2022-02-22 | 2022-02-22 | 一种时间序列异常值快速检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114707570A true CN114707570A (zh) | 2022-07-05 |
CN114707570B CN114707570B (zh) | 2024-05-24 |
Family
ID=82166046
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210160611.7A Active CN114707570B (zh) | 2022-02-22 | 2022-02-22 | 一种时间序列异常值快速检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114707570B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104777461A (zh) * | 2015-04-29 | 2015-07-15 | 中国科学院空间科学与应用研究中心 | 一种载频随机跳变的宽带混沌雷达信号产生方法及系统 |
CN114020730A (zh) * | 2021-10-27 | 2022-02-08 | 河北科技师范学院 | 一种水环境监测数据中异常值的检测和修复方法 |
-
2022
- 2022-02-22 CN CN202210160611.7A patent/CN114707570B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104777461A (zh) * | 2015-04-29 | 2015-07-15 | 中国科学院空间科学与应用研究中心 | 一种载频随机跳变的宽带混沌雷达信号产生方法及系统 |
CN114020730A (zh) * | 2021-10-27 | 2022-02-08 | 河北科技师范学院 | 一种水环境监测数据中异常值的检测和修复方法 |
Non-Patent Citations (1)
Title |
---|
高熠飞;王建平;李林峰;: "基于柯西分布的水文序列异常值检测方法", 河海大学学报(自然科学版), no. 04, 23 July 2020 (2020-07-23) * |
Also Published As
Publication number | Publication date |
---|---|
CN114707570B (zh) | 2024-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102509001B (zh) | 一种自动去除时序数据野值点的方法 | |
CN106547894A (zh) | 基于移动通信信令大数据挖掘职住位置标签的系统及方法 | |
Wyss et al. | Application of phylogenetic taxonomy to poorly resolved crown clades: a stem-modified node-based definition of Rodentia | |
CN102891852A (zh) | 基于报文分析的协议格式自动推断方法 | |
CN110418287A (zh) | 基于手机信令的人口居住地迁徙识别方法 | |
CN109547393B (zh) | 恶意号码识别方法、装置、设备和存储介质 | |
CN114169362A (zh) | 一种基于时空相关滤波的事件流数据去噪方法 | |
CN108875815A (zh) | 特征工程变量确定方法及装置 | |
CN116189436B (zh) | 一种基于大数据的多源数据融合算法 | |
CN107480466A (zh) | 基因组数据存储方法及电子设备 | |
CN101488861A (zh) | 一种网络未知应用的关键词提取方法 | |
CN114707570A (zh) | 一种时间序列异常值快速检测方法 | |
CN111091426A (zh) | 房源定价方法和系统 | |
CN108132419B (zh) | 基于电流突变信息阵的简易配电网主动故障研判方法 | |
CN105488058B (zh) | 一种电力系统故障录波格式转换方法 | |
CN112699181B (zh) | 一种基于大数据信息处理系统 | |
CN105373583A (zh) | 基于数据压缩的支撑向量机建模方法 | |
Zheng | Uncertainties of natural mortality estimates for eastern Bering Sea snow crab, Chionoecetes opilio | |
CN112861123B (zh) | 一种比特币恶意地址识别方法及装置 | |
CN108629475A (zh) | 一种基于宏观经济数据的经营信息分析系统的交互方法 | |
CN113947374A (zh) | 一种基于因果并发网的流程挖掘系统 | |
CN108460424A (zh) | 一种基于线点转换和聚类对比的空间运动轨迹识别方法 | |
CN114564521A (zh) | 一种基于聚类算法确定农机工作时间段的方法及系统 | |
CN116881610B (zh) | 能源设备量测项数据流式计算方法、装置、设备及介质 | |
CN117689349B (zh) | 一种面向办公人员的企业数据快捷拆分及分享的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |