CN115185761A - 异常检测方法及装置 - Google Patents

异常检测方法及装置 Download PDF

Info

Publication number
CN115185761A
CN115185761A CN202110362069.9A CN202110362069A CN115185761A CN 115185761 A CN115185761 A CN 115185761A CN 202110362069 A CN202110362069 A CN 202110362069A CN 115185761 A CN115185761 A CN 115185761A
Authority
CN
China
Prior art keywords
data point
value
residual
data
abnormal
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
Application number
CN202110362069.9A
Other languages
English (en)
Inventor
孙旭东
张彦芳
常庆龙
丁伋堃
张亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202110362069.9A priority Critical patent/CN115185761A/zh
Publication of CN115185761A publication Critical patent/CN115185761A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9035Filtering based on additional data, e.g. user or group profiles

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Quality & Reliability (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

本申请实施例公开了一种异常检测方法及装置,以降低异常检测的误报概率,提高异常检测的准确度。该方法包括:获取第一数据点的参考数据点的残差值,参考数据点包括第一数据点的X个历史数据点,一个数据点的残差值为预测值与真实值的差值,X大于或等于1;根据历史数据点的残差值确定第一数据点的残差值的取值区间;根据该取值区间对第一数据点进行异常检测。

Description

异常检测方法及装置
技术领域
本申请实施例涉及通信领域,尤其涉及异常检测方法及装置。
背景技术
时序预测是利用时间序列所能反映的社会经济现象的发展过程和规律性的历史数据,进行引伸外推,预测未来一段时间的数据的方法。大数据时代的时序预测得到越来越多的关注。时间序列是一组按照时间发生先后顺序进行排列的数据点序列,可以对时间序列中的数据点进行异常检测,暴露异常点以指导数据的应用,例如,通过异常检测可以找出远离相对既定模式或分布的数据点。
当前,基于历史数据进行时序预测得到预测未来数据基线,是根据专家基于经验设置的异常阈值,将异常阈值与历史数据、实时采集的数据进行比较,以判断历史数据、实时采集的数据是否为异常点。但在实际应用中,复杂的应用场景以及计算系统复杂度的提升,数据发生较大波动的情况时有发生,当前的异常检测采用与异常阈值对比的方法,在数据波动大时不可避免导致较多误报,异常检测的准确度急剧下降。
发明内容
本申请提供一种异常检测方法,以降低异常检测的误报概率,提高异常检测的准确度。
为达到上述目的,本申请实施例采用如下技术方案:
第一方面,提供一种异常检测方法,该方法可以应用于网络设备,具体包括:网络设备先获取待检测的第一数据点的参考数据点的残差值,该参考数据点可以包括第一数据点的X个历史数据点,X大于或等于1;一个数据点的残差值为预测值与真实值的差值;然后,网络设备根据获取的历史数据点的残差值,确定第一数据点的残差值的取值区间;最后网络设备根据确定的取值区间对第一数据点进行异常检测。
通过本申请实施例提供的异常检测方法,先根据待检测的数据点的多个历史数据点的残差值,确定第一数据点的残差值的取值区间,再根据该取值区间对第一数据点进行异常检测,这样一来,可以根据历史数据点的波动情况,动态的确定不同数据点的残差值的取值区间,确定的数据点的残差值的取值区间不仅结合了数据波动因素且与数据波动趋势匹配,在数据波动的场景中,不同的数据点构建的异常阈值区间不同,可以很好的避免误检的情况,大大提高了异常检测的准确度。再者,数据点的残差值的取值区间是一个范围,用其代替现有的异常阈值来进行异常检测,也可以进一步提高检测准确度,降低误检概率。
在一种可能的实现方式中,上述取值区间指示了第一数据点为正常时,其残差值的取值范围,网络设备可以将第一数据点的残差值与确定的取值区间直接对比,对第一数据点进行异常检测。具体的,若第一数据点的残差值在取值区间内,确定第一数据点为正常;或者,若第一数据点的残差值在取值区间之外,确定第一数据点为异常。通过残差值的取值区间与残差值进行对比,相当于给残差值配置了取值的波动范围,也就相当于考虑了数据的波动特点,在数据波动的场景中就可以很好的避免误检的情况,大大提高了异常检测的准确度。
在另一种可能的实现方式中,上述取值区间指示了第一数据点为正常时,其残差值的取值范围,还可以配置异常过滤规则,用于将取值区间判定为异常点过滤出作为正常点。可以根据实际需求或者用户期望或者时间序列的曲线特点,配置异常过滤规则的内容。本申请提供的异常检测方法还可以包括:网络设备还可以获取第一数据点的异常过滤规则。相应的,网络设备可以结合第一数据点的残差值的取值区间以及第一数据点的异常过滤规则,对第一数据点进行异常检测,具体的检测方案可以为:若第一数据点的残差值在取值区间之外,且第一数据点不符合异常过滤规则,确定第一数据点为异常。或者,若第一数据点的残差值在取值区间之内,确定第一数据点为正常。或者,若第一数据点符合异常过滤规则,确定第一数据点为正常。通过在数据点的残差值的取值区间的基础上,结合异常过滤规则,由异常过滤规则将取值区间误检为异常点的正常数据点排除,进一步的提升了异常检测的准确率。
在另一种可能的实现方式中,第一数据点的异常过滤规则可以包括下述条件中的一种或多种:第一数据点的残差值大于或等于第一阈值;第一数据点的残差值小于第二阈值;第一数据点的真实值大于或等于第三阈值;第一数据点的真实值小于第四阈值;第一数据点的历史数据点在取值区间之外的数量大于或等于第五阈值;第一数据点的历史数据点在取值区间之外的数量小于第六阈值;第一数据点的历史数据点在取值区间之外持续的时长大于或等于第七阈值;第一数据点的历史数据点在取值区间之外持续的时长小于第八阈值。当然,第一数据点的异常过滤规则还可以包括其他条件,本申请不在一一枚举。本实现方式示例了异常过滤规则的条件,以通过在数据点的残差值的取值区间的基础上结合异常过滤规则,提升异常检测的准确率。
在另一种可能的实现方式中,网络设备可以先获取目标对象的数据特征的值,该数据特征用于标识不同数据类型;然后将数据特征值对应的数据类型,确定为目标对象的数据类型;最后根据目标对象的数据类型获取第一数据点的异常过滤规则。由于目标对象的数据类型体现了目标对象的时间序列曲线的特点,因此,根据目标对象的数据类型确定的异常过滤规则,可以很好的描述目标对象正常的数据点所满足的条件,也就能更好的实现通过在数据点的残差值的取值区间的基础上结合异常过滤规则,提升异常检测的准确率。
在另一种可能的实现方式中,上述取值区间的上限可以为A+Z*B,上述取值区间的下限可以为C-Z*B,A可以为参考数据点的残差值的第一计算值,B可以为参考数据点的残差值的第二计算值,C可以为参考数据点的残差值的第三计算值,Z为满足条件的残差阈值。参考数据点的残差值序列可以体现目标对象的时间序列的波动特点以及趋势,通过残差值的计算值结合残差阈值确定的取值区间的上下限准确度高,进而在数据波动的场景中就可以很好的避免误检的情况,大大提高了异常检测的准确度。
在另一种可能的实现方式中,上述Z可以为残差阈值集合中,使得
Figure BDA0003005995270000021
最大的残差阈值。其中,M′为参考数据点的残差值中在当前遍历的残差阈值确定的第一数据点的残差值的取值区间之外的残差值的均值,M为参考数据点的残差值的均值,σ′为参考数据点的残差值中在当前遍历的残差阈值确定的第一数据点的残差值的取值区间之外的残差值的方差,σ为参考数据点的残差值的方差。在该实现方式中,选取的Z确定的取值区间确定的异常数据点的残差值的均值以及方差最接近参考数据点的残差值的均值与方差,以保证利用参考数据点的波动趋势,获取准确的第一数据点的残差值的取值区间,进而在数据波动的场景中就可以很好的避免误检的情况,大大提高了异常检测的准确度。
在另一种可能的实现方式中,上述第一计算值、第三计算值可以为残差均值,第二计算值可以为残差方差。通过均值、方差的形式确定取值区间的上下限,提高方案的准确度。
在另一种可能的实现方式中,上述第一计算值可以为参考数据点的残差值从大到小顺序中的上四分位数,第二计算值可以为该上四分位数减参考数据点的残差值从大到小顺序中的下四分位数;第三计算值可以为参考数据点的残差值从大到小顺序中的下四分位数。通过按比例选值,实现简单,效率高。
在另一种可能的实现方式中,第一数据点的参考数据点还可以包括第一数据点,这样参考数据点的残差值序列可以更好的体现目标对象的数据波动特点,使得确定的上述取值区间更准确。
在另一种可能的实现方式中,若第一数据点为异常,本申请提供的异常检测方法还可以包括输出异常指示信息,该异常指示信息包括第一数据点的标识以及时间戳,用于将异常数据点暴露,以指导数据的使用。
在另一种可能的实现方式中,若第一数据点为异常,本申请提供的异常检测方法还可以包括在目标对象的数据曲线中标记第一数据点为异常,用于将异常数据点暴露,以指导数据的使用。
在另一种可能的实现方式中,网络设备还可以将目标对象的数据类型对应的异常过滤规则输出,由用户对该异常过滤规则进行确认或修改,然后获取用户输入的指示信息,该指示信息可以用于指示确认目标对象的数据类型对应的异常过滤规则,或者,该指示信息用于指示对目标对象的数据类型对应的异常过滤规则进行修改后的异常过滤规则;最后网络设备将指示信息指示的异常过滤规则,确定为第一数据点的异常过滤规则,通过人机交互,提高用户体验。
在另一种可能的实现方式中,网络设备对参考数据点的残差值进行平滑处理,以提高后续参考数据点的残差值使用过程中的准确度。
在另一种可能的实现方式中,网络设备可以根据目标对象的历史数据点进行时序预测,获取目标对象的未来数据点的预测值,以实现基于时序预测的异常检测。
第二方面,提供一种异常检测装置,该异常检测装置包括用于执行第一方面或第一方面中任意一种可能的实现方式所提供的异常检测的方法的单元,例如,该装置可以包括第一获取单元、确定单元以及异常检测单元。其中:
第一获取单元,用于获取第一数据点的参考数据点的残差值,该参考数据点包括第一数据点的X个历史数据点。一个数据点的残差值为预测值与真实值的差值。X大于或等于1。
确定单元,用于根据参考数据点的残差值确定第一数据点的残差值的取值区间。
异常检测单元,用于根据第一数据点的残差值的取值区间对第一数据点进行异常检测。
需要说明的是,第二方面的各个单元具体实现同第一方面的方法描述,这里不再赘述。
第三方面,本申请提供了一种网络设备,该网络设备可以实现上述所述第一方面描述的方法示例中的功能,所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个上述功能相应的模块。该网络设备可以以芯片的产品形态存在。
在一种可能的实现方式中,该网络设备的结构中包括处理器和收发器,该处理器被配置为支持该网络设备执行上述方法中相应的功能。该收发器用于支持该网络设备与其他设备之间的通信。该网络设备还可以包括存储器,该存储器用于与处理器耦合,其保存该网络设备必要的程序指令和数据。
第四方面,提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述第一方面或其任一种可能的实现方式提供的异常检测方法。
第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或其任一种可能的实现方式提供的异常检测方法。
第六方面,本申请提供了一种芯片系统,该芯片系统包括处理器,还可以包括存储器,用于实现上述方法中相应的功能。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
第七方面,本申请提供一种异常检测系统,该系统包括第一方面的网络设备,具备上述第一方面以及任一可能的实现方式的功能。
其中,需要说明的是,上述各个方面中的任意一个方面的各种可能的实现方式,在方案不矛盾的前提下,均可以进行组合。
附图说明
图1为一种基于时序预测的无监督异常检测方法的流程示意图;
图2为本申请实施例提供的一种数据处理网络的结构示意图;
图3为本申请实施例提供的一种网络设备的结构示意图;
图4为本申请实施例提供的一种异常检测方法的流程示意图;
图5为本申请实施例提供的另一种异常检测方法的流程示意图;
图6为本申请实施例提供的一种各个数据类型的数据曲线示意图;
图7为本申请实施例提供的一种获取目标对象的数据类型的流程示意图;
图8为本申请实施例提供的一种目标对象的数据曲线示意图;
图9a为本申请实施例提供的一种异常检测方法的系统框架示意图;
图9b为本申请实施例提供的另一种异常检测方法的流程示意图;
图10为本申请实施例提供的一种时序预测算法预测效果可示意图;
图11为本申请实施例提供的一种异常检测装置的结构示意图;
图12为本申请实施例提供的另一种异常检测装置的结构示意图;
图13为本申请实施例提供的一种网络设备的结构示意图。
具体实施方式
在本申请实施例中,为了便于清楚描述本申请实施例的技术方案,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。该“第一”、第二”描述的技术特征间无先后顺序或者大小顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念,便于理解。
在本申请的描述中,除非另有说明,“/”表示前后关联的对象是一种“或”的关系,例如,A/B可以表示A或B;本申请中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。并且,在本申请的描述中,除非另有说明,“多个”是指两个或多于两个。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
在本申请实施例中,至少一个还可以描述为一个或多个,多个可以是两个、三个、四个或者更多个,本申请不做限制。
在描述本申请的实施例之前,此处先对本申请涉及的名词统一进行解释说明,后续不再一一进行说明。
时序预测,是利用某一对象的时间序列的历史数据,预测该对象未来一段时间的数据。时间序列预测工具方法可以报了:基于业务场景理解的因子预测模型、传统时间序列预测模型、以及机器学习模型。例如,传统时间序列预测模型可以包括均值回归、差分整合移动平均自回归模型(autoregressive integrated moving average model,ARIMA)、指数平滑预测法等。例如,机器学习模型可以包括支持向量机、树模型、神经网络模型(比如长短期记忆(long short-term memory,LSTM))等。本申请描述的对象,可以是指标、参数等可以进行时序预测的信息,本申请对此不予限定。
数据点,可以理解为采样对象在某一时刻对应的数据值。
一个数据点的历史数据点,是指与该数据点归属于同一采样对象,且采样时间在该数据点之前的数据点。
时间序列,是一组按照时间发生先后顺序进行排列的数据点序列。时间序列中的数据点可以为采样的数据点的真实值,也可以为预测的数据点的预测值。
数据点的预测值,是指时序预测的对象,通过历史数据进行时序预测得到的数据点的数据值。
数据点的真实值,是指时序预测的对象,通过采样得到的数据点的数据值。
数据点的残差值,是指数据点的预测值与真实值的差值。例如,残差值可以为预测值减去真实值,或者,残差值可以为真实值减去预测值。
异常检测,是指对数据点进行检测,暴露不符合条件的数据点。例如,该条件可以为预测的模式、数据值或时间等,本申请实施例对于该条件的内容不予限定。
时间序列的异常检测,是指是找出远离相对既定模式或分布的数据点。时间序列异常包括:突升、突降、均值变化等。时间序列的异常检测算法可以包括基于统计与数据分布的算法(N-Sigma)、基于距离/密度的算法(局部异常因子算法)、孤立森林、基于预测的算法(ARIMA)等。
为了解决计算系统复杂度提升带来的人工无法进行异常检测的问题,业界基于时序预测实现异常检测。
图1示意了一种基于时序预测的无监督异常检测方法。如图1所示,首先对输入的对象的历史数据进行数据预处理,该预处理包括填补缺失值;然后基于历史数据,使用ARIMA、高斯过程回归、LSTM等时序预测算法,预测未来该对象的数据基线(包括该对象未来的一个或多个数据点的预测值),接着专家基于经验设置异常阈值(如基于N-Sigma、Q分位数等经典阈值准则设置异常阈值),最后将异常阈值与对象数据点(历史数据和/或当前采样数据)的实际值进行比较,来判断比较过程中遍历的当前数据点点是否为异常数据点,当数据点的实际值大于异常阈值,则判断为异常数据点。但复杂的应用场景以及计算系统复杂度的提升,数据发生较大波动的情况时有发生,图1示意的异常检测在数据波动大时,实际正常的数据点可能由于波动低于异常阈值,导致为判断为异常数据点,这将不可避免导致较多误报,异常检测的准确度急剧下降,因此,基于时序预测进行异常检测时提高异常检测的准确度亟待解决。
基于此,本申请实施例提供一种异常检测方法,先根据待检测的第一数据点的历史数据点的残差值,确定第一数据点的残差值的取值区间,再根据该取值区间对第一数据点进行异常检测,这样一来,可以根据历史数据点的波动情况,动态的确定不同数据点的残差值的取值区间,确定的数据点的残差值的取值区间不仅结合了数据波动因素且与数据波动趋势匹配,在数据波动的场景中,不同的数据点构建的异常阈值区间不同,可以很好的避免误检的情况,大大提高了异常检测的准确度。再者,数据点的残差值的取值区间是一个范围,用其代替现有的异常阈值来进行异常检测,也可以进一步提高检测准确度,降低误检概率。
本申请实施例提供的数据报文传输方法可以适用于图2示出的数据处理网络20。如图2所示,数据处理网络20包括云端设备201以及分析设备202。
通信网络203的类型可以为无线接入网,或者数据中心网络,或者园区网络,或者其他,本申请实施例对此不予限定,图2中仅为示例。数据处理网络20获取的通信网络203的数据点可以为通信网络203的性能数据或其他数据,例如,可以为通信网络203的KPI数据。
如图2所示,云端设备201中包括云端存储设备2011和云端计算设备2012。
云端设备201可以为服务器、计算机等具有存储功能和计算功能的设备,分析设备202可以为服务器、计算机等具有存储功能和计算功能的设备,数量不限制,单台或多台都可以。
其中,云端存储设备2011、云端计算设备2012、分析设备202可以部署在单台设备上,也可以分别部署于不同设备上,通过网络进行通信。
具体的,图2示意的数据处理网络20用于采集并记录数据,以及根据历史数据进行时序预测得到预测数据。
数据处理网络20可以与各种网络、系统等进行配套使用。示例性的,数据处理网络20可以与图2中示意的通信网络203配套使用,以采集并记录通信网络203的关键绩效指标(key performance indicator,KPI)数据,以及根据历史数据进行时序预测得到通信网络203的预测KPI数据。通信网络203中包括各级网络设备,例如集团客户设备、接入网设备、汇聚设备(普通汇聚、骨干汇聚)、L2层设备、L3层设备、核心网设备(例如服务网关(servinggateway,SGW)/移动管理实体(mobility management entity,MME))。
其中,云端存储设备2011可以用于存储历史数据集。示例性的,云端存储设备2011可以存储数据点的历史真实值以及预测值,或者,也可以存储数据点的历史残差值。
云端计算设备2012可以用于基于云端存储设备2011存储的历史数据,进行时序预测得到未来的预测数据点的预测值,并存储于云端存储设备2011。云端计算设备2012还可以用于计算历史数据点的残差值,并存储于云端存储设备2011。
分析设备202,用于按照云端设备201中存储的历史数据,对实时采集的数据或云端设备201中存储的历史数据进行异常检测。
需要说明的是,图2示意的数据处理网络20只是示例说明本申请实施例提供的方案的一种可能的应用场景,并不是对本申请应用场景的具体限定。
下面结合附图,对本申请的实施例进行具体阐述。
一方面,本申请实施例提供一种网络设备,用于执行本申请提供的异常检测方法,该网络设备可以为图2示意的数据处理网络20中的分析设备202,或者该网络设备可以为图2示意的数据处理网络20。图3示出的是与本申请各实施例相关的一种网络设备30。如图3所示,网络设备30可以包括处理器301、存储器302以及收发器303。
下面结合图3对网络设备30的各个构成部件进行具体的介绍:
其中,存储器302可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);或者非易失性存储器(non-volatile memory),例如只读存储器(read-only memory,ROM),快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);或者上述种类的存储器的组合,用于存储可实现本申请方法的程序代码、配置文件或其他内容。
处理器301是网络设备30的控制中心。例如,处理器301可以是一个中央处理器(central processing unit,CPU),也可以是特定集成电路(application specificintegrated circuit,ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路,例如:一个或多个微处理器(digital singnal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)。
收发器303用于与其他设备进行通信。收发器303可以为网络设备30的通信端口或者其他。
一种可能的实现方式中,处理器301通过运行或执行存储在存储器302内的软件程序和/或模块,以及调用存储在存储器302内的数据,执行如下功能:
获取第一数据点的参考数据点的残差值,参考数据点包括第一数据点的X个历史数据点,一个数据点的残差值为预测值与真实值的差值;X大于或等于1;根据参考数据点的残差值确定第一数据点的残差值的取值区间;根据该取值区间对第一数据点进行异常检测。
另一方面,本申请实施例提供一种异常检测方法,可以应用于图2示意的数据处理网络20中,用于对数据点进行异常检测。该方法可以由图2示意的数据处理网络20执行,或者,也可以由图2示意的数据处理网络20中的分析设备202执行。
本申请实施例将进行异常检测的第一数据点所属的对象,称为目标对象。目标对象可以有多个,对于每个目标对象的数据点进行异常检测的过程相似,对于一个目标对象的每个数据点进行异常检测的过程也相似,本申请实施例以对一个目标对象的第一数据点(目标对象的任一个数据点)进行异常检测为例进行描述,此处不再赘述。
在执行本申请方法之前,网络设备或网络设备之外的设备还可以根据目标对象的历史数据点,进行时序预测,获取目标对象的一个或多个未来数据点的预测值,并将得到的预测值存储。
可选的,在进行时序预测的过程中,每采集一个数据点的真实值,还可以将采集的真实值与该数据点的预测值计算残差值存储。
如图4所示,本申请实施例提供的异常检测方法可以包括:
S401、网络设备获取第一数据点的参考数据点的残差值。
其中,第一数据点可以为目标对象的任一历史数据点,或者,第一数据点可以为目标对象的当前采集的数据点。当前采集的数据点可以理解为当前采集真实值的数据点,两者可以相互等价替代。
一种可能的实现方式中,参考数据点可以包括第一数据点的X个历史数据点。
其中,X大于或等于1。在实际应用中,可以根据实际需求配置X的取值,本申请实施例对此不予限定。
另一种可能的实现方式中,参考数据点可以包括第一数据点和第一数据点的X个历史数据点。
一种可能的实现方式中,第一数据点的X个历史数据点,可以指目标对象的时间序列中,第一数据点开始,向前的连续X个历史数据点。
例如,在对象A的时间序列中,假设第一数据点为第100个数据点,X为10,那第一数据点的X个历史数据点,可以为对象A的时间序列中,第90至第99个历史数据点。
一种可能的实现方式中,第一数据点的X个历史数据点,可以指目标对象的时间序列中,第一数据点开始,向前抽样的X个历史数据点。该抽样可以为等间隔抽样,或者随机抽样,本申请实施例对此不予限定。
例如,在对象A的时间序列中,假设第一数据点为第100个数据点,X为10,那第一数据点的X个历史数据点,可以为对象A的时间序列中第50、55、60、65、70、75、80、85、90、95个历史数据点。
当然,也可以根据实际需求配置第一数据点的X个历史数据点的选取方式,本申请实施例对此不予限定,上述两种方式也仅为示例说明。
一种可能的实现方式中,第一数据点为任一历史数据点,网络设备或其他设备中存储了各个历史数据点的真实值和预测值,S401中网络设备获取第一数据点的残差值具体可以实现为:先获取(内部读取或接收其他设备发送的)第一数据点的预测值与真实值,网络设备再计算第一数据点的预测值与真实值的差值,得到第一数据点的残差值。
示例性的,第一数据点为任一历史数据点,网络设备为图2示意的数据处理网络20中的云端设备201,云端设备201中的云端存储设备2011中存储了各个历史数据点的真实值和预测值,S401中云端计算设备2012计算第一数据点的预测值与真实值的差值,得到第一数据点的残差值。
示例性的,第一数据点为任一历史数据点,网络设备为图2示意的数据处理网络20中的分析设备202,云端设备201中的云端存储设备2011中存储了各个历史数据点的真实值和预测值,S401中分析设备202接收云端设备201发送的第一数据点的预测值与真实值,分析设备202计算第一数据点的预测值与真实值的差值,得到第一数据点的残差值。
一种可能的实现方式中,第一数据点为任一历史数据点,网络设备或其他设备中存储了各个历史数据点的残差值(每采集一个数据点的真实值后,根据真实值及预测值计算残差值存储),S401中网络设备获取第一数据点的残差值具体可以实现为:直接获取(内部读取或接收其他设备发送的)第一数据点的残差值。
一种可能的实现方式中,第一数据点为当前采集的数据点,网络设备或其他设备中存储了各个数据点的预测值(通过时序预测得到),S401中网络设备获取第一数据点的残差值具体可以实现为:网络设备在采集到第一数据点的真实值后,获取(内部读取或接收其他设备发送的)第一数据点的预测值,然后计算第一数据点的残差值。
一种可能的实现方式中,网络设备或其他设备中存储了各个历史数据点的真实值和预测值,S402中网络设备获取第一数据点的X个历史数据点的残差值,具体可以实现为:先获取(内部读取或接收其他设备发送的)第一数据点的X个历史数据点的预测值与真实值,网络设备再分别计算该X个历史数据点预测值与真实值的差值,得到X个历史数据点的残差值。
另一种可能的实现方式中,网络设备或其他设备中存储了各个历史数据点的残差值(每采集一个数据点的真实值后,根据真实值及预测值计算残差值存储),S402中网络设备直接获取(内部读取或接收其他设备发送的)第一数据点的X个历史数据点的残差值。
可选的,如图5所示,在S401之后S402之前,本申请提供的异常检测方法还可以包括S402a。
S401a、网络设备对参考数据点的残差值进行平滑处理。
具体的,在S401a中,网络设备可以对S401中获取的参考数据点的残差值进行平滑处理,使得X+1个残差的序列曲线平稳。
其中,该平滑处理可以包括平滑滤波或其他,本申请对于平滑处理的具体方式不予限定。
S402、网络设备根据参考数据点的残差值,确定第一数据点的残差值的取值区间。
其中,该取值区间可以为第一数据点正常时的残差取值范围。
一种可能的实现方式中,网络设备对参考数据点的残差值进行学习,获取目标对象的波动规律以及趋势,以得到第一数据点的残差值的取值区间。
另一种可能的实现方式中,网络设备根据参考数据点的残差值,通过数学方式确定第一数据点的残差值的取值区间。
示例性的,网络设备可以根据参考数据点的残差值,确定第一数据点的残差值的取值区间的上限为A+Z*B,该取值区间的下限为C-Z*B。其中,A为参考数据点的残差值的第一计算值,B为参考数据点的残差值的第二计算值,C为参考数据点的残差值的第三计算值。
需要说明的是,第一计算值、第二计算值、第三计算值的具体内容可以根据实际需求配置。
一种可能的实现方式中,第一计算值、第三计算值可以为残差均值,第二计算值可以为残差方差。
在该实现方式中,A为第一数据点的每个参考数据点的残差值的残差均值,B为第一数据点的每个参考数据点的残差值的残差方差,C为第一数据点的每个参考数据点的残差值的残差均值。
另一种可能的实现方式中,第一计算值可以为参考数据点的残差值从大到小顺序中的上四分位数Q3(即第75%的数值),第二计算值可以为上四分位数Q3减参考数据点的残差值从大到小顺序中的下四分位数Q1(即第25%的数值),第三计算值可以为参考数据点的残差值从大到小顺序中的下四分位数Q1。
具体的,Z为满足条件的残差阈值。Z是用来确定第一数据点的残差值的取值区间的残差阈值,可以根据历史数据点的残差构成的序列,确定出Z,然后根据Z确定出第一数据点的残差值的取值区间。可以根据实际需求配置Z所满足的条件的内容。
在一个示例中,本申请提供一种Z满足的条件的残差阈值,Z为残差阈值集合中,使得
Figure BDA0003005995270000091
最大的残差阈值。其中,M′为参考数据点的残差值中在当前遍历的残差阈值确定的异常阈值区间之外的残差值的均值,M为参考数据点的残差值的均值,σ′为参考数据点的残差值中在当前遍历的残差阈值确定的异常阈值区间之外的残差值的方差,σ为参考数据点的残差值的方差。
其中,残差阈值集合为预先配置的多个残差阈值的集合。例如,可以根据大数据经验配置残差阈值集合中的残差阈值,或者,可以根据第一数据点的参考数据点的残差值配置残差阈值集合中的残差阈值,本申请实施例对此不予限定。
具体的,在上述示例中,网络设备可以对残差阈值集合中的残差阈值进行遍历,遍历到的每一个残差阈值计算
Figure BDA0003005995270000092
的值,最后选取
Figure BDA0003005995270000093
的值最大的残差阈值,作为满足条件的Z。
在另一个示例中,Z可以为残差阈值集合中,与第一数据点的残差值差值最小的残差阈值。
通过S402就可以确定第一数据点的残差值的取值区间,只有第一数据点的残差值落入该区间,才认为第一数据点为正常,若第一数据点的残差值落入该区间之外,则可能确定第一数据点为异常。
由上述确定第一数据点的残差值的取值区间的过程可知,不同的数据点的参考数据点不同,最终确定的不同数据点的残差值的取值区间也就不同,与现有的通过异常阈值进行异常检测完全不同。
S403、网络设备根据该取值区间对第一数据点进行异常检测。
一种可能的实现方式中,在S403中,网络设备判断第一数据点的残差值是否落入自身的残差值的取值区间,若第一数据点的残差值在第一数据点的残差值的取值区间内(即第一数据点的残差值小于或等于取值区间的上限,大于或等于取值区间的下限),则第一数据点为正常,或者,若第一数据点的残差值落入第一数据点的残差值的取值区间之外(即第一数据点的残差值大于取值区间的上限,或者,第一数据点的残差值小于取值区间的下限),则第一数据点为异常。
另一种可能的实现方式中,为了进一步提高异常检测的准确度,在异常阈值区间的基础上,S403中还可以叠加第一数据点的异常过滤规则,对第一数据点进行异常检测。
一种可能的实现方式中,该异常过滤规则为配置的第一数据点正常时所满足的条件。
另一种可能的实现方式中,该异常过滤规则为从第一数据点的残差值的取值区间判断的异常点中,排除正常数据点的条件。
在一种可能的实现方式中,该异常过滤规则可以为用户配置的期望正常数据点所满足的条件。
可以理解的是,第一数据点若符合第一数据点的异常过滤规则,则不认为是第一数据点是异常数据点,第一数据点若不符合第一数据点的异常过滤规则,才结合第一数据点的残差值的取值范围,确定第一数据点是否异常。
示例性的,第一数据点的异常过滤规则可以包括下述条件中的一种或多种:第一数据点的残差值大于第一阈值;第一数据点的残差值小于第二阈值;第一数据点的真实值大于第三阈值;第一数据点的真实值小于第四阈值;第一数据点的历史数据点在取值区间之外的数量大于第五阈值;第一数据点的历史数据点在取值区间之外的数量小于第六阈值;第一数据点的历史数据点在取值区间之外持续的时长大于第七阈值;第一数据点的历史数据点在取值区间之外持续的时长小于第八阈值。
当然,可以根据实际需求配置第一数据点的异常过滤规则的内容,上述示例并不构成具体限定。在上述异常过滤规则的条件中,对于等于各个阈值的情况,可以根据实际需求配置异常过滤规则的内容,本申请实施例不在赘述。上述示例中的第一阈值至第八阈值的取值,可以根据实际需求设置,本申请实施例不予限定。
相应的,如图5所示,本申请提供的异常检测方法在S403之前还可以包括S404。
S404、网络设备获取第一数据点的异常过滤规则。
相应的,在S404之后,S403中网络设备根据第一数据点的残差值的取值区间对第一数据点进行异常检测,具体可以实现为:若第一数据点的残差值在该取值区间之外,且第一数据点不符合第一数据点的异常过滤规则,确定第一数据点为异常。或者,若第一数据点的残差值在取值区间之内,确定第一数据点为正常;或者,若第一数据点符合异常过滤规则,确定第一数据点为正常。
一种可能的实现方式中,S404中网络设备获取第一数据点的异常过滤规则,具体可以包括:网络设备接收用户在人机交互界面输入的第一数据点的异常过滤规则。
另一种可能的实现方式中,S404中网络设备获取第一数据点的异常过滤规则,具体可以包括:网络设备获取目标对象的数据特征的值,该数据特征用于标识不同数据类型;将数据特征值对应的数据类型,确定为目标对象的数据类型;根据目标对象的数据类型获取第一数据点的异常过滤规则。
其中,网络设备可以根据目标对象的历史数据点获取目标对象的数据特征的值。
示例性的,数据类型可以包括但不限于平滑周期型(Smooth&seasonal)、毛刺周期型(Seasonal&sharp)、稀疏型(Discrete)、离散型(Irregular)、阶梯型(Step)、多模态型(Multi_mode)等各种类型时间序列曲线的模式,各个数据类型的数据曲线可以如图6所示。
示例性的,数据特征可以包括周期性、离散性、趋势性、阶梯性、随机性等整体描述的典型特征,主要作用是描述数据类型的曲线特点。
示例性的,获取到某一目标对象的数据特征为周期=266,趋势=10.9,噪声=3.1,确定其数据类型为平滑周期型。
例如,图7示意了一种获取目标对象的数据类型的流程。如图7所示,将目标对象的时间序列历史数据输入,计算数据的曲线特点(数据特征),根据计算的曲线特点确定数据类型。
一种可能的实现方式中,可以预先配置不同数据类型对应的异常过滤规则,以指示不同数据类型中容易被取值区间判断为异常点的正常点的特征。本申请实施例对于不同数据类型对应的异常过滤规则的内容不予限定。
示例性的,对具有明显毛刺周期特点的数据类型,其对应的异常过滤规则可以为:待检测数据点的残差值<0.05*历史数据点的残差值的均值,该异常过滤规则可以通过表1描述。
表1
Figure BDA0003005995270000111
一种可能的实现方式中,根据目标对象的数据类型获取第一数据点的异常过滤规则,可以包括:将目标对象的数据类型对应的异常过滤规则,作为第一数据点的异常过滤规则。
另一种可能的实现方式中,根据目标对象的数据类型获取第一数据点的异常过滤规则,可以包括:将目标对象的数据类型对应的异常过滤规则输出;获取用户输入的指示信息,该指示信息用于指示确认目标对象的数据类型对应的异常过滤规则,或者,该指示信息用于指示对目标对象的数据类型对应的异常过滤规则进行修改后的异常过滤规则;将指示信息指示的异常过滤规则,确定为第一数据点的异常过滤规则。
通过本申请实施例提供的异常检测方法,先根据待检测的数据点的多个历史数据点的残差值,确定第一数据点的残差值的取值区间,再根据该取值区间对第一数据点进行异常检测,这样一来,可以根据历史数据点的波动情况,动态的确定不同数据点的残差值的取值区间,确定的数据点的残差值的取值区间不仅结合了数据波动因素且与数据波动趋势匹配,在数据波动的场景中,不同的数据点构建的异常阈值区间不同,可以很好的避免误检的情况,大大提高了异常检测的准确度。再者,数据点的残差值的取值区间是一个范围,用其代替现有的异常阈值来进行异常检测,也可以进一步提高检测准确度,降低误检概率。
进一步的,本申请提供的方案在数据点的残差值的取值区间的基础上,结合异常过滤规则,由异常过滤规则将取值区间误检为异常点的正常数据点排除,进一步的提升了异常检测的准确率。
进一步的,若第一数据点为异常,如图5所示,在S403之后,本申请实施例提供的方法还可以包括S405。
S405、网络设备输出异常检测结果。
一种可能的实现方式中,在S405中,网络设备可以输出异常指示信息,该异常指示信息包括第一数据点的标识及时间戳,以暴露该时间戳处目标对象的第一数据点为异常数据点。对于异常指示信息的形式,可以为弹窗形式或者存储为日志的形式或其他,本申请实施例不予限定。
另一种可能的实现方式中,S405中,网络设备可以在目标对象的数据曲线中标记第一数据点为异常。如图8所示的目标对象的数据曲线中标记了异常数据点的位置。
下面通过具体的示例,对本申请提供的方案进行描述。在该示例中,上述网络设备为图2示意的数据处理网络20,由云端设备和分析设备交互实现本申请提供的异常检测方法。在该示例中,目标对象为网络KPI。图9a示意了该异常检测方法的系统框架。如图9b所示,本申请提供的异常检测方法可以包括:
S901、云端设备根据存储的网络KPI历史数据进行数据预处理。
其中,数据预处理可以包括:将数据按照采集时间进行排序,并检查数据是否有缺失值(即漏采),如有缺失值,则利用插值方式将值填充上。
S902、云端设备根据KPI历史数据,采用时序预测算法预测未来一段时间的数据值。
例如,S902中的时序预测算法预测效果可以如图10所示,虚线左侧部分为历史数据,虚线右侧部分为预测的未来数据。
具体的,在S902中,云端设备将预测得到的未来一段时间的数据值,作为预测基线保存KPI。
示例性的,云端设备保存的一个数据点的预测基线可以如表2所示的格式。其中,时间戳为未来的一个时刻、对象ID为目标对象的标识,KPI名称为目标对象所属的KPI。
表2
Figure BDA0003005995270000121
同时,云端设备还保存了KPI历史数据中每个数据点的预测值和真实值(或直接计算的残差值)。
示例性的,云端设备保存的一个历史数据点的预测值和真实值的格式可以如表3所示。
表3
Figure BDA0003005995270000122
示例性的,云端设备保存的一个历史数据点的残差值的格式可以如表4所示。
表4
Figure BDA0003005995270000123
需要说明的是,上述表2至表4示意的格式,均为示例说明,不做具体限定。
S903、云端设备向分析设备下发数据。
一种可能的实现方式中,S903中,云端设备向分析设备下发的数据可以包括:预测基线以及记录的历史数据点的残差值。
另一种可能的实现方式中,S903中,云端设备向分析设备下发的数据可以包括:预测基线以及记录的历史数据点的真实值及预测值。
S904、云端设备基于KPI历史数据,进行KPI特征画像,得到目标对象的KPI类型。
具体的,在S904中,云端设备根据KPI历史数据,识别目标对象的数据特征值,根据数据特征值确定目标对象的数据类型,作为目标对象的KPI类型。S904的具体实现可以参照S404中的描述,此处不再赘述。
S905、云端设备根据目标对象的KPI类型,确定目标对象的数据点的异常过滤规则。
S905的具体实现可以参照S404中的描述,此处不再赘述。
S906、云端设备向分析器下发异常过滤规则。
S907、分析设备计算当前采样的数据点的残差值。
在S907中,分析设备根据S903中下发的数据,将当前采样的数据点的KPI真实值与预测基线中该数据点的预测值比较计算,得出当前采样的数据点的残差值。
S908、分析设备对多个历史残差和当前采样的数据点的残差值进行平滑处理。
S909、分析设备根据平滑后的多个历史残差和当前采样的数据点的残差值,确定当前采样的数据点的残差值的取值区间。
S909的具体实现可以参照S402中的描述,此处不再赘述。
S910、分析设备接收S906中下发的异常过滤规则,进行解析后导入到程序中。
S911、分析设备根据当前采样的数据点的残差值的取值区间和异常过滤规则,进行当前采样的数据点的异常检测。
具体的,当前采样的数据点残差值超过取值区间(落入当前采样的数据点的残差值的取值区间之外),并且不符合当前采样的数据点异常过滤规则,则确定当前采样的数据点则为异常点。
需要说明的是,本申请实施例提供的异常检测方法包括的步骤的执行顺序,可以根据实际需求配置,本申请实施例的附图仅示意了可能的执行顺序,并不构成限定。
上述主要从网络设备的工作原理角度对本申请实施例提供的方案进行了介绍。可以理解的是,上述网络设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对执行本申请提供的异常检测方法的装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用对应各个功能划分各个功能模块的情况下,图11示出了上述实施例中所涉及的网络设备中部署的执行本申请提供的异常检测方法的异常检测装置110的一种可能的结构示意图。该异常检测装置110可以为功能模块或者芯片。如图11所示,异常检测装置110可以包括:第一获取单元1101、确定单元1102、异常检测单元1103。其中,第一获取单元1101用于执行图4或图5中的过程S401;确定单元1102用于执行图4或图5中的过程S402;异常检测单元1103用于执行图4或图5中的过程S403。其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
可选的,如图12所示,异常检测装置110还可以包括第二获取单元1104,用于执行图5中的过程S404。
在采用集成的单元的情况下,图13示出了上述实施例中所涉及的网络设备130的一种可能的结构示意图。该网络设备130可以为上述方法实施例中描述的网络设备。网络设备130可以包括:处理模块1301、通信模块1302。处理模块1301用于对网络设备130的动作进行控制管理,通信模块1302用于与其他设备通信。例如,处理模块1301用于执行图4或图5中的过程S401至S403中任一过程、或图5中的过程S404。网络设备130还可以包括存储模块1303,用于存储网络设备130的程序代码和数据。
其中,处理模块1301可以为图3所示的网络设备30的实体结构中的处理器301,可以是处理器或控制器。例如可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理模块1301也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信模块1302可以为图3所示的网络设备30的实体结构中的收发器303,通信模块1302可以是通信端口,或者可以是收发器、收发电路或通信接口等。或者,上述通信接口可以通过上述具有收发功能的元件,实现与其他设备的通信。上述具有收发功能的元件可以由天线和/或射频装置实现。存储模块1303可以是图3所示的网络设备30的实体结构中的存储器303。
当处理模块1301为处理器,通信模块1302为收发器,存储模块1303为存储器时,本申请实施例图13所涉及的网络设备130可以为图3所示的网络设备30。
如前述,本申请实施例提供的异常检测装置110或网络设备130可以用于实施上述本申请各实施例实现的方法中相应的功能,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请各实施例。
作为本实施例的另一种形式,提供一种计算机可读存储介质,其上存储有指令,该指令被执行时执行上述方法实施例中的异常检测方法。
作为本实施例的另一种形式,提供一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得该计算机执行时执行上述方法实施例中的异常检测方法。
本申请实施例再提供一种芯片系统,该芯片系统包括处理器,用于实现本发明实施例的技术方法。在一种可能的设计中,该芯片系统还包括存储器,用于保存本发明实施例必要的程序指令和/或数据。在一种可能的设计中,该芯片系统还包括存储器,用于处理器调用存储器中存储的应用程序代码。该芯片系统,可以由一个或多个芯片构成,也可以包含芯片和其他分立器件,本申请实施例对此不作具体限定。
结合本申请公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM、闪存、ROM、可擦除可编程只读存储器(erasable programmable ROM,EPROM)、电可擦可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于核心网接口设备中。当然,处理器和存储介质也可以作为分立组件存在于核心网接口设备中。或者,存储器可以与处理器耦合,例如存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。存储器可以用于存储执行本申请实施例提供的技术方案的应用程序代码,并由处理器来控制执行。处理器用于执行存储器中存储的应用程序代码,从而实现本申请实施例提供的技术方案。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (27)

1.一种异常检测方法,其特征在于,所述方法包括:
获取第一数据点的参考数据点的残差值,所述参考数据点包括所述第一数据点的X个历史数据点,一个数据点的残差值为预测值与真实值的差值,所述X大于或等于1;
根据所述残差值确定所述第一数据点的残差值的取值区间;
根据所述取值区间对所述第一数据点进行异常检测。
2.根据权利要求1所述的方法,其特征在于,所述根据所述取值区间对所述第一数据点进行异常检测,包括:
若所述第一数据点的残差值在所述取值区间内,确定所述第一数据点为正常;
或者,
若所述第一数据点的残差值在所述取值区间之外,确定所述第一数据点为异常。
3.根据权利要求1所述的方法,其特征在于,
所述方法还包括:获取所述第一数据点的异常过滤规则;
所述根据所述取值区间对所述第一数据点进行异常检测,包括:
若所述第一数据点的残差值在所述取值区间之外,且所述第一数据点不符合所述异常过滤规则,确定所述第一数据点为异常;
或者,
若所述第一数据点的残差值在所述取值区间之内,确定所述第一数据点为正常;
或者,
若所述第一数据点符合所述异常过滤规则,确定所述第一数据点为正常。
4.根据权利要求3所述的方法,其特征在于,所述异常过滤规则包括下述条件中的一种或多种:
所述第一数据点的残差值大于或等于第一阈值;
所述第一数据点的残差值小于第二阈值;
所述第一数据点的真实值大于或等于第三阈值;
所述第一数据点的真实值小于第四阈值;
所述第一数据点的历史数据点在所述取值区间之外的数量大于或等于第五阈值;
所述第一数据点的历史数据点在所述取值区间之外的数量小于第六阈值;
所述第一数据点的历史数据点在所述取值区间之外持续的时长大于或等于第七阈值;
所述第一数据点的历史数据点在所述取值区间之外持续的时长小于第八阈值。
5.根据权利要求3或4所述的方法,其特征在于,所述获取所述第一数据点的异常过滤规则,包括:
获取目标对象的数据特征的值,所述数据特征用于标识不同数据类型;
将所述数据特征的值对应的数据类型,确定为所述目标对象的数据类型;
根据所述目标对象的数据类型获取所述第一数据点的异常过滤规则。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述取值区间的上限为A+Z*B,所述取值区间的下限为C-Z*B,所述A为所述参考数据点的残差值的第一计算值,所述B为所述参考数据点的残差值的第二计算值,所述C为所述参考数据点的残差值的第三计算值,所述Z为满足条件的残差阈值。
7.根据权利要求6所述的方法,其特征在于,所述Z为满足条件的残差阈值,包括:
所述Z为残差阈值集合中,使得
Figure FDA0003005995260000021
最大的残差阈值;
其中,所述M′为所述参考数据点的残差值中在当前遍历的残差阈值确定的第一数据点的残差值的取值区间之外的残差值的均值,所述M为所述参考数据点的残差值的均值,所述σ′为所述参考数据点的残差值中在当前遍历的残差阈值确定的第一数据点的残差值的取值区间之外的残差值的方差,所述σ为所述参考数据点的残差值的方差。
8.根据权利要求6或7所述的方法,其特征在于,所述第一计算值、所述第三计算值为残差均值,所述第二计算值为残差方差。
9.根据权利要求6或7所述的方法,其特征在于,所述第一计算值为所述参考数据点的残差值从大到小顺序中的上四分位数,所述第二计算值为所述上四分位数减所述参考数据点的残差值从大到小顺序中的下四分位数,所述第三计算值为所述参考数据点的残差值从大到小顺序中的下四分位数。
10.根据权利要求1-9任一项所述的方法,其特征在于,所述参考数据点还包括所述第一数据点。
11.根据权利要求1-10任一项所述的方法,其特征在于,若所述第一数据点为异常,所述方法还包括:
输出异常指示信息,所述异常指示信息包括所述第一数据点的标识以及时间戳;
或者,
在目标对象的数据曲线中标记所述第一数据点为异常。
12.根据权利要求5所述的方法,其特征在于,所述根据所述目标对象的数据类型获取所述第一数据点的异常过滤规则,包括:
将所述目标对象的数据类型对应的异常过滤规则输出;
获取用户输入的指示信息,所述指示信息用于指示确认所述目标对象的数据类型对应的异常过滤规则,或者,所述指示信息用于指示对所述目标对象的数据类型对应的异常过滤规则进行修改后的异常过滤规则;
将所述指示信息指示的异常过滤规则,确定为所述第一数据点的异常过滤规则。
13.一种异常检测装置,其特征在于,所述装置包括:
第一获取单元,用于获取第一数据点的参考数据点的残差值,所述参考数据点包括所述第一数据点的X个历史数据点,一个数据点的残差值为预测值与真实值的差值,所述X大于或等于1;
确定单元,用于根据所述残差值确定所述第一数据点的残差值的取值区间;
异常检测单元,用于根据所述取值区间对所述第一数据点进行异常检测。
14.根据权利要求13所述的装置,其特征在于,所述异常检测单元具体用于:
若所述第一数据点的残差值在所述取值区间内,确定所述第一数据点为正常;
或者,
若所述第一数据点的残差值在所述取值区间之外,确定所述第一数据点为异常。
15.根据权利要求13所述的装置,其特征在于,
所述装置还包括第二获取单元,用于获取所述第一数据点的异常过滤规则;
所述异常检测单元具体用于:
若所述第一数据点的残差值在所述取值区间之外,且所述第一数据点不符合所述异常过滤规则,确定所述第一数据点为异常;
或者,
若所述第一数据点的残差值在所述取值区间之内,确定所述第一数据点为正常;
或者,
若所述第一数据点符合所述异常过滤规则,确定所述第一数据点为正常。
16.根据权利要求15所述的装置,其特征在于,所述异常过滤规则包括下述条件中的一种或多种:
所述第一数据点的残差值大于或等于第一阈值;
所述第一数据点的残差值小于第二阈值;
所述第一数据点的真实值大于或等于第三阈值;
所述第一数据点的真实值小于第四阈值;
所述第一数据点的历史数据点在所述取值区间之外的数量大于或等于第五阈值;
所述第一数据点的历史数据点在所述取值区间之外的数量小于第六阈值;
所述第一数据点的历史数据点在所述取值区间之外持续的时长大于或等于第七阈值;
所述第一数据点的历史数据点在所述取值区间之外持续的时长小于第八阈值。
17.根据权利要求15或16所述的装置,其特征在于,所述第二获取单元具体用于:
获取目标对象的数据特征的值,所述数据特征用于标识不同数据类型;
将所述数据特征的值对应的数据类型,确定为所述目标对象的数据类型;
根据所述目标对象的数据类型获取所述第一数据点的异常过滤规则。
18.根据权利要求13-17任一项所述的装置,其特征在于,所述取值区间的上限为A+Z*B,所述取值区间的下限为C-Z*B,所述A为所述参考数据点的残差值的第一计算值,所述B为所述参考数据点的残差值的第二计算值,所述C为所述参考数据点的残差值的第三计算值,所述Z为满足条件的残差阈值。
19.根据权利要求18所述的装置,其特征在于,所述Z为满足条件的残差阈值,包括:
所述Z为残差阈值集合中,使得
Figure FDA0003005995260000031
最大的残差阈值;
其中,所述M′为所述参考数据点的残差值中在当前遍历的残差阈值确定的第一数据点的残差值的取值区间之外的残差值的均值,所述M为所述参考数据点的残差值的均值,所述σ′为所述参考数据点的残差值中在当前遍历的残差阈值确定的第一数据点的残差值的取值区间之外的残差值的方差,所述σ为所述参考数据点的残差值的方差。
20.根据权利要求18或19所述的装置,其特征在于,所述第一计算值、所述第三计算值为残差均值,所述第二计算值为残差方差。
21.根据权利要求18或19所述的装置,其特征在于,所述第一计算值为所述参考数据点的残差值从大到小顺序中的上四分位数,所述第二计算值为所述上四分位数减所述参考数据点的残差值从大到小顺序中的下四分位数,所述第三计算值为所述参考数据点的残差值从大到小顺序中的下四分位数。
22.根据权利要求13-21任一项所述的装置,其特征在于,所述参考数据点还包括所述第一数据点。
23.根据权利要求13-22任一项所述的装置,其特征在于,所述装置还包括输出单元,用于:
若所述第一数据点为异常,输出异常指示信息,所述异常指示信息包括所述第一数据点的标识以及时间戳;
或者,
若所述第一数据点为异常,在目标对象的数据曲线中标记所述第一数据点为异常。
24.根据权利要求17所述的装置,其特征在于,所述第二获取单元根据所述目标对象的数据类型获取所述第一数据点的异常过滤规则,包括:
将所述目标对象的数据类型对应的异常过滤规则输出;
获取用户输入的指示信息,所述指示信息用于指示确认所述目标对象的数据类型对应的异常过滤规则,或者,所述指示信息用于指示对所述目标对象的数据类型对应的异常过滤规则进行修改后的异常过滤规则;
将所述指示信息指示的异常过滤规则,确定为所述第一数据点的异常过滤规则。
25.一种网络设备,其特征在于,所述网络设备包括:处理器和存储器;
所述存储器与所述处理器连接;所述存储器用于存储计算机指令,当所述处理器执行所述计算机指令时,所述网络设备执行如权利要求1至12中任一项所述的异常检测方法。
26.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行权利要求1至12中任一项所述的异常检测方法。
27.一种计算机程序产品,其特征在于,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1至12中任一项所述的异常检测方法。
CN202110362069.9A 2021-04-02 2021-04-02 异常检测方法及装置 Pending CN115185761A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110362069.9A CN115185761A (zh) 2021-04-02 2021-04-02 异常检测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110362069.9A CN115185761A (zh) 2021-04-02 2021-04-02 异常检测方法及装置

Publications (1)

Publication Number Publication Date
CN115185761A true CN115185761A (zh) 2022-10-14

Family

ID=83512137

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110362069.9A Pending CN115185761A (zh) 2021-04-02 2021-04-02 异常检测方法及装置

Country Status (1)

Country Link
CN (1) CN115185761A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115994248A (zh) * 2023-03-24 2023-04-21 青岛精锐机械制造有限公司 阀门故障的数据检测方法及系统
CN116400126A (zh) * 2023-06-08 2023-07-07 广东佰林电气设备厂有限公司 一种具有数据处理系统的低压电力箱
CN117113009A (zh) * 2023-10-23 2023-11-24 合肥亚明汽车部件有限公司 一种数字化工厂设备运行风险预警方法
CN117455497A (zh) * 2023-11-12 2024-01-26 北京营加品牌管理有限公司 一种交易风险检测方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115994248A (zh) * 2023-03-24 2023-04-21 青岛精锐机械制造有限公司 阀门故障的数据检测方法及系统
CN116400126A (zh) * 2023-06-08 2023-07-07 广东佰林电气设备厂有限公司 一种具有数据处理系统的低压电力箱
CN116400126B (zh) * 2023-06-08 2023-08-01 广东佰林电气设备厂有限公司 一种具有数据处理系统的低压电力箱
CN117113009A (zh) * 2023-10-23 2023-11-24 合肥亚明汽车部件有限公司 一种数字化工厂设备运行风险预警方法
CN117113009B (zh) * 2023-10-23 2024-01-16 合肥亚明汽车部件有限公司 一种数字化工厂设备运行风险预警方法
CN117455497A (zh) * 2023-11-12 2024-01-26 北京营加品牌管理有限公司 一种交易风险检测方法及装置

Similar Documents

Publication Publication Date Title
CN115185761A (zh) 异常检测方法及装置
CN110839016B (zh) 异常流量监测方法、装置、设备及存储介质
CN110825579B (zh) 服务器性能监控方法、装置、计算机设备及存储介质
CN107302547B (zh) 一种web业务异常检测方法及装置
CN111064614B (zh) 一种故障根因定位方法、装置、设备及存储介质
CN111126824B (zh) 多指标关联模型训练方法及多指标异常分析方法
CN105718715B (zh) 异常检测方法和设备
CN111143102B (zh) 异常数据检测方法、装置、存储介质及电子设备
CN112115024A (zh) 一种用于故障预测神经网络模型的训练方法与设备
CN113556258B (zh) 一种异常检测方法及装置
CN110830450A (zh) 基于统计的异常流量监测方法、装置、设备及存储介质
CN109446189A (zh) 一种工业参数离群点检测系统及方法
WO2018125628A1 (en) A network monitor and method for event based prediction of radio network outages and their root cause
JP6183449B2 (ja) システム分析装置、及び、システム分析方法
CN111176953A (zh) 一种异常检测及其模型训练方法、计算机设备和存储介质
CN115454778A (zh) 大规模云网络环境下的时序指标异常智能监控系统
Folmer et al. Detection of temporal dependencies in alarm time series of industrial plants
CN114595210A (zh) 一种多维数据的异常检测方法、装置及电子设备
CN112380073B (zh) 一种故障位置的检测方法、装置及可读存储介质
CN112463564A (zh) 确定影响主机状态的关联指标的方法及装置
CN116668264A (zh) 一种告警聚类的根因分析方法、装置、设备及存储介质
CN115690681A (zh) 异常判断依据的处理方法、异常判断方法及装置
CN114358581A (zh) 性能指标的异常阈值确定方法和装置、设备、存储介质
CN111563078A (zh) 基于时序数据的数据质量检测方法、检测装置及存储装置
CN114881112A (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