异常检测方法、装置、设备及存储介质与流程

文档序号:32798482发布日期:2023-01-03 23:00阅读:44来源:国知局
异常检测方法、装置、设备及存储介质与流程

1.本公开涉及智能运维检测技术领域,尤其涉及一种异常检测方法、装置、设备、存储介质和程序产品。


背景技术:

2.计算机业务系统一般存在批处理作业,用于对一些需要定期运行的任务进行处理。一个定时任务有可能包含几个甚至几万个作业一起完成,随着作业数量的增加以及业务系统的日趋复杂,技术人员在提交一个批处理任务时,对每一个作业的运行状态需要配置数据,例如,作业的计划开始时间,计划运行时长等信息。
3.目前,针对每一个作业的运行状态配置数据时,一般是依赖技术人员的经验估值,例如,技术人员针对某一个作业计划运行时间为30分钟,但是实际运行了1小时,这就导致后置作业被迫延迟;或者有时计划运行时间为1小时,但实际上只运行了40分钟,就会致使有一些空白信息不在该作业的检测范围之内,导致技术人员对作业的运行状态无法更好的在计划之内完成,从而降低作业有效运行效率以及调度资源的浪费。


技术实现要素:

4.鉴于上述问题,本公开提供了一种异常检测方法、装置、设备、存储介质和程序产品。
5.根据本公开的第一个方面,提供了一种异常检测方法,包括:对与批量作业对应的经预处理后的实时运行时长数据进行数据特征分析,确定经预处理后的实时运行时长数据的数据类型;基于数据类型与训练后的时序数据预测模型中的预测子模型的对应关系,对数据类型的实时运行时长数据进行预测,得到将来预设时刻的预测值,其中,时序数据预测模型中的预测子模型包括差分整合移动平均自回归模型、自回归模型和长短期记忆网络模型;调用基线预测规则,根据预设时刻的预测值,预测运行时长基线;以及基于运行时长基线对批量作业的运行状态进行异常检测。
6.根据本公开的实施例,其中,数据类型包括周期型数据、稳定型数据和波动型数据。
7.根据本公开的实施例,其中,对与批量作业对应的经预处理后的实时运行时长数据进行数据特征分析,确定经预处理后的实时运行时长数据的数据类型,包括:根据与批量作业对应的经预处理后的实时运行时长数据,确定实时运行时长数据曲线;调用数据特征识别规则,对实时运行时长数据曲线进行识别,确定实时运行时长数据的数据类型。
8.根据本公开的实施例,其中,调用数据特征识别规则,对实时运行时长数据曲线进行识别,确定实时运行时长数据的数据类型,包括:调用第一数据特征识别规则,在实时运行时长数据曲线满足第一数据特征识别规则的情况下,确定实时运行时长数据的数据类型为周期型数据;在实时运行时长数据曲线不满足第一数据特征识别规则的情况下,调用第二数据特征识别规则,在实时运行时长数据曲线满足第二数据特征识别规则的情况下,确
定实时运行时长数据的数据类型为稳定型数据;在实时运行时长数据曲线不满足第二数据特征识别规则的情况下,调用第三数据特征识别规则,在实时运行时长数据曲线满足第三数据特征识别规则的情况下,确定实时运行时长数据的数据类型为波动型数据。
9.根据本公开的实施例,其中,训练后的时序数据预测模型是通过如下过程得到的,包括:获取历史运行时长数据并进行预处理,得到预处理后的历史运行时长数据;确定预处理后的历史运行时长数据的数据类型;在数据类型满足周期型数据的情况下,将预处理后的历史运行时长数据输入差分整合移动平均自回归模型进行训练,得到训练后的差分整合移动平均自回归模型;在数据类型满足稳定型数据的情况下,将预处理后的历史运行时长数据输入自回归模型进行训练,得到训练后的自回归模型;在数据类型满足波动型数据的情况下,将预处理后的历史运行时长数据输入长短期记忆网络模型进行训练,得到训练后的长短期记忆网络模型;将训练后的差分整合移动平均自回归模型、训练后的自回归模型和训练后的长短期记忆网络模型进行整合,得到训练后的时序数据预测模型。
10.根据本公开的实施例,其中,基于数据类型与训练后的时序数据预测模型中的预测子模型的对应关系,对数据类型的实时运行时长数据进行预测,得到将来预设时刻的预测值,包括:确定实时运行时长数据的数据类型标识,将数据类型的实时运行时长数据输入训练后的时序数据预测模型中,确定与数据类型标识相对应的预测子模型;基于预测子模型,对数据类型的实时运行时长数据进行预测,得到将来预设时刻的预测值。
11.根据本公开的实施例,其中,根据预设时刻的预测值,预测运行时长基线,包括:获取预测值相邻的预设时间段内的历史数据点集;根据预设时刻的预测值和历史数据点集,预测运行时长的基线。
12.根据本公开的实施例,其中,与批量作业对应的经处理后的实时运行时长数据通过如下预处理过程得到的:获取与批量作业对应的实时运行时长数据;在确定实时运行时长数据中存在极端数据的情况下,确定与极端数据对应的边界值;将边界值替代极端数据;在确定实时运行时长数据中存在数据缺失的情况下,确定数据缺失处对应的缺失数据值相邻的运行时长的数据平均值;将数据平均值填充至数据缺失处,完成实时运行时长数据的运处理。
13.本公开的另一方面提供了一种异常检测装置,包括:分析模块,用于对与批量作业对应的经预处理后的实时运行时长数据进行数据特征分析,确定经预处理后的实时运行时长数据的数据类型;第一预测模块,用于基于数据类型与训练后的时序数据预测模型中的预测子模型的对应关系,对数据类型的实时运行时长数据进行预测,得到将来预设时刻的预测值,其中,时序数据预测模型中的预测子模型包括差分整合移动平均自回归模型、自回归模型和长短期记忆网络模型;第二预测模块,用于调用基线预测规则,根据预设时刻的预测值,预测运行时长基线;以及检测模块,用于基于运行时长基线对批量作业的运行状态进行异常检测。
14.本公开的另一方面还提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器执行上述方法。
15.本公开的另一方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述方法。
应包括但不限于单独具有a、单独具有b、单独具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b、c的系统等)。
29.在本公开的技术方案中,所涉及的数据(如包括但不限于用户个人信息)的收集、存储、使用、加工、传输、提供、公开和应用等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
30.本公开的实施例提供了一种异常检测方法,包括:对与批量作业对应的经预处理后的实时运行时长数据进行数据特征分析,确定经预处理后的实时运行时长数据的数据类型;基于数据类型与训练后的时序数据预测模型中的预测子模型的对应关系,对数据类型的实时运行时长数据进行预测,得到将来预设时刻的预测值,其中,时序数据预测模型中的预测子模型包括差分整合移动平均自回归模型、自回归模型和长短期记忆网络模型;调用基线预测规则,根据预设时刻的预测值,预测运行时长基线;以及基于运行时长基线对批量作业的运行状态进行异常检测。
31.图1示意性示出了根据本公开实施例的异常检测方法及装置的应用场景图。
32.如图1所示,根据该实施例的应用场景100可以包括第一终端设备101、第二终端设备102、第三终端设备103、网络104和服务器105。网络104用以在第一终端设备101、第二终端设备102、第三终端设备103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
33.用户可以使用第一终端设备101、第二终端设备102、第三终端设备103中的至少一个通过网络104与服务器105交互,以接收或发送消息等。第一终端设备101、第二终端设备102、第三终端设备103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
34.第一终端设备101、第二终端设备102、第三终端设备103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
35.服务器105可以是提供各种服务的服务器,例如对用户利用第一终端设备101、第二终端设备102、第三终端设备103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
36.需要说明的是,本公开实施例所提供的异常检测方法一般可以由服务器105执行。相应地,本公开实施例所提供的异常检测装置一般可以设置于服务器105中。本公开实施例所提供的异常检测方法也可以由不同于服务器105且能够与第一终端设备101、第二终端设备102、第三终端设备103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的异常检测装置也可以设置于不同于服务器105且能够与第一终端设备101、第二终端设备102、第三终端设备103和/或服务器105通信的服务器或服务器集群中。
37.应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
38.以下将基于图1描述的场景,通过图2~图4对公开实施例的异常检测方法进行详细描述。
39.图2示意性示出了根据本公开实施例的异常检测方法的流程图。
40.如图2所示,该方法200可以包括操作s210~操作s240。
41.在操作s210,对与批量作业对应的经预处理后的实时运行时长数据进行数据特征分析,确定经预处理后的实时运行时长数据的数据类型。
42.根据本公开的实施例,实时运行时长数据可以为对批量作业在实际环境中运行时进行实时采集的时序数据。时序数据可以为时间序列数据,是同一统一指标按照时间顺序记录的数据列。
43.根据本公开的实施例,数据特征分析可以为是对实时采集的运行时长数据的进行识别分析。可以通过不同的统计分析方法实现对实时运行时长数据的识别,确定实时运行时长数据的数据类型。
44.根据本公开的实施例,对实时运行时长数据进行预处理可以包括缺失值处理、数据归一化处理及滑窗处理。
45.在操作s220,基于数据类型与训练后的时序数据预测模型中的预测子模型的对应关系,对数据类型的实时运行时长数据进行预测,得到将来预设时刻的预测值,其中,时序数据预测模型中的预测子模型包括差分整合移动平均自回归模型、自回归模型和长短期记忆网络模型。
46.根据本公开的实施例,时序数据预测模型可以通过三个预测子模型构建得到的。针对不同的数据类型,可以利用不同的预测子模型对该数据类型对应的实时运行时长数据进行预测,得到将来预设时刻的预测值。
47.根据本公开的实施例,三个预测子模型可以包括差分整合移动平均自回归模型(autoregressive integrated moving average模型,即,arima模型)、自回归模型(autoregressive模型,即,ar模型)和长短期记忆网络模型(long short-term memory模型,即,lstm模型)。经训练的时序数据预测模型可以通过分别对三个预测子模型进行训练,通过集成学习框架对三个预测子模型进行融合训练,得到训练后的时序数据预测模型。
48.根据本公开的实施例,预测将来预设时刻的预测值可以为需要预测的时间段信息。可以由用户进行设置,也可以根据实时运行时长数据的特征进行进行设置,在此,本公开实施例对此不作限定。
49.根据本公开的实施例,将来预设时刻可以为短期时间段信息,也可以为长期时间段信息,例如,用户需要获取将来数月内的预测数据,则需要预测的时间段为数月,属于长期时间段信息;用户需要获取将来数天内的预测数据,则需要预测的时间段为数天,属于短期时间段信息。将来预设时刻也可以为预测一年内、小时内的预测时间段信息。在此,本技术不作具体限定,根据实际需求自行设置。
50.在操作s230,调用基线预测规则,根据预设时刻的预测值,预测运行时长基线。
51.在操作s240,基于运行时长基线对批量作业的运行状态进行异常检测。
52.根据本公开的实施例,基线预测规则可以为确定运行时长基线的规则。运行时长基线可以分为上基线和下基线,上基线和下基线的基线值可以关于该预测值对称,下基线最小值可以为0,但不能为负数。
53.根据本公开的实施例,可以基于预设时刻的预测值,采用基线预测规则,确定运行时长基线的上基线或者下基线即可,以确定上基线和下基线的区间范围。
54.根据本公开的实施例,可以结合作业的实际运行情况,基于上述确定基线方法,每
天更新确定上基线和下基线的基线区间范围,以该区间范围作为对应作业的动态基线,对作业的运行状态进行异常检测。
55.根据本公开的实施例,通过对与批量作业对应的经预处理后的实时运行时长数据进行数据特征分析,对实时运行时长数据的数据类型进行识别,再基于不同的数据类型与时序数据预测模型中的预测子模型的对应关系,对实时运行数据进行预测,得到将来预设时刻的预测值,基于该预测值,确定运行时长基线,从而基于运行时长基线对批量作业的运行状态进行异常检测。由于是通过对实时运行时长数据进行数据特征分析,根据不同的数据类型采用不同的算法确定运行时长基线,在基于该运行时长基线对作业运行状态进行异常检测,因此,至少部分的解决了在配置数据中依赖人工经验估值的不足,导致技术人员对作业的运行状态无法更好的在计划之内完成,降低作业有效运行效率的技术问题,实现了能够客观对作业运行状态的配置数据提供数据参考,并对运行时长进行数据驱动的实时异常分析,减少调度资源浪费的技术效果。
56.根据本公开的实施例,与批量作业对应的经处理后的实时运行时长数据通过如下预处理过程得到的:获取与批量作业对应的实时运行时长数据;在确定实时运行时长数据中存在极端数据的情况下,确定与极端数据对应的边界值;将边界值替代极端数据;在确定实时运行时长数据中存在数据缺失的情况下,确定数据缺失处对应的缺失数据值相邻的运行时长的数据平均值;将数据平均值填充至数据缺失处,完成实时运行时长数据的运处理。
57.根据本公开的实施例,在采集与批量作业对应的实时运行时长数据时可能会存在丢失某个时间段内的数据或者具有极端数据的情况。
58.根据本公开的实施例,极端数据可以为采集的实时运行时长数据中不满足正态分布的数据。可以针对某一时间段内的数据采用3倍标准差识别出极端数据。
59.根据本公开的实施例,可以确定该时间段内的边界值,将该边界值作为极端数据点对应的数据值。
60.根据本公开的实施例,数据缺失可能是在采集数据的过程中丢失了某个时间段的数据,对此,针对缺失的数据点可以进行数据填充。数据填充可以采用该缺失值前后的预设数量的数据点对应的运行时长的平均值来进行填充。
61.根据本公开的实施例,对与批量作业对应的经预处理后的实时运行时长数据进行数据特征分析,确定经预处理后的实时运行时长数据的数据类型,包括:根据与批量作业对应的经预处理后的实时运行时长数据,确定实时运行时长数据曲线;调用数据特征识别规则,对实时运行时长数据曲线进行识别,确定实时运行时长数据的数据类型。
62.根据本公开的实施例,数据类型可以包括周期型数据、稳定型数据和波动型数据。
63.根据本公开的实施例,周期型数据可以为运行时长数据满足某一规律的数据;稳定性数据可以为运行时长数据表现稳定的数据;波动性数据可以为运行时长数据在某一规律中表现持续波动的数据。
64.根据本公开的实施例,实时运行时长数据曲线可以通过获取的实时运行时长数据的时间序列映射得到。数据特征识别规则可以为对实时运行数据进行数据特征分析的规则。
65.根据本公开的实施例,基于该数据特征识别规则,可以确定数据特征曲线表现出的数据类型,从而确定该实时运行时长数据的具体数据类型。
66.根据本公开的实施例,调用数据特征识别规则,对实时运行时长数据曲线进行识别,确定实时运行时长数据的数据类型,包括:
67.调用第一数据特征识别规则,在实时运行时长数据曲线满足第一数据特征识别规则的情况下,确定实时运行时长数据的数据类型为周期型数据;
68.在实时运行时长数据曲线不满足第一数据特征识别规则的情况下,调用第二数据特征识别规则,在实时运行时长数据曲线满足第二数据特征识别规则的情况下,确定实时运行时长数据的数据类型为稳定型数据;
69.在实时运行时长数据曲线不满足第二数据特征识别规则的情况下,调用第三数据特征识别规则,在实时运行时长数据曲线满足第三数据特征识别规则的情况下,确定实时运行时长数据的数据类型为波动型数据。
70.根据本公开的实施例,第一数据特征识别规则可以为确定实时运行时长数据是否符合周期性规律的规则。例如,可以为傅里叶分析的识别规则。
71.根据本公开的实施例,可以采用傅里叶分析的方法对实时运行时长数据进行识别,判断实时运行时长数据曲线是否满足傅里叶分析规则,若满足傅里叶分析规则,则说明实时运行时长数据是周期型数据。
72.根据本公开的实施例,第二数据特征识别规则可以为确定实时运行数据是否符合稳定性特征的规则。例如,可以为极值理论方法。
73.根据本公开的实施例,周期型数据可以为运行时长数据在时间序列中是否呈现出围绕长期趋势的一种波浪形或振荡式变动,从而确定是否具有周期性。
74.根据本公开的实施例,在实时运行时长数据不满足周期性规律的情况下,可以采用极值理论方法对实时运行时长数据进行稳定性识别分析,判断实时运行时长数据是否满足极值理论分析结果,若满足极值理论分析结果,则说明实时运行时长数据是稳定型数据。
75.根据本公开的实施例,第三数据特征识别规则可以为确定实时运行时长数据是否符合波动性特征的规则。例如,可以为非参数核密度估计方法(kde)。
76.根据本公开的实施例,在实时运行时长数据不满足稳定性规律的情况下,可以采用非参数核密度估计方法对实时运行时长数据进行波动型识别,可以检验某个时间点前后的均值差异程度是否大于预设值,如果大于预设值,则说明实时运行时长数据属于波动型数据。需要说明的是,若小于预设值,可以将该实时运行时长数据视为稳定型数据进行处理。
77.根据本公开的实施例,可以通过数据特征识别分析方法对运行时长数据的数据特征曲线进行识别,以此解决现有技术中对于作业运行时长数据的数据特征无法做出准确识别的技术问题,从而确定采集的运行时长数据的数据类型,为后续进行数据预测奠定基础。
78.图3示意性示出了根据本公开实施例的得到训练后的时序数据预测模型的方法流程图。
79.如图3所示,该方法300可以包括操作s310~s360。
80.在操作s310,获取历史运行时长数据并进行预处理,得到预处理后的历史运行时长数据。
81.根据本公开的实施例,历史运行时长数据可以为实际环境中的获得的历史时刻的时间序列数据。预处理与前述对实时运行时长数据的预处理相同,都需要进行缺失值处理、
数据归一化处理、极端数据处理和滑窗处理等。
82.在操作s320,确定预处理后的历史运行时长数据的数据类型。
83.根据本公开的实施例,历史运行时长数据的数据类型与实时运行时长数据的数据类型相同,均包括周期型数据、稳定型数据和波动型数据。
84.根据本公开的实施例,确定历史运行时长数据的数据类型的方法与前述确定实时运行时长数据的数据类型的方法相同,在此不再赘述。
85.在操作s330,在数据类型满足周期型数据的情况下,将预处理后的历史运行时长数据输入差分整合移动平均自回归模型进行训练,得到训练后的差分整合移动平均自回归模型。
86.根据本公开的实施例,针对满足数据类型为周期型数据的运行时长数据特征曲线,可以采用差分整合移动平均自回归模型(arima模型)对运行时长数据进行拟合训练,然后再用于对将来时刻的预测。
87.根据本公开的实施例,arima模型具有三个参数,即,自回归项数p、滑动平均项数q和差分阶数d。
88.根据本公开的实施例,对arima模型进行训练之前,需要对时间序列数据进行平稳性处理,可以采用单位根检验方法(adf)。如果平稳,才能进行后面的arima模型训练;如果不平稳,则需要进行差分处理知道时间序列数据平稳为止。一般差分阶数可以小于或等于2。
89.根据本公开的实施例,在平稳性检验通过之后,需要进行白噪声检验来确定自回归项数p和滑动平均项数q。通常,可以采用赤池信息量准则(aic)和贝叶斯信息量准则(bic)进行优化,确定最佳自回归项数p和滑动平均项数q。
90.根据本公开的实施例,确定自回归项数p、滑动平均项数q和差分阶数d的参数后,可以将周期型特征的历史运行时长数据输入至arima模型中进行训练,得到训练后的arima模型。
91.在操作s340,在数据类型满足稳定型数据的情况下,将预处理后的历史运行时长数据输入自回归模型进行训练,得到训练后的自回归模型。
92.根据本公开的实施例,针对满足数据类型为稳定型数据的运行时长数据特征曲线,可以采用自回归模型(ar模型)对运行时长数据进行拟合训练,然后再用于对将来时刻的预测。
93.根据本公开的实施例,ar模型需要确定模型的自回归阶数,再进行模型训练。
94.根据本公开的实施例,确定模型的自回归阶数可以通过采用偏自相关图选定自回归阶数。具体地,由于自回归模型中各项的系数就代表了各自变量对因变量的片自相关性,以偏自相关系数落入特定的区间为界限,若直到当前阶数的偏自相关系数落入该该区间,则将该阶数确定为自回归阶数。
95.根据本公开的实施例,确定自回归模型的自回归阶数后,可以将稳定型特征的历史运行时长数据输入至ar模型中进行训练,得到训练后的ar模型。
96.在操作s350,在数据类型满足波动型数据的情况下,将预处理后的历史运行时长数据输入长短期记忆网络模型进行训练,得到训练后的长短期记忆网络模型。
97.根据本公开的实施例,针对满足数据类型为波动型数据的运行时长数据特征曲
线,由于波动型数据特征的规律相对其他两种数据类型的数据规律不太明显,因此,可以采用泛化能力较强的深度学习长短期记忆网络模型(lstm模型)进行预测。
98.根据本公开的实施例,为了lstm模型能够更好地训练,需要对运行时长数据进行数据归一化处理,同时,可以以预设窗口尺寸的滑动窗口进行训练数据的拼接,以此作为模型的输入。
99.根据本公开的实施例,lstm模型是一种特殊的rnn,主要是为了解决长序列训练过程中的梯度消失和梯度爆炸问题,相比于循环神经网络rnn,lstm能够在更长的序列中有更好的表现。
100.根据本公开的实施例,可以通过构造不同的参数组合形成lstm的训练数据集。例如,可以采用前m步预测后n步,即参数组合可以为(m,n)。再将数据集输入至lstm模型中进行训练,得到训练后的lstm模型。
101.在操作s360,将训练后的差分整合移动平均自回归模型、训练后的自回归模型和训练后的长短期记忆网络模型进行整合,得到训练后的时序数据预测模型。
102.根据本公开的实施例,可以将训练后的差分整合移动平均自回归模型、训练后的自回归模型和训练后的长短期记忆网络模型进行整合后进行联合训练,最终得到训练后的时序数据预测模型。
103.根据本公开的实施例,基于数据类型与训练后的时序数据预测模型中的预测子模型的对应关系,对数据类型的实时运行时长数据进行预测,得到将来预设时刻的预测值,包括:
104.确定实时运行时长数据的数据类型标识,将数据类型的实时运行时长数据输入训练后的时序数据预测模型中,确定与数据类型标识相对应的预测子模型;基于预测子模型,对数据类型的实时运行时长数据进行预测,得到将来预设时刻的预测值。
105.根据本公开的实施例,前述已经阐述说明时序数据预测模型是通过arima模型、ar模型和lstm模型的三个预测子模型整合构建而成的。
106.根据本公开的实施例,确定实时运行时长数据的数据类型之后,根据实时运行时长数据包含的数据类型标识,可以确定时序数据预测模型中与数据类型标识相同的预测子模型,对实时运行数据进行预测,得到将来预设时刻的预测值。
107.根据本公开的实施例,基于时序数据预测模型对实时运行时长数据进行预测,实时运行时长数据可以为某个时间段的运行时长数据,利用该时间段的运行时长数据预测将来预设时刻的预测值。
108.根据本公开的实施例,例如,当确定实时运行时长数据的数据类型为周期型数据,可以利用时序数据预测模型中的与周期型数据对应的arima模型进行将来预设时刻的预测;当确定实时运行时长数据的数据类型为稳定型数据,可以利用时序数据预测模型中的与稳定型数据对应的ar模型进行将来预设时刻的预测;当确定实时运行时长数据的数据类型为波动型数据,可以利用时序数据预测模型中的与波动型数据对应的lstm模型进行将来预设时刻的预测,并分别得到相应的预测值。
109.根据本公开的实施例,可以通过针对不同的数据特征采用不同的算法计算得到相应将来预设时刻的预测值,以解决现有技术中需要依赖技术人员经验值进行估值而出现预测值精确度较低的技术问题,从而提高预测结果的准确性。
110.根据本公开的实施例,根据预设时刻的预测值,预测运行时长基线,包括:获取预测值相邻的预设时间段内的历史数据点集;根据预设时刻的预测值和历史数据点集,预测运行时长的基线。
111.根据本公开的实施例,相邻的预设时间段可以为该预测值对应的将来预设时刻之前的某一时间段内的历史运行时长数据点集。例如,该预测值对应的将来预设时刻是某天,则相邻的预设时间段可以为以该天之前的一时间段内的历史运行时长数据点集。该天之前的一时间段内可以为几天之内的历史运行时长数据点集。
112.根据本公开的实施例,针对不同数据类型的运行时长数据,利用不同的算法规则计算运行时长的上基线。例如,针对周期型数据,可以基于该预测值上浮预设百分数作为运行时长的上基线;针对稳定型数据,可以采用残差迭代原则,基于该预测值计算运行时长的上基线;针对波动型数据,可以基于该预测值,利用3倍标准差的计算规则,计算该预测值相邻的预设时间段内的数据点,计算出上基线值。
113.根据本公开的实施例,上基线和下基线是以该预测值对称,从而确定出下基线值。
114.根据本公开的实施例,可以基于上基线值和下基线值,确定该作业运行时长的基线区间,可以根据该基线区间,结合作业实际运行情况,每天更新上基线和下基线,形成动态基线区间,从而对作业运行时长进行异常检测。
115.图4示意性示出了根据本公开实施例的异常检测方法的示意图。
116.如图4所示,在示意图400中,获取与批量作业对应的实时运行时长数据401,对实时运行时长数据进行预处理,得到经处理后的实时运行时长数据402,对经处理后的实时运行时长数据402进行数据特征分析,确定实时运行时长数据的数据类型403,数据类型403可以包括周期型数据403-1,稳定型数据403-2和波动型数据403-3。针对不同的数据类型,采用不同的时序数据预测模型404中的预测子模型,预测子模型404可以包括arima模型404-1,ar模型404-2和lstm模型404-3进行数据预测,预测将来预设时刻的预测值405,基于该预测值405,确定运行时长基线406,基于该运行时长基线406,对批量作业的运行状态进行异常检测407。
117.基于上述异常检测方法,本公开还提供了一种异常检测装置。以下将结合图5对该装置进行详细描述。
118.图5示意性示出了根据本公开实施例的异常检测装置的结构框图。
119.如图5所示,该异常检测装置500可以包括:分析模块510、第一预测模块520、第二预测模块530和检测模块540。
120.分析模块510,用于对与批量作业对应的经预处理后的实时运行时长数据进行数据特征分析,确定经预处理后的实时运行时长数据的数据类型。在一实施例中,分析模块510可以用于执行前文描述的操作s210,在此不再赘述。
121.第一预测模块520,用于基于数据类型与训练后的时序数据预测模型中的预测子模型的对应关系,对数据类型的实时运行时长数据进行预测,得到将来预设时刻的预测值,其中,时序数据预测模型中的预测子模型包括差分整合移动平均自回归模型、自回归模型和长短期记忆网络模型。在一实施例中,第一预测模块520可以用于执行前文描述的操作s220,在此不再赘述
122.第二预测模块530,用于调用基线预测规则,根据预设时刻的预测值,预测运行时
长基线。在一实施例中,第二预测模块530可以用于执行前文描述的操作s230,在此不再赘述。
123.检测模块540,用于基于运行时长基线对批量作业的运行状态进行异常检测。在一实施例中,检测模块540可以用于执行前文描述的操作s240,在此不再赘述。
124.根据本公开的实施例,数据类型包括周期型数据、稳定型数据和波动型数据。
125.根据本公开的实施例,分析模块510可以包括:第一确定子模块和调用子模块。
126.第一确定子模块,用于根据与批量作业对应的经预处理后的实时运行时长数据,确定实时运行时长数据曲线。
127.调用子模块,用于调用数据特征识别规则,对实时运行时长数据曲线进行识别,确定实时运行时长数据的数据类型。
128.根据本公开的实施例,调用子模块可以包括:第一调用单元、第二调用单元和第三调用单元。
129.第一调用单元,用于调用第一数据特征识别规则,在实时运行时长数据曲线满足第一数据特征识别规则的情况下,确定实时运行时长数据的数据类型为周期型数据。
130.第二调用单元,用于在实时运行时长数据曲线不满足第一数据特征识别规则的情况下,调用第二数据特征识别规则,在实时运行时长数据曲线满足第二数据特征识别规则的情况下,确定实时运行时长数据的数据类型为稳定型数据。
131.第三调用单元,在实时运行时长数据曲线不满足第二数据特征识别规则的情况下,调用第三数据特征识别规则,在实时运行时长数据曲线满足第三数据特征识别规则的情况下,确定实时运行时长数据的数据类型为波动型数据。
132.根据本公开的实施例,训练后的时序数据预测模型是通过如下过程得到的,包括:获取历史运行时长数据并进行预处理,得到预处理后的历史运行时长数据;确定预处理后的历史运行时长数据的数据类型;在数据类型满足周期型数据的情况下,将预处理后的历史运行时长数据输入差分整合移动平均自回归模型进行训练,得到训练后的差分整合移动平均自回归模型;在数据类型满足稳定型数据的情况下,将预处理后的历史运行时长数据输入自回归模型进行训练,得到训练后的自回归模型;在数据类型满足波动型数据的情况下,将预处理后的历史运行时长数据输入长短期记忆网络模型进行训练,得到训练后的长短期记忆网络模型;将训练后的差分整合移动平均自回归模型、训练后的自回归模型和训练后的长短期记忆网络模型进行整合,得到训练后的时序数据预测模型。
133.根据本公开的实施例,第一预测模块520可以包括:第二确定子模块和预测子模块。
134.第二确定子模块,用于确定实时运行时长数据的数据类型标识,将数据类型的实时运行时长数据输入训练后的时序数据预测模型中,确定与数据类型标识相对应的预测子模型。
135.预测子模块,用于基于预测子模型,对数据类型的实时运行时长数据进行预测,得到将来预设时刻的预测值。
136.根据本公开的实施例,第二预测模块530可以包括:获取子模块和预测子模块。
137.获取子模块,用于获取预测值相邻的预设时间段内的历史数据点集。
138.预测子模块,用于根据预设时刻的预测值和历史数据点集,预测运行时长的基线。
139.根据本公开的实施例,与批量作业对应的经处理后的实时运行时长数据通过如下预处理过程得到的:获取与批量作业对应的实时运行时长数据;在确定实时运行时长数据中存在极端数据的情况下,确定与极端数据对应的边界值;将边界值替代极端数据;在确定实时运行时长数据中存在数据缺失的情况下,确定数据缺失处对应的缺失数据值相邻的运行时长的数据平均值;将数据平均值填充至数据缺失处,完成实时运行时长数据的运处理。
140.根据本公开的实施例,分析模块510、第一预测模块520、第二预测模块530和检测模块540中的任意多个模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,分析模块510、第一预测模块520、第二预测模块530和检测模块540中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(fpga)、可编程逻辑阵列(pla)、片上系统、基板上的系统、封装上的系统、专用集成电路(asic),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,分析模块510、第一预测模块520、第二预测模块530和检测模块540中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
141.图6示意性示出了根据本公开实施例的适于实现异常检测方法的电子设备的方框图。
142.如图6所示,根据本公开实施例的电子设备600包括处理器601,其可以根据存储在只读存储器(rom)602中的程序或者从存储部分608加载到随机访问存储器(ram)603中的程序而执行各种适当的动作和处理。处理器601例如可以包括通用微处理器(例如cpu)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(asic))等等。处理器601还可以包括用于缓存用途的板载存储器。处理器601可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
143.在ram 603中,存储有电子设备600操作所需的各种程序和数据。处理器601、rom 602以及ram 603通过总线604彼此相连。处理器601通过执行rom 602和/或ram 603中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,程序也可以存储在除rom 602和ram 603以外的一个或多个存储器中。处理器601也可以通过执行存储在一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
144.根据本公开的实施例,电子设备600还可以包括输入/输出(i/o)接口605,输入/输出(i/o)接口605也连接至总线604。电子设备600还可以包括连接至i/o接口605的以下部件中的一项或多项:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至i/o接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
145.本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/
系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
146.根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的rom 602和/或ram 603和/或rom 602和ram 603以外的一个或多个存储器。
147.本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本公开实施例所提供的异常检测方法。
148.在该计算机程序被处理器601执行时执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
149.在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分609被下载和安装,和/或从可拆卸介质611被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
150.在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被处理器601执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
151.根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如java,c++,python,“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
152.附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规
定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
153.本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
154.以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1