[发明专利]一种时间序列中不定长的异常子序列检测方法在审
申请号: | 202110226782.0 | 申请日: | 2021-03-01 |
公开(公告)号: | CN112966017A | 公开(公告)日: | 2021-06-15 |
发明(设计)人: | 陈逸舟;张丹;熊晓菁 | 申请(专利权)人: | 北京青萌数海科技有限公司 |
主分类号: | G06F16/2458 | 分类号: | G06F16/2458;G06F16/28 |
代理公司: | 北京智沃律师事务所 11620 | 代理人: | 吴志宏 |
地址: | 100022 北京市朝阳*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 时间 序列 定长 异常 检测 方法 | ||
1.一种时间序列中不定长的异常子序列检测方法,包括以下步骤:
S1:输入时间序列数据T,最小子序列长度min_len,最大子序列长度max_len,步长step;可选输入近邻个数k,k近邻距离整合方法method,检测异常子序列个数n_discords,并行进程数n_workers;
S2:根据设定的最小子序列长度min_len、最大子序列长度max_len以及步长step,确定目标子序列长度sub_len集合,针对集合中的每一个目标子序列长度sub_len,执行以下循环:
a)根据并行进程数n_workers,将时间序列T划分为若干个时间序列子集Tworker;
b)在每一个进程中,应用STOMP算法,计算时间序列T中每一个子序列对于子集Tworker的局部近邻矩阵mpworker;
c)将各个进程的计算结果mpworker进行整合,对于时间序列T中的每一个子序列,保留k个最近邻的距离,并统计其中位数或均值,形成时间序列T在子序列长度sub_len上的k近邻距离矩阵mpsub_len;
S3:从各个目标子序列长度sub_len的k近邻距离矩阵mpsub_len中,计算得到k近邻距离最大的n_discords个异常子序列;
S4:对于时间序列T中的每一个数据点ti,计算其在各个长度的异常子序列中出现的次数,将出现次数超过一定阈值的点标记为最终检测的异常值。
2.根据权利要求1所述的时间序列中不定长的异常子序列检测方法,其特征在于:步骤S1中,k默认为1,k近邻距离整合方法method默认为中位数,检测异常子序列个数n_discords默认为3,并行进程数n_workers默认为4。
3.根据权利要求1所述的时间序列中不定长的异常子序列检测方法,其特征在于:步骤S1中,时间序列数据T应包括时间列和数值列,表示该序列在每一个时间点上对应的数值,且每个时间点之间最好是等间隔的;最小子序列长度min_len、最大子序列长度max_len和步长step用于确定子序列的长度范围,即在大于等于min_len,小于等于max_len的范围内,每隔step取一个值作为目标子序列长度,针对这里获得的目标子序列长度集合,依次执行S2a-S2c的循环计算。
4.根据权利要求1所述的时间序列中不定长的异常子序列检测方法,其特征在于:步骤S2中,首次进行异常检测使用k=1,即最近邻距离进行检测,若发现结果中存在未能识别的相似异常模式,则增大k的值,通过k近邻距离检测异常。
5.根据权利要求3所述的时间序列中不定长的异常子序列检测方法,其特征在于:步骤S2中,将时间序列T划分为若干个时间序列子集Tworker时,在每一个并行进程中,输入时间序列数据T、数据子集Tworker、目标子序列长度sub_len和近邻个数k,初始化k近邻距离矩阵matrix_profileworker,其行数为n-sub_len+1,列数为k,初始值均为正无穷。
6.根据权利要求5所述的时间序列中不定长的异常子序列检测方法,其特征在于:步骤S2中,对于数据子集Tworker中的每一个子序列Ti,sub_len,应用STOMP算法,通过快速傅里叶变换和移动点积的方式计算子序列Ti,sub_len与时间序列数据T中每一条子序列的距离,得到长度为n-sub_len+1的距离向量disti,sub_len。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京青萌数海科技有限公司,未经北京青萌数海科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110226782.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种异常检测方法
- 下一篇:富文本安全处理方法、装置、电子设备和存储介质