CN111125195B - 一种数据异常检测方法及装置 - Google Patents
一种数据异常检测方法及装置 Download PDFInfo
- Publication number
- CN111125195B CN111125195B CN201911360974.XA CN201911360974A CN111125195B CN 111125195 B CN111125195 B CN 111125195B CN 201911360974 A CN201911360974 A CN 201911360974A CN 111125195 B CN111125195 B CN 111125195B
- Authority
- CN
- China
- Prior art keywords
- time point
- prediction
- predicted
- value
- current time
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S10/00—Systems supporting electrical power generation, transmission or distribution
- Y04S10/50—Systems or methods supporting the power network operation or management, involving a certain degree of interaction with the load-side end user applications
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Fuzzy Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Databases & Information Systems (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
本发明提供了一种数据异常检测方法及装置,可以在接收到当前时点的实际值时,基于数据预测模型的输出确定距离当前时点最近的第一预测时点和第二预测时点,进一步根据第一预测时点的限值和第二预测时点的限值预测当前时点的限值,从而利用当前时点的限值对当前时点的实际值进行异常检测。基于本发明可以解决分钟级以下秒级微粒度的实时数据异常检测,提高异常检测的准确性。
Description
技术领域
本发明涉及大数据智能运维技术领域,更具体地说,涉及一种数据异常检测方法及装置。
背景技术
运维领域中,对时序型指标进行异常检测是发现问题的常用方法。传统的方式多以人工设定固定阈值为主,为了尽可能提高异常检测的准确性,需要人工根据经验针对不同类型、不同实例的指标分别设置。随着监控对象和相关指标的指数级增长,人工设定固定阈值的弊端逐渐显现,配置和维护工作量大,对人员经验依赖度高,易发生告警漏报、误报和告警风暴问题。
这种情况下,当前很多运维***开始尝试通过引入AI算法等智能化手段,利用动态阈值的方法,旨在及时、准确和自动的发现异常问题。具体做法为:针对不同的时序指标,基于大量的历史数据,调用AI预测算法进行训练,并在预测值基础上叠加阈值区间,进而得到未来一段时间内动态阈值。实时检测时,根据相应指标值是否在阈值区间来进行异常检测。
但在动态阈值异常检测实际运用过程中,样本数据的时间粒度越小(比如Ambari的服务性能指标可以到一两秒一次),在模型训练时需要的硬件资源就越大,处理的时间也就越长,几乎呈现几何级增长。受限于硬件资源投入和处理时效性等原因,绝大部分情况下不会基于秒级的细粒度数据进行训练建模。而针对秒级的细粒度数据会将其统一合并到分钟级或者更粗时间粒度上(如五分钟),再进行建模和预测。这种方法更侧重分析整体趋势,但会忽略秒级数据本身的差异,影响秒级数据的异常检测准确性。
发明内容
有鉴于此,为解决上述问题,本发明提供一种数据异常检测方法及装置。
技术方案如下:
一种数据异常检测方法,所述方法包括:
获取数据预测模型输出的各个预测时点的预测值,所述预测值中至少包括限值,所述数据预测模型是预先使用历史时序数据作为训练样本对通用数据预测模型训练得到的;
接收当前时点的实际值,并在所述各个预测时点中不包含所述当前时点的情况下,从所述各个预测时点中确定距离所述当前时点最近的第一预测时点和第二预测时点;
根据所述第一预测时点的限值和所述第二预测时点的限值预测所述当前时点的限值,并利用所述当前时点的限值对所述当前时点的实际值进行异常检测。
优选的,所述根据所述第一预测时点的限值和所述第二预测时点的限值预测所述当前时点的限值,包括:
根据所述第一预测时点的限值和所述第二预测时点的限值生成表征时间和限值关系的第一预测直线,所述第一预测时点的限值和所述第二预测时点的限值均位于所述第一预测直线上;
在所述第一预测直线上确定所述当前时点对应的限值。
优选的,所述方法还包括:
生成所述各个预测时点的时间戳,并以时间戳为标识将所述各个预测时点的预测值存储至指定的数据库中;
所述从所述各个预测时点中确定距离所述当前时点最近的第一预测时点和第二预测时点,包括:
生成所述当前时点的时间戳,并从所述数据库中确定距离所述当前时点的时间戳最近的第一时间戳和第二时间戳。
优选的,所述方法还包括:
在所述预测值中还包括拟合值的情况下,根据所述第一预测时点的拟合值和所述第二预测时点的拟合值预测所述当前时点的拟合值,并输出。
优选的,所述根据所述第一预测时点的拟合值和所述第二预测时点的拟合值预测所述当前时点的拟合值,包括:
根据所述第一预测时点的拟合值和所述第二预测时点的拟合值生成表征时间和拟合值关系的第二预测直线,所述第一预测时点的拟合值和所述第二预测时点的拟合值均位于所述第二预测直线上;
在所述第二预测直线上确定所述当前时点对应的拟合值。
优选的,所述方法还包括:
在所述当前时点的实际值处于正常状态的情况下,基于所述当前时点的实际值生成新训练样本对所述数据预测模型进行迭代训练。
一种数据异常检测装置,所述装置包括:
获取模块,用于获取数据预测模型输出的各个预测时点的预测值,所述预测值中至少包括限值,所述数据预测模型是预先使用历史时序数据作为训练样本对通用数据预测模型训练得到的;
确定模块,用于接收当前时点的实际值,并在所述各个预测时点中不包含所述当前时点的情况下,从所述各个预测时点中确定距离所述当前时点最近的第一预测时点和第二预测时点;
检测模块,用于根据所述第一预测时点的限值和所述第二预测时点的限值预测所述当前时点的限值,并利用所述当前时点的限值对所述当前时点的实际值进行异常检测。
优选的,用于根据所述第一预测时点的限值和所述第二预测时点的限值预测所述当前时点的限值的所述检测模块,具体用于:
根据所述第一预测时点的限值和所述第二预测时点的限值生成表征时间和限值关系的第一预测直线,所述第一预测时点的限值和所述第二预测时点的限值均位于所述第一预测直线上;在所述第一预测直线上确定所述当前时点对应的限值。
优选的,所述装置还包括:
存储模块,用于生成所述各个预测时点的时间戳,并以时间戳为标识将所述各个预测时点的预测值存储至指定的数据库中;
用于从所述各个预测时点中确定距离所述当前时点最近的第一预测时点和第二预测时点的所述确定模块,具体用于:
生成所述当前时点的时间戳,并从所述数据库中确定距离所述当前时点的时间戳最近的第一时间戳和第二时间戳。
优选的,所述检测模块,还用于:
在所述预测值中还包括拟合值的情况下,根据所述第一预测时点的拟合值和所述第二预测时点的拟合值预测所述当前时点的拟合值,并输出。
以上本发明提供的数据异常检测方法及装置,可以在接收到当前时点的实际值时,基于数据预测模型的输出确定距离当前时点最近的第一预测时点和第二预测时点,进一步根据第一预测时点的限值和第二预测时点的限值预测当前时点的限值,从而利用当前时点的限值对当前时点的实际值进行异常检测。基于本发明可以解决分钟级以下秒级微粒度的实时数据异常检测,提高异常检测的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的数据异常检测方法的方法流程图;
图2为本发明实施例提供的坐标系示例;
图3a和图3b为本发明实施例提供的另两个坐标系示例;
图4为本发明实施例提供的再一坐标系示例;
图5为本发明实施例提供的数据异常检测装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本发明属于大数据智能运维技术领域,适用于各种业务运维***,基于采集到的时序型数据进行动态阈值实时异常检测的场景,比如主机CPU、内存等使用率、营业厅停开机业务量、HAProxy响应时延等时序指标的异常检测。
本发明实施例提供一种数据异常检测方法,该方法的方法流程图如图1所示,包括如下步骤:
S10,获取数据预测模型输出的各个预测时点的预测值,预测值中至少包括限值,数据预测模型是预先使用历史时序数据作为训练样本对通用数据预测模型训练得到的。
本发明实施例中,数据预测模型是基于AI算法训练得到的,具体可以采用LSTM深度学习算法。数据预测模型可以预测出未来一定时段内的限值,该限值包括上限值和/或下限值。
为方便理解,以下对LSTM深度学习算法进行简单介绍:
LSTM算法全称为Long short-term memory,最早由Sepp Hochreiter和JürgenSchmidhuber于1997年提出,是一种特定形式的RNN(Recurrent neural network,循环神经网络)。
本发明利用LSTM深度学习算法做时序数据的模型训练和预测,输入历史样本数据,输出预测时点的预测值。
大体做法是首先会将分钟级别以下细粒度的所有记录通过方差平均差的方式汇总到分钟粒度传入算法中作为样本数据,算法通过历史同时间维度所有数值的方差平均差等方法计算出拟合值,拟合值和实际值之间残差上下浮动2Σ或者3Σ测算出上限值和下限值。
S20,接收当前时点的实际值,并在各个预测时点中不包含当前时点的情况下,从各个预测时点中确定距离当前时点最近的第一预测时点和第二预测时点。
本发明实施例中,在接收到当前时点的实际值时,首先判断数据预测模型输出的各个预测时点中是否包含当前时点;如果包含,也就是说当前时点属于一个预测时点,则将当前时点的限值作为当前时点的限值;如果不包含,也就是说当前时点是比预测时点的粒度更细的时点,比如当前时点是秒级、而预测时点是分钟级,则将距离当前时点最近的两个预测时点的限值作为预测当前时点的限值的基础,例如当前时点2019-11-11 15:06:27,则第一预测时点和第二预测时点可以分别是2019-11-11 15:06:00和2019-11-11 15:07:00。
S30,根据第一预测时点的限值和第二预测时点的限值预测当前时点的限值,并利用当前时点的限值对当前时点的实际值进行异常检测。
本发明实施例中,可以按照预设的计算规则,比如加权平均处理第一预测时点的限值和第二预测时点的限值,来获得当前时点的限值。进一步,判断当前时点的实际值是否超过当前时点的限值;如果超过,则表示当前时点的实际值异常;如果未超过,则表示当前时点的实际值正常。
具体实现过程中,提高限值预测的准确性,步骤S30中“根据第一预测时点的限值和第二预测时点的限值预测当前时点的限值”可以采用如下步骤:
根据第一预测时点的限值和第二预测时点的限值生成表征时间和限值关系的第一预测直线,第一预测时点的限值和第二预测时点的限值均位于第一预测直线上;在第一预测直线上确定当前时点对应的限值。
本发明实施例中,假设限值包括上限值和下限值,则可以生成第一预测时点的上限值、以及第二预测时点的上限值所在的表征时间和上限值关系的上限预测直线,生成第一预测时点的下限值、以及第二预测时点的下限值所在的表征时间和下限值关系的下限预测直线。
进一步,可以从上限预测直线上获得当前时点对应的上限值、以及从下限预测直线上获得当前时点对应的下限值。
在其他一些实施例中,为实现持久化保存,数据异常检测方法还包括如下步骤:
生成各个预测时点的时间戳,并以时间戳为标识将各个预测时点的预测值存储至指定的数据库中;
相应的,步骤S20中“从各个预测时点中确定距离当前时点最近的第一预测时点和第二预测时点”可以采用如下步骤:
生成当前时点的时间戳,并从数据库中确定距离当前时点的时间戳最近的第一时间戳和第二时间戳。
本发明实施例中,可以按照预设的时间戳转换规则,将预测时点转化为时间戳,并将时间戳作为Key存放到内存数据库Codis或者ES索引库中。进一步,从数据库中确定时间戳确定距离当前时点的时间戳最近的第一时间戳和第二时间戳,从而将在数据库中第一时间戳索引到的第一预测值作为第一预测时点的预测值、将在数据库中第二时间戳索引到的而第二预测值作为第二预测时点的预测值。
在其他一些实施例中,为提供更多的数据基础,数据异常检测方法还包括如下步骤:
在预测值中还包括拟合值的情况下,根据第一预测时点的拟合值和第二预测时点的拟合值预测当前时点的拟合值,并输出。
本发明实施例中,可以按照预设的计算规则,比如加权平均处理第一预测时点的拟合值和第二预测时点的拟合值,来获得当前时点的拟合值。其中,拟合值表征最正常的实际值。
具体实现过程中,提高拟合值预测的准确性,上述步骤中“根据第一预测时点的拟合值和第二预测时点的拟合值预测当前时点的拟合值”可以采用如下步骤:
根据第一预测时点的拟合值和第二预测时点的拟合值生成表征时间和拟合值关系的第二预测直线,第一预测时点的拟合值和第二预测时点的拟合值均位于第二预测直线上;在第二预测直线上确定当前时点对应的拟合值。
本发明实施例中,可以生成第一预测时点的拟合值、以及第二预测时点的拟合值所在的表征时间和上限值关系的拟合预测直线。进一步,可以从拟合预测直线上获得当前时点对应的拟合值。
在其他一些实施例中,为提高数据预测模型的准确性,数据异常检测方法还包括如下步骤:
在当前时点的实际值处于正常状态的情况下,基于当前时点的实际值生成新训练样本对数据预测模型进行迭代训练。
本发明实施例,为方便理解,继续以当前时点2019-11-11 15:06:27为例进行说明,则可以对位于2019-11-11 15:05:30~2019-11-11 15:06:30范围内的所有时点的实际值进行方差或者加权平均处理获得数值来作为2019-11-1115:06:00的实际值,将该2019-11-11 15:06:00的实际值作为新训练样本对数据预测模型进行迭代训练。
需要说明的是,在实际应用中,实际数据可以通过Apache Kafka等消息组件接收。预测当前时点的限值以及异常检测可以基于流式处理框架Apache SparkStreaming或Apache Flink完成。
为方便理解本申请,假设当前时点Ti的前一时间——第一预测时点T1的上限值、拟合值和下限值分别为a、f、c,当前时点的下一时间——(与第一预测时点T1相邻的后一时间)第二预测时点T2的上限值、拟合值和下限值分别为b、g、d,当前时点Ti的实际值为e。
参见图2所示的坐标系,横坐标X为时序时间,纵坐标Y为预测和实际数据。图中各对象坐标如下:
第一预测时点T1的上限坐标(T1,a)、拟合坐标(T1,f)、下限坐标(T1,c);
第二预测时点T2的上限坐标(T2,b)、拟合坐标(T2,g)、下限坐标(T2,d);
当前时点的实际坐标(Ti,e)。
则可以得到如下结果:
预测上限ab的斜率Kab=b-a/T2-T1;
预测下限cd的斜率Kcd=d-c/T2-T1;
预测拟合fg的斜率Kfg=g-f/T2-T1;
此时,Ti时刻的上限下限和拟合值计算如下:
上限值:Ti-top=Kab*Ti;
下限值:Ti-low=Kcd*Ti;
拟合值:Ti-fit=Kfg*Ti。
当Ti-top<e时,实际点e在直线ab上方,e点为超上限的异常点;
当e<Ti-low时,实际点e在直线cd下方,e点为超下限的异常点。
当Ti-low≦e≦Ti-top时,实际点e在直线ab和直线cd之间,e点为正常点。
本发明提供的数据异常检测方法,可以在接收到当前时点的实际值时,基于数据预测模型的输出确定距离当前时点最近的第一预测时点和第二预测时点,进一步根据第一预测时点的限值和第二预测时点的限值预测当前时点的限值,从而利用当前时点的限值对当前时点的实际值进行异常检测。基于本发明可以解决分钟级以下秒级微粒度的实时数据异常检测,提高异常检测的准确性。
为说明本发明的效果,以下以常用的动态阈值异常检测方法和本发明的数据异常检测方法进行对比:
参见图3a和图3b所示的坐标系。目前常用的动态阈值异常检测方法中,在实时预测时,针对秒级数据通常解决预测数据(粗粒度)和实际数据(细粒度)的时间不对齐问题,是通过将实际数据忽略掉时间序列的秒位或者四舍五入的方式对齐到预测数据的整分钟或者更粗的时间粗粒度上(图3a->图3b),比如将实际时序【20190726 141250】归并到【20190726 1413】上,这样就可以使用整分钟的预测值进行异常检测。
但是如果实际数据的采集间隔较短,比如5秒钟一次,也就是一分钟内会存在20个实际数据的情况,那么需要归并到预测时点的实际数据就会比较多,这些数据都会复用预测时点的预测值进行预测。参见图3a,时间轴X上有两个预测时点:预测时点1和预测时点2,在这两个预测时点之间实际过来了4个时点,实际时点1-4的预测需要对齐到预测时点1和预测时点2上才能进行预测,比如对齐原则就近策略,参见图3b。而当相邻预测值(比如预测时点1和预测时点2)的浮动较大超过50%(例:图3a中|上限2-上限1|/上限1>50%)时,用这种方法的预计准确度就会很差,也会出现大量误检漏检的情况。
基于图3a,应用常规方案检测结果见图3b:
实际时点1和实际时点2用的是预测时点1对应的上限值、下限值;
实际时点3和实际时点4用的是预测时点2对应的上限值、下限值;
预测结果:实际时点1和时点4正常,实际时点2和3为超上限异常。
参见图4所示的坐标系,采用本发明的数据异常检测方法,无需将细粒度实时数据对齐到粗粒度的预测数据上,而是通过实时时间序列找到临近的前后预测点。通过时间与指标值的坐标系,判断实际数据是否超出前后预测点的上下限预测范围,具体是以斜率向量算子的方法(表征时间和限值关系的第一预测直线、表征时间和拟合值关系的第二预测直线)计算出是否超上限和超下限,进而达到实时异常检测的目的。这样无论前后整分的预测浮动有多大,都不会对预测的精准度有影响,也规避了大量误检漏检的情况。
基于图1,本发明检测结果见图4:
实际时点1、2、3、4会计算出自己的上限值、下限值和拟合值;
预测结果:实际时点1和2正常,实际时点3为超上限异常、4为超下限异常;
结论:对比常规方案和本发明方案的检测结果可以发现,本发明能更加准确的识别出秒级数据的异常状态。
需要说明的是,上述实际时点表示的是实际的时间,当前时点就属于实际时点。
基于上述实施例提供的数据异常检测方法,本发明实施例还提供一种执行上述数据异常检测方法的装置,该装置的结构示意图如图5所示,包括:
获取模块10,用于获取数据预测模型输出的各个预测时点的预测值,预测值中至少包括限值,数据预测模型是预先使用历史时序数据作为训练样本对通用数据预测模型训练得到的;
确定模块20,用于接收当前时点的实际值,并在各个预测时点中不包含当前时点的情况下,从各个预测时点中确定距离当前时点最近的第一预测时点和第二预测时点;
检测模块30,用于根据第一预测时点的限值和第二预测时点的限值预测当前时点的限值,并利用当前时点的限值对当前时点的实际值进行异常检测。
可选的,用于根据第一预测时点的限值和第二预测时点的限值预测当前时点的限值的检测模块30,具体用于:
根据第一预测时点的限值和第二预测时点的限值生成表征时间和限值关系的第一预测直线,第一预测时点的限值和第二预测时点的限值均位于第一预测直线上;在第一预测直线上确定当前时点对应的限值。
可选的,上述装置还包括:
存储模块,用于生成各个预测时点的时间戳,并以时间戳为标识将各个预测时点的预测值存储至指定的数据库中;
用于从各个预测时点中确定距离当前时点最近的第一预测时点和第二预测时点的确定模块20,具体用于:
生成当前时点的时间戳,并从数据库中确定距离当前时点的时间戳最近的第一时间戳和第二时间戳。
可选的,检测模块30,还用于:
在预测值中还包括拟合值的情况下,根据第一预测时点的拟合值和第二预测时点的拟合值预测当前时点的拟合值,并输出。
可选的,用于根据第一预测时点的拟合值和第二预测时点的拟合值预测当前时点的拟合值的检测模块30,具体用于:
根据第一预测时点的拟合值和第二预测时点的拟合值生成表征时间和拟合值关系的第二预测直线,第一预测时点的拟合值和第二预测时点的拟合值均位于第二预测直线上;在第二预测直线上确定当前时点对应的拟合值。
可选的,获取模块10,还用于:
在当前时点的实际值处于正常状态的情况下,基于当前时点的实际值生成新训练样本对数据预测模型进行迭代训练。
本发明提供的数据异常检测装置,可以解决分钟级以下秒级微粒度的实时数据异常检测,提高异常检测的准确性。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***或***实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的***及***实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (8)
1.一种数据异常检测方法,其特征在于,应用于业务运维***,基于采集到的时序型数据进行动态阈值实时异常检测,所述数据为主机CPU、内存等使用率、营业厅停开机业务量、HAProxy响应时延中的任意一种;
所述方法包括:
获取数据预测模型输出的各个预测时点的预测值,所述预测值中至少包括限值,所述数据预测模型是预先使用历史时序数据作为训练样本对通用数据预测模型训练得到的;
接收当前时点的实际值,并在所述各个预测时点中不包含所述当前时点的情况下,从所述各个预测时点中确定距离所述当前时点最近的第一预测时点和第二预测时点;
根据所述第一预测时点的限值和所述第二预测时点的限值预测所述当前时点的限值,并利用所述当前时点的限值对所述当前时点的实际值进行异常检测;
所述根据所述第一预测时点的限值和所述第二预测时点的限值预测所述当前时点的限值,包括:根据所述第一预测时点的上限值和所述第二预测时点的上限值生成表征时间和上限值关系的上限预测直线,根据所述第一预测时点的下限值和所述第二预测时点的下限值生成表征时间和下限值关系的下限预测直线,所述第一预测时点的上限值和所述第二预测时点的上限值均位于所述上限预测直线上,所述第一预测时点的下限值和所述第二预测时点的下限值均位于所述下限预测直线上;
在所述上限预测直线上确定所述当前时点对应的上限值,在所述下限预测直线上确定所述当前时点对应的下限值。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
生成所述各个预测时点的时间戳,并以时间戳为标识将所述各个预测时点的预测值存储至指定的数据库中;
所述从所述各个预测时点中确定距离所述当前时点最近的第一预测时点和第二预测时点,包括:
生成所述当前时点的时间戳,并从所述数据库中确定距离所述当前时点的时间戳最近的第一时间戳和第二时间戳。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述预测值中还包括拟合值的情况下,根据所述第一预测时点的拟合值和所述第二预测时点的拟合值预测所述当前时点的拟合值,并输出。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一预测时点的拟合值和所述第二预测时点的拟合值预测所述当前时点的拟合值,包括:
根据所述第一预测时点的拟合值和所述第二预测时点的拟合值生成表征时间和拟合值关系的第二预测直线,所述第一预测时点的拟合值和所述第二预测时点的拟合值均位于所述第二预测直线上;
在所述第二预测直线上确定所述当前时点对应的拟合值。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述当前时点的实际值处于正常状态的情况下,基于所述当前时点的实际值生成新训练样本对所述数据预测模型进行迭代训练。
6.一种数据异常检测装置,其特征在于,应用于业务运维***,基于采集到的时序型数据进行动态阈值实时异常检测,所述数据为主机CPU、内存等使用率、营业厅停开机业务量、HAProxy响应时延中的任意一种;
所述装置包括:
获取模块,用于获取数据预测模型输出的各个预测时点的预测值,所述预测值中至少包括限值,所述数据预测模型是预先使用历史时序数据作为训练样本对通用数据预测模型训练得到的;
确定模块,用于接收当前时点的实际值,并在所述各个预测时点中不包含所述当前时点的情况下,从所述各个预测时点中确定距离所述当前时点最近的第一预测时点和第二预测时点;
检测模块,用于根据所述第一预测时点的限值和所述第二预测时点的限值预测所述当前时点的限值,并利用所述当前时点的限值对所述当前时点的实际值进行异常检测;
所述检测模块,具体用于根据所述第一预测时点的上限值和所述第二预测时点的上限值生成表征时间和上限值关系的上限预测直线,根据所述第一预测时点的下限值和所述第二预测时点的下限值生成表征时间和下限值关系的下限预测直线,所述第一预测时点的上限值和所述第二预测时点的上限值均位于所述上限预测直线上,所述第一预测时点的下限值和所述第二预测时点的下限值均位于所述下限预测直线上;
在所述上限预测直线上确定所述当前时点对应的上限值,在所述下限预测直线上确定所述当前时点对应的下限值。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
存储模块,用于生成所述各个预测时点的时间戳,并以时间戳为标识将所述各个预测时点的预测值存储至指定的数据库中;
用于从所述各个预测时点中确定距离所述当前时点最近的第一预测时点和第二预测时点的所述确定模块,具体用于:
生成所述当前时点的时间戳,并从所述数据库中确定距离所述当前时点的时间戳最近的第一时间戳和第二时间戳。
8.根据权利要求6所述的装置,其特征在于,所述检测模块,还用于:
在所述预测值中还包括拟合值的情况下,根据所述第一预测时点的拟合值和所述第二预测时点的拟合值预测所述当前时点的拟合值,并输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911360974.XA CN111125195B (zh) | 2019-12-25 | 2019-12-25 | 一种数据异常检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911360974.XA CN111125195B (zh) | 2019-12-25 | 2019-12-25 | 一种数据异常检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111125195A CN111125195A (zh) | 2020-05-08 |
CN111125195B true CN111125195B (zh) | 2023-09-08 |
Family
ID=70502527
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911360974.XA Active CN111125195B (zh) | 2019-12-25 | 2019-12-25 | 一种数据异常检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111125195B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113805564A (zh) * | 2021-08-31 | 2021-12-17 | 国能榆林能源有限责任公司 | 一种基于cep的设备故障预警以及诊断*** |
CN113918372A (zh) * | 2021-10-27 | 2022-01-11 | 北京科杰科技有限公司 | 一种基于flink实现的数据开发平台的预警*** |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102930178A (zh) * | 2012-11-26 | 2013-02-13 | 慈溪市供电局 | 一种负荷数据异常检测方法 |
CN107086944A (zh) * | 2017-06-22 | 2017-08-22 | 北京奇艺世纪科技有限公司 | 一种异常检测方法和装置 |
CN108089962A (zh) * | 2017-11-13 | 2018-05-29 | 北京奇艺世纪科技有限公司 | 一种异常检测方法、装置及电子设备 |
CN108197845A (zh) * | 2018-02-28 | 2018-06-22 | 四川新网银行股份有限公司 | 一种基于深度学习模型lstm的交易指标异常的监测方法 |
CN108665113A (zh) * | 2018-05-18 | 2018-10-16 | 阿里巴巴集团控股有限公司 | 指标预测方法及装置 |
CN108776694A (zh) * | 2018-06-05 | 2018-11-09 | 哈尔滨工业大学 | 一种时间序列异常点检测方法及装置 |
CN109002904A (zh) * | 2018-06-21 | 2018-12-14 | 中南大学 | 一种基于Prophet-ARMA的医院门诊就诊量预测方法 |
EP3499433A1 (en) * | 2017-12-14 | 2019-06-19 | Business Objects Software Limited | Multi-step time series forecasting with residual learning |
CN110032670A (zh) * | 2019-04-17 | 2019-07-19 | 腾讯科技(深圳)有限公司 | 时序数据的异常检测方法、装置、设备及存储介质 |
CN110245047A (zh) * | 2019-05-29 | 2019-09-17 | 阿里巴巴集团控股有限公司 | 时间序列异常检测方法、装置及设备 |
CN110377447A (zh) * | 2019-07-17 | 2019-10-25 | 腾讯科技(深圳)有限公司 | 一种异常数据检测方法、装置及服务器 |
-
2019
- 2019-12-25 CN CN201911360974.XA patent/CN111125195B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102930178A (zh) * | 2012-11-26 | 2013-02-13 | 慈溪市供电局 | 一种负荷数据异常检测方法 |
CN107086944A (zh) * | 2017-06-22 | 2017-08-22 | 北京奇艺世纪科技有限公司 | 一种异常检测方法和装置 |
CN108089962A (zh) * | 2017-11-13 | 2018-05-29 | 北京奇艺世纪科技有限公司 | 一种异常检测方法、装置及电子设备 |
EP3499433A1 (en) * | 2017-12-14 | 2019-06-19 | Business Objects Software Limited | Multi-step time series forecasting with residual learning |
CN108197845A (zh) * | 2018-02-28 | 2018-06-22 | 四川新网银行股份有限公司 | 一种基于深度学习模型lstm的交易指标异常的监测方法 |
CN108665113A (zh) * | 2018-05-18 | 2018-10-16 | 阿里巴巴集团控股有限公司 | 指标预测方法及装置 |
CN108776694A (zh) * | 2018-06-05 | 2018-11-09 | 哈尔滨工业大学 | 一种时间序列异常点检测方法及装置 |
CN109002904A (zh) * | 2018-06-21 | 2018-12-14 | 中南大学 | 一种基于Prophet-ARMA的医院门诊就诊量预测方法 |
CN110032670A (zh) * | 2019-04-17 | 2019-07-19 | 腾讯科技(深圳)有限公司 | 时序数据的异常检测方法、装置、设备及存储介质 |
CN110245047A (zh) * | 2019-05-29 | 2019-09-17 | 阿里巴巴集团控股有限公司 | 时间序列异常检测方法、装置及设备 |
CN110377447A (zh) * | 2019-07-17 | 2019-10-25 | 腾讯科技(深圳)有限公司 | 一种异常数据检测方法、装置及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN111125195A (zh) | 2020-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109524139B (zh) | 一种基于设备工况变化的实时设备性能监测方法 | |
CN111506478A (zh) | 基于人工智能实现告警管理控制的方法 | |
CN109034400B (zh) | 一种变电站异常量测数据预测平台*** | |
US20140163916A1 (en) | Techniques for Iterative Reduction of Uncertainty in Water Distribution Networks | |
CN109470946B (zh) | 一种发电设备故障检测方法及*** | |
KR101463425B1 (ko) | 시계열 예측 모델을 이용한 이상관측자료 탐지 방법 및 지하수위의 이상관측자료 탐지 방법 | |
CN111125195B (zh) | 一种数据异常检测方法及装置 | |
EP2978095A1 (en) | Power system operation | |
CN109063885A (zh) | 一种变电站异常量测数据预测方法 | |
CN108306997B (zh) | 域名解析监控方法及装置 | |
CN112861350A (zh) | 一种水冷式汽轮发电机定子绕组温度过热缺陷预警方法 | |
KR20160062259A (ko) | 차량 이상 상태를 관리하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록매체 | |
CN116566845B (zh) | 一种网络预警方法及计算机存储介质 | |
CN112882898A (zh) | 基于大数据日志分析的异常检测方法、***、设备及介质 | |
KR102110319B1 (ko) | 학습 데이터 생성 시스템 | |
CN116679653A (zh) | 一种用于工业设备数据的智能采集*** | |
CN108429771B (zh) | 基于突变理论的软件定义网络安全状态评估方法及装置 | |
CN111327630A (zh) | 基于全对称多胞形理论的攻击检测与修正方法 | |
CN110807014A (zh) | 一种基于交叉验证的台区数据异常甄别方法和装置 | |
CN101923605B (zh) | 铁路防灾风预警方法 | |
CN112885049B (zh) | 基于运行数据的智能电缆预警***、方法及装置 | |
CN110120893B (zh) | 一种定位网络***安全问题的方法及装置 | |
CN114331688A (zh) | 一种银行柜面***业务批量运行状态检测方法及装置 | |
CN113255593A (zh) | 面向时空解析模型的传感器信息异常检测方法 | |
CN111798237A (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 |