CN114239952A - 一种关键性能指标的异常检测方法、装置、设备及介质 - Google Patents
一种关键性能指标的异常检测方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN114239952A CN114239952A CN202111525535.7A CN202111525535A CN114239952A CN 114239952 A CN114239952 A CN 114239952A CN 202111525535 A CN202111525535 A CN 202111525535A CN 114239952 A CN114239952 A CN 114239952A
- Authority
- CN
- China
- Prior art keywords
- key performance
- period
- value
- data
- performance index
- 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
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000002159 abnormal effect Effects 0.000 claims abstract description 50
- 238000001514 detection method Methods 0.000 claims description 49
- 230000000737 periodic effect Effects 0.000 claims description 39
- 238000010586 diagram Methods 0.000 claims description 37
- 238000012549 training Methods 0.000 claims description 36
- 230000005856 abnormality Effects 0.000 claims description 31
- 238000005311 autocorrelation function Methods 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 24
- 230000006870 function Effects 0.000 claims description 22
- 238000012360 testing method Methods 0.000 claims description 12
- 238000012795 verification Methods 0.000 claims description 10
- 238000000354 decomposition reaction Methods 0.000 claims description 8
- 238000012163 sequencing technique Methods 0.000 claims description 5
- 230000010354 integration Effects 0.000 claims description 4
- 208000018910 keratinopathic ichthyosis Diseases 0.000 description 13
- 238000012545 processing Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 2
- 230000002547 anomalous effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0639—Performance analysis of employees; Performance analysis of enterprise or organisation operations
- G06Q10/06393—Score-carding, benchmarking or key performance indicator [KPI] analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Tourism & Hospitality (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Game Theory and Decision Science (AREA)
- Educational Administration (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种关键性能指标的异常检测方法、装置、设备及介质,所述方法包括:对获取的KPI对应的当前周期的时间序列数据进行分解,获得当前周期的时间序列数据对应的趋势值、周期值和残差;根据上述趋势值以及KPI的预测模型,预测KPI对应的下一个周期的时间序列数据对应的预测趋势值;获得下一个周期的时间序列数据对应的取值置信区间;根据KPI对应的下一个周期的时间序列数据以及下一个周期的时间序列数据对应的取值置信区间,确定下一个周期的时间序列数据中是否存在异常数据。所述装置用于执行上述方法。本发明实施例提供的关键性能指标的异常检测方法、装置、设备及介质,提高了KPI的异常数据的识别效率。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种关键性能指标的异常检测方法、装置、设备及介质。
背景技术
随着互联网的高速发展,各种各样基于互联网的服务已经深入到人类社会的方方面面,为了保证服务的可靠性,需要通过关键性能指标(Key Performance Indicator,简称KPI)对互联网服务系统进行监控。
KPI的异常,比如突然升高或突然下降,通常表明相关应用程序存在潜在故障,例如服务器故障、网络过载、外部攻击等。在大规模在线服务的场景下,KPI数量可以达到数千到数百万个,如何对海量的KPI数据进行异常检测,是本领域亟待解决的问题。
发明内容
针对现有技术中的问题,本发明实施例提供一种关键性能指标的异常检测方法、装置、设备及介质,能够至少部分地解决现有技术中存在的问题。
一方面,本发明提出一种关键性能指标的异常检测方法,包括:
获取关键性能指标对应的当前周期的时间序列数据;
对所述当前周期的时间序列数据进行分解,获得所述当前周期的时间序列数据对应的趋势值、周期值和残差;
根据所述当前周期的时间序列数据对应的趋势值以及所述关键性能指标的预测模型,预测所述关键性能指标对应的下一个周期的时间序列数据对应的预测趋势值;其中,所述关键性能指标的预测模型是基于所述关键性能指标的历史数据训练获得的;
根据所述当前周期的时间序列数据对应的周期值和残差以及所述下一个周期的时间序列数据对应的预测趋势值,获得所述下一个周期的时间序列数据对应的取值置信区间;
根据所述关键性能指标对应的下一个周期的时间序列数据以及所述下一个周期的时间序列数据对应的取值置信区间,确定所述下一个周期的时间序列数据中是否存在异常数据。
另一方面,本发明提供一种关键性能指标的异常检测装置,包括:
获取模块,用于获取关键性能指标对应的当前周期的时间序列数据;
第一分解模块,用于对所述当前周期的时间序列数据进行分解,获得所述当前周期的时间序列数据对应的趋势值、周期值和残差;
预测模块,用于根据所述当前周期的时间序列数据对应的趋势值以及所述关键性能指标的预测模型,预测所述关键性能指标对应的下一个周期的时间序列数据对应的预测趋势值;其中,所述关键性能指标的预测模型是基于所述关键性能指标的历史数据训练获得的;
第一获得模块,用于根据所述当前周期的时间序列数据对应的周期值和残差以及所述下一个周期的时间序列数据对应的预测趋势值,获得所述下一个周期的时间序列数据对应的取值置信区间;
确定模块,用于根据所述关键性能指标对应的下一个周期的时间序列数据以及所述下一个周期的时间序列数据对应的取值置信区间,确定所述下一个周期的时间序列数据中是否存在异常数据。
再一方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一实施例所述关键性能指标的异常检测方法的步骤。
又一方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述关键性能指标的异常检测方法的步骤。
还一方面,本发明提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述任一实施例所述关键性能指标的异常检测方法的步骤。
本发明实施例提供的关键性能指标的异常检测方法、装置、设备及介质,能够获取关键性能指标对应的当前周期的时间序列数据,对当前周期的时间序列数据进行分解,获得当前周期的时间序列数据对应的趋势值、周期值和残差,根据当前周期的时间序列数据对应的趋势值以及关键性能指标的预测模型,预测关键性能指标对应的下一个周期的时间序列数据对应的预测趋势值,根据当前周期的时间序列数据对应的周期值和残差以及下一个周期的时间序列数据对应的预测趋势值,获得下一个周期的时间序列数据对应的取值置信区间,根据关键性能指标对应的下一个周期的时间序列数据以及下一个周期的时间序列数据对应的取值置信区间,确定下一个周期的时间序列数据中是否存在异常数据,提高了KPI的异常数据的识别效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本发明第一实施例提供的关键性能指标的异常检测方法的流程示意图。
图2是本发明第二实施例提供的关键性能指标的异常检测方法的流程示意图。
图3是本发明第三实施例提供的关键性能指标的异常检测方法的流程示意图。
图4是本发明第四实施例提供的关键性能指标的异常检测方法的流程示意图。
图5是本发明第五实施例提供的关键性能指标的异常检测方法的流程示意图。
图6是本发明第六实施例提供的关键性能指标的异常检测方法的流程示意图。
图7是本发明第七实施例提供的关键性能指标的异常检测方法的流程示意图。
图8是本发明第八实施例提供的关键性能指标的异常检测装置的结构示意图。
图9是本发明第九实施例提供的关键性能指标的异常检测装置的结构示意图。
图10是本发明第十实施例提供的关键性能指标的异常检测装置的结构示意图。
图11是本发明第十一实施例提供的关键性能指标的异常检测装置的结构示意图。
图12是本发明第十二实施例提供的关键性能指标的异常检测装置的结构示意图。
图13是本发明第十三实施例提供的关键性能指标的异常检测装置的结构示意图。
图14是本发明第十四实施例提供的关键性能指标的异常检测装置的结构示意图。
图15是本发明第十五实施例提供的关键性能指标的异常检测装置的结构示意图。
图16是本发明第十六实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
为了便于理解本申请提供的技术方案,下面先对本申请技术方案的相关内容进行说明。在大规模在线服务的应用场景下,KPI,比如CPU利用率、每秒查询数据等,的数量可以达到数千到数百万个。KPI是时间序列数据,本发明实施例通过挖掘KPI的时间序列数据的周期变化规律,使用差分整合移动平均自回归(Autoregressive Integrated MovingAverage,简称ARIMA)模型对周期性时间序列数据进行建模,基于建立的预测模型实现对KPI异常数据的识别,能够快速地发现KPI的异常数据,提高了KPI异常数据的识别效率。
下面以服务器作为执行主体为例来说明本发明实施例提供的关键性能指标的异常检测方法的具体实现过程。可理解是,本发明实施例提供的关键性能指标的异常检测方法的执行主体包括但不限于服务器。
图1是本发明第一实施例提供的关键性能指标的异常检测方法的流程示意图,如图1所示,本发明实施例提供的关键性能指标的异常检测方法,包括:
S101、获取关键性能指标对应的当前周期的时间序列数据;
具体地,服务器可以获取KPI对应的每个周期的时间序列数据,对于当前需要处理的周期的时间序列数据,作为当前周期的时间序列数据,每个周期的时间序列数据中包括相同数量的按照时间先后顺序排列的KPI值。其中,KPI的周期是预先获得的。
例如,所述服务器可以获取KPI的属性信息,在属性信息中会设置KPI是周期性的还是非周期性的,对于周期性的KPI,所述服务器会获取周期性的KPI的每个周期的时间序列数据。
例如,在大规模在线服务的应用场景下,KPI的数量非常多,逐一地为每个KPI设置周期性或者非周期性的属性非常的费时费力。可以建立关键性能指标检测库,关键性能指标检测库包括的每个KPI都具有周期性,当确定某个新的KPI具有周期性,可以将该KPI添加到关键性能指标检测库中。所述服务器可以将接收到的KPI与关键性能指标检测库中的KPI进行比较,以确定接收到的KPI是否具有周期性。
S102、对所述当前周期的时间序列数据进行分解,获得所述当前周期的时间序列数据对应的趋势值、周期值和残差;
具体地,所述服务器在获得KPI的当前周期的时间序列数据之后,可以对所述当前周期的时间序列数据进行分解,获得所述当前周期的时间序列数据的趋势值、周期值和残差。其中,所述当前周期的时间序列数据中每个KPI值对应一个趋势值、一个周期值和一个残差,所述当前周期的时间序列数据中各个KPI值对应的周期值相等。
例如,所述服务器可以调用Python的Statsmodels库的seasonal_decompose函数对当前周期的时间序列数据进行分解,获得所述当前周期的时间序列数据的趋势值、周期值和残差。
S103、根据所述当前周期的时间序列数据对应的趋势值以及所述关键性能指标的预测模型,预测所述关键性能指标对应的下一个周期的时间序列数据对应的预测趋势值;其中,所述关键性能指标的预测模型是基于所述关键性能指标的历史数据训练获得的;
具体地,所述服务器将所述当前周期的时间序列数据对应的趋势值输入到所述关键性能指标的预测模型中,经过所述KPI的预测模型的处理,可以输出所述KPI对应的下一个周期的时间序列数据对应的预测趋势值。其中,所述KPI的预测模型是基于所述关键性能指标的历史数据训练获得的,不同的KPI各自的预测模型也是不同的。
S104、根据所述当前周期的时间序列数据对应的周期值和残差以及所述下一个周期的时间序列数据对应的预测趋势值,获得所述下一个周期的时间序列数据对应的取值置信区间;
具体地,所述服务器计算所述当前周期的时间序列数据对应的周期值与所述下一个周期的时间序列数据中每个KPI值对应的预测趋势值之和,获得所述下一个周期的时间序列数据中每个KPI值对应的基准值。所述服务器可以根据所述当前周期的时间序列数据中每个KPI值对应的残差,确定每个KPI值对应的偏移值。所述服务器根据所述下一个周期的时间序列数据中每个KPI值对应的基准值与对应的偏移值,获得所述下一个周期的时间序列数据中每个KPI值对应的上边界值和下边界值,每个KPI值对应的上边界值和下边界值构成每个KPI值对应的取值置信区间。所述下一个周期的时间序列数据中各个KPI值对应的取值置信区间作为所述下一个周期的时间序列数据对应的取值置信区间。
例如,所述服务器获得所述当前周期的时间序列数据对应的周期值为S,所述当前周期的时间序列数据有100个KPI值,其中第i个KPI值记为第i个KPI值对应的残差记为所述服务器获得所述下一个周期的时间序列数据对应的预测趋势值,所述下一个周期的时间序列数据对应的预测趋势值也有100个,其中第i个KPI值对应的预测趋势值记为所述服务器计算所述下一个周期的时间序列数据中第i个KPI值对应的基准值
所述服务器可以计算获得所述当前周期的时间序列数据中第i个KPI值对应的残差的75%分位数和25%分位数,然后计算第i个KPI值对应的残差的75%分位数和25%分位数之差的绝对值作为偏移值,记为所述服务器计算所述下一个周期的时间序列数据中第i个KPI值对应的上边界值并计算所述下一个周期的时间序列数据中第i个KPI值对应的下边界值所述下一个周期的时间序列数据中第i个KPI值对应的取值置信区间可以记为:
S105、根据所述关键性能指标对应的下一个周期的时间序列数据以及所述下一个周期的时间序列数据对应的取值置信区间,确定所述下一个周期的时间序列数据中是否存在异常数据。
具体地,所述服务器可以获得所述KPI对应的下一个周期的时间序列数据,对于上述下一个周期的时间序列数据中的每个KPI值,判断每个KPI值是否在对应的取值置信区间内,如果每个KPI值都在对应的取值置信区间内,那么可以确定所述下一个周期的时间序列数据中不存在异常数据,如果有任何一个KPI值不在对应的取值置信区间内,那么可以确定所述下一个周期的时间序列数据中存在异常数据,可以将异常数据输出供相关人员查看。
本发明实施例提供的关键性能指标的异常检测方法,能够获取关键性能指标对应的当前周期的时间序列数据,对当前周期的时间序列数据进行分解,获得当前周期的时间序列数据对应的趋势值、周期值和残差,根据当前周期的时间序列数据对应的趋势值以及关键性能指标的预测模型,预测关键性能指标对应的下一个周期的时间序列数据对应的预测趋势值,根据当前周期的时间序列数据对应的周期值和残差以及下一个周期的时间序列数据对应的预测趋势值,获得下一个周期的时间序列数据对应的取值置信区间,根据关键性能指标对应的下一个周期的时间序列数据以及下一个周期的时间序列数据对应的取值置信区间,确定下一个周期的时间序列数据中是否存在异常数据,提高了KPI的异常数据的识别效率。
图2是本发明第二实施例提供的关键性能指标的异常检测方法的流程示意图,如图2所示,在上述各实施例的基础上,进一步地,在获取关键性能指标对应的当前周期的时间序列数据之前,还包括:
S201、接收关键性能指标数据,所述关键性能指标数据包括各个关键性能指标对应的指标标识;
具体地,所述服务器可以接收KPI数据,所述KPI数据包括各个KPI对应的指标标识。其中,所述KPI与指标标识一一对应。所述KPI数据还可以包括各个KPI对应的时间序列数据等信息,根据实际需要进行设置,本发明实施例不做限定。
S202、根据各个关键性能指标对应的指标标识以及关键性能指标检测库,判断各个关键性能指标是否为周期性指标;其中,所述关键性能指标检测库是预设的,包括的所有指标标识对应的关键性能指标具有周期性。
具体地,所述服务器将所述关键性能指标数据包括的各个关键性能指标对应的指标标识分别与关键性能指标检测库中的每个指标标识进行比较,如果所述KPI数据包括的一个指标标识与所述关键性能指标检测库包括的一个指标标识相同,那么可以确定该指标标识对应的KPI为周期性指标,周期性指标的时间序列数据是具有周期性的。其中,所述关键性能指标检测库是预设的,包括的所有指标标识对应的关键性能指标具有周期性。
对于确定为周期性指标的每个KPI,所述服务器通过步骤S101~S105确定每个KPI对应的下一个周期的时间序列数据中是否存在异常数据。
图3是本发明第三实施例提供的关键性能指标的异常检测方法的流程示意图,如图3所示,在上述各实施例的基础上,进一步地,基于所述关键性能指标的历史数据训练获得的所述关键性能指标的预测模型包括:
S301、根据所述关键性能指标的历史数据,获得所述关键性能指标的周期;
具体地,可以收集所述KPI的历史数据,所述服务器可以获取所述KPI的历史数据,然后根据所述KPI的历史数据,获取所述KPI的周期。可理解的是,并不是所有的KPI都具有周期性,如果没有获得KPI的周期,那么不会进行后续处理。
S302、根据所述关键性能指标的周期将所述关键性能指标的历史数据划分为多个周期的历史时间序列数据;
具体地,所述服务器在获得所述KPI的周期之后,可以根据所述关键性能指标的周期将所述KPI的历史数据划分为多个周期的历史时间序列数据。
S303、对每个周期的历史时间序列数据进行分解,获得每个周期的历史时间序列数据对应的趋势值、周期值和残差,并将每个周期的下一个周期的历史时间序列数据对应的趋势值作为每个周期的历史时间序列数据对应的标签;
具体地,所述服务器对每个周期的历史时间序列数据进行分解,获得每个周期的历史时间序列数据对应的趋势值、周期值和残差,并将每个周期的下一个周期的历史时间序列数据对应的趋势值作为每个周期的历史时间序列数据对应的标签。其中,对历史时间序列数据进行分解的具体过程与步骤S102中对时间序列数据进行分解的具体过程类似,此处不进行赘述。
S304、将所述多个周期的历史时间序列数据划分为训练集和测试集,并根据所述训练集中各个周期的历史时间序列数据对应的趋势值和标签,以及差分整合移动平均自回归模型,训练获得所述关键性能指标的待验证预测模型;
具体地,所述服务器会将所述多个周期的历史时间序列数据划分为训练集和测试集。将所述训练集中各个周期的历史时间序列数据对应的趋势值和标签带入到ARIMA模型中,进行模型训练,可以训练获得所述关键性能指标的待验证预测模型。其中,在训练ARIMA模型之前,会配置ARIMA模型的子回归系数p,滑动平均项数q和差分次数d。
例如,所述服务器获得1000个周期的历史时间序列数据,将其中75%的数据,即750个周期的历史时间序列数据作为训练集,将剩余的25%的数据作为测试集,即250个周期的历史时间序列数据作为测试集。
S305、根据所述测试集包括的各个周期的历史时间序列数据对应的趋势值和周期值,以及各个周期的历史时间序列数据对应的标签对所述关键性能指标的待验证预测模型进行验证;
具体地,所述服务器将每个周期的历史时间序列数据对应的趋势值输入到所述KPI的待验证预测模型中,获得每个周期的下一个周期的历史时间序列数据对应的预测趋势值,再计算每个周期的下一个周期的历史时间序列数据对应的预测趋势值中每个KPI值对应的预测趋势值与每个周期的历史时间序列数据对应的周期值之和,获得每个周期的下一个周期的预测时间序列数据,计算各个周期的下一个周期的预测时间序列数据与各个周期的历史时间序列数据对应的标签的均方根误差(Root Mean Squared Error,简称RMSE),根据获得的均方根误差和设定阈值判断所述KPI的待验证预测模型是否通过验证。其中,所述设定阈值根据实际经验进行设置,本发明实施例不做限定。
S306、若判断获知所述关键性能指标的待验证预测模型通过验证,则将所述关键性能指标的待验证预测模型作为所述关键性能指标的预测模型。
具体地,所述服务器将获得的均方根误差和设定阈值进行比较,如果获得的均方根误差小于所述设定阈值,那么所述KPI的待验证预测模型通过验证,那么将所述KPI的待验证预测模型作为所述KPI的预测模型。如果获得的均方根误差大于等于所述设定阈值,那么所述KPI的待验证预测模型没能通过验证,可以重新进行模型训练。
图4是本发明第四实施例提供的关键性能指标的异常检测方法的流程示意图,如图4所示,在上述各实施例的基础上,进一步地,所述根据所述关键性能指标的历史数据,获得所述关键性能指标的周期包括:
S401、对所述关键性能指标的历史数据进行离散傅里叶变换,获得原始周期图;
具体地,所述对所述KPI的历史数据进行离散傅里叶变换(Discrete FourierTransform,简称DFT),将时域数据变换到频域,可以获得原始周期图。其中,原始周期图包括频率以及与频率对应的功率。
S402、对所述关键性能指标的历史数据进行n次随机重排序,并对每次随机重排序获得的数据进行离散傅里叶变换,获得n张周期图;
具体地,所述服务器对所述KPI的历史数据进行随机重排序,获得随机重排序的数据,然后对随机重排序的数据进行离散傅里叶变换,获得对应的周期图,重复进行上述过程n次,可以获得n张周期图。其中,每张周期图包括频率以及与频率对应的功率。
S403、根据每张周期图获得每张周期图的最大功率,并从n张周期图的最大功率中确定阈值;
具体地,对于每张周期图,所述服务器对比各个频率对应的功率,获得最大的功率作为每张周期的最大功率,然后从n张周期图的最大功率中选择一个最大功率作为阈值。
S404、根据所述原始周期图和所述阈值,获得所述关键性能指标的周期。
具体地,所述服务器会将所述原始周期图中的每个频率对应的功率与所述阈值进行比较,获得大于所述阈值的功率,然后从大于所述阈值的功率对应的周期中获得所述KPI的周期。
图5是本发明第五实施例提供的关键性能指标的异常检测方法的流程示意图,如图5所示,在上述各实施例的基础上,进一步地,所述根据所述原始周期图和所述阈值,获得所述关键性能指标的周期包括:
S501、从所述原始周期图中获得大于所述阈值的功率对应的频率,作为候选频率;
具体地,所述服务器将所述原始周期图中的每个频率对应的功率与所述阈值进行比较,如果所述频率对应的功率大于所述阈值,那么将该频率作为候选频率。可理解的是,如果从所述原始周期图中没有获得获选频率,那么所述KPI不具有周期性。
S502、根据所述关键性能指标的历史数据,获得对应的自相关函数,并对所述自相关函数进行离散傅里叶变换,获得所述自相关函数对应的频率域函数;
具体地,所述服务器根据所述KPI的历史数据,可以计算出所述KPI的历史数据对应的自相关函数,然后对所述自相关函数进行离散傅里叶变换,获得所述自相关函数对应的频率域函数。其中,所述自相关函数对应的频率域函数是关于频率的函数。
S503、计算所述自相关函数对应的频率域函数的二阶导数,获得二阶导数表达式;
具体地,所述服务器可以计算自相关函数对应的频率域函数的二阶导数,获得二阶导数表达式,所述二阶导数表达式是关于频率的函数。
S504、根据所述二阶导数表达式以及每个候选频率对应的频率区间,计算获得每个候选频率对应的导数值;
具体地,对于每个候选频率,所述服务器可以获取每个候选频率对应的频率区间,所述候选频率对应的频率区间是由所述候选频率的附近的频率构成。所述服务器从所述候选频率对应的频率区间中取预设数量个频率分别带入到所述二阶导数表达式中,计算出的各个导致值作为所述候选频率对应的导数值。对每个候选频率重复上述过程,即可获得每个候选频率对应的导数值。其中,所述预设数量根据实际需要进行设置,本发明实施例不做限定。
例如,以候选频率f为中心,设定一个固定值s,获取候选频率f对应的频率区间为[f-s,f+s]。从频率区间[f-s,f+s]中从f-s开始,均匀地取100个频率值,然后带入到所述二阶导数表达式中,计算出100个导数值,这100个导数值即候选频率f对应的导数值。
S505、若判断获知所述候选频率对应的导数值中存在小于零的导数值,则将所述候选频率作为待确定频率;
具体地,所述服务器判断所述候选频率对应的导数值中是否存在小于零的导数值,如果存在小于零的导数值,那么将所述候选频率作为待确定频率。如果所述候选频率对应的导数值中不存在小于零的导数值,说明所述候选频率对应的周期不是所述KPI的周期。
S506、若判断获知所述待确定频率有多个,则根据多个所述待确定频率获得最大的周期作为所述关键性能指标对应的周期。
具体地,如果所述服务器只获得一个待确定频率,那么将该待确定频率对应的周期作为所述KPI的周期。如果所述服务器获得多个待确定频率,会计算每个待确定频率对应的周期,然后比较各个待确定频率对应的周期的大小,将其中最大的周期作为所述KPI的周期。
图6是本发明第六实施例提供的关键性能指标的异常检测方法的流程示意图,如图6所示,在上述各实施例的基础上,进一步地,所述从n张周期图的最大功率中确定阈值包括:
S601、对n张周期图的最大功率按照从大到小的顺序进行排列,获得排序结果;
具体地,所述服务器将n张周期图的最大功率按照从大到小的顺序进行排列,获得排序结果,所述排序结果中的第一个值,是n张周期图的最大功率的最大值,所述排序结果中的最后一个值,是n张周期图的最大功率的最小值。
S602、从所述排序结果中获得排序第二位的功率作为所述阈值。
具体地,所述服务器在获得所述排序结果之后,从所述排序结果中获得排序第二位的功率作为所述阈值,即将所述n张周期图的最大功率的第二大值作为所述阈值。
图7是本发明第七实施例提供的关键性能指标的异常检测方法的流程示意图,如图7所示,在上述各实施例的基础上,进一步地,所述根据所述关键性能指标对应的下一个周期的时间序列数据以及所述下一个周期的时间序列数据对应的取值置信区间,确定所述下一个周期的时间序列数据中是否存在异常数据包括:
S701、将所述关键性能指标对应的下一个周期的时间序列数据中每个关键性能指标值与对应的取值置信区间进行比较;
具体地,所述服务器可以从所述KPI对应的下一个周期的时间序列数据中获得每个KPI值,并从所述KPI对应的下一个周期的时间序列数据对应的取值置信区间中获得每个KPI值对应的取值置信区间,然后将每个KPI值与对应的取值置信区间进行比较,即将每个KPI值对应的取值置信区间的上边界值和下边界值分别进行比较。
S702、若判断获知所述关键性能指标值不在对应的取值置信区间内,则确定所述关键性能指标值为异常数据。
具体地,如果所述KPI值小于对应的取值置信区间的下边界值或者大于对应的取值置信区间的上边界值,那么所述服务器可以判断出所述KPI值不在对应的取值置信区间内,可以确定所述KPI值是异常数据。如果所述KPI值大于等于对应的取值置信区间的下边界值且小于等于对应的取值置信区间的上边界值,那么所述服务器可以判断出所述KPI值在对应的取值置信区间内,所述KPI值不是异常数据。
在上述各实施例的基础上,进一步地,本发明实施例提供的关键性能指标的异常检测方法还包括:
若所述下一个周期的时间序列数据中存在异常数据,则将所述异常数据输出。
具体地,所述服务器在判断出所述KPI对应的下一个周期的时间序列数据中存在异常数据之后,可以将所述异常数据输出,比如以系统消息或者报警信息的方式输出,以便相关人员在查看到异常数据之后采取相应的应急措施。
下面以一个具体的实施例来说明本发明实施例提供的关键性能指标的异常检测方法的具体实现过程。
为了对大规模在线服务的关键性能指标进行异常检查,需要先建立关键性能指标的预测模型。收集大规模在线服务的各个关键性能指标的历史数据。对于每个关键性能指标,对所述关键性能指标的历史数据进行离散傅里叶变换,可以获得所述关键性能指标的原始周期图,并对所述关键性能指标的历史数据进行n次随机重排序,然后对每次随机重排序获得的数据进行离散傅里叶变换,可以获得n张周期图。
对于上述n张周期图中的每张周期图,对比周期中各个频率对应的功率,可以获得最大的功率,将最大的功率作为每张周期图的最大功率,能够获得n张周期图的最大功率;将n张周期图的最大功率按照从大到小的顺序进行排列,获得排序结果,从上述排序结果中获得排序第二位的周期图的最大功率作为阈值。
将所述原始周期图中的每个频率对应的功率与上述阈值进行比较,如果原始周期图中的一个频率对应的功率大于上述阈值,那么将该频率作为一个候选频率。对于每个KPI的历史数据,可以计算出每个KPI的历史数据对应的自相关函数,然后对每个KPI的历史数据对应的自相关函数进行离散傅里叶变换,获得每个KPI的历史数据对应的自相关函数对应的频率域函数;计算每个KPI的历史数据对应的自相关函数对应的频率域函数的二阶导数,可以获得对应的二阶导数表达式。对于每个候选频率,以候选频率f为中心,设定一个固定值s,获取候选频率f对应的频率区间为[f-s,f+s],从频率区间[f-s,f+s]中从f-s开始,均匀地取100个频率值,然后带入到所述二阶导数表达式中,计算出100个导数值,这100个导数值即候选频率f对应的导数值。
上述100个导数值中,如果存在小于零的导数值,那么将100个导数值对应的候选频率作为待确定频率。如果获得的待确定频率只有一个,那么将该待确定频率对应的周期作为所述KPI的周期。如果获得多个待确定频率,那么会计算每个待确定频率对应的周期,然后比较各个待确定频率对应的周期的大小,将其中最大的周期作为所述KPI的周期。
对于每个KPI的历史数据,根据每个KPI的周期将每个KPI的历史数据划分为多个周期的历史时间序列数据。然后将对每个周期的历史时间序列数据进行分解,获得每个周期的历史时间序列数据对应的趋势值、周期值和残差,并将每个周期的下一个周期的历史时间序列数据对应的趋势值作为每个周期的历史时间序列数据对应的标签。
获取m个周期的历史时间序列数据,将其中75%的数据作为训练集,将剩余的25%的数据作为测试集。将所述训练集中各个周期的历史时间序列数据对应的趋势值和标签带入到ARIMA模型中,进行模型训练,可以训练获得所述关键性能指标的待验证预测模型。其中,m根据实际经验进行设置,本发明实施例不做限定。
将测试集中每个周期的历史时间序列数据对应的趋势值输入到所述KPI的待验证预测模型中,获得每个周期的下一个周期的历史时间序列数据对应的预测趋势值,再计算每个周期的下一个周期的历史时间序列数据对应的预测趋势值中每个KPI值对应的预测趋势值与每个周期的历史时间序列数据对应的周期值之和,获得每个周期的下一个周期的预测时间序列数据,计算各个周期的下一个周期的预测时间序列数据与各个周期的历史时间序列数据对应的标签的RMSE。将获得的RMSE和设定阈值进行比较,如果获得的均方根误差小于所述设定阈值,那么所述KPI的待验证预测模型通过验证,那么将所述KPI的待验证预测模型作为所述KPI的预测模型。
对于训练获得预测模型的KPI,可以将KPI添加到关键性能指标检测库,以便于后续对KPI进行异常检测。
在对大规模在线服务的关键性能指标进行异常检查时,接收KPI数据,所述KPI数据包括各个KPI对应的指标标识。将所述关键性能指标数据包括的各个关键性能指标对应的指标标识分别与关键性能指标检测库中的每个指标标识进行比较,如果所述KPI数据包括的一个指标标识与所述关键性能指标检测库包括的一个指标标识相同,那么可以确定所述KPI数据包括的该指标标识对应的KPI为周期性指标,后续会进行异常数据检测。
对于确定为周期性指标的每个KPI,获取所述KPI对应的每个周期的时间序列数据,然后调用Python的Statsmodels库的seasonal_decompose函数对当前周期的时间序列数据进行分解,获得所述当前周期的时间序列数据的趋势值、周期值和残差。所将所述KPI的当前周期的时间序列数据对应的趋势值输入到所述关键性能指标的预测模型中,经过所述KPI的预测模型的处理,可以输出所述KPI对应的下一个周期的时间序列数据对应的预测趋势值。计算所述当前周期的时间序列数据对应的周期值与所述下一个周期的时间序列数据中每个KPI值对应的预测趋势值之和,获得所述下一个周期的时间序列数据中每个KPI值对应的基准值,根据所述KPI的当前周期的时间序列数据中每个KPI值对应的残差,确定每个KPI值对应的偏移值;根据所述下一个周期的时间序列数据中每个KPI值对应的基准值与对应的偏移值,获得所述下一个周期的时间序列数据中每个KPI值对应的上边界值和下边界值,每个KPI值对应的上边界值和下边界值构成每个KPI值对应的取值置信区间。所述下一个周期的时间序列数据中各个KPI值对应的取值置信区间作为所述下一个周期的时间序列数据对应的取值置信区间。
获取所述KPI对应的下一个周期的时间序列数据,对于所述KPI对应的下一个周期的时间序列数据中的每个KPI值,判断每个KPI值是否在对应的取值置信区间内,如果每个KPI值都在对应的取值置信区间内,那么可以确定所述KPI对应的下一个周期的时间序列数据中不存在异常数据;如果所述KPI对应的下一个周期的时间序列数据中有任何一个KPI值不在对应的取值置信区间内,那么可以确定所述KPI对应的下一个周期的时间序列数据中中存在异常数据,可以将异常数据输出供相关人员查看。
图8是本发明第八实施例提供的关键性能指标的异常检测装置的结构示意图,如图8所示,本发明实施例提供的关键性能指标的异常检测装置包括获取模块801、第一分解模块802、预测模块803、第一获得模块804和确定模块805,其中:
获取模块801用于获取关键性能指标对应的当前周期的时间序列数据;第一分解模块802用于对所述当前周期的时间序列数据进行分解,获得所述当前周期的时间序列数据对应的趋势值、周期值和残差;预测模块803用于根据所述当前周期的时间序列数据对应的趋势值以及所述关键性能指标的预测模型,预测所述关键性能指标对应的下一个周期的时间序列数据对应的预测趋势值;其中,所述关键性能指标的预测模型是基于所述关键性能指标的历史数据训练获得的;第一获得模块804用于根据所述当前周期的时间序列数据对应的周期值和残差以及所述下一个周期的时间序列数据对应的预测趋势值,获得所述下一个周期的时间序列数据对应的取值置信区间;确定模块805用于根据所述关键性能指标对应的下一个周期的时间序列数据以及所述下一个周期的时间序列数据对应的取值置信区间,确定所述下一个周期的时间序列数据中是否存在异常数据。
具体地,获取模块801可以获取KPI对应的每个周期的时间序列数据,对于当前需要处理的周期的时间序列数据,作为当前周期的时间序列数据,每个周期的时间序列数据中包括相同数量的按照时间先后顺序排列的KPI值。其中,KPI的周期是预先获得的。
在获得KPI的当前周期的时间序列数据之后,第一分解模块802可以对所述当前周期的时间序列数据进行分解,获得所述当前周期的时间序列数据的趋势值、周期值和残差。其中,所述当前周期的时间序列数据中每个KPI值对应一个趋势值、一个周期值和一个残差,所述当前周期的时间序列数据中各个KPI值对应的周期值相等。
预测模块803将所述当前周期的时间序列数据对应的趋势值输入到所述关键性能指标的预测模型中,经过所述KPI的预测模型的处理,可以输出所述KPI对应的下一个周期的时间序列数据对应的预测趋势值。其中,所述KPI的预测模型是基于所述关键性能指标的历史数据训练获得的,不同的KPI各自的预测模型也是不同的。
第一获得模块804计算所述当前周期的时间序列数据对应的周期值与所述下一个周期的时间序列数据中每个KPI值对应的预测趋势值之和,获得所述下一个周期的时间序列数据中每个KPI值对应的基准值。第一获得模块804可以根据所述当前周期的时间序列数据中每个KPI值对应的残差,确定每个KPI值对应的偏移值。第一获得模块804根据所述下一个周期的时间序列数据中每个KPI值对应的基准值与对应的偏移值,获得所述下一个周期的时间序列数据中每个KPI值对应的上边界值和下边界值,每个KPI值对应的上边界值和下边界值构成每个KPI值对应的取值置信区间。所述下一个周期的时间序列数据中各个KPI值对应的取值置信区间作为所述下一个周期的时间序列数据对应的取值置信区间。
确定模块805可以获得所述KPI对应的下一个周期的时间序列数据,对于上述下一个周期的时间序列数据中的每个KPI值,判断每个KPI值是否在对应的取值置信区间内,如果每个KPI值都在对应的取值置信区间内,那么可以确定所述下一个周期的时间序列数据中不存在异常数据,如果有任何一个KPI值不在对应的取值置信区间内,那么可以确定所述下一个周期的时间序列数据中存在异常数据,可以将异常数据输出供相关人员查看。
本发明实施例提供的关键性能指标的异常检测装置,能够获取关键性能指标对应的当前周期的时间序列数据,对当前周期的时间序列数据进行分解,获得当前周期的时间序列数据对应的趋势值、周期值和残差,根据当前周期的时间序列数据对应的趋势值以及关键性能指标的预测模型,预测关键性能指标对应的下一个周期的时间序列数据对应的预测趋势值,根据当前周期的时间序列数据对应的周期值和残差以及下一个周期的时间序列数据对应的预测趋势值,获得下一个周期的时间序列数据对应的取值置信区间,根据关键性能指标对应的下一个周期的时间序列数据以及下一个周期的时间序列数据对应的取值置信区间,确定下一个周期的时间序列数据中是否存在异常数据,提高了KPI的异常数据的识别效率。
图9是本发明第九实施例提供的关键性能指标的异常检测装置的结构示意图,如图9所示,在上述各实施例的基础上,进一步地,本发明实施例提供的关键性能指标的异常检测装置还包括接收模块806和判断模块807,其中:
接收模块806用于接收关键性能指标数据,所述关键性能指标数据包括各个关键性能指标对应的指标标识;判断模块807用于根据各个关键性能指标对应的指标标识以及关键性能指标检测库,判断各个关键性能指标是否为周期性指标;其中,所述关键性能指标检测库是预设的,包括的所有指标标识对应的关键性能指标具有周期性。
图10是本发明第十实施例提供的关键性能指标的异常检测装置的结构示意图,如图10所示,在上述各实施例的基础上,进一步地,本发明实施例提供的关键性能指标的异常检测装置还包括第二获得模块808、划分模块809、第二分解模块810、训练模块811、验证模块812和作为模块813,其中:
第二获得模块808用于根据所述关键性能指标的历史数据,获得所述关键性能指标的周期;划分模块809用于根据所述关键性能指标的周期将所述关键性能指标的历史数据划分为多个周期的历史时间序列数据;第二分解模块810用于对每个周期的历史时间序列数据进行分解,获得每个周期的历史时间序列数据对应的趋势值和周期值,并将每个周期的下一个周期的历史时间序列数据对应的趋势值作为每个周期的历史时间序列数据对应的趋势值的标签;训练模块811用于将所述多个周期的历史时间序列数据划分为训练集和测试集,并根据所述训练集中各个周期的历史时间序列数据对应的趋势值和标签,以及差分整合移动平均自回归模型,训练获得所述关键性能指标的待验证预测模型;验证模块812用于根据所述测试集包括的各个周期的历史时间序列数据对应的趋势值和周期值,以及各个周期的历史时间序列数据对应的标签对所述关键性能指标的待验证预测模型进行验证;作为模块813用于在判断获知所述关键性能指标的待验证预测模型通过验证之后,将所述关键性能指标的待验证预测模型作为所述关键性能指标的预测模型。
图11是本发明第十一实施例提供的关键性能指标的异常检测装置的结构示意图,如图11所示,在上述各实施例的基础上,进一步地,第二获得模块808包括第一获得单元8081、第二获得单元8082、确定单元8083和第三获得单元8084,其中:
第一获得单元8081用于对所述关键性能指标的历史数据进行离散傅里叶变换,获得原始周期图;第二获得单元8082用于对所述关键性能指标的历史数据进行n次随机重排序,并对每次随机重排序获得的数据进行离散傅里叶变换,获得n张周期图;确定单元8083用于根据每张周期图获得每张周期图的最大功率,并从n张周期图的最大功率中确定阈值;第三获得单元8084用于根据所述原始周期图和所述阈值,获得所述关键性能指标的周期。
图12是本发明第十二实施例提供的关键性能指标的异常检测装置的结构示意图,如图12所示,在上述各实施例的基础上,进一步地,第三获得单元8084包括第一获得子单元80841、第二获得子单元80842、第一计算子单元80843、第二计算子单元80844、第一判断子单元80845和第二判断子单元80846,其中:
第一获得子单元80841用于从所述原始周期图中获得大于所述阈值的功率对应的频率,作为候选频率;第二获得子单元80842用于根据所述关键性能指标的历史数据,获得对应的自相关函数,并对所述自相关函数进行离散傅里叶变换,获得所述自相关函数对应的频率域函数;第一计算子单元80843用于计算所述自相关函数对应的频率域函数的二阶导数,获得二阶导数表达式;第二计算子单元80844用于根据所述二阶导数表达式以及每个候选频率对应的频率区间,计算获得每个候选频率对应的导数值;第一判断子单元80845用于在判断获知所述候选频率对应的导数值小于零之中存在小于零的导数值之后,将所述候选频率作为待确定频率;第二判断子单元80846用于在判断获知所述待确定频率有多个之后,根据多个所述待确定频率获得最大的周期作为所述关键性能指标对应的周期。
图13是本发明第十三实施例提供的关键性能指标的异常检测装置的结构示意图,如图13所示,在上述各实施例的基础上,进一步地,确定单元8083包括排序子单元80831和作为子单元80832,其中:
排序子单元80831用于对n张周期图的最大功率按照从大到小的顺序进行排列,获得排序结果;作为子单元80832用于从所述排序结果中获得排序第二位的功率作为所述阈值。
图14是本发明第十四实施例提供的关键性能指标的异常检测装置的结构示意图,如图14所示,在上述各实施例的基础上,进一步地,确定模块805包括比较单元8051和判断单元8052,其中:
比较单元8051用于将所述关键性能指标对应的下一个周期的时间序列数据中每个关键性能指标值与对应的取值置信区间进行比较;判断单元8052用于在判断获知所述关键性能指标值不在对应的取值置信区间内之后,确定所述关键性能指标值为异常数据。
图15是本发明第十五实施例提供的关键性能指标的异常检测装置的结构示意图,如图15所示,在上述各实施例的基础上,进一步地,本发明实施例提供的关键性能指标的异常检测装置还包括输出模块814,其中:
输出模块814用于若所述下一个周期的时间序列数据中存在异常数据,则将所述异常数据输出。
本发明实施例提供的装置的实施例具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
图16是本发明一实施例提供的电子设备的实体结构示意图,如图16所示,该电子设备可以包括:处理器(processor)1601、通信接口(Communications Interface)1602、存储器(memory)1603和通信总线1604,其中,处理器1601,通信接口1602,存储器1603通过通信总线1604完成相互间的通信。处理器1601可以调用存储器1603中的逻辑指令,以执行如下方法:获取关键性能指标对应的当前周期的时间序列数据;对所述当前周期的时间序列数据进行分解,获得所述当前周期的时间序列数据对应的趋势值、周期值和残差;根据所述当前周期的时间序列数据对应的趋势值以及所述关键性能指标的预测模型,预测所述关键性能指标对应的下一个周期的时间序列数据对应的预测趋势值;其中,所述关键性能指标的预测模型是基于所述关键性能指标的历史数据训练获得的;根据所述当前周期的时间序列数据对应的周期值和残差以及所述下一个周期的时间序列数据对应的预测趋势值,获得所述下一个周期的时间序列数据对应的取值置信区间;根据所述关键性能指标对应的下一个周期的时间序列数据以及所述下一个周期的时间序列数据对应的取值置信区间,确定所述下一个周期的时间序列数据中是否存在异常数据。
此外,上述的存储器1603中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,当所述计算机程序被处理器执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:获取关键性能指标对应的当前周期的时间序列数据;对所述当前周期的时间序列数据进行分解,获得所述当前周期的时间序列数据对应的趋势值、周期值和残差;根据所述当前周期的时间序列数据对应的趋势值以及所述关键性能指标的预测模型,预测所述关键性能指标对应的下一个周期的时间序列数据对应的预测趋势值;其中,所述关键性能指标的预测模型是基于所述关键性能指标的历史数据训练获得的;根据所述当前周期的时间序列数据对应的周期值和残差以及所述下一个周期的时间序列数据对应的预测趋势值,获得所述下一个周期的时间序列数据对应的取值置信区间;根据所述关键性能指标对应的下一个周期的时间序列数据以及所述下一个周期的时间序列数据对应的取值置信区间,确定所述下一个周期的时间序列数据中是否存在异常数据。
本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述各方法实施例所提供的方法,例如包括:获取关键性能指标对应的当前周期的时间序列数据;对所述当前周期的时间序列数据进行分解,获得所述当前周期的时间序列数据对应的趋势值、周期值和残差;根据所述当前周期的时间序列数据对应的趋势值以及所述关键性能指标的预测模型,预测所述关键性能指标对应的下一个周期的时间序列数据对应的预测趋势值;其中,所述关键性能指标的预测模型是基于所述关键性能指标的历史数据训练获得的;根据所述当前周期的时间序列数据对应的周期值和残差以及所述下一个周期的时间序列数据对应的预测趋势值,获得所述下一个周期的时间序列数据对应的取值置信区间;根据所述关键性能指标对应的下一个周期的时间序列数据以及所述下一个周期的时间序列数据对应的取值置信区间,确定所述下一个周期的时间序列数据中是否存在异常数据。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在本说明书的描述中,参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (19)
1.一种关键性能指标的异常检测方法,其特征在于,包括:
获取关键性能指标对应的当前周期的时间序列数据;
对所述当前周期的时间序列数据进行分解,获得所述当前周期的时间序列数据对应的趋势值、周期值和残差;
根据所述当前周期的时间序列数据对应的趋势值以及所述关键性能指标的预测模型,预测所述关键性能指标对应的下一个周期的时间序列数据对应的预测趋势值;其中,所述关键性能指标的预测模型是基于所述关键性能指标的历史数据训练获得的;
根据所述当前周期的时间序列数据对应的周期值和残差以及所述下一个周期的时间序列数据对应的预测趋势值,获得所述下一个周期的时间序列数据对应的取值置信区间;
根据所述关键性能指标对应的下一个周期的时间序列数据以及所述下一个周期的时间序列数据对应的取值置信区间,确定所述下一个周期的时间序列数据中是否存在异常数据。
2.根据权利要求1所述的方法,其特征在于,在获取关键性能指标对应的当前周期的时间序列数据之前,还包括:
接收关键性能指标数据,所述关键性能指标数据包括各个关键性能指标对应的指标标识;
根据各个关键性能指标对应的指标标识以及关键性能指标检测库,判断各个关键性能指标是否为周期性指标;其中,所述关键性能指标检测库是预设的包括的所有指标标识对应的关键性能指标具有周期性。
3.根据权利要求1所述的方法,其特征在于,基于所述关键性能指标的历史数据训练获得的所述关键性能指标的预测模型包括:
根据所述关键性能指标的历史数据,获得所述关键性能指标的周期;
根据所述关键性能指标的周期将所述关键性能指标的历史数据划分为多个周期的历史时间序列数据;
对每个周期的历史时间序列数据进行分解,获得每个周期的历史时间序列数据对应的趋势值和周期值,并将每个周期的下一个周期的历史时间序列数据对应的趋势值作为每个周期的历史时间序列数据对应的趋势值的标签;
将所述多个周期的历史时间序列数据划分为训练集和测试集,并根据所述训练集中各个周期的历史时间序列数据对应的趋势值和标签,以及差分整合移动平均自回归模型,训练获得所述关键性能指标的待验证预测模型;
根据所述测试集包括的各个周期的历史时间序列数据对应的趋势值和周期值,以及各个周期的历史时间序列数据对应的标签对所述关键性能指标的待验证预测模型进行验证;
若判断获知所述关键性能指标的待验证预测模型通过验证,则将所述关键性能指标的待验证预测模型作为所述关键性能指标的预测模型。
4.根据权利要求3所述的方法,其特征在于,所述根据所述关键性能指标的历史数据,获得所述关键性能指标的周期包括:
对所述关键性能指标的历史数据进行离散傅里叶变换,获得原始周期图;
对所述关键性能指标的历史数据进行n次随机重排序,并对每次随机重排序获得的数据进行离散傅里叶变换,获得n张周期图;
根据每张周期图获得每张周期图的最大功率,并从n张周期图的最大功率中确定阈值;
根据所述原始周期图和所述阈值,获得所述关键性能指标的周期。
5.根据权利要求4所述的方法,其特征在于,所述根据所述原始周期图和所述阈值,获得所述关键性能指标的周期包括:
从所述原始周期图中获得大于所述阈值的功率对应的频率,作为候选频率;
根据所述关键性能指标的历史数据,获得对应的自相关函数,并对所述自相关函数进行离散傅里叶变换,获得所述自相关函数对应的频率域函数;
计算所述自相关函数对应的频率域函数的二阶导数,获得二阶导数表达式;
根据所述二阶导数表达式以及每个候选频率对应的频率区间,计算获得每个候选频率对应的导数值;
若判断获知所述候选频率对应的导数值中存在小于零的导数值,则将所述候选频率作为待确定频率;
若判断获知所述待确定频率有多个,则根据多个所述待确定频率获得最大的周期作为所述关键性能指标对应的周期。
6.根据权利要求4所述的方法,其特征在于,所述从n张周期图的最大功率中确定阈值包括:
对n张周期图的最大功率按照从大到小的顺序进行排列,获得排序结果;
从所述排序结果中获得排序第二位的功率作为所述阈值。
7.根据权利要求1所述的方法,其特征在于,所述根据所述关键性能指标对应的下一个周期的时间序列数据以及所述下一个周期的时间序列数据对应的取值置信区间,确定所述下一个周期的时间序列数据中是否存在异常数据包括:
将所述关键性能指标对应的下一个周期的时间序列数据中每个关键性能指标值与对应的取值置信区间进行比较;
若判断获知所述关键性能指标值不在对应的取值置信区间内,则确定所述关键性能指标值为异常数据。
8.根据权利要求1至7任一项所述的方法,其特征在于,还包括:
若所述下一个周期的时间序列数据中存在异常数据,则将所述异常数据输出。
9.一种关键性能指标的异常检测装置,其特征在于,包括:
获取模块,用于获取关键性能指标对应的当前周期的时间序列数据;
第一分解模块,用于对所述当前周期的时间序列数据进行分解,获得所述当前周期的时间序列数据对应的趋势值、周期值和残差;
预测模块,用于根据所述当前周期的时间序列数据对应的趋势值以及所述关键性能指标的预测模型,预测所述关键性能指标对应的下一个周期的时间序列数据对应的预测趋势值;其中,所述关键性能指标的预测模型是基于所述关键性能指标的历史数据训练获得的;
第一获得模块,用于根据所述当前周期的时间序列数据对应的周期值和残差以及所述下一个周期的时间序列数据对应的预测趋势值,获得所述下一个周期的时间序列数据对应的取值置信区间;
确定模块,用于根据所述关键性能指标对应的下一个周期的时间序列数据以及所述下一个周期的时间序列数据对应的取值置信区间,确定所述下一个周期的时间序列数据中是否存在异常数据。
10.根据权利要求9所述的装置,其特征在于,还包括:
接收模块,用于接收关键性能指标数据,所述关键性能指标数据包括各个关键性能指标对应的指标标识;
判断模块,用于根据各个关键性能指标对应的指标标识以及关键性能指标检测库,判断各个关键性能指标是否为周期性指标;其中,所述关键性能指标检测库是预设的,包括的所有指标标识对应的关键性能指标具有周期性。
11.根据权利要求9所述的装置,其特征在于,还包括:
第二获得模块,用于根据所述关键性能指标的历史数据,获得所述关键性能指标的周期;
划分模块,用于根据所述关键性能指标的周期将所述关键性能指标的历史数据划分为多个周期的历史时间序列数据;
第二分解模块,用于对每个周期的历史时间序列数据进行分解,获得每个周期的历史时间序列数据对应的趋势值和周期值,并将每个周期的下一个周期的历史时间序列数据对应的趋势值作为每个周期的历史时间序列数据对应的趋势值的标签;
训练模块,用于将所述多个周期的历史时间序列数据划分为训练集和测试集,并根据所述训练集中各个周期的历史时间序列数据对应的趋势值和标签,以及差分整合移动平均自回归模型,训练获得所述关键性能指标的待验证预测模型;
验证模块,用于根据所述测试集包括的各个周期的历史时间序列数据对应的趋势值和周期值,以及各个周期的历史时间序列数据对应的标签对所述关键性能指标的待验证预测模型进行验证;
作为模块,用于在判断获知所述关键性能指标的待验证预测模型通过验证之后,将所述关键性能指标的待验证预测模型作为所述关键性能指标的预测模型。
12.根据权利要求11所述的装置,其特征在于,所述第二获得模块包括:
第一获得单元,用于对所述关键性能指标的历史数据进行离散傅里叶变换,获得原始周期图;
第二获得单元,用于对所述关键性能指标的历史数据进行n次随机重排序,并对每次随机重排序获得的数据进行离散傅里叶变换,获得n张周期图;
确定单元,用于根据每张周期图获得每张周期图的最大功率,并从n张周期图的最大功率中确定阈值;
第三获得单元,用于根据所述原始周期图和所述阈值,获得所述关键性能指标的周期。
13.根据权利要求12所述的装置,其特征在于,所述第三获得单元包括:
第一获得子单元,用于从所述原始周期图中获得大于所述阈值的功率对应的频率,作为候选频率;
第二获得子单元,用于根据所述关键性能指标的历史数据,获得对应的自相关函数,并对所述自相关函数进行离散傅里叶变换,获得所述自相关函数对应的频率域函数;
第一计算子单元,用于计算所述自相关函数对应的频率域函数的二阶导数,获得二阶导数表达式;
第二计算子单元,用于根据所述二阶导数表达式以及每个候选频率对应的频率区间,计算获得每个候选频率对应的导数值;
第一判断子单元,用于在判断获知所述候选频率对应的导数值中存在小于零的导数值之后,将所述候选频率作为待确定频率;
第二判断子单元,用于在判断获知所述待确定频率有多个之后,根据多个所述待确定频率获得最大的周期作为所述关键性能指标对应的周期。
14.根据权利要求12所述的装置,其特征在于,所述确定单元包括:
排序子单元,用于对n张周期图的最大功率按照从大到小的顺序进行排列,获得排序结果;
作为子单元,用于从所述排序结果中获得排序第二位的功率作为所述阈值。
15.根据权利要求9所述的装置,其特征在于,所述确定模块包括:
比较单元,用于将所述关键性能指标对应的下一个周期的时间序列数据中每个关键性能指标值与对应的取值置信区间进行比较;
判断单元,用于在判断获知所述关键性能指标值不在对应的取值置信区间内之后,确定所述关键性能指标值为异常数据。
16.根据权利要求9至15任一项所述的装置,其特征在于,还包括:
输出模块,用于若所述下一个周期的时间序列数据中存在异常数据,则将所述异常数据输出。
17.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8任一项所述方法的步骤。
18.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8任一项所述方法的步骤。
19.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111525535.7A CN114239952B (zh) | 2021-12-14 | 2021-12-14 | 一种关键性能指标的异常检测方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111525535.7A CN114239952B (zh) | 2021-12-14 | 2021-12-14 | 一种关键性能指标的异常检测方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114239952A true CN114239952A (zh) | 2022-03-25 |
CN114239952B CN114239952B (zh) | 2024-02-13 |
Family
ID=80755674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111525535.7A Active CN114239952B (zh) | 2021-12-14 | 2021-12-14 | 一种关键性能指标的异常检测方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114239952B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114528190A (zh) * | 2022-04-21 | 2022-05-24 | 云账户技术(天津)有限公司 | 单指标异常的检测方法、装置、电子设备及可读存储介质 |
CN115473830A (zh) * | 2022-09-06 | 2022-12-13 | 中国银行股份有限公司 | 一种数据中心性能指标异常检测方法、装置、系统和介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111753875A (zh) * | 2020-05-15 | 2020-10-09 | 国家电网有限公司客户服务中心 | 一种电力信息系统运行趋势分析方法、装置及存储介质 |
CN111831704A (zh) * | 2020-05-21 | 2020-10-27 | 北京嘀嘀无限科技发展有限公司 | 异常数据的确定方法、装置、存储介质和电子设备 |
CN111860897A (zh) * | 2020-08-05 | 2020-10-30 | 青岛特来电新能源科技有限公司 | 一种异常检测方法、装置、设备及计算机可读存储介质 |
CN112131272A (zh) * | 2020-09-22 | 2020-12-25 | 平安科技(深圳)有限公司 | 多元kpi时间序列的检测方法、装置、设备及存储介质 |
-
2021
- 2021-12-14 CN CN202111525535.7A patent/CN114239952B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111753875A (zh) * | 2020-05-15 | 2020-10-09 | 国家电网有限公司客户服务中心 | 一种电力信息系统运行趋势分析方法、装置及存储介质 |
CN111831704A (zh) * | 2020-05-21 | 2020-10-27 | 北京嘀嘀无限科技发展有限公司 | 异常数据的确定方法、装置、存储介质和电子设备 |
CN111860897A (zh) * | 2020-08-05 | 2020-10-30 | 青岛特来电新能源科技有限公司 | 一种异常检测方法、装置、设备及计算机可读存储介质 |
CN112131272A (zh) * | 2020-09-22 | 2020-12-25 | 平安科技(深圳)有限公司 | 多元kpi时间序列的检测方法、装置、设备及存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114528190A (zh) * | 2022-04-21 | 2022-05-24 | 云账户技术(天津)有限公司 | 单指标异常的检测方法、装置、电子设备及可读存储介质 |
CN114528190B (zh) * | 2022-04-21 | 2022-07-01 | 云账户技术(天津)有限公司 | 单指标异常的检测方法、装置、电子设备及可读存储介质 |
CN115473830A (zh) * | 2022-09-06 | 2022-12-13 | 中国银行股份有限公司 | 一种数据中心性能指标异常检测方法、装置、系统和介质 |
CN115473830B (zh) * | 2022-09-06 | 2024-06-07 | 中国银行股份有限公司 | 一种数据中心性能指标异常检测方法、装置、系统和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114239952B (zh) | 2024-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106294120B (zh) | 测试代码的方法、设备和计算机程序产品 | |
US7107187B1 (en) | Method for modeling system performance | |
CN114239952B (zh) | 一种关键性能指标的异常检测方法、装置、设备及介质 | |
CN112148577A (zh) | 数据异常检测方法、装置、电子设备及存储介质 | |
CN112183758A (zh) | 用于实现模型训练的方法及装置、计算机存储介质 | |
CN109117941A (zh) | 告警预测方法、系统、存储介质及计算机设备 | |
CN107679683B (zh) | 软件开发进度预警方法和装置 | |
US10611086B2 (en) | System and method for evaluating additive manufacturing index | |
CN110457175B (zh) | 业务数据处理方法、装置、电子设备及介质 | |
CN113780691A (zh) | 数据测试方法、装置、电子设备及存储介质 | |
CN111314173A (zh) | 监控信息异常的定位方法、装置、计算机设备及存储介质 | |
CN113592019A (zh) | 基于多模型融合的故障检测方法、装置、设备及介质 | |
CN112070180B (zh) | 基于信息物理双侧数据的电网设备状态判断方法及装置 | |
CN116136950B (zh) | 芯片验证方法、装置、系统、电子设备及存储介质 | |
CN112801434A (zh) | 性能指标健康度的监测方法、装置、设备和存储介质 | |
CN115237724A (zh) | 基于人工智能的数据监控方法、装置、设备及存储介质 | |
CN114490249B (zh) | 监控报警方法和装置、计算机设备、存储介质 | |
CN111651652B (zh) | 基于人工智能的情感倾向识别方法、装置、设备及介质 | |
CN115705413A (zh) | 异常日志的确定方法及装置 | |
CN112464164A (zh) | 一种人因可靠性评估的方法、装置和信息处理设备 | |
CN116955182A (zh) | 异常指标分析方法、设备、存储介质及装置 | |
CN114938339B (zh) | 一种数据处理方法和相关装置 | |
CN114064434B (zh) | 一种日志异常的预警方法、装置、电子设备及存储介质 | |
CN110888811A (zh) | 代码覆盖率信息处理方法、装置、电子设备及介质 | |
CN115760486A (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 |