一种时间序列数据异常检测方法和系统与流程

    技术2024-11-17  6


    本发明涉及时间序列异常检测,尤其涉及一种时间序列数据异常检测方法和系统。


    背景技术:

    1、时间序列是指一种现象的指数值按时间顺序排列的数值序列,被广泛应用于各个领域。时间序列异常检测旨在识别明显偏离一般规律的异常时间序列。人们提出了许多方法来解决异常检测问题,自编码器通过编码器将输入数据编码为底层特征,然后通过解码器从底层特征重构原始数据,通过重构误差检测异常。在此基础上,audibert等人将自编码器与生成对抗网络(gan)结合起来。它使用两个自动编码器,一个用于重构数据,另一个用于区分实际数据和重建数据。这两种自动编码器相互竞争并不断优化。最后,基于两个自编码器的重构误差检测异常。尽管基于自编码器的方法已经取得了进展,但它们难以处理复杂和冗长的时间序列数据。因此,自监督学习获得了关注,它可以帮助模型有效地学习特征。zhang等人提出了一种简单的基于操纵时空反向检测的自监督心电表征学习方法。该方法对原始信号进行时间反转、空间反转和时空反转,然后对不同类型的信号进行分类,学习特征。carmona等人通过在训练过程中注入伪异常样本来更好地学习正常样本与异常样本的边界,从而获得更好的异常检测性能。然而,上述方法只考虑了原始信号的特征,忽略了时间序列信号在各种变换模式下特征的相关性和互补性。salem等人提出了一种针对生物信号的异常检测方法,该方法将卡尔曼滤波预测值与实际信号之间的距离作为异常指标,根据该指标的变化程度检测异常。另一方面,huang等人提出了一种卡尔曼自编码器(kalmanae)方法,该方法通过对系统实际状态的卡尔曼滤波估计来学习正常和异常信号的不同滤波模式,用于异常检测。

    2、然而,面对复杂多变的时间序列信号,仅考虑滤波变换仍然不能充分利用已有的时间序列信息,也不容易学习到正常模式的全面表示。尽管现有方法取得了一定的进展,但它们大都依赖于原始观测状态空间,由于时间序列的复杂性,这很难充分利用现有的时间序列信息,学习到更全面的正常模式表示。


    技术实现思路

    1、为了至少能够部分地解决在面对复杂多变的时间序列信号时难以学习到更全面的正常模式的全面表示,进而导致时间序列异常检测效果不佳的问题,本发明提供一种时间序列数据异常检测方法和系统,通过从不同的变换中重建原始信号来研究原始信号的方法,学习正常模式的更好的综合表示,以改善时间序列异常检测效果。

    2、为了实现上述目的,本发明的技术方案是:

    3、本发明第一方面提出了一种时间序列数据异常检测方法,包括以下步骤:

    4、步骤一:对原始时序信号进行加噪和滤波处理,得到噪声、加噪信号和滤波信号,用于对原始时序信号进行加噪滤波,减少噪声的影响;

    5、步骤二:将加噪信号和滤波信号输入到多变换学习单元中,得到加噪重构信号和滤波重构信号,便于从不同的变换中重建原始时序信号来研究原始时序信号,以学习正常模式的更好的综合表示;

    6、步骤三:将噪声输入到分类器进行噪声分类,得到噪声的分类结果,优化加噪变换的学习过程;

    7、步骤四:分别计算原始时序信号和滤波重构信号的损失、原始时序信号和加噪重构信号的损失以及噪声分类的损失,进而得到总体损失,通过最小化所述总体损失来训练所述多变换学习单元,减少重构误差;

    8、步骤五:将目标时序信号输入训练好的多变换学习单元中,得到目标时序信号对应的加噪重构信号和滤波重构信号,利用目标时序信号对应的加噪重构信号和滤波重构信号计算异常分数,根据异常分数进行异常检测,便于完成目标时序信号的异常检测。

    9、进一步地,所述步骤一具体过程包括:

    10、利用原始时序信号随机生成多种噪声,并将多种噪声随机添加到原始时序信号中,得到加噪信号,便于后续进行滤波;

    11、将加噪信号输入卡尔曼滤波器中,得到滤波信号,便于减少噪声对原始时序信号的干扰。

    12、进一步地,按照以下公式计算加噪信号:

    13、

    14、ntp=a·tp(·)

    15、xn=x+ntp

    16、其中,a为噪声幅值,xi为原始时序信号中第i个数据,n为原始时序信号长度,snr为实验设定的信噪比,ntp为噪声,tp(·)为不同类型的分布函数,xn为加噪信号,x为原始时序信号。

    17、进一步地,所述步骤二中,多变换学习单元包括两个结构相同的自编码器,所述自编码器包括编码器和解码器;

    18、将加噪信号和滤波信号分别输入到对应的自编码器中,根据对应的自编码器中的编码器分别得到加噪信号的低维嵌入和滤波信号的低维嵌入,便于后续重构加噪信号和滤波信号;

    19、将加噪信号的低维嵌入和滤波信号的低维嵌入输入到对应的解码器中,得到加噪重构信号和滤波重构信号,用于异常检测。

    20、进一步地,按照以下公式计算加噪重构信号:

    21、zn=en(xn)

    22、x'n=dn(zn)

    23、其中,zn为加噪信号的低维嵌入,en为加噪信号对应的编码器,xn为加噪信号,dn为加噪信号对应的解码器,x'n为加噪重构信号;

    24、按照以下公式计算滤波重构信号:

    25、zf=ef(xf)

    26、x'f=df(zf)

    27、其中,zf为滤波信号的低维嵌入,ef为滤波信号对应的编码器,xf为滤波信号,df为滤波信号对应的解码器,x'f为滤波重构信号。

    28、进一步地,所述步骤三中,具体包括:

    29、将噪声输入到加噪信号对应的编码器中,得到噪声的低维嵌入,便于后续分类;

    30、利用多个分类器对不同种类的噪声进行分类,得到不同种类噪声的分类结果,便于编码器学习噪声的分布,进而优化加噪变换的学习过程。

    31、进一步地,所述步骤四中,按照以下公式计算总损失函数:

    32、

    33、lcls=∑ltp

    34、lmtae=(1-λ)·lrec+λ·lcls

    35、其中,lrec为多变换学习单元的损失函数,x为原始时序信号,ltp为二元交叉熵损失函数,n为噪声集合内样本总数,yi为第i个噪声标签,为第i个噪声预测标签,lcls为分类器损失函数之和,lmtae为总损失函数,λ为权衡控制系数,x'n为加噪重构信号,x'f为滤波重构信号,x为原始时序信号。

    36、进一步地,所述步骤五中,按照以下公式计算异常分数:

    37、

    38、其中,score为异常分数,x'n为加噪重构信号,x'f为滤波重构信号,x′为目标时序信号。

    39、本发明第二方面提出了一种时间序列数据异常检测系统,包括:

    40、转换模块,用于对原始时序信号进行加噪和滤波处理,得到噪声、加噪信号和滤波信号,用于对原始时序信号进行加噪滤波,减少噪声的影响;

    41、多变换学习模块,用于将加噪信号和滤波信号输入到多变换学习单元中,得到加噪重构信号和滤波重构信号,便于从不同的变换中重建原始时序信号来研究原始时序信号,以学习正常模式的更好的综合表示;

    42、自监督噪声分类模块,用于将噪声输入到分类器进行噪声分类,得到噪声的分类结果,优化加噪变换的学习过程;

    43、训练模块,用于分别计算原始时序信号和滤波重构信号的损失、原始时序信号和加噪重构信号的损失以及噪声分类的损失,进而得到总体损失,通过最小化所述总体损失来训练所述多变换学习单元,减少重构误差;

    44、检测模块,用于将目标时序信号输入训练好的多变换学习单元中,得到目标时序信号对应的加噪重构信号和滤波重构信号,利用目标时序信号对应的加噪重构信号和滤波重构信号计算异常分数,根据异常分数进行异常检测,便于完成目标时序信号的异常检测。

    45、本发明第三方面提出了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的一种时间序列数据异常检测方法。

    46、本发明的有益效果:

    47、(1)本发明提出了一种时间序列数据异常检测方法,该方法旨在同时学习时间序列的噪声和滤波变换,学习正常模式的更好的综合表示,并通过测量时间序列信号在两种变换下的重构误差来检测异常,达到了较佳的时间序列异常检测效果。

    48、(2)本发明提出了一种多变换学习单元,通过两个自编码器同时捕捉加噪信号和滤波信号的特征分布,对其进行重构,便于更好捕捉信号特征,优化了重构加噪信号和滤波信号的过程。

    49、(3)本发明提出了一种自监督噪声分类模块,使编码器通过特征提取和对原始时序信号中加入的噪声进行分类来学习噪声分布,从而更好地提取时间序列的低维特征,优化噪声变换学习过程。


    技术特征:

    1.一种时间序列数据异常检测方法,其特征在于,包括以下步骤:

    2.根据权利要求1所述的一种时间序列数据异常检测方法,其特征在于,所述步骤一具体过程包括:

    3.根据权利要求2所述的一种时间序列数据异常检测方法,其特征在于,按照以下公式计算加噪信号:

    4.根据权利要求1所述的一种时间序列数据异常检测方法,其特征在于,所述步骤二中,多变换学习单元包括两个结构相同的自编码器,所述自编码器包括编码器和解码器;

    5.根据权利要求4所述的一种时间序列数据异常检测方法,其特征在于,按照以下公式计算加噪重构信号:

    6.根据权利要求4所述的一种时间序列数据异常检测方法,其特征在于,所述步骤三中,具体包括:

    7.根据权利要求1所述的一种时间序列数据异常检测方法,其特征在于,所述步骤四中,按照以下公式计算总损失函数:

    8.根据权利要求1所述的一种时间序列数据异常检测方法,其特征在于,所述步骤五中,按照以下公式计算异常分数:

    9.一种时间序列数据异常检测系统,其特征在于,包括:

    10.一种终端设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至8中任意一项所述的一种时间序列数据异常检测方法。


    技术总结
    本发明公开一种时间序列数据异常检测方法和系统,该方法包括以下步骤:步骤一:对原始时序信号进行加噪和滤波处理,得到噪声、加噪信号和滤波信号;步骤二:将加噪信号和滤波信号输入到多变换学习单元中;步骤三:将噪声输入到分类器进行噪声分类;步骤四:计算总体损失,通过最小化所述总体损失来训练所述多变换学习单元;步骤五:将目标时序信号输入训练好的多变换学习单元中,计算异常分数,根据异常分数进行异常检测。本发明通过从不同的变换中重建目标时序信号来研究目标时序信号,以学习正常模式的更好的综合表示,并通过测量时间序列信号在两种变换下的重构误差来检测异常,达到了较佳的时间序列异常检测效果。

    技术研发人员:樊好义
    受保护的技术使用者:河南迈雅信息科技有限公司
    技术研发日:
    技术公布日:2024/10/24
    转载请注明原文地址:https://symbian.8miu.com/read-22145.html

    最新回复(0)