CN111444060A - 异常检测模型训练方法、异常检测方法及相关装置 - Google Patents

异常检测模型训练方法、异常检测方法及相关装置 Download PDF

Info

Publication number
CN111444060A
CN111444060A CN202010219435.0A CN202010219435A CN111444060A CN 111444060 A CN111444060 A CN 111444060A CN 202010219435 A CN202010219435 A CN 202010219435A CN 111444060 A CN111444060 A CN 111444060A
Authority
CN
China
Prior art keywords
index data
index
abnormal
preset
data
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
Application number
CN202010219435.0A
Other languages
English (en)
Other versions
CN111444060B (zh
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.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology 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 Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN202010219435.0A priority Critical patent/CN111444060B/zh
Publication of CN111444060A publication Critical patent/CN111444060A/zh
Application granted granted Critical
Publication of CN111444060B publication Critical patent/CN111444060B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明实施例提出的一种异常检测模型训练方法、异常检测方法及相关装置,其中异常检测模型训练方法获取指标数据样本集合,将指标数据样本集合输入预设的降维模型进行降维处理得到无关联指标数据集合,对无关联指标数据集合进行拆分,将属于同一指标的指标数据作为一类,将各类指标数据分别输入预设的单指标学习模型,得到各个指标数据所属的指标对应的预测值和拟合误差值。通过上述训练得到的异常检测模型,可以将多维关联数据降维成低维无关联数据,并得到与低维无关联数据的各个维度对应的预测值和拟合误差值,在应用时,利用上述异常检测模型对多维数据进行处理,可以解决多维数据存在的维度高、数据量大、相关性强等问题。

Description

异常检测模型训练方法、异常检测方法及相关装置
技术领域
本发明实施例涉及基于人工智能的异常检测技术领域,具体涉及一种异常检测模型训练方法、异常检测方法及相关装置。
背景技术
为了提高系统的对外服务能力,系统中通常会设置有多台服务器。
在系统的实际应用中,由于业务类型多样以及各服务器状态不同等原因,常常会出现分发至各台服务器的流量不均衡等异常情况,而系统出现异常时通常会导致业务无法被正常处理,因此,对系统中的异常检测对于服务的稳定性非常重要。
现有的对异常检测的方法通常是对单指标进行异常检测,但是对于系统而言,由于一般涉及的服务器和指标都比较多,很可能出现每一指标单独看均表现正常,但是关联到一起却是异常的情况,因此,单指标的异常检测的检测结果不够准确,而多指标的异常检测存在着维度高、数据量大、相关性强等特点,相对于单指标的异常检测,更加困难。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本发明实施例提供了一种异常检测模型训练方法、异常检测方法及相关装置。
有鉴于此,第一方面,本发明实施例提供一种异常检测模型训练方法,所述异常检测模型包括降维模型和单指标学习模型,所述训练方法包括:
获取指标数据样本集合,所述指标数据样本集合为所属的指标之间具有关联性的指标数据的集合;
将所述指标数据样本集合输入预设的降维模型进行降维处理,输出无关联指标数据集合,所述无关联指标数据集合为所属的指标之间不具有关联性的指标数据的集合;
对所述无关联指标数据集合进行拆分,将属于同一指标的指标数据作为一类;
将各类指标数据分别输入预设的单指标学习模型,输出各类指标数据所属的指标对应的预测值和拟合误差值。
在一种可能的实现方式中,将所述指标数据样本集合输入预设的降维模型进行降维处理之前,所述方法还包括:
去除所述指标数据样本集合中的已知异常值。
本发明实施例还提供了一种异常检测方法,包括:
获取指标数据集合,所述指标数据集合包含多个指标的指标数据;
将所述指标数据集合输入第一方面所述的异常检测模型,输出与所述指标数据集合对应的无关联指标数据集合;
根据所述无关联指标数据集合中的各指标数据以及所述异常检测模型预训练得到的与所述各指标数据所属的指标对应的预测值和拟合误差值,输出异常检测结果。
在一种可能的实现方式中,根据所述无关联指标数据集合中的各指标数据以及所述异常检测模型预训练得到的与所述各指标数据所属的指标对应的预测值和拟合误差值,输出异常检测结果,包括:
计算所述无关联指标数据集合中各指标数据与所述异常检测模型预训练得到的与所述各指标数据所属的指标对应的预测值之间的差值;
将所述无关联指标数据集合中差值的绝对值大于对应的拟合误差值的指标数据,标记为异常指标数据;
在异常指标数据满足预设异常输出条件时,确定异常检测结果为存在异常,并输出异常信息,以提示存在异常。
在一种可能的实现方式中,所述预设的异常输出条件,包括:
所述异常指标数据的数量在所述无关联指标数据集合中的占比大于预设的第一阈值;
根据预设的异常指标数据对应的指标权重,计算得到的所有异常指标数据的指标权重之和大于预设的第二阈值。
在一种可能的实现方式中,所述方法还包括:
对异常指标数据按照各异常指标数据对应的差值降序排列,输出预设数目的异常指标数据作为异常定位指标数据。
第三方面,本发明实施例还提供了一种异常检测模型训练装置,包括:
样本集合获取模块,用于获取指标数据样本集合,所述指标数据样本集合为所属的指标之间具有关联性的指标数据的集合;
降维模块,用于将所述指标数据样本集合输入预设的降维模型进行降维处理,输出无关联指标数据集合,所述无关联指标数据集合为所属的指标之间不具有关联性的指标数据的集合;
拆分模块,用于对所述无关联指标数据集合进行拆分,将属于同一指标的指标数据作为一类;
单指标学习模块,用于将各类指标数据分别输入预设的单指标学习模型,输出各类指标数据所属的指标对应的预测值和拟合误差值。
在一种可能的实现方式中,所述异常检测模型训练装置还包括:
预处理模块,用于在将指标数据样本集合输入预设的降维模型进行降维处理之前,去除所述指标数据样本集合中的已知异常值。
第四方面,本发明实施例还提供了一种异常检测装置,包括:
数据获取模块,用于获取指标数据集合,所述指标数据集合包含多个指标的指标数据;
数据处理模块,用于将所述指标数据集合输入第一方面所述的异常检测模型,输出与所述指标数据集合对应的无关联指标数据集合;
异常结果输出模块,用于根据所述无关联指标数据集合中的各指标数据以及所述异常检测模型预训练得到的与所述各指标数据所属的指标对应的预测值和拟合误差值,输出异常检测结果。
在一种可能的实现方式中,所述异常结果输出模块包括:
差值计算子模块,用于计算所述无关联指标数据集合中各指标数据与所述异常检测模型预训练得到的与所述各指标数据所属的指标对应的预测值之间的差值;
异常指标数据确定子模块,用于将所述无关联指标数据集合中差值的绝对值大于对应的拟合误差值的指标数据,标记为异常指标数据;
异常信息输出子模块,用于在异常指标数据满足预设异常输出条件时,确定异常检测结果为存在异常,并输出异常信息,以提示存在异常。
在一种可能的实现方式中,所述预设的异常输出条件,包括:
所述异常指标数据的数量在所述无关联指标数据集合中的占比大于预设的第一阈值;
根据预设的异常指标数据对应的指标权重,计算得到的所有异常指标数据的指标权重之和大于预设的第二阈值。
在一种可能的实现方式中,所述异常检测装置还包括:
异常定位指标数据输出模块,用于对异常指标数据按照各异常指标数据对应的差值降序排列,输出预设数目的异常指标数据作为异常定位指标数据。
第五方面,本发明实施例还提供了一种计算机设备,包括:处理器和存储器,所述处理器用于执行所述存储器中存储的数据处理程序,以实现第一方面所述的异常检测模型训练方法或第二方面所述的异常检测方法。
第六方面,本发明实施例还提供了一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现第一方面所述的异常检测模型训练方法或第二方面所述的异常检测方法。
相比现有技术,本发明实施例提出的一种异常检测模型训练方法,获取指标数据样本集合,将指标数据样本集合输入预设的降维模型进行降维处理得到无关联指标数据集合,通过降维降低了数据的维度,对无关联指标数据集合进行拆分,将属于同一指标的指标数据作为一类,将各类指标数据分别输入预设的单指标学习模型,得到各个指标数据所属的指标对应的预测值和拟合误差值。通过上述训练得到的异常检测模型,可以将多维关联数据降维成低维无关联数据,并得到与低维无关联数据的各个维度对应的预测值和拟合误差值,在应用时,利用上述异常检测模型对多维数据进行处理,可以解决多维数据存在的维度高、数据量大、相关性强等问题,进一步的根据指标的预测值和拟合误差值可以检测指标的实测值是否异常。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种异常检测模型训练方法的流程图;
图2为本发明实施例提供的一种异常检测方法的流程图;
图3为本发明实施例提供的一种异常检测模型训练及异常检测方法的示意图;
图4为本发明实施例提供的一种异常检测模型训练装置的框图;
图5为本发明实施例提供的一种异常检测装置的框图;
图6为本发明实施例提供的一种计算机设备的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有的系统通常设有多台服务器,为了保证系统的服务高效,系统中通常会设置一些服务来协调服务器之间的配合,从而提高系统的服务能力。
系统在运行过程中,这些服务往往会出现一些异常,进而导致业务受影响,因此若想提高系统的稳定性,异常检测对于服务的稳定性非常重要。
已有的异常检测算法大多聚焦于单指标的异常检测,通过统计分析、时间序列分析以及一些深度学习模型分析单一维度的走势异常,但是对于一些服务在异常检测时,很可能出现每一指标单独看均表现正常,但是多项指标关联到一起却是异常的情况,例如在系统中设置负载均衡服务,负载均衡服务是对多台服务器进行流量分发的服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性,在云计算中扮演着重要的角色。在实际运行中,由于网络问题负载,业务类型多样以及各服务器状态不同,常常会出现流量不均衡等异常情况,进而导致业务受影响,负载均衡服务一般涉及的服务器、指标比较多,很多故障的产生并不是由单一服务器或者单一指标异常导致的,因此,单指标的异常检测并不十分合适,往往需要综合多台服务器、多指标共同分析,而多指标的异常检测存在着维度高、数据量大、相关性强等特点,相对于单指标的异常检测,更加困难。
在系统稳定运行过程中,各服务器之间以及各项指标之间的相对变化趋势一般也是相对稳定的,如果出现故障,这种稳定的关系很可能会被破坏。因此,基于这一发现本发明通过机器学习的方法,学习出稳定系统中各服务器之间的关联关系,然后实时监测这些关联关系的变化,从而及时判断出异常,并将异常信息告知给运维人员。
本发明实施例提供了一种异常检测模型,该模型包括降维模型和单指标学习模型,通过降维模型可以分析出系统中各服务器之间的关联关系,通过单指标学习模型,可以得到用于检测关联关系是否稳定的依据。
图1为本发明实施例提供的一种异常检测模型训练方法的流程图,如图1所示,该方法可以包括如下步骤:
S11.获取指标数据样本集合,所述指标数据样本集合为所属的指标之间具有关联性的指标数据的集合。
其中指标指的是指标种类,例如CPU、内存等,而指标数据则指的是数据指标对应的具体指标值。
因为本实施例是想通过训练后的异常检测模型对系统进行异常检测,因此,在一种可能的实现方式中,指标数据样本集合中可以包括系统中各服务器的历史CPU数据、历史内存数据、历史磁盘读写数据、历史网络IO数据等历史指标数据。
而由于指标的变化规律随着时间的推移可能发生变化,如果用距离当前时间太远的历史指标数据来进行模型训练,则可能导致得到的模型不能满足用户的需求,所以在进行模型训练时,可以选取距离当前时间不太远的时间对应的指标数据组成指标数据样本集合,例如选取距离当前时间最近两周的指标数据组成指标数据样本集合,具体选取哪一段时间的指标数据可根据需求自行设定,本实施例对此不作具体限定。
S12.将所述指标数据样本集合输入预设的降维模型进行降维处理,输出无关联指标数据集合,所述无关联指标数据集合为所属的指标之间不具有关联性的指标数据的集合。
将指标数据样本集合输入降维模型,输出无关联指标数据集合的过程,相当于利用指标数据样本集合中大量的指标数据对降维模型进行训练的过程,通过训练使降维模型更加准确。
其中预设的降维模型可以为现有的降维模型,例如PCA(principal componentsanalysis,主成分分析)和/或ICA(Independent Component Correlation Algorithm,独立成分分析)等降维模型,其中PCA是一种统计分析、简化数据集的方法。它利用正交变换来对一系列可能相关的变量的观测值进行线性变换,从而投影为一系列线性不相关变量的值,从而将高维数据转化为较低维度的数据,用少数几个变量表示原始数据的多个变量信息,实现数据的主成分提取。ICA是另外一种利用统计原理计算,将数据分析降维的方法,可以把多维数据中分离成独立的非高斯成分。
通过PCA和/或ICA等降维模型对数据进行降维,可以将一系列可能相关的变量的观测值进行线性变换,从而投影为一系列线性不相关变量的值,从而将高维数据转化为较低维度的数据,用少数几个变量表示原始数据的多个变量信息。
在本实施例中,通过降维模型对指标数据样本集合进行降维处理可以将多维的指标数据样本集合映射到低维空间中,从而得到无关联指标数据集合,无关联指标数据集合中包含的指标数据所属的指标之间不具有关联性,无关联指标数据集合中的指标数据所属的指标表示指标数据样本集合中各指标的关联关系。
通过对降维后无关联指标数据集合中的指标数据进行分析即可达到与对指标数据样本集合中指标数据进行分析相同的效果,但是数据维度更低,工作量更小,效率更高。
S13.对所述无关联指标数据集合进行拆分,将属于同一指标的指标数据作为一类。
因为指标数据样本中包含的数据量很大,针对同一指标可以会有多个指标数据,从而使得得到的无关联指标数据集合中针对同一指标也可能存在多个指标数据,而由于S14需要对每一个指标单独进行处理,因此需要对无关联指标数据集合中的指标数据进行拆分,将属于同一指标的指标数据划分为一类。
S14.将各类指标数据分别输入预设的单指标学习模型,输出各类指标数据所属的指标对应的预测值和拟合误差值。
将各类指标数据输入单指标学习模型输出各类指标数据所属的指标对应的预测值和拟合误差值的过程,即为利用各类指标数据对单指标学习模型进行训练的过程,通过训练提高单指标学习模型输出的预测值和拟合误差值的准确性。其中单指标学习模型可以为现有的用于对单指标进行分析的模型,例如差分自回归模型等时间序列模型,将各指标对应的指标数据分别输入单指标学习模型,即可得到各指标对应的预测值和拟合误差值,其中各指标对应的预测值和拟合误差值可以作为对各指标进行实时检测时的依据,根据指标的实测值与该指标对应的预测值和拟合误差值之间的关系,即可确定出该指标的实测值是否异常。
本发明实施例提出的一种异常检测模型训练方法,获取指标数据样本集合,将指标数据样本集合输入预设的降维模型进行降维处理得到无关联指标数据集合,通过降维降低了数据的维度,对无关联指标数据集合进行拆分,将属于同一指标的指标数据作为一类,将各类指标数据分别输入预设的单指标学习模型,得到各个指标数据所属的指标对应的预测值和拟合误差值。通过上述训练得到的异常检测模型,可以将多维关联数据降维成低维无关联数据,并得到与低维无关联数据的各个维度对应的预测值和拟合误差值,在应用时,利用上述异常检测模型对多维数据进行处理,可以解决多维数据存在的维度高、数据量大、相关性强等问题,进一步的根据指标的预测值和拟合误差值可以检测指标的实测值是否异常。
在上述实施例的基础上,预先在系统的服务器中安装监控服务(例如agent)实现对服务器的监控,通过安装的监控服务获取服务器中的指标数据(例如CPU数据、内存数据、磁盘读写数据、网络IO数据等),并将获取的指标数据进行存储方便后续使用。
在一种可能的实现方式中,可以将获取的指标数据存储至kafka消息队列中,其中kafka消息队列是一个分布式消息队列,具有高性能、持久化、多副本备份、横向扩展能力等特点。
则S11可以采用下述方式获取指标数据样本集合:
采用spark streaming(近实时的小批处理系统,支持实时数据流的处理,并且具有可扩展,高吞吐量,容错的特点)消费kafka(一种高吞吐量的分布式发布订阅消息系统)中存储的系统中多台服务器某一设定时间段的历史指标数据,将消费的历史指标数据组成指标数据样本集合,其中设定时间段根据实际需求设定。
在本实施例中,采用上述方式获取指标数据样本集合保证了数据的真实性,而且获取方式简单、快速。
在上述实施例的基础上,所述异常检测模型训练方法在将指标数据样本集合输入预设的降维模型进行降维处理之前,该方法还可以包括:对指标数据样本集合进行预处理,从而对预处理后的指标数据样本集合执行输入预设的降维模型进行降维处理的步骤。其中预处理可以包括:对所述指标数据样本集合中的指标数据进行清洗,根据指标数据的可用性去除噪点和已知异常值,然后对去除噪点和已知异常值的指标数据样本集合进行数据插值和归一化等操作。
其中,已知异常值为已知系统异常时对应的指标数据,去除异常值保证了得到的预测值和拟合误差值的准确性。
在本实施例中,在对异常检测模型进行训练之前对指标数据样本集合进行预处理,提高了模型训练的准确性。
在上述实施例的基础上,由于指标的变化规律随着时间的变化可能发生变化,而各指标的预测值和拟合误差会受到指标的变化规律影响,因此为了保证训练后的异常检测模型输出的预测值和拟合误差的准确性,可以每隔一段时间对数据模型采用上述方法重新训练一次,例如每隔三天等,具体的训练时间间隔可以根据具体需求自行设定,本实施例对此不作具体限定。
在本实施例中,通过每隔一段时间对异常检测模型进行更新,保证了异常检测模型输出各指标的预测值和拟合误差值的准确性。
图2为本发明实施例提供的一种异常检测方法的流程图,如图2所示,该方法包括:
S21.获取指标数据集合,所述指标数据集合包含多个指标的指标数据。
其中指标数据集合可以为系统的服务器的各性能指标数据(例如CPU数据、内存数据、磁盘读写数据、网络IO数据等)的集合,可以从系统的数据池中获取实时数据流作为指标数据集合。
S22.将所述指标数据集合输入预训练的异常检测模型,输出与所述指标数据集合对应的无关联指标数据集合。
异常检测模型包括降维模型,将指标数据集合输入异常检测模型后,通过异常检测模型中的降维模型对指标数据集合进行降维处理,即可得到与指标数据集合对应的无关联指标数据,从而输出无关联指标数据。
S23.根据所述无关联指标数据集合中的各指标数据以及所述异常检测模型预训练得到的与所述各指标数据所属的指标对应的预测值和拟合误差值,输出异常检测结果。
在异常检测模型的训练过程中已得到各指标对应的预测值和拟合误差值,因此,通过异常检测模型输出与指标数据集合对应的无关联指标数据集合后,即可直接将无关联指标数据集合中的各指标数据与其所属的指标对应的预训练得到的预测值和拟合误差值进行比较。
在本实施例中,获取系统的多个指标的实测值,通过预训练的异常检测模型对多个指标的实测值进行处理,得到无关联指标数据,通过无关联指标数据与对应的预测值和拟合误差值之间的关系,即可得到异常检测的结果,通过上述方法利用多维数据进行异常检测,与通过单位数据进行异常检测相比,结果的准确度更高,已通过人工进行异常检测相比,节省了人力和时间,提高了检测效率,并且通过异常检测模型对指标数据进行处理,解决了数据维度高、数据量大、相关性强的问题。
在上述实施例的基础上,S23可以采用下述方式:
计算所述无关联指标数据集合中各指标数据与所述异常检测模型预训练得到的与所述各指标数据所属的指标对应的预测值之间的差值,将所述无关联指标数据集合中差值的绝对值大于对应的拟合误差值的指标数据,标记为异常指标数据,在异常指标数据满足预设异常输出条件时,确定异常结果为存在异常,并输出异常信息,以提示存在异常,若异常指标数据不满足预设异常输出条件,则确定异常检测结果为无异常,不输出异常信息。
当异常指标数据满足预设异常输出条件时,说明系统中出现了异常,若不维修可能导致系统无法正常运行,所以此时输出异常信息及时通知运维人员对系统进行维修和调试,从而及时排除异常,之所以在异常指标数据不满足预设异常输出条件时,不输出异常信息是由于对系统进行维修和调试将花费较多的时间和人力,当异常指标数据不满足异常输出条件时说明此时可能只是少量指标出现了异常,即使不调整也不会对系统的整体运行造成大影响,所以为了节省人力和时间,此时不输出异常信息。
在本实施例中,在异常指标数据满足异常输出条件时,在输出异常信息,避免了频繁的输出异常信息造成的不良影响。
在上述实施例的基础上,异常输出条件可以为所述异常指标数据的数量在所述无关联指标数据集合中的占比大于预设的第一阈值。
具体的可以通过下述公式计算所述异常指标数据的数量在无关联指标数据集合中的占比:
c=a/b,其中c表示占比,a表示异常指标数据的数量,b表示无关联指标数据集合中包含的指标数据的总数量。
第一阈值为根据需求设定的值,例如可以为50%,具体取值本实施例不做具体限定。
在上述实施例的基础上,异常输出条件还可以为根据预设的异常指标数据对应的指标权重,计算得到的所有异常指标数据的指标权重之和大于预设的第二阈值。
其中异常指标数据对应的指标权重为该异常指数据所属的指标对应的权重,各指标对应的权重为预先根据需求设置的,例如可以采用专家打分的方式按照指标对系统的重要性为各指标设置权重。
在本实施例中,通过设置上述异常输出条件可以避免异常信息的频繁输出,从而减少运维消耗的人力和时间,降低运维成本。
在上述实施例的基础上,所述异常检测方法还包括:
对异常指标数据按照各异常指标数据对应的差值降序排列,输出预设数目的异常指标数据作为异常定位指标数据。
指标数据对应的差值越大说明该指标偏离标准值越远,也就说明该指标数据所属指标对应的位置故障越严重,也就说明该指标对当前异常的贡献度越大。采用差值降序排序,就是按照差值由大到小对异常指标数据进行排序,排序越靠前的指标数据对异常的贡献度越大,因此按照排序选取排在前面的预设数目个指标数据作为异常定位指标数据,其中预设数目根据需求设定。例如现在有n个异常指标数据,对n个异常指标数据按照对应的差值降序排序,排序结果为:第一异常指标数据、第二异常指标数据、第三异常指标数据……第n异常指标数据,则可以选取排在前三位的异常指标数据作为异常定位指标数据,即选取第一异常指标数据、第二异常指标数据和第三异常指标数据作为异常定位指标数据。
后续还可以将异常定位指标数据发送给运维人员或异常分析系统,从而使运维人员或异常分析系统根据异常定位指标数据定位导致异常的原因。
本实施例,通过选出异常定位指标数据便于运维人员或异常分析系统定位异常原因。
在上述实施例的基础上,对异常检测结果和异常指标数据进行记录,从而可以根据异常检测结果和异常指标数据对异常检测模型进行调整和更新(例如在对异常检测模型重新训练时可以在数据清洗时根据异常检测结果和异常指标数据剔除指标数据样本集合中已确认的异常值),从而优化模型,使得利用异常检测模型进行异常检测时得到的检测结果更加准确。
一个具体的例子
如图3所示,与系统中共有三台服务器,在每台服务器中均安装agent(分别为agent1、agent2和agent3),通过安装的agent对三台服务器进行数据采集(包括历史数据采集和实时数据采集),将采集的数据放入kafka消息队列中,获取kafka消息队列中的历史数据放入缓存中作为指标数据样本集合,对指标数据样本集合进行预处理(即数据清洗),将预处理后的指标数据样本集合输入由PCA和ICA组成的降维模型中进行数据降维,从而得到训练后的降维模型和与指标数据样本集合对应的无关联指标数据集合,将无关联指标数据集合中的各个指标对应的指标数据分别输入ARIMA模型进行单位训练,得到各个指标对应的预测值和拟合误差(通统称为统计量),将训练后的降维模型和ARIMA模型组成异常检测模型进行保存。
通过spark streaming获取kafka消息队列中的实时数据作为指标数据集合,对指标数据集合进行预处理,然后将预处理后的指标数据集合输入保存的预训练的异常检测模型,通过异常检测模型中的降维模型进行降维处理得到无关联指标数据,而异常检测模型预训练得到的统计量中选取与各个无关联指标数据所属的指标对应的预测值和拟合误差值,分别将各个无关联指标数据与其对应的预测值之间的差值与对应的拟合误差值进行比较(即单维检测),根据比较结果确定系统是否存在异常,当确定系统存在异常时输出异常信息进行告警,并保存异常信息,后续还可以根据保存的异常信息对异常检测模型的训练过程进行优化。
本发明实施例还提供了一种异常检测模型训练装置,如图4所示,该装置包括:
样本集合获取模块401,用于获取指标数据样本集合,所述指标数据样本集合为所属的指标之间具有关联性的指标数据的集合;
降维模块402,用于将所述指标数据样本集合输入预设的降维模型进行降维处理,输出无关联指标数据集合,所述无关联指标数据集合为所属的指标之间不具有关联性的指标数据的集合;
拆分模块403,用于对所述无关联指标数据集合进行拆分,将属于同一指标的指标数据作为一类;
单指标学习模块404,用于将各类指标数据分别输入预设的单指标学习模型,输出各类指标数据所属的指标对应的预测值和拟合误差值。
在一种可能的实现方式中,所述异常检测模型训练装置还包括:
预处理模块,用于在将指标数据样本集合输入预设的降维模型进行降维处理之前,去除所述指标数据样本集合中的已知异常值。
本发明实施例还提供了一种异常检测装置,如图5所示包括:
数据获取模块501,用于获取指标数据集合,所述指标数据集合包含多个指标的指标数据;
数据处理模块502,用于将所述指标数据集合输入预训练的异常检测模型,输出与所述指标数据集合对应的无关联指标数据集合;
异常结果输出模块503,用于根据所述无关联指标数据集合中的各指标数据以及所述异常检测模型预训练得到的与所述各指标数据所属的指标对应的预测值和拟合误差值,输出异常检测结果。
在一种可能的实现方式中,所述异常结果输出模块包括:
差值计算子模块,用于计算所述无关联指标数据集合中各指标数据与所述异常检测模型预训练得到的与所述各指标数据所属的指标对应的预测值之间的差值;
异常指标数据确定子模块,用于将所述无关联指标数据集合中差值的绝对值大于对应的拟合误差值的指标数据,标记为异常指标数据;
异常信息输出子模块,用于在异常指标数据满足预设异常输出条件时,确定异常检测结果为存在异常,并输出异常信息,以提示存在异常。
在一种可能的实现方式中,所述预设的异常输出条件,包括:
所述异常指标数据的数量在所述无关联指标数据集合中的占比大于预设的第一阈值;
根据预设的异常指标数据对应的指标权重,计算得到的所有异常指标数据的指标权重之和大于预设的第二阈值。
在一种可能的实现方式中,所述异常检测装置还包括:
异常定位指标数据输出模块,用于对异常指标数据按照各异常指标数据对应的差值降序排列,输出预设数目的异常指标数据作为异常定位指标数据。
在本申请另一实施例中,还提供了一种计算机设备,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信;
存储器603,用于存放计算机程序;
处理器601,用于执行存储器603上所存放的程序时,实现如下步骤:
获取指标数据样本集合,所述指标数据样本集合为所属的指标之间具有关联性的指标数据的集合,将所述指标数据样本集合输入预设的降维模型进行降维处理,输出无关联指标数据集合,所述无关联指标数据集合为所属的指标之间不具有关联性的指标数据的集合,对所述无关联指标数据集合进行拆分,将属于同一指标的指标数据作为一类,将各类指标数据分别输入预设的单指标学习模型,输出各类指标数据所属的指标对应的预测值和拟合误差值。
获取指标数据集合,所述指标数据集合包含多个指标的指标数据,将所述指标数据集合输入预训练的异常检测模型,输出无关联指标数据集合和与所述无关联指标数据集合中的各指标数据所属的指标对应的预测值和拟合误差值,根据所述无关联指标数据集合中的各指标数据以及对应的预测值和拟合误差值,输出异常检测结果。
上述计算机设备提到的通信总线604可以是外设部件互连标准(PeripheralComponent Interconnect,简称PCI)总线或扩展工业标准结构(Extended IndustryStandard Architecture,简称EISA)总线等。该通信总线604可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口602用于上述计算机设备与其他设备之间的通信。
存储器603可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器601可以是通用处理器,包括中央处理器(Central ProcessingUnit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本申请另一实施例中,还提供了一种存储介质,所述存储介质上存储有数据处理方法程序,所述数据处理方法程序被处理器执行时实现如下步骤:
获取指标数据样本集合,所述指标数据样本集合为所属的指标之间具有关联性的指标数据的集合,将所述指标数据样本集合输入预设的降维模型进行降维处理,输出无关联指标数据集合,所述无关联指标数据集合为所属的指标之间不具有关联性的指标数据的集合,对所述无关联指标数据集合进行拆分,将属于同一指标的指标数据作为一类,将各类指标数据分别输入预设的单指标学习模型,输出各类指标数据所属的指标对应的预测值和拟合误差值。
获取指标数据集合,所述指标数据集合包含多个指标的指标数据,将所述指标数据集合输入预训练的异常检测模型,输出无关联指标数据集合和与所述无关联指标数据集合中的各指标数据所属的指标对应的预测值和拟合误差值,根据所述无关联指标数据集合中的各指标数据以及对应的预测值和拟合误差值,输出异常检测结果。
可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(ApplicationSpecific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable LogicDevice,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。
对于软件实现,可通过执行本文所述功能的单元来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种异常检测模型训练方法,其特征在于,所述异常检测模型包括降维模型和单指标学习模型,所述训练方法包括:
获取指标数据样本集合,所述指标数据样本集合为所属的指标之间具有关联性的指标数据的集合;
将所述指标数据样本集合输入预设的降维模型进行降维处理,输出无关联指标数据集合,所述无关联指标数据集合为所属的指标之间不具有关联性的指标数据的集合;
对所述无关联指标数据集合进行拆分,将属于同一指标的指标数据作为一类;
将各类指标数据分别输入预设的单指标学习模型,输出各类指标数据所属的指标对应的预测值和拟合误差值。
2.根据权利要求1所述的方法,其特征在于,将所述指标数据样本集合输入预设的降维模型进行降维处理之前,所述方法还包括:
去除所述指标数据样本集合中的已知异常值。
3.一种异常检测方法,其特征在于,包括:
获取指标数据集合,所述指标数据集合包含多个指标的指标数据;
将所述指标数据集合输入权利要求1或2所述的异常检测模型,输出与所述指标数据集合对应的无关联指标数据集合;
根据所述无关联指标数据集合中的各指标数据以及所述异常检测模型预训练得到的与所述各指标数据所属的指标对应的预测值和拟合误差值,输出异常检测结果。
4.根据权利要求3所述的方法,其特征在于,根据所述无关联指标数据集合中的各指标数据以及所述异常检测模型预训练得到的与所述各指标数据所属的指标对应的预测值和拟合误差值,输出异常检测结果,包括:
计算所述无关联指标数据集合中各指标数据与所述异常检测模型预训练得到的与所述各指标数据所属的指标对应的预测值之间的差值;
将所述无关联指标数据集合中差值的绝对值大于对应的拟合误差值的指标数据,标记为异常指标数据;
在异常指标数据满足预设异常输出条件时,确定异常检测结果为存在异常,并输出异常信息,以提示存在异常。
5.根据权利要求4所述的方法,其特征在于,所述预设的异常输出条件,包括:
所述异常指标数据的数量在所述无关联指标数据集合中的占比大于预设的第一阈值;
根据预设的异常指标数据对应的指标权重,计算得到的所有异常指标数据的指标权重之和大于预设的第二阈值。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
对异常指标数据按照各异常指标数据对应的差值降序排列,输出预设数目的异常指标数据作为异常定位指标数据。
7.一种异常检测模型训练装置,其特征在于,包括:
样本集合获取模块,用于获取指标数据样本集合,所述指标数据样本集合为所属的指标之间具有关联性的指标数据的集合;
降维模块,用于将所述指标数据样本集合输入预设的降维模型进行降维处理,输出无关联指标数据集合,所述无关联指标数据集合为所属的指标之间不具有关联性的指标数据的集合;
拆分模块,用于对所述无关联指标数据集合进行拆分,将属于同一指标的指标数据作为一类;
单指标学习模块,用于将各类指标数据分别输入预设的单指标学习模型,输出各类指标数据所属的指标对应的预测值和拟合误差值。
8.一种异常检测装置,其特征在于,包括:
数据获取模块,用于获取指标数据集合,所述指标数据集合包含多个指标的指标数据;
数据处理模块,用于将所述指标数据集合输入权利要求1或2所述的异常检测模型,输出与所述指标数据集合对应的无关联指标数据集合;
异常结果输出模块,用于根据所述无关联指标数据集合中的各指标数据以及所述异常检测模型预训练得到的与所述各指标数据所属的指标对应的预测值和拟合误差值,输出异常检测结果。
9.一种计算机设备,其特征在于,包括:处理器和存储器,所述处理器用于执行所述存储器中存储的数据处理程序,以实现权利要求1-2任一所述的异常检测模型训练方法或权利要求3-6任一所述的异常检测方法。
10.一种存储介质,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现权利要求1-2任一所述的异常检测模型训练方法或权利要求3-6任一所述的异常检测方法。
CN202010219435.0A 2020-03-25 2020-03-25 异常检测模型训练方法、异常检测方法及相关装置 Active CN111444060B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010219435.0A CN111444060B (zh) 2020-03-25 2020-03-25 异常检测模型训练方法、异常检测方法及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010219435.0A CN111444060B (zh) 2020-03-25 2020-03-25 异常检测模型训练方法、异常检测方法及相关装置

Publications (2)

Publication Number Publication Date
CN111444060A true CN111444060A (zh) 2020-07-24
CN111444060B CN111444060B (zh) 2023-06-30

Family

ID=71648747

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010219435.0A Active CN111444060B (zh) 2020-03-25 2020-03-25 异常检测模型训练方法、异常检测方法及相关装置

Country Status (1)

Country Link
CN (1) CN111444060B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112308170A (zh) * 2020-11-10 2021-02-02 维沃移动通信有限公司 建模方法、装置及电子设备
CN112434308A (zh) * 2020-12-14 2021-03-02 招商局金融科技有限公司 应用漏洞检测方法、装置、电子设备及计算机存储介质
CN113283884A (zh) * 2020-12-31 2021-08-20 深圳怡化电脑股份有限公司 一种日志处理方法和装置
CN113407422A (zh) * 2021-08-20 2021-09-17 太平金融科技服务(上海)有限公司深圳分公司 数据异常告警处理方法、装置、计算机设备和存储介质
CN114598618A (zh) * 2020-12-07 2022-06-07 中国移动通信有限公司研究院 一种数据处理方法、装置及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108073497A (zh) * 2018-01-29 2018-05-25 上海洞识信息科技有限公司 一种基于数据中心数据采集平台的多指标异动分析方法
US20190219994A1 (en) * 2018-01-18 2019-07-18 General Electric Company Feature extractions to model large-scale complex control systems
CN110046781A (zh) * 2018-12-04 2019-07-23 阿里巴巴集团控股有限公司 商户风险防控方法及装置
CN110113226A (zh) * 2019-04-16 2019-08-09 新华三信息安全技术有限公司 一种检测设备异常的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190219994A1 (en) * 2018-01-18 2019-07-18 General Electric Company Feature extractions to model large-scale complex control systems
CN108073497A (zh) * 2018-01-29 2018-05-25 上海洞识信息科技有限公司 一种基于数据中心数据采集平台的多指标异动分析方法
CN110046781A (zh) * 2018-12-04 2019-07-23 阿里巴巴集团控股有限公司 商户风险防控方法及装置
CN110113226A (zh) * 2019-04-16 2019-08-09 新华三信息安全技术有限公司 一种检测设备异常的方法及装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112308170A (zh) * 2020-11-10 2021-02-02 维沃移动通信有限公司 建模方法、装置及电子设备
CN114598618A (zh) * 2020-12-07 2022-06-07 中国移动通信有限公司研究院 一种数据处理方法、装置及设备
CN112434308A (zh) * 2020-12-14 2021-03-02 招商局金融科技有限公司 应用漏洞检测方法、装置、电子设备及计算机存储介质
CN112434308B (zh) * 2020-12-14 2024-02-20 招商局金融科技有限公司 应用漏洞检测方法、装置、电子设备及计算机存储介质
CN113283884A (zh) * 2020-12-31 2021-08-20 深圳怡化电脑股份有限公司 一种日志处理方法和装置
CN113407422A (zh) * 2021-08-20 2021-09-17 太平金融科技服务(上海)有限公司深圳分公司 数据异常告警处理方法、装置、计算机设备和存储介质
CN113407422B (zh) * 2021-08-20 2021-11-09 太平金融科技服务(上海)有限公司深圳分公司 数据异常告警处理方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN111444060B (zh) 2023-06-30

Similar Documents

Publication Publication Date Title
CN111444060A (zh) 异常检测模型训练方法、异常检测方法及相关装置
CN112188531B (zh) 异常检测方法、装置、电子设备及计算机存储介质
CN110928718A (zh) 一种基于关联分析的异常处理方法、系统、终端及介质
CN110865929A (zh) 异常检测预警方法及系统
CN110083507B (zh) 关键性能指标分类方法及装置
KR20150038905A (ko) 데이터 전처리 장치 및 방법
CN109753408A (zh) 一种基于机器学习的流程异常预测方法
CN106452934B (zh) 一种网络性能指标变化趋势的分析方法和装置
CN115664038B (zh) 一种用于电气安全管理的智能配电运维监控系统
CN114327964A (zh) 业务系统的故障原因处理方法、装置、设备及存储介质
CN114298221A (zh) 故障确定方法及装置、电子设备和计算机可读存储介质
WO2023115856A1 (zh) 一种任务异常告警方法及装置
CN115441456A (zh) 一种电网调度支持系统故障诊断方法及装置
CN115913710A (zh) 异常检测方法、装置、设备及存储介质
CN113835918A (zh) 一种服务器故障分析方法及装置
CN111447193B (zh) 一种针对实时数据流进行异常检测的方法及装置
CN111783883A (zh) 一种异常数据的检测方法及装置
EP4033421A1 (en) Method and system for predicting a failure of a monitored entity
CN116545867A (zh) 一种监控通信网络网元性能指标异常的方法及装置
CN114430361B (zh) 一种异常带宽检测方法、装置、电子设备及存储介质
CN115564410A (zh) 一种继电保护设备的状态监测方法及装置
CN114358910A (zh) 异常财务数据处理方法、装置、设备及存储介质
CN113656452A (zh) 调用链指标异常的检测方法、装置、电子设备及存储介质
CN112613723A (zh) 风险告警方法、系统、设备及介质
CN111581044A (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