CN109978379A - 时序数据异常检测方法、装置、计算机设备和存储介质 - Google Patents

时序数据异常检测方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN109978379A
CN109978379A CN201910243107.1A CN201910243107A CN109978379A CN 109978379 A CN109978379 A CN 109978379A CN 201910243107 A CN201910243107 A CN 201910243107A CN 109978379 A CN109978379 A CN 109978379A
Authority
CN
China
Prior art keywords
data
predetermined time
time period
current time
achievement
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
CN201910243107.1A
Other languages
English (en)
Other versions
CN109978379B (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 Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom 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 Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201910243107.1A priority Critical patent/CN109978379B/zh
Publication of CN109978379A publication Critical patent/CN109978379A/zh
Application granted granted Critical
Publication of CN109978379B publication Critical patent/CN109978379B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06393Score-carding, benchmarking or key performance indicator [KPI] analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Educational Administration (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Databases & Information Systems (AREA)
  • Strategic Management (AREA)
  • Development Economics (AREA)
  • Operations Research (AREA)
  • Economics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Quality & Reliability (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Game Theory and Decision Science (AREA)
  • General Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

本申请提出一种时序数据异常检测方法、装置、计算机设备和存储介质,该方法利用预先训练的变分自编码器对从待检测的指标数据中采集的距离当前时刻第一预设时间长度内的指标数据进行解码、编码处理,确定距离当前时刻第一预设时间长度内的指标数据对应的均值向量,根据距离当前时刻第一预设时间长度内的指标数据对应的均值向量及距离当前时刻第一预设时间长度内的指标数据,确定距离当前时刻第一预设时间长度内的指标数据对应的异常得分,根据异常得分与预设阈值的关系,确定距离当前时刻第一预设时间长度内的指标数据是否异常。由此利用预先训练的变分自编码器,对待检测的时序数据进行异常检测,无需考虑数据的周期性和光滑性,适用范围广。

Description

时序数据异常检测方法、装置、计算机设备和存储介质
技术领域
本申请涉及数据处理技术领域,尤其涉及一种时序数据异常检测方法、装置、计算机设备和存储介质。
背景技术
时序数据的异常检测的技术十分重要,它被应用在各种各样的领域。例如,在运维领域,对指标数据的异常检测可以用来判断相关的服务的运行状况。
目前,针对周期性很强的指标,一般采用基于同比的算法,即利用指标数据的周期性(天,周,年等)对监控指标进行异常检测。针对周期性不强但比较光滑(无复杂非线性关系)的曲线,一般采用基于线性回归的技术进行拟合并预测指标数据,从而进行异常检测。但是,对周期性不强、且不光滑(频繁有大幅度抖动、存在复杂非线性)的时序数据进行监测时,基于同比的算法因为监控指标没有周期性而失效,由于监控指标有复杂非线性的频繁波动而使得基于线性回归的算法的拟合和预测效果比较差,因而基于线性回归的算法也不适用这种场景。
发明内容
本申请提出一种时序数据异常检测方法,用于解决相关技术中时序数据异常检测方法适用性差的问题。
本申请一方面实施例提出了一种时序数据异常检测方法,包括:
从待检测的指标数据中采集距离当前时刻第一预设时间长度内的指标数据;
利用预先训练的变分自编码器对所述距离当前时刻第一预设时间长度内的指标数据进行解码、编码处理,确定所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量;
根据所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量及所述距离当前时刻第一预设时间长度内的指标数据,确定所述距离当前时刻第一预设时间长度内的指标数据对应的异常得分;
根据所述异常得分与预设阈值的关系,确定所述距离当前时刻第一预设时间长度内的指标数据是否异常。
本申请实施例的时序数据异常检测方法,通过利用预先训练的变分自编码器对距离当前时刻第一预设时间长度内的指标数据进行解密、编码处理,得到距离当前时刻第一预设时间长度内的指标数据对应的均值向量,根据距离当前时刻第一预设时间长度内的指标数据对应的均值向量,确定距离当前时刻第一预设时间长度内的指标数据对应的异常得分,根据异常得分与预设阈值的关系,确定距离当前时刻第一预设时间长度内的指标数据是否异常,由此利用预先训练的变分自编码器,对待检测的时序数据进行异常检测,无需考虑数据的周期性和光滑性,适用范围广。
本申请另一方面实施例提出了一种时序数据异常检测装置,包括:
采集模块,用于从待检测的指标数据中采集距离当前时刻第一预设时间长度内的指标数据;
第一确定模块,用于利用预先训练的变分自编码器对所述距离当前时刻第一预设时间长度内的指标数据进行解码、编码处理,确定所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量;
第二确定模块,用于根据所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量及所述距离当前时刻第一预设时间长度内的指标数据,确定所述距离当前时刻第一预设时间长度内的指标数据对应的异常得分;
第三确定模块,用于根据所述异常得分与预设阈值的关系,确定所述距离当前时刻第一预设时间长度内的指标数据是否异常。
本申请实施例的时序数据异常检测装置,通过利用预先训练的变分自编码器对距离当前时刻第一预设时间长度内的指标数据进行解密、编码处理,得到距离当前时刻第一预设时间长度内的指标数据对应的均值向量,根据距离当前时刻第一预设时间长度内的指标数据对应的均值向量,确定距离当前时刻第一预设时间长度内的指标数据对应的异常得分,根据异常得分与预设阈值的关系,确定距离当前时刻第一预设时间长度内的指标数据是否异常,由此利用预先训练的变分自编码器,对待检测的时序数据进行异常检测,无需考虑数据的周期性和光滑性,适用范围广。
本申请另一方面实施例提出了一种计算机设备,包括处理器和存储器;
其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如上述一方面实施例所述的时序数据异常检测方法。
本申请另一方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述一方面实施例所述的时序数据异常检测方法。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例提供的一种时序数据异常检测方法的流程示意图;
图2为本申请实施例提供的一种预先训练的变分自编码器的结构示意图;
图3为本申请实施例提供的一种变分自编码器的训练方法的流程示意图;
图4为本申请实施例提供的一种对历史数据进行预处理生成训练样本数据的方法流程示意图;
图5为本申请实施例提供的一种时序数据异常检测装置的结构示意图;
图6示出了适于用来实现本申请实施方式的示例性计算机设备的框图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的时序数据异常检测方法、装置、计算机设备和存储介质。
相关技术中,基于同比的方法只能对周期较强的时序数据进行异常检测,而基于线性回归的方法,适用于周期性不强但比较光滑的时序数据。可见,这两种时序数据异常检测方法适用场景局限,适用性差。
本申请实施例,针对相关技术中的时序数据异常检测方法,适用性差的问题,提出一种时序数据异常检测方法。
图1为本申请实施例提供的一种时序数据异常检测方法的流程示意图。
本申请实施例的时序数据异常检测方法,可由本申请实施例提供的时序数据异常检测装置执行,该装置可配置于计算机设备中,以实现利用预先训练的变分自编码器,检测时序数据是否异常。
如图1所示,该时序数据异常检测方法包括:
步骤101,从待检测的指标数据中采集距离当前时刻第一预设时间长度内的指标数据。
时序数据指的是时间序列数据,时间序列数据是按时间顺序记录的具有相同指标的数据列。
本申请实施例中,待检测的指标数据为时序数据,在对待检测的指标数据进行检测时,可根据需要获取距离当前时间预设时间长度的内的指标数据进行异常检测。具体地,可从待检测的指标数据中采集距离当前时刻第一预设时间长度内的指标数据。例如,获取距离当前时刻10分钟内的指标数据。
步骤102,利用预先训练的变分自编码器对距离当前时刻第一预设时间长度内的指标数据进行解码、编码处理,确定距离当前时刻第一预设时间长度内的指标数据对应的均值向量。
本实施例中,预先训练的变分自编码器用于对输入的时序数据进行预测,输出对应的预测值。例如,将10个时序数据输入至预先训练的变分自编码器,那么变分自编码器可输出10个预测值。
具体地,可将采集的距离当前时刻第一预设时间长度内的指标数据输入至预先训练的变分自编码器,利用预先训练的变分自编码器对其进行编码和解码处理,得到距离当前时刻第一预设时间长度内的指标数据对应的均值向量。
可以理解的是,均值向量中的元素值便是距离当前时刻第一预设时间长度内的指标数据的预测值。其中,均值向量的维数与输入的距离当前时刻第一预设时间长度内的指标数据的维数相同。也就是说,如果输入了10个时序数据,那么对应的均值向量是10维的,且均值向量中的每个均值可看作是输入的对应的指标数据的预测值。例如,输入X={x1,x2,x3,…,xn},其中,x1,x2,x3,…,xn为指标数据,输出的均值向量μ={μ123,…,μn},其中,μ1可看作是x1的预测值,μ2可看作是x2的预测值。
其中,预先训练的变分自编码器可如图2所示,图2为本申请实施例提供的一种预先训练的变分自编码器的结构示意图。图2中,预先训练的变分自编码器包含变分网络和生成网络pθ(x|z)。其中,假设z的先验分布pθ(z)是k维标准高斯分布N(0,I),其中,I表示单位矩阵。和fθ(z)是多层全连接网络,分别用于提取x和z的特征,生成均值向量μz和标准差向量σz,和均值向量μx和标准差向量σx,z和x的后验估计为pθ(x|z)=N(μxx 2I)。
由图2可以看出w维的滑动窗口x输入隐藏层得到z的均值向量μz和标准差向量σz,根据z的值向量μz和标准差向量σz可以得到k维隐变量z,k维隐变量z输入至隐藏层fθ(z),得到均值向量μx和标准差向量σx,基于均值向量μx和标准差向量σx,可以得到w维重构滑动窗口x,即w维重构滑动窗口x,也就是w维滑动窗口x对应的均值向量。
步骤103,根据距离当前时刻第一预设时间长度内的指标数据对应的均值向量及距离当前时刻第一预设时间长度内的指标数据,确定距离当前时刻第一预设时间长度内的指标数据对应的异常得分。
本实施例中,可根据均值向量和距离当前时刻第一预设时间长度内的指标数据,计算距离当前时刻第一预设时间长度内的指标数据对应的异常得分。
作为一种可能的实现方式,可将均值向量中的每个元素值与对应的指标数据之间的距离的平均值作为异常得分。例如,D(μk,xk)2,其中,D代表距离函数,计算距离当前时刻第一预设时间长度内每个指标数据与均值向量中对应的元素值之间的距离,然后计算所有指标数据对应的距离的平均值,将平均值作为距离当前时刻第一预设时间长度内的指标数据对应的异常得分。
作为另一种可能的实现方式,根据距离当前时刻第一预设时间长度内的指标数据对应的均值向量,计算距离当前时刻第一预设时间长度内每个指标数据的偏差值,具体地,将距离当前时刻第一预设时间长度内每个指标数据与均值向量中对应的元素值做差值,得到偏差值。
然后,根据距离当前时刻第一预设时间长度内每个指标数据的偏差值及距离当前时刻第一预设时间长度内的指标数据对应的均值向量,确定距离当前时刻第一预设时间长度内的指标数据对应的异常得分。
举例来说,若距离当前时刻第一预设时间长度内的指标数据为X={x1,x2,x3,…,xn},X={x1,x2,x3,…,xn}对应的均值向量为μ={μ123,…,μn},上述计算异常得分的过程具体可如下公式(1)所示:
其中,z为异常得分,xii为指标数据xi的偏差值。可见,异常得分等于距离当前时刻第一预设时间长度内的所有指标数据的偏差值之和,与均值向量中所有元素之和的平方根的比值。
步骤104,根据异常得分与预设阈值的关系,确定距离当前时刻第一预设时间长度内的指标数据是否异常。
本实施例中,将异常得分与预设阈值进行比较,根据比较结果,确定距离当前时刻第一预设时间长度内的指标数据是否异常。其中,预设阈值可根据实际需要设定。
在实际应用,若待检测的指标数据关注的是下异常,当异常得分小于预设阈值时,可以认为距离当前时刻第一预设时间长度内的指标数据存在异常。若待检测的指标数据是上异常,当异常得分大于预设阈值时,认为距离当前时刻第一预设时间长度内的指标数据存在异常。若预设阈值是一个区间,那么当异常得分处于区间范围内时,认为距离当前时刻第一预设时间长度内的指标数据存在异常。
在实际应用中,采集的时序数据可能会存在量纲不一致,或者采集失败的情况。在本申请的一个实施例中,在利用预先训练的变分自编码器对距离当前时刻第一预设时间长度内的指标数据进行处理之前,可对距离当前时刻第一预设时间长度内的指标数据进行标准化和缺失点填充处理。
若距离当前时刻第一预设时间长度内的指标数据为X={x1,x2,x3,…,xn},可利用如下公式(2)对X={x1,x2,x3,…,xn}进行标准化:
其中,为X的均值,σ(X)为X的标准差,归一化得到的指标数据Y={y1,y2,y3,…,yn}是没有量纲的。
本实施例中,缺失点为采集数据失败的数据点,可称为数据缺失点。例如,每1分钟采集一次数据,若在第5分钟没有采集到数据,那么第5分钟处的数据点为数据缺失点。在确定距离当前时刻第一预设时间长度内的指标数据中的数据缺失点后,可利用预设数值,如数字0,对数据缺失点进行填充,当然也可以利用其它预设数值进行填充。也就是说,可利用预设数值,对距离当前时刻第一预设时间长度内的指标数据中的数据缺失点进行填充。
本申请实施例中,在利用预先训练的变分自编码器对距离当前时刻第一预设时间长度内的指标数据进行编码、解码处理之前,对距离当前时刻第一预设时间长度内的指标数据进行标准化处理可以消除量纲,对数据缺失点进行缺失点填充处理可以提高异常检测的准确性。
在实际应用中,在确定距离当前时刻第一预设时间长度内的指标数据对应的均值向量之后,可确定距离当前时刻的时间长度小于第一预设时间长度内的指标数据对应的异常得分,以检测该时间长度内的指标数据是否异常。
具体地,根据距离当前时刻第一预设时间长度内的指标数据对应的均值向量,计算距离当前时刻第二预设时间长度内每个指标数据的偏差值,其中,第二预设时间长度小于第一预设时间长度,具体而言,根据距离当前时刻第二预设时间长度内每个指标数据及其对应的均值向量中的元素值,计算每个指标数据的偏差值。
然后,根据距离当前时刻第一预设时间长度内的指标数据对应的均值向量和距离当前时刻第二预设时间长度内的指标数据,确定距离当前时刻第二预设时间长度内的指标数据对应的均值向量,根据距离当前时刻第二预设时间长度内每个指标数据的偏差值及距离当前时刻第二预设时间长度内的指标数据对应的均值向量,确定距离当前时刻第二预设时间长度内的指标数据对应的异常得分。
或者,在确定距离当前时刻第二预设时间长度内的指标数据对应的异常得分时,也可先根据距离当前时刻第一预设时间长度内的指标数据对应的均值向量,确定距离当前时刻第二预设时间长度内指标数据对应的均值向量。然后,利用距离当前时刻第二预设时间长度内指标数据及对应的均值向量,确定距离当前时刻第二预设时间长度内指标数据的异常得分,具体地,与确定距离当前时刻第一预设时间长度内的指标数据对应的异常得分的方法相同。
在确定出距离当前时刻第二预设时间长度内的指标数据对应的异常得分后,可根据距离当前时刻第二预设时间长度内的指标数据对应的异常得分,与预设阈值的大小关系,确定距离当前时刻第二预设时间长度内的指标数据是否异常。
例如,第一预设时间长度为10分钟,第二预设时间长度为2分钟,那么确定出距离当前时刻2分钟内的指标数据对应的异常得分后,利用该异常得分与预设阈值的大小关系,确定距离当前时刻2分钟内的指标数据是否异常。
举例来说,若距离当前时刻第一预设时间长度内的指标数据为X={x1,x2,x3,…,xn},第二预设时间长度内的指标数据为XT={xi,…,xn},其中,T=n-i+1,i>1。那么,根据上述公式(1),可以得到第二预设时间长度内的指标数据对应的异常得分为
根据公式可见,距离当前时刻第二预设时间长内的指标数据对应的异常得分等于,距离当前时刻第二预设时间长度内的所有指标数据的偏差值之和,与距离当前时刻第二预设时间长度内的指标数据对应的均值向量中所有元素之和的平方根的比值。
本申请实施例中,在确定距离当前时刻第一预设时间长度内的指标数据对应的均值向量之后,可确定出距离当前时刻的时间长度小于第一预设时间长度内的指标数据对应的异常得分,从而根据该异常得分与预设阈值的大小关系,可以确定出距离当前时刻的时间长度小于第一预设时间长度内的指标数据是否异常。
在本申请的一个实施例中,在利用预先训练的变分自编码器对距离当前时刻第一预设时间长度内的指标数据进行解码、编码处理之前,可先通过训练得到变分自编码器。图3为本申请实施例提供的一种变分自编码器的训练方法的流程示意图。
如图3所示,该训练方法包括:
步骤201,获取待检测的指标的历史数据。
本实施例中,获取待检测的指标的历史数据,如获取过去6个月内的待检测的指标的历史数据。其中,待检测的指标可以是工资、通信流量等。
步骤202,对历史数据进行预处理,生成训练样本数据。
其中,预处理可包括过滤异常的级别数据、插入异常数据、标准化、缺失点填充、滑动窗口分割等等。
在进行滑动窗口分割处理时,利用滑动窗口方法可从X={x1,x2,x3,…,xn}中可分割得到若干子序列。滑动窗口方法涉及到滑动窗口大小w和滑动距离d两个参数,若X有n个数据点,那么经过滑动窗口分割后,可得到的样本数s,如下公式(4)所示:
其中,ceil表示下取整函数。
本实施例中,训练样本数据集中包含多个训练样本数据,每个训练样本数据中包含多个待检测的指标的数据。
步骤203,利用训练样本数据对初始变分自编码器进行训练,生成训练后的变分自编码器。
本实施例中,利用得到的若干训练样本数据对初始变分自编码器进行训练,生成训练后的变分自编码器。
为了使变分自编码器只学习指标的正常模式,增强检测异常的能力,同时使制造的异常数据和缺失点用预设阈值填充的预处理生效,损失函数可采用如公式(5)所示:
其中,xw表示w维训练样本数据x中的一个指标数据;当xw是异常点或缺失点时,aw=0;否则,aw=1。当训练样本数据x中的异常点或缺失点较多时,pθ(z)会被稀释,这样变分自编码器受到异常点,缺失点的干扰较少,即使训练样本数据x中存在异常点,最后重构生成的数据中会恢复成正常点。
由于无法直接优化公式(5)所示的损失函数,本实施例中,采用蒙特卡洛的方法,通过优化可近似优化L(x),其中,z<l>,l=1,2,…,L是从中的L个采样。
相关技术中,对于周期性不强、且不光滑的时序数据进行监测时,通常是首先通过对人工标注的数据进行学习,来学习待检测数据的行为,进而再对实际运行数据进行监测。但是,这种基于有监督学习的异常检测方式,利用领域专家对数据进行标注不仅成本极高,且标注速度有限。
本申请实施例中,通过获取待检测的指标的历史数据,对历史数据进行预处理,生成训练样本数据,利用训练样本数据对初始变分自编码器进行训练,生成训练后的变分自编码器,无需对训练样本数据进行标注,不仅可以节省标注时间,而且能够节省大量的人工成本。
在本申请的一个实施例中,上述对历史数据进行预处理,生成训练样本数据时,可通过对历史数据进行分割、聚类,获取训练样本数据。
具体而言,可根据待检测的指标的时序特性,将历史数据进行分割,如按天分割或按小时分割等,并对分割得到多个数据组进行聚类处理,得到多个数据簇,然后根据多个数据簇中包含的数据组数量,从多个数据簇中获取训练正样本数据。
举例来说,若获取过去180天内待检测的指标的历史数据,可根据待检测指标的时序性,将这些历史数据按天分割,得到180天的指标数据。然后,对这180天的指标数据进行聚类,假设得到3个数据簇,分别为包含100天指标数据的数据簇、包含60天指标数据的数据簇、包含20天指标数据的数据簇,这时可将包含20天指标数据的数据簇过滤掉,剩余的数据簇中包含的每天的指标数据为训练正样本数据。由此,可以过滤掉异常的天级别数据。
可以理解的是,通过该分割、聚类方法,也可根据需要过滤掉异常的小时级别数据、异常的月级别数据等等。
本申请实施例中,通过根据待检测的指标的时序特性,对历史数据进行分割、聚类预处理,从而可以过滤掉一些异常的某级别的数据,以提高训练得到的变分自编码器的准确性。
为了增强后续训练好的变分自编码器的鲁棒性和异常检测能力,在本申请的一个实施例中,在从多个数据簇中获取训练正样本数据之后,还可根据训练正样本数据中的数据量,在训练正样本数据中随机插入异常数据。其中,异常数据的插入位置、插入的异常数据的长度、插入的异常数据的类型等都可以是随机的。
但需要说明的是,在插入异常数据时,需要对异常数据标记,并且保证训练正样本数据中随机插入的异常数据的数量占训练正样本数据的数据量的比例小于预设的比例阈值。例如,训练正样本数据中随机插入的异常数据的数量占训练正样本数据数量的比例小于十分之一。
在实际应用中,由于数据采集时,有可能采集失败,因此在预测时,有可能会出现缺失点的情况,如果训练时不考虑缺失点的情况,可能会导致训练得到的变分自编码器无法对有数据缺失点的实际数据进行准确预测。
在本申请的一个实施例中,在对历史数据进行预处理时,还可以缺失点注入概率将历史数据中某些数据点的指标数据置换为预设的数值,以增强变分自编码器的鲁棒性和可靠性。下面结合图4进行说明,图4为本申请实施例提供的一种对历史数据进行预处理生成训练样本数据的方法流程示意图。
如图4所示,该方法包括:
步骤301,根据待检测的指标的历史数据对应的采集模式,确定历史数据中的数据缺失点及缺失点注入概率。
本实施例中,采集模式可以指历史数据的采集频率,例如1分钟采集一次、或者1小时采集一次等。其中,可预先设置采集模式与缺失点注入概率的对应关系,即每种采集模式具有对应的缺失点注入概率,比如采集频率越大,缺失点注入概率越高。
那么,根据待检测的指标的历史数据对应的采集模式,确定历史数据中的数据缺失点及缺失点注入概率。例如,1分钟采集一次,那么根据该采集模式可以确定对应的缺失点注入概率,并且某些分钟未采集到数据的数据点,则确定为数据缺失点。这里的数据点,可以理解为数据采集点。
步骤302,将历史数据中的数据缺失点,用预设的数值填充。
本实施例中,在确定历史数据中数据缺失点后,可利用预设的数值进行填充。比如,将数据缺失点的数据填充为0,当然也可以用其他预设的数值进行填充。
为了消除数据的量纲的影像,可以首先对历史数据进行标准化处理,标准化处理后,再对数据缺失点进行缺失点填充处理。
步骤303,根据缺失点注入概率及缺失点填充后的历史数据中包含的数据点数量,将缺失点填充后的历史数据中的部分数据点用预设的数值替换,生成训练数据。
本实施例中,根据填充的数据缺失点的数量与获取的历史数据中数据点的数量,可计算出缺失点填充后的历史数据中包含的数据点数量。然后,根据缺失点填充后的历史数据中包含的数据点数量与缺失点注入概率的乘积,可以得到缺失点填充后的历史数据中待替换的数据点的数量,根据待替换的数据点的数量,可随机在缺失点填充后的历史数据中选取这些数量的数据点,用预设的数值进行替换,生成训练数据。
步骤304,将训练数据进行数据分割,生成训练样本数据。
在获取训练数据后,可利用滑动窗口方法对训练数据进行数据分割,具体地,可参见上述步骤202,由此可以得到大量的训练样本数据。其中,每个训练样本数据中包含的数据量与窗口大小相同。
本申请实施例中,通过对历史数据进行缺失点填充,并根据缺失点注入概率,将缺失点填充后的历史数据中部分数据进行用预设数值进行替换,生成训练数据,对训练数据进行数据分割后,得到训练样本数据,使得训练样本数据中包含一定量的数据缺失点,从而可以提高训练得到的变分自编码器的鲁棒性和预测准确性。
需要说明的是,对历史数据进行预处理,生成训练样本数据时,可先对历史数据进行分割、聚类,获取训练正样本数据并进行标准化,然后根据采集模式确定标准化后的训练正样本数据中数据缺失点和缺失点注入概率,对训练正样本数据的数据缺失点用预设的数值进行填充,根据缺失点注入概率和缺失点填充后的训练正样本数据,将缺失点填充后的训练正样本数据中部分数据点用预设的数值替换,生成训练数据,之后对训练数据进行分割,得到训练样本数据。
或者,在训练正样本数据中随机插入异常数据后,进行缺失点填充,并根据缺失点注入概率将部分数据点用预设的数值进行替换,得到训练数据,对训练数据进行数据分割,得到训练样本数据。
可以理解的是,也可先对历史数据进行标准化,标准化后进行缺失点填充,并根据缺失点注入概率将缺失点填充后的历史数据中部分数据点用预设的数值替换,得到训练样本数据,然后对训练样板数据进行分割、聚类,得到训练正样本数据,再在训练正样本数据中随机插入异常数据,之后对插入异常数据后的训练正样本数据进行数据分割,得到训练样本数据。
需要说明的是,本申请实施例中,对历史数据的预处理操作的顺序不作限定。
可以理解的是,预设阈值的大小会影响检测结果,在实际应用中,待检测的指标对应的业务类型不同,那么预设阈值也不相同。因此,可根据待检测的指标对应的业务类型,确定预设阈值。
例如,有些业务类型,可能关注下异常,比如工资指标比较关注下异常,工资相对正常情况下降了;有些业务类型可能关注上异常,或者有些业务类型关注区间,因此业务类型不同相应的预设阈值也不相同。
为了便于比较,在本申请的一个实施例中,在获取异常得分后,可对异常得分进行归一化,根据归一化后的异常得分判断距离当前时刻第一预设时间长度内的指标数据是否异常。
具体而言,利用训练样本数据对初始变分自编码器进行训练,生成训练后的变分自编码器之后,可利用训练后得到的变分自编码器对训练样本数据进行编码、解码处理,得到训练样本数据对应的均值向量,根据训练样本数据对应的均值向量,确定训练样本数据中第一预设时间长度内的样本数据及对应的均值向量,根据均值向量确定训练样本数据中第一预设时间长度内的样本数据对应的参考异常得分。
其中,这里的第一预设时间长度与检测时的精确度有关,比如要检测10分钟内的数据是否异常,那么确定训练样本数据中10分钟内的样本数据对应的参考异常得分。
然后,根据参考异常得分对异常得分进行归一化处理,再根据归一化处理后的异常得分与预设阈值的关系,确定距离当前时刻第一预设时间长度内的指标数据是否异常。比如,若待检测的指标关注的是下异常,当归一化处理后的异常得分小于预设阈值时,确定距离当前时刻第一预设时间长度内的指标数据异常。
举例来说,待检测指标为工资,假设训练样本数据{h1,h2,h3,…,hM},其中,训练样本数据中第一预设时间长度内的样本数据为最新的数据点,这些数据点组成了一个检测窗口m,对应的均值向量为不难证明统计量Z={zi}近似服从N(0,k),通过计算median(abs(Z-median(Z)))来估算Zα,其中,median()表示取中位数,Zα表示Z的α%的分位点,如Z0.75表示Z的75%的分位点,显然,其中,Tα表示标准正态分布的α%的分位点,这里Zα/Tα可看作是参考异常得分,这里Z/std(Z)=Z*Tα/Zα服从N(0,1)。
在实际应用中,Zα中的α取值可根据需要设置,比如Z0.75,那么对距离当前时刻第一预设时间长度内的指标数据的异常得分z进行归一化z′=z*T0.75/Z0.75=z*0.6745/Z0.75
对于关注下异常的待检测的指标,在选取阈值时,可取标准正态分布的分位点Ta作为阈值,Ta满足φ(Ta)=a,其中φ表示标准正态分布的分布函数,a可以灵活取值,如0.001~0.01。当距离当前时刻第一预设时间长度内的指标数据对应的异常参考得分归一化后的z'小于Ta时,可以认为待检测的距离当前时刻第一预设时间长度内的指标数据发生了异常,否则未发生异常。
本申请实施例中,通过利用训练样本数据对应的均值向量,确定训练样本数据中第一预设时间长度内的样本数据对应的参考异常得分,根据参考异常得分对距离当前时刻第一预设时间长度内的指标数据对应的异常得分进行归一化,利用归一化处理后的异常得分与预设阈值的关系,确定距离当前时刻第一预设时间长度内的指标数据是否异常,从而可以便于异常检测。
为了实现上述实施例,本申请实施例还提出一种时序数据异常检测装置。图5为本申请实施例提供的一种时序数据异常检测装置的结构示意图。
如图5所示,该时序数据异常检测装置包括:采集模块410、第一确定模块420、第二确定模块430、第三确定模块440。
采集模块410,用于从待检测的指标数据中采集距离当前时刻第一预设时间长度内的指标数据;
第一确定模块420,用于利用预先训练的变分自编码器对距离当前时刻第一预设时间长度内的指标数据进行解码、编码处理,确定距离当前时刻第一预设时间长度内的指标数据对应的均值向量;
第二确定模块430,用于根据距离当前时刻第一预设时间长度内的指标数据对应的均值向量及距离当前时刻第一预设时间长度内的指标数据,确定距离当前时刻第一预设时间长度内的指标数据对应的异常得分;
第三确定模块440,用于根据异常得分与预设阈值的关系,确定距离当前时刻第一预设时间长度内的指标数据是否异常。
在本申请实施例一种可能的实现方式中,该装置还可包括:
处理模块,用于对距离当前时刻第一预设时间长度内的指标数据进行标准化及缺失点填充处理。
在本申请实施例一种可能的实现方式中,上述第二确定模块430,具体用于:
根据距离当前时刻第一预设时间长度内的指标数据对应的均值向量,计算距离当前时刻第一预设时间长度内每个指标数据的偏差值;
根据距离当前时刻第一预设时间长度内每个指标数据的偏差值及距离当前时刻第一预设时间长度内的指标数据对应的均值向量,确定距离当前时刻第一预设时间长度内的指标数据对应的异常得分。
在本申请实施例一种可能的实现方式中,该装置还可包括:
计算模块,用于根据距离当前时刻第一预设时间长度内的指标数据对应的均值向量,计算距离当前时刻第二预设时间长度内每个指标数据的偏差值,其中,第二预设时间长度小于所述第一预设时间长度;
第四确定模块,用于根据距离当前时刻第二预设时间长度内每个指标数据的偏差值及距离当前时刻第一预设时间长度内的指标数据对应的均值向量,确定距离当前时刻第二预设时间长度内的指标数据对应的异常得分。
在本申请实施例一种可能的实现方式中,该装置还可包括:
获取模块,用于获取待检测的指标的历史数据;
第一生成模块,用于对历史数据进行预处理,生成训练样本数据;
第二生成模块,用于利用训练样本数据对初始变分自编码器进行训练,生成训练后的变分自编码器。
在本申请实施例一种可能的实现方式中,上述第一生成模块,具体用于:
根据待检测的指标的时序特性,将所述历史数据进行分割、聚类处理,得到多个数据簇;
根据多个数据簇中包含的数据组数量,从所述多个数据簇中获取训练正样本数据。
在本申请实施例一种可能的实现方式中,该装置还可包括:
插入模块,用于根据所正样本数据中的数据量,在训练正样本数据中随机插入异常数据。
在本申请实施例一种可能的实现方式中,上述第一生成模块,具体用于:
根据待检测的指标的历史数据对应的采集模式,确定历史数据中的数据缺失点及缺失点注入概率;
将历史数据中的数据缺失点,用预设的数值填充;
根据缺失点注入概率及缺失点填充后的历史数据中包含的数据点数量,将缺失点填充后的历史数据中的部分数据点用预设的数值替换,生成训练数据;
将训练数据进行数据分割,生成训练样本数据。
在本申请实施例一种可能的实现方式中,该装置还可包括:
第五确定模块,具体用于根据待检测的指标对应的业务类型,确定预设阈值。
在本申请实施例一种可能的实现方式中,该装置还可包括:
第六确定模块,用于根据所述训练后的变分自编码器确定的训练样本数据对应的均值向量,确定所述训练样本数据中第一预设时间长度内的样本数据对应的参考异常得分;
上述第三确定模块440,具体用于:根据参考异常得分对异常得分进行归一化处理;根据归一化处理后的异常得分与预设阈值的关系,确定距离当前时刻第一预设时间长度内的指标数据是否异常。
需要说明的是,上述对时序数据异常检测方法实施例的解释说明,也适用于该实施例的时序数据异常检测装置,故在此不再赘述。
本申请实施例的时序数据异常检测装置,通过利用预先训练的变分自编码器对距离当前时刻第一预设时间长度内的指标数据进行解密、编码处理,得到距离当前时刻第一预设时间长度内的指标数据对应的均值向量,根据距离当前时刻第一预设时间长度内的指标数据对应的均值向量,确定距离当前时刻第一预设时间长度内的指标数据对应的异常得分,根据异常得分与预设阈值的关系,确定距离当前时刻第一预设时间长度内的指标数据是否异常,由此利用预先训练的变分自编码器,对待检测的时序数据进行异常检测,无需考虑数据的周期性和光滑性,适用范围广。
为了实现上述实施例,本申请实施例还提出一种计算机设备,包括处理器和存储器;
其中,处理器通过读取存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如上述实施例所述的时序数据异常检测方法。
图6示出了适于用来实现本申请实施方式的示例性计算机设备的框图。图6显示的计算机设备12仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read OnlyMemory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read OnlyMemory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的方法。
为了实现上述实施例,本申请实施例还提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例所述的时序数据异常检测方法。
在本说明书的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (22)

1.一种时序数据异常检测方法,其特征在于,包括:
从待检测的指标数据中采集距离当前时刻第一预设时间长度内的指标数据;
利用预先训练的变分自编码器对所述距离当前时刻第一预设时间长度内的指标数据进行解码、编码处理,确定所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量;
根据所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量及所述距离当前时刻第一预设时间长度内的指标数据,确定所述距离当前时刻第一预设时间长度内的指标数据对应的异常得分;
根据所述异常得分与预设阈值的关系,确定所述距离当前时刻第一预设时间长度内的指标数据是否异常。
2.如权利要求1所述的方法,其特征在于,所述利用预先训练的变分自编码器对所述距离当前时刻第一预设时间长度内的指标数据进行解码、编码处理之前,还包括:
对所述距离当前时刻第一预设时间长度内的指标数据进行标准化及缺失点填充处理。
3.如权利要求1所述的方法,其特征在于,所述确定所述距离当前时刻第一预设时间长度内的指标数据对应的异常得分,包括:
根据所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量,计算所述距离当前时刻第一预设时间长度内每个指标数据的偏差值;
根据所述距离当前时刻第一预设时间长度内每个指标数据的偏差值及所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量,确定所述距离当前时刻第一预设时间长度内的指标数据对应的异常得分。
4.如权利要求1所述的方法,其特征在于,所述确定所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量之后,还包括:
根据所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量,计算所述距离当前时刻第二预设时间长度内每个指标数据的偏差值,其中,所述第二预设时间长度小于所述第一预设时间长度;
根据所述距离当前时刻第二预设时间长度内每个指标数据的偏差值及所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量,确定所述距离当前时刻第二预设时间长度内的指标数据对应的异常得分。
5.如权利要求1-4任一所述的方法,其特征在于,所述利用预先训练的变分自编码器对所述距离当前时刻第一预设时间长度内的指标数据进行解码、编码处理之前,还包括:
获取所述待检测的指标的历史数据;
对所述历史数据进行预处理,生成训练样本数据;
利用所述训练样本数据对初始变分自编码器进行训练,生成训练后的变分自编码器。
6.如权利要求5所述的方法,其特征在于,所述对所述历史数据进行预处理,生成训练样本数据,包括:
根据所述待检测的指标的时序特性,将所述历史数据进行分割、聚类处理,得到多个数据簇;
根据多个数据簇中包含的数据组数量,从所述多个数据簇中获取训练正样本数据。
7.如权利要求6所述的方法,其特征在于,所述从所述多个数据簇中获取训练正样本数据之后,还包括:
根据所述训练正样本数据中的数据量,在所述训练正样本数据中随机插入异常数据。
8.如权利要求6或7任一所述的方法,其特征在于,所述对所述历史数据进行预处理,生成训练样本数据,包括:
根据所述待检测的指标的历史数据对应的采集模式,确定所述历史数据中的数据缺失点及缺失点注入概率;
将所述历史数据中的数据缺失点,用预设的数值填充;
根据所述缺失点注入概率及缺失点填充后的历史数据中包含的数据点数量,将缺失点填充后的历史数据中的部分数据点用预设的数值替换,生成训练数据;
将所述训练数据进行数据分割,生成所述训练样本数据。
9.如权利要求5所述的方法,其特征在于,所述利用所述训练样本数据对初始变分自编码器进行训练,生成训练后的变分自编码器之后,还包括:
根据所述待检测的指标对应的业务类型,确定所述预设阈值。
10.如权利要求9所述的方法,其特征在于,所述利用所述训练样本数据对初始变分自编码器进行训练,生成训练后的变分自编码器之后,还包括:
根据所述训练后的变分自编码器确定的训练样本数据对应的均值向量,确定所述训练样本数据中第一预设时间长度内的样本数据对应的参考异常得分;
所述根据所述异常得分与预设阈值的关系,确定所述距离当前时刻第一预设时间长度内的指标数据是否异常,包括:
根据所述参考异常得分对所述异常得分进行归一化处理;
根据归一化处理后的异常得分与预设阈值的关系,确定所述距离当前时刻第一预设时间长度内的指标数据是否异常。
11.一种时序数据异常检测装置,其特征在于,包括:
采集模块,用于从待检测的指标数据中采集距离当前时刻第一预设时间长度内的指标数据;
第一确定模块,用于利用预先训练的变分自编码器对所述距离当前时刻第一预设时间长度内的指标数据进行解码、编码处理,确定所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量;
第二确定模块,用于根据所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量及所述距离当前时刻第一预设时间长度内的指标数据,确定所述距离当前时刻第一预设时间长度内的指标数据对应的异常得分;
第三确定模块,用于根据所述异常得分与预设阈值的关系,确定所述距离当前时刻第一预设时间长度内的指标数据是否异常。
12.如权利要求11所述的装置,其特征在于,还包括:
处理模块,用于对所述距离当前时刻第一预设时间长度内的指标数据进行标准化及缺失点填充处理。
13.如权利要求11所述的装置,其特征在于,所述第二确定模块,具体用于:
根据所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量,计算所述距离当前时刻第一预设时间长度内每个指标数据的偏差值;
根据所述距离当前时刻第一预设时间长度内每个指标数据的偏差值及所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量,确定所述距离当前时刻第一预设时间长度内的指标数据对应的异常得分。
14.如权利要求11所述的装置,其特征在于,还包括:
计算模块,用于根据所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量,计算所述距离当前时刻第二预设时间长度内每个指标数据的偏差值,其中,所述第二预设时间长度小于所述第一预设时间长度;
第四确定模块,用于根据所述距离当前时刻第二预设时间长度内每个指标数据的偏差值及所述距离当前时刻第一预设时间长度内的指标数据对应的均值向量,确定所述距离当前时刻第二预设时间长度内的指标数据对应的异常得分。
15.如权利要求11-14任一所述的装置,其特征在于,还包括:
获取模块,用于获取所述待检测的指标的历史数据;
第一生成模块,用于对所述历史数据进行预处理,生成训练样本数据;
第二生成模块,用于利用所述训练样本数据对初始变分自编码器进行训练,生成训练后的变分自编码器。
16.如权利要求15所述的装置,其特征在于,所述第一生成模块,具体用于:
根据所述待检测的指标的时序特性,将所述历史数据进行分割、聚类处理,得到多个数据簇;
根据多个数据簇中包含的数据组数量,从所述多个数据簇中获取训练正样本数据。
17.如权利要求16所述的装置,其特征在于,还包括:
插入模块,用于根据所述训练正样本数据中的数据量,在所述训练正样本数据中随机插入异常数据。
18.如权利要求16或17任一所述的装置,其特征在于,所述第一生成模块,具体用于:
根据所述待检测的指标的历史数据对应的采集模式,确定所述历史数据中的数据缺失点及缺失点注入概率;
将所述历史数据中的数据缺失点,用预设的数值填充;
根据所述缺失点注入概率及缺失点填充后的历史数据中包含的数据点数量,将缺失点填充后的历史数据中的部分数据点用预设的数值替换,生成训练数据;
将所述训练数据进行数据分割,生成所述训练样本数据。
19.如权利要求15所述的装置,其特征在于,还包括:
第五确定模块,具体用于根据所述待检测的指标对应的业务类型,确定所述预设阈值。
20.如权利要求19所述的装置,其特征在于,还包括:
第六确定模块,用于根据所述训练后的变分自编码器确定的训练样本数据对应的均值向量,确定所述训练样本数据中第一预设时间长度内的样本数据对应的参考异常得分;
所述第三确定模块,具体用于:根据所述参考异常得分对所述异常得分进行归一化处理;根据归一化处理后的异常得分与预设阈值的关系,确定所述距离当前时刻第一预设时间长度内的指标数据是否异常。
21.一种计算机设备,其特征在于,包括处理器和存储器;
其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如权利要求1-10中任一所述的时序数据异常检测方法。
22.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-10中任一所述的时序数据异常检测方法。
CN201910243107.1A 2019-03-28 2019-03-28 时序数据异常检测方法、装置、计算机设备和存储介质 Active CN109978379B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910243107.1A CN109978379B (zh) 2019-03-28 2019-03-28 时序数据异常检测方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910243107.1A CN109978379B (zh) 2019-03-28 2019-03-28 时序数据异常检测方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN109978379A true CN109978379A (zh) 2019-07-05
CN109978379B CN109978379B (zh) 2021-08-24

Family

ID=67081158

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910243107.1A Active CN109978379B (zh) 2019-03-28 2019-03-28 时序数据异常检测方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN109978379B (zh)

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110473084A (zh) * 2019-07-17 2019-11-19 中国银行股份有限公司 一种异常检测方法和装置
CN110796497A (zh) * 2019-10-31 2020-02-14 支付宝(杭州)信息技术有限公司 检测异常操作行为的方法以及装置
CN110889597A (zh) * 2019-11-08 2020-03-17 北京宝兰德软件股份有限公司 业务时序指标异常检测方法及装置
CN111241151A (zh) * 2019-12-27 2020-06-05 北京健康之家科技有限公司 一种业务数据分析预警方法、系统、存储介质及计算设备
CN111277603A (zh) * 2020-02-03 2020-06-12 杭州迪普科技股份有限公司 无监督异常检测系统和方法
CN111562996A (zh) * 2020-04-11 2020-08-21 北京交通大学 一种关键性能指标数据的时序异常检测方法及系统
CN111666187A (zh) * 2020-05-20 2020-09-15 北京百度网讯科技有限公司 用于检测异常响应时间的方法和装置
CN111708739A (zh) * 2020-05-21 2020-09-25 北京奇艺世纪科技有限公司 时序数据的异常检测方法、装置、电子设备及存储介质
CN111767938A (zh) * 2020-05-09 2020-10-13 北京奇艺世纪科技有限公司 一种异常数据检测方法、装置及电子设备
CN111858231A (zh) * 2020-05-11 2020-10-30 北京必示科技有限公司 一种基于运维监控的单指标异常检测方法
CN111949938A (zh) * 2020-08-13 2020-11-17 北京字节跳动网络技术有限公司 异动信息的确定方法、装置、电子设备和计算机可读介质
CN111967507A (zh) * 2020-07-31 2020-11-20 复旦大学 基于离散余弦变换和U-Net的时序异常检测方法
CN112131272A (zh) * 2020-09-22 2020-12-25 平安科技(深圳)有限公司 多元kpi时间序列的检测方法、装置、设备及存储介质
CN112148577A (zh) * 2020-10-09 2020-12-29 平安科技(深圳)有限公司 数据异常检测方法、装置、电子设备及存储介质
CN112308104A (zh) * 2019-08-02 2021-02-02 杭州海康威视数字技术股份有限公司 异常识别方法、装置及计算机存储介质
CN112416662A (zh) * 2020-11-26 2021-02-26 清华大学 多时间序列数据异常检测方法与装置
CN112699113A (zh) * 2021-01-12 2021-04-23 上海交通大学 时序数据流驱动的工业制造流程运行监测系统
CN112818066A (zh) * 2019-11-15 2021-05-18 深信服科技股份有限公司 一种时序数据异常检测方法、装置及电子设备和存储介质
CN114547145A (zh) * 2022-02-21 2022-05-27 苏州浪潮智能科技有限公司 一种时序数据异常检测方法、系统、存储介质及设备
CN114536104A (zh) * 2022-03-25 2022-05-27 成都飞机工业(集团)有限责任公司 一种刀具寿命动态预测方法
CN114648227A (zh) * 2022-03-23 2022-06-21 成都飞机工业(集团)有限责任公司 航空液压泵站时序异常检测方法、装置、设备及存储介质
CN115345279A (zh) * 2022-08-10 2022-11-15 中国电信股份有限公司 多指标异常检测方法、装置、电子设备及存储介质
CN115647933A (zh) * 2022-11-02 2023-01-31 富联裕展科技(深圳)有限公司 主轴偏摆异常检测方法、装置以及存储介质
WO2024000852A1 (zh) * 2022-06-29 2024-01-04 深圳前海微众银行股份有限公司 数据处理方法、装置、设备及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000276478A (ja) * 1999-03-24 2000-10-06 Nippon Telegr & Teleph Corp <Ntt> 時系列データの検出方法、その装置およびそのプログラムを記録した記録媒体
CN106383766A (zh) * 2016-09-09 2017-02-08 北京百度网讯科技有限公司 系统监控方法和装置
CN106548035A (zh) * 2016-11-24 2017-03-29 腾讯科技(深圳)有限公司 一种数据异常的诊断方法及装置
CN106844171A (zh) * 2016-12-27 2017-06-13 浪潮软件集团有限公司 一种海量运维的实现方法
CN107203806A (zh) * 2017-05-15 2017-09-26 东软集团股份有限公司 数据异常检测方法、装置、可读存储介质及电子设备
CN108431834A (zh) * 2015-12-01 2018-08-21 首选网络株式会社 异常检测系统、异常检测方法、异常检测程序及学得模型的生成方法
CN108628281A (zh) * 2017-03-23 2018-10-09 株式会社日立制作所 异常检测系统及异常检测方法
CN108776806A (zh) * 2018-05-08 2018-11-09 河海大学 基于变分自编码器和密度峰值的混合属性数据聚类方法
CN108959551A (zh) * 2018-06-29 2018-12-07 北京百度网讯科技有限公司 近邻语义的挖掘方法、装置、存储介质和终端设备

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000276478A (ja) * 1999-03-24 2000-10-06 Nippon Telegr & Teleph Corp <Ntt> 時系列データの検出方法、その装置およびそのプログラムを記録した記録媒体
CN108431834A (zh) * 2015-12-01 2018-08-21 首选网络株式会社 异常检测系统、异常检测方法、异常检测程序及学得模型的生成方法
CN106383766A (zh) * 2016-09-09 2017-02-08 北京百度网讯科技有限公司 系统监控方法和装置
CN106548035A (zh) * 2016-11-24 2017-03-29 腾讯科技(深圳)有限公司 一种数据异常的诊断方法及装置
CN106844171A (zh) * 2016-12-27 2017-06-13 浪潮软件集团有限公司 一种海量运维的实现方法
CN108628281A (zh) * 2017-03-23 2018-10-09 株式会社日立制作所 异常检测系统及异常检测方法
CN107203806A (zh) * 2017-05-15 2017-09-26 东软集团股份有限公司 数据异常检测方法、装置、可读存储介质及电子设备
CN108776806A (zh) * 2018-05-08 2018-11-09 河海大学 基于变分自编码器和密度峰值的混合属性数据聚类方法
CN108959551A (zh) * 2018-06-29 2018-12-07 北京百度网讯科技有限公司 近邻语义的挖掘方法、装置、存储介质和终端设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
RICHARD A.HEALTH等: "Detecting Nonlinearity In Psychological data:Techniques and applications", 《BEHAVIOR RESEARCH METHODS, INSTRUMENTS,& COMPUTERS》 *
高嘉伟 等: "一种面向轨迹信息的时序数据流异常检测算法", 《计算机工程》 *

Cited By (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110473084A (zh) * 2019-07-17 2019-11-19 中国银行股份有限公司 一种异常检测方法和装置
CN112308104A (zh) * 2019-08-02 2021-02-02 杭州海康威视数字技术股份有限公司 异常识别方法、装置及计算机存储介质
CN110796497A (zh) * 2019-10-31 2020-02-14 支付宝(杭州)信息技术有限公司 检测异常操作行为的方法以及装置
CN110889597A (zh) * 2019-11-08 2020-03-17 北京宝兰德软件股份有限公司 业务时序指标异常检测方法及装置
CN112818066A (zh) * 2019-11-15 2021-05-18 深信服科技股份有限公司 一种时序数据异常检测方法、装置及电子设备和存储介质
CN111241151A (zh) * 2019-12-27 2020-06-05 北京健康之家科技有限公司 一种业务数据分析预警方法、系统、存储介质及计算设备
CN111277603A (zh) * 2020-02-03 2020-06-12 杭州迪普科技股份有限公司 无监督异常检测系统和方法
CN111277603B (zh) * 2020-02-03 2021-11-19 杭州迪普科技股份有限公司 无监督异常检测系统和方法
CN111562996B (zh) * 2020-04-11 2021-11-23 北京交通大学 一种关键性能指标数据的时序异常检测方法及系统
CN111562996A (zh) * 2020-04-11 2020-08-21 北京交通大学 一种关键性能指标数据的时序异常检测方法及系统
CN111767938B (zh) * 2020-05-09 2023-12-19 北京奇艺世纪科技有限公司 一种异常数据检测方法、装置及电子设备
CN111767938A (zh) * 2020-05-09 2020-10-13 北京奇艺世纪科技有限公司 一种异常数据检测方法、装置及电子设备
CN111858231A (zh) * 2020-05-11 2020-10-30 北京必示科技有限公司 一种基于运维监控的单指标异常检测方法
CN111666187B (zh) * 2020-05-20 2023-07-04 北京百度网讯科技有限公司 用于检测异常响应时间的方法和装置
CN111666187A (zh) * 2020-05-20 2020-09-15 北京百度网讯科技有限公司 用于检测异常响应时间的方法和装置
CN111708739B (zh) * 2020-05-21 2024-02-27 北京奇艺世纪科技有限公司 时序数据的异常检测方法、装置、电子设备及存储介质
CN111708739A (zh) * 2020-05-21 2020-09-25 北京奇艺世纪科技有限公司 时序数据的异常检测方法、装置、电子设备及存储介质
CN111967507A (zh) * 2020-07-31 2020-11-20 复旦大学 基于离散余弦变换和U-Net的时序异常检测方法
CN111949938A (zh) * 2020-08-13 2020-11-17 北京字节跳动网络技术有限公司 异动信息的确定方法、装置、电子设备和计算机可读介质
CN111949938B (zh) * 2020-08-13 2023-06-20 抖音视界有限公司 异动信息的确定方法、装置、电子设备和计算机可读介质
CN112131272B (zh) * 2020-09-22 2023-11-10 平安科技(深圳)有限公司 多元kpi时间序列的检测方法、装置、设备及存储介质
CN112131272A (zh) * 2020-09-22 2020-12-25 平安科技(深圳)有限公司 多元kpi时间序列的检测方法、装置、设备及存储介质
WO2021189904A1 (zh) * 2020-10-09 2021-09-30 平安科技(深圳)有限公司 数据异常检测方法、装置、电子设备及存储介质
CN112148577B (zh) * 2020-10-09 2024-05-07 平安科技(深圳)有限公司 数据异常检测方法、装置、电子设备及存储介质
CN112148577A (zh) * 2020-10-09 2020-12-29 平安科技(深圳)有限公司 数据异常检测方法、装置、电子设备及存储介质
CN112416662A (zh) * 2020-11-26 2021-02-26 清华大学 多时间序列数据异常检测方法与装置
CN112699113A (zh) * 2021-01-12 2021-04-23 上海交通大学 时序数据流驱动的工业制造流程运行监测系统
CN114547145B (zh) * 2022-02-21 2024-01-26 苏州浪潮智能科技有限公司 一种时序数据异常检测方法、系统、存储介质及设备
CN114547145A (zh) * 2022-02-21 2022-05-27 苏州浪潮智能科技有限公司 一种时序数据异常检测方法、系统、存储介质及设备
CN114648227A (zh) * 2022-03-23 2022-06-21 成都飞机工业(集团)有限责任公司 航空液压泵站时序异常检测方法、装置、设备及存储介质
CN114648227B (zh) * 2022-03-23 2024-03-15 成都飞机工业(集团)有限责任公司 航空液压泵站时序异常检测方法、装置、设备及存储介质
CN114536104A (zh) * 2022-03-25 2022-05-27 成都飞机工业(集团)有限责任公司 一种刀具寿命动态预测方法
WO2024000852A1 (zh) * 2022-06-29 2024-01-04 深圳前海微众银行股份有限公司 数据处理方法、装置、设备及存储介质
CN115345279A (zh) * 2022-08-10 2022-11-15 中国电信股份有限公司 多指标异常检测方法、装置、电子设备及存储介质
CN115345279B (zh) * 2022-08-10 2024-03-29 中国电信股份有限公司 多指标异常检测方法、装置、电子设备及存储介质
CN115647933A (zh) * 2022-11-02 2023-01-31 富联裕展科技(深圳)有限公司 主轴偏摆异常检测方法、装置以及存储介质
CN115647933B (zh) * 2022-11-02 2023-10-27 富联裕展科技(深圳)有限公司 主轴偏摆异常检测方法、装置以及存储介质

Also Published As

Publication number Publication date
CN109978379B (zh) 2021-08-24

Similar Documents

Publication Publication Date Title
CN109978379A (zh) 时序数据异常检测方法、装置、计算机设备和存储介质
Phillips et al. Boosting: Why you can use the HP filter
CN112101554B (zh) 异常检测方法及装置、设备、计算机可读存储介质
CN112685273A (zh) 异常检测方法、装置、计算机设备和存储介质
CN112148955A (zh) 一种物联网时序数据异常检测方法及系统
CN114298443B (zh) 基于健康状态指数的工业设备预测性维护方法、装置和电子设备
CN108196986A (zh) 设备异常检测方法、装置、计算机设备和存储介质
US20160364279A1 (en) Generating problem signatures from snapshots of time series data
Meng et al. A time convolutional network based outlier detection for multidimensional time series in cyber-physical-social systems
CN103975327B (zh) 用于可视化事件序列中的风险评估值的方法及设备
Zhu et al. Health care fraud detection using nonnegative matrix factorization
Small et al. Determinism in financial time series
CN116340796A (zh) 时序数据分析方法、装置、设备及存储介质
Zhang et al. Deep transfer learning-based hierarchical adaptive remaining useful life prediction of bearings considering the correlation of multistage degradation
O'Quigley Survival Analysis
CN112613547B (zh) 基于Fisher判别字典学习模型的齿轮运行分类方法
CN113807396A (zh) 一种物联网高维数据异常检测方法、系统、装置及介质
CN116628612A (zh) 一种无监督异常检测方法、装置、介质及设备
CN110634574B (zh) 一种基于等值排列的心率动态时间不可逆性分析方法
CN115184054A (zh) 机械设备半监督故障检测分析方法、装置、终端及介质
CN113378921A (zh) 数据筛选方法、装置及电子设备
CN115859202B (zh) 一种非平稳时序数据流场景下的异常检测方法及装置
Wang et al. Imaging Multivariate Time-Series to Improve Fault Detection: Application on Tennessee Eastman Process
CN116756881B (zh) 一种轴承剩余使用寿命预测方法、装置及存储介质
CN113642618B (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