CN113553232A - 一种通过在线矩阵画像对运维数据进行无监督异常检测的技术 - Google Patents
一种通过在线矩阵画像对运维数据进行无监督异常检测的技术 Download PDFInfo
- Publication number
- CN113553232A CN113553232A CN202110783748.3A CN202110783748A CN113553232A CN 113553232 A CN113553232 A CN 113553232A CN 202110783748 A CN202110783748 A CN 202110783748A CN 113553232 A CN113553232 A CN 113553232A
- Authority
- CN
- China
- Prior art keywords
- subsequence
- nearest neighbor
- time
- distance
- online matrix
- 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
- 239000011159 matrix material Substances 0.000 title claims abstract description 32
- 238000001514 detection method Methods 0.000 title claims abstract description 27
- 238000012423 maintenance Methods 0.000 title claims abstract description 13
- 238000000034 method Methods 0.000 claims abstract description 16
- 230000002159 abnormal effect Effects 0.000 claims abstract description 8
- 238000007781 pre-processing Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 2
- 238000012549 training Methods 0.000 abstract description 7
- 230000005856 abnormality Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 235000012489 doughnuts Nutrition 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000593 degrading effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000001932 seasonal effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3055—Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3452—Performance evaluation by statistical analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Computer Hardware Design (AREA)
- Probability & Statistics with Applications (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种通过在线矩阵画像对运维数据进行无监督异常检测方法,其首先采用窗口大小为m的滑动窗口将时间序列X分为多个子序列Xi,m;然后基于多个子序列Xi,m构建在线矩阵画像P={p1,…,pt,…,pn‑m+1};最后通过在线矩阵画像算法计算出最近邻子序列,并利用最近邻子序列计算出xt的距离显著性rt,若距离显著性rt大于预定义阈值τ,则被认为是异常,否则被认为是正常。本发明能够进行无监督单变量时间序列异常检测任务,不需要进行任何模型地训练且能高效准确地找出异常。
Description
技术领域
本发明涉及计算机***异常检测技术,尤其是涉及可应用到互联网公司中基于智能运维监控等领域。
背景技术
时间序列是一系列以时间顺序进行组织的观测点,通常认为每两点之间有相同的时间间隔。给定一条单变量时间序列X={x1,…,xt,…,xn},xt表示t时刻计算机***某一运行指标的状态值,异常检测的目的是判断在t时刻的状态是否显著地偏离了正常的状态,我们将那些偏离了正常状态的点视为异常点。在智能运维领域中,时间序列异常检测对关键性能指标的监控至关重要。
时间序列异常检测面临着很多挑战。首先,由于异常是罕见的且对其进行标注是困难且昂贵的,收集大量有标签的异常数据来训练模型是不切实际的。其次,随着环境的变化,时间序列会发生概念漂移。一旦出现概念漂移,模型就需要进行更新,这是相当耗时耗力的。最后,时间序列的模式是不固定的,可以表现为有季节性的,稳定的或者不稳定的模式等。因此,在实际应用中,需要一个对时间序列模式变化不敏感的无监督异常检测方法。
然而,目前的无监督异常检测技术要么需要大量资源来进行训练,要么性能不佳,无法在效率和检测精度上取得平衡。基于预测的无监督异常检测方法,使用历史数据对当前时刻的状态进行预测,通过判断当前状态的观测值是否极大地偏离预测值来检测异常。这种方法严重依赖于预测的性能,如果预测性能不佳,那么检测的效果也会很差。基于分布的异常检测方法,通过学习正常状态的分布,判断当前时刻的状态是否偏离正常状态的分布,来检测异常。但是数据中的异常常常会干扰到正常状态分布地学习,使得异常检测的性能下降。同时,当时间序列发生概念漂移时,需要重新训练模型学习新的分布。当同时监控数百条时间序列时,训练和维护这些模型的成本非常高。基于距离的无监督异常检测方法,通过探索当前状态与其k近邻的关系来检测异常。但这些方法对参数k的设置很敏感且需要比较高的时间复杂度。
发明内容
有鉴于此,本发明的目的在于提出一种通过在线矩阵画像对运维数据进行无监督异常检测方法,以提高检测效率和检测精度。
为实现上述目的,本发明采用的技术方案是:
一种通过在线矩阵画像对运维数据进行无监督异常检测方法,其包括以下步骤:
步骤1、获取以时间序列表示的运维数据X,并进行数据预处理:采用窗口大小为m的滑动窗口将时间序列X切分为多个子序列Xi,m;
步骤2、对时间序列上的每个子序列Xi,m,计算出子序列Xi,m和其之前出现的所有子序列Xj,m之间的距离,取距离的最小值pi为Xi,m的在线矩阵画像的值,取距离最小值对应的下标idxi为最近邻下标;那么时间序列X的在线矩阵画像P={p1,…,pt,…,pn-m+1},对应的最近邻下标I={idx1,…,idxt,…,idxn-m+1};
步骤3、对于t时刻的状态xt,其与前m-1个状态组成子序列Xt-m+1,m=xt-m+1,…,xt},通过在线矩阵画像算法计算出该子序列Xt-m+1,m和其最近邻子序列的距离pt-m+1以及最近邻下标idxt-m+1,利用最近邻子序列计算出xt的距离显著性rt,若距离显著性rt大于预定义阈值τ,则被认为是异常,否则被认为是正常;其中,τ为常数。
所述步骤1中,在采用滑动窗口对时间序列X进行切分之前,进行如下处理:
根据时间戳检测时间序列X是否存在缺失值,若存在缺失值,采用相邻状态的一阶线性插值填充。
所述方法设置一个大小为c的缓冲区,该缓冲区存储历史最近c个时刻的状态值;当前时刻的子序列只与缓冲区里的子序列计算矩阵画像。
采用上述方案后,本发明首先将标准矩阵画像改进为在线矩阵画像,通过对均值对齐保留了可能的异常幅值变化,然后利用子序列与其最近邻子序列计算距离显著性,距离显著性利用距离的比值而非距离本身去提取异常,这使得它对幅值变化不敏感,对于存在变点的时间序列也适用;从而使本发明能够进行无监督时间序列异常检测任务,不需要进行任何模型地训练且能高效准确地找出异常点。
此外,本发明还提出了缓存策略,极大提高了运算效率,并节约了存储空间。
具体实施方式
本发明揭示了一种通过在线矩阵画像对运维数据进行无监督异常检测方法,其首先将标准矩阵画像改进为在线矩阵画像,然后利用距离显著性从在线矩阵画像上提取异常。该方法具体包括以下步骤:
步骤1、数据预处理:清洗原始时间序列X。
步骤1.1、对于给定原始时间序列X={x1,…,xt,…,xn},根据时间戳检测是否存在缺失值,若存在缺失值,采用相邻状态的一阶线性插值填充。
具体地,对于缺失长度小于或等于M的缺失段,直接利用缺失段前后的状态进行一阶线性插值填充,对于缺失长度大于M的缺失段,利用缺失段相邻周期的相同时段的状态值进行一阶线性插值填充。
步骤1.2、采用窗口大小为m,步长为1的滑动窗口将序列切分成多个子序列。每个子序列表示为Xi,m={xi,xi+1,…,xi+m-1},所有的子序列集合表示为S={X1,m,…,Xt,m,…,Xn-m+1,m}。其中对于小时级数据,m取值为48;对于分钟级数据,m取值为2880。
步骤2、对时间序列上的每个子序列Xi,m,计算出子序列Xi,m和其之前出现的所有子序列Xj,m之间的距离,取距离的最小值pi为Xi,m的在线矩阵画像的值,取距离最小值对应的下标idxi为最近邻下标;那么时间序列X的在线矩阵画像P={p1,…,pt,…,pn-m+1},对应的最近邻下标I={idx1,…,idxt,…,idxn-m+1}。
标准矩阵画像利用滑动窗口将时间序列划分成固定长度为m的子序列Xi,m,计算经过z-score后的每个子序列与其在时间序列上的最近邻子序列之间的欧几里德距离。在线场景下,当前时刻之后的状态是未知的。因此,在线矩阵画像计算经过z-score后的每个子序列与在其之前出现的最近邻子序列之间的欧几里德距离。子序列经过z-score后,子序列本身的波动会被消除掉。然而,波动的变化可能昭示着异常的发生。为了避免这样的异常被忽略,在线矩阵画像在计算子序列间的欧几里德距离时只对均值进行对齐。给定子序列Xi,m,其均值和方差分别为μi和σi,Xi,m和在其之前出现的子序列Xj,m的距离计算公式如下:
其中<Xi,m,Xj,m〉的计算可以通过前一时刻<Xi-1,m,Xj-1,m>的计算结果得到,从而加速计算。<Xi,m,Xj,m>的计算公式如下:
<Xi,m,Xj,m>=<Xi-1,m,Xj-1,m>-xi-1xj-1+xi+m-1xj+m-1
为了进一步提高计算效率和节约存储空间,本发明设置了一个大小为c的缓冲区。缓冲区只存储历史最近c个时刻的状态值。当前时刻的子序列只与缓冲区里的子序列计算矩阵画像。
步骤3、异常检测:对于t时刻的状态xt,其与前m-1个状态组成子序列Xt-m+1,m={xt-m+1,…,xt},通过在线矩阵画像算法计算出该子序列Xt-m+1,m和其最近邻子序列的距离pt-m+1以及最近邻下标idxt-m+1,接着利用最近邻子序列计算出xt的距离显著性rt,若距离显著性rt大于预定义阈值τ,则被认为是异常,否则被认为是正常。其中,τ为常数。其中,
l是一个参数,通常情况下,取l=m。但是当m足够大,窗口中可能存在多个异常的时候,取l<m。
本发明利用在线矩阵画像计算子序列的距离显著性,并通过预定义阈值检测出异常点,达到异常检测的目的,在效率和检测精度间取得最佳平衡。
为证明本发明的效果,将其与现有的检测方法SPOT、DSPOT、SR、SR-CNN、DONUT、VAE和PAD在KPI和Yahoo测试数据集上的F1、准确率、召回率和CPU运行时间的对比如表1所示。其中SR-CNN、DONUT、VAE和PAD是基于网络的方法,需要对模型进行训练,训练时间如表2所示。
表1
表2
方法 | KPI(秒) | Yahoo(秒) |
SR-CNN | 37390.82 | 1415.75 |
DONUT | 37412.59 | 1432.68 |
VAE | 37412.59 | 1432.68 |
PAD | 387691.11 | 14535.43 |
从表1可以看出,本发明算法在两个数据集下的F1都高于所有不用训练的方法。本发明算法在Yahoo数据集上取得了最好的性能,在KPI数据集上略微逊色于VAE。虽然基于网络的方法DONUT、VAE和PAD在KPI数据集上的性能更好,但他们需要花费大量的时间和资源去训练模型,并且在数据分布发生变化的时候,需要重新训练,在实际场景中并不实用。本发明的算法是唯一一个不用训练并能在两个数据集上都获得较好性能的方法。总的来说,本发明的算法在准确率和实时性上面取得了一个最佳平衡。
以上所述,仅是本发明实施例而已,并非对本发明的技术范围作任何限制,故凡是依据本发明的技术实质对以上实施例所作的任何细微修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (3)
1.一种通过在线矩阵画像对运维数据进行无监督异常检测方法,所述方法包括以下步骤:
步骤1、获取以时间序列表示的运维数据X,并进行数据预处理:采用窗口大小为m的滑动窗口将时间序列X切分为多个子序列Xi,m;
步骤2、对时间序列上的每个子序列Xi,m,计算出子序列Xi,m和其之前出现的所有子序列Xj,m之间的距离,取距离的最小值pi为Xi,m的在线矩阵画像的值,取距离最小值对应的下标idxi为最近邻下标;那么时间序列X的在线矩阵画像P={p1,…,pt,…,pn-m+1},对应的最近邻下标I={idx1,…,idxt,…,idxn-m+1};
步骤3、对于t时刻的状态xt,其与前m-1个状态组成子序列Xt-m+1,m={xt-m+1,…,xt},通过在线矩阵画像算法计算出该子序列Xt-m+1,m和其最近邻子序列的距离pt-m+1以及最近邻下标idxt-m+1,利用最近邻子序列计算出xt的距离显著性rt,若距离显著性rt大于预定义阈值τ,则被认为是异常,否则被认为是正常;其中,τ为常数。
2.根据权利要求1所述的一种通过在线矩阵画像对运维数据进行无监督异常检测方法,其特征在于:所述步骤1中,在采用滑动窗口对时间序列X进行切分之前,进行如下处理:根据时间戳检测时间序列X是否存在缺失值,若存在缺失值,采用相邻状态的一阶线性插值填充。
3.根据权利要求1所述的一种通过在线矩阵画像对运维数据进行无监督异常检测方法,其特征在于:所述方法设置一个大小为c的缓冲区,该缓冲区存储历史最近c个时刻的状态值;当前时刻的子序列只与缓冲区里的子序列计算矩阵画像。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110783748.3A CN113553232B (zh) | 2021-07-12 | 2021-07-12 | 一种通过在线矩阵画像对运维数据进行无监督异常检测的技术 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110783748.3A CN113553232B (zh) | 2021-07-12 | 2021-07-12 | 一种通过在线矩阵画像对运维数据进行无监督异常检测的技术 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113553232A true CN113553232A (zh) | 2021-10-26 |
CN113553232B CN113553232B (zh) | 2023-12-05 |
Family
ID=78131585
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110783748.3A Active CN113553232B (zh) | 2021-07-12 | 2021-07-12 | 一种通过在线矩阵画像对运维数据进行无监督异常检测的技术 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113553232B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018101317A (ja) * | 2016-12-21 | 2018-06-28 | ホーチキ株式会社 | 異常監視システム |
CN108616545A (zh) * | 2018-06-26 | 2018-10-02 | 中国科学院信息工程研究所 | 一种网络内部威胁的检测方法、***及电子设备 |
CN110071913A (zh) * | 2019-03-26 | 2019-07-30 | 同济大学 | 一种基于无监督学习的时间序列异常检测方法 |
CN111913849A (zh) * | 2020-07-29 | 2020-11-10 | 厦门大学 | 一种用于运维数据的无监督异常检测和鲁棒趋势预测方法 |
CN112966017A (zh) * | 2021-03-01 | 2021-06-15 | 北京青萌数海科技有限公司 | 一种时间序列中不定长的异常子序列检测方法 |
-
2021
- 2021-07-12 CN CN202110783748.3A patent/CN113553232B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018101317A (ja) * | 2016-12-21 | 2018-06-28 | ホーチキ株式会社 | 異常監視システム |
CN108616545A (zh) * | 2018-06-26 | 2018-10-02 | 中国科学院信息工程研究所 | 一种网络内部威胁的检测方法、***及电子设备 |
CN110071913A (zh) * | 2019-03-26 | 2019-07-30 | 同济大学 | 一种基于无监督学习的时间序列异常检测方法 |
CN111913849A (zh) * | 2020-07-29 | 2020-11-10 | 厦门大学 | 一种用于运维数据的无监督异常检测和鲁棒趋势预测方法 |
CN112966017A (zh) * | 2021-03-01 | 2021-06-15 | 北京青萌数海科技有限公司 | 一种时间序列中不定长的异常子序列检测方法 |
Non-Patent Citations (2)
Title |
---|
王宪;柳絮青;宋书林;沈源: "一种无监督学习的异常行为检测方法", 光电工程, vol. 41, no. 3, pages 43 - 48 * |
蔡剑平;雷蕴奇;陈明明;王宁;张双越;: "带有隐式反馈的SVD推荐模型高效求解算法", 中国科学:信息科学, no. 10, pages 122 - 136 * |
Also Published As
Publication number | Publication date |
---|---|
CN113553232B (zh) | 2023-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108038044B (zh) | 一种面向连续被监测对象的异常检测方法 | |
EP2905665B1 (en) | Information processing apparatus, diagnosis method, and program | |
CN109508818B (zh) | 一种基于LSSVM的在线NOx预测方法 | |
WO2017116627A1 (en) | System and method for unsupervised prediction of machine failures | |
WO2017139046A1 (en) | System and method for unsupervised root cause analysis of machine failures | |
CN116340796B (zh) | 时序数据分析方法、装置、设备及存储介质 | |
CN110852509A (zh) | Igbt模块的故障预测方法、装置及存储介质 | |
CN114691753A (zh) | 一种基于矩阵填充的快速多元时序异常检测方法 | |
Zhuang et al. | Semi-supervised double attention guided assessment approach for remaining useful life of rotating machinery | |
Fu et al. | MCA-DTCN: A novel dual-task temporal convolutional network with multi-channel attention for first prediction time detection and remaining useful life prediction | |
CN113052302B (zh) | 基于循环神经网络的机器健康监控方法、装置及终端设备 | |
CN114357037A (zh) | 一种时序数据分析方法、装置及电子设备和存储介质 | |
CN114048546A (zh) | 一种基于图卷积网络和无监督域自适应的航空发动机剩余使用寿命预测方法 | |
CN113553232B (zh) | 一种通过在线矩阵画像对运维数据进行无监督异常检测的技术 | |
CN113835964B (zh) | 基于小样本学习的云数据中心服务器能耗预测方法 | |
CN115935285A (zh) | 基于掩码图神经网络模型的多元时间序列异常检测方法和*** | |
CN116079498A (zh) | 一种刀具异常信号的识别方法 | |
KR102486463B1 (ko) | 열화에 따른 시계열 데이터를 이용한 실시간 이상 감지 방법 및 그를 위한 장치 | |
CN114819260A (zh) | 一种水文时间序列预测模型动态生成方法 | |
CN113205146A (zh) | 一种基于片段统计特征比较的时序数据异常波动检测算法 | |
Loyola | A method for real-time error detection in low-cost environmental sensors data | |
KR102486462B1 (ko) | 열화에 따른 패턴 학습을 이용한 이상 감지 방법 및 그를 위한 장치 | |
Fan et al. | A Temporal Channel Attention Network for Turbofan Engine Remaining Useful Life Prediction | |
CN117235651B (zh) | 基于物联网的企业信息数据优化管理*** | |
Tambuwal et al. | DeepConAD: Deep and Confidence Prediction for Unsupervised Anomaly Detection in Time Series |
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 |