本文作者:kaifamei

一种基于生成模型的LSTM多变量时间序列异常检测方法

更新时间:2025-12-21 03:33:28 0条评论

一种基于生成模型的LSTM多变量时间序列异常检测方法


一种基于生成模型的lstm多变量时间序列异常检测方法
1.所属领域
2.本发明涉及系统可靠性领域,更具体的涉及复杂设备的高维数据异常检测领域。
现有技术
3.近年来,伴随着数字化革命向各个领域的加速渗透,设备迎来了数字化转型,通过不同种类的传感器对振动、电流、电压、温度、应力等设备信息进行数据采集和状态监测,由此产生了大量的多变量时间序列数据。并且随着物联网、人工智能、计算机等新一代信息技术的发展,设备数据的维数和容量还将会进一步增大。为了更全面的监测设备的工作状态,保障设备运行过程中的可靠性、安全性,降低因设备故障带来的经济损失,对设备数据进行准确、及时的多变量时间序列异常检测技术研究十分必要。然而,过去的设备异常检测技术多针对于单变量的时间序列异常检测,检测时仅考虑某一个特定指标对系统健康状态的影响,缺乏对多个指标的综合判断,使得检测结果产生误报的可能性增加,从而影响了检测结果的准确率。
4.在机器学习中,维度是指数据集中特征的数量,当数据集的特征数量过多时,会影响模型训练的有效性,从而带来维度灾难的问题。特别是在异常检测中,异常数据往往在低维空间中表现出更加明显的异常特征,而在高维空间中,异常特征会相对隐蔽,不容易被发现,为实现准确及时的设备异常检测带来了极大的挑战。因此,针对多变量时间序列异常检测中的高维复杂性难题,首先需要对数据进行降维操作。现有的降维方法主要分为两种:特征选择和特征提取。其中,特征选择用于过滤原始特征中不相关的或者冗余的特征,保留原始特征集的子集。而特征提取是在原始特征集基础上创建了全新的低维特征集。然而,传统的降维方法如主成分分析法(principal component analysis,pca)、隐马尔可夫模型(hidden markov model,hmm)等,对数据要求较高,不能较好地捕捉变量之间的非线性关系。目前随着神经网络的发展,许多深度生成模型也被用于处理多变量时间序列特征工程,与传统方法相比,深度生成算法具有强大的从复杂特征中自动提取高效表示的能力,在处理非线性和高维数据方便表现出巨大的潜力。本发明选取了两种具有强大的分布拟合和复杂特征学习能力的深度生成模型——自编码器网络(autoencoder,ae)和生成对抗网络,致力于解决多变量时间序列中的设备异常检测问题。


技术实现要素:

5.传统的降维方法如主成分分析法(principal component analysis,pca)、隐马尔可夫模型(hidden markov model,hmm)等,对数据要求较高,不能较好地捕捉变量之间的非线性关系。对此,本文提出了一种基于深度生成模型的lstm多变量时间序列异常检测方法——dg-mtad。该算法采用编码器和生成对抗网络(generative adversarial networks,gan)实现数据在多维特征空间与低维隐空间之间的双向映射,并额外地添加了两个鉴别器提升模型的训练效率,结构上利用长短期记忆网络(long short term memory,lstm)优化模型结构学习时序特征,将gan模型的生成损失与鉴别损失组合作为异常分数实现异常判
决。本文对算法的详细工作原理和流程进行介绍,利用nasa公布的飞机发动机案例进行实验验证,证明了方法的准确性与时效性。
6.实际中,针对多变量数据的高维复杂性问题,本专利提出了一种基于深度生成模型的多变量时间序列异常检测方法,命名为dg-mtad,该模型将编码器嵌入到对抗训练的框架,实现样本数据空间到隐空间的反向学习,避免了由于隐空间中寻最佳逆映射过程所带来的模型准确性和实时性的损耗。并且在算法中增加了两个额外的鉴别器来改进模型的训练过程,进一步提升了编码器和生成器的模型稳定性。
7.针对时间序列数据时序特征的提取问题,所提出的模型dg-mtad采用lstm网络作为算法中编码器、生成器、鉴别器模型的基础结构,可以处理异常检测问题中变量之间的多元相关性,从而更好地解决时间序列数据时序特征的提取问题。
8.针对数据集不平衡或缺少数据标签的场景,由于提出的模型dg-mtad是一种半监督的训练方式,训练过程中仅使用正常的多变量时间序列数据训练算法模型,使得算法在数据集不平衡或缺少数据标签的场景中也能表现出较好的异常检测性能。
9.一种基于生成模型的lstm多变量时间序列异常检测方法,其特征在于,包括如下步骤:
10.步骤1:数据预处理,包括如下子步骤:
11.步骤1.1:数据标准化:
12.采用两种方法对不同特征集进行标准化,当传感器数据随时间变化时,采用零-均值规范化方法(即z-score标准化)进行标准化操作,对于序列x1,x2,

,xn,标准化转换公式如下:
[0013][0014]
此式中,和s分别为训练集变量的均值和标准差,由此得到标准化后新的序列数据y1,y2,

,yn。
[0015]
当传感器数据恒定不变时,我们采用下式进行标准化操作:
[0016][0017]
步骤1.2:数据标签标定:
[0018]
对于每一个待测设备,规定运行周期中的正常采样数据作为正常数据进行训练;根据先前工作研究所得出的数据集阈值先验知识,将检测出的退化变点以后的数据标记为异常,以此进行算法评估。
[0019]
步骤1.3:数据集划分:
[0020]
将待测设备数据集按合适的比例进行划分,对应得到其训练集、验证集、测试集;
[0021]
步骤1.4:数据切片
[0022]
采用滑动窗口的方法对数据集进行切片处理,将某个点的检测转化为对点所在区间的检测;
[0023]
步骤2:dg-mtad算法实现异常检测
[0024]
步骤2.1:dg-mtad算法模型训练
[0025]
dg-mtad算法模型由编码器e、生成器g以及3个鉴别器d1,d2,d3组成,生成器g实现
隐空间中的随机噪声z向真实样本数据空间中生成样本g(z)的映射;编码器e将真实样本x编码为隐空间的高效表示e(x),从而实现不同空间下的双向学习过程。
[0026]
在模型训练阶段,首先将真实序列数据输入到编码器e中,同时将隐空间中的随机噪声数据输入到生成器g中,然后将编码器e与生成器g的输入、输出结果分别进行组合,一同输入到鉴别器d1中进行判断,此外,算法模型中还增加了鉴别器d2和鉴别器d3,以实现对生成器和编码器输出结果的进一步约束。其中鉴别器d2的输入是生成器g的输出和真实样本x,鉴别器d3的输入是编码器e的输出样本和隐空间的随机噪声。通过多轮的对抗训练最小化鉴别器的输入数据差异,最终在获得足够敏感的鉴别器模型参数的同时,使得编码器与生成器能够生成与目标输出尽可能相似的数据来“欺骗”鉴别器。
[0027]
dg-mtad算法模型中一共采用了3个鉴别器,其中:
[0028]
鉴别器1(d1)用于评估样本来自真实数据x而不是生成器g(z)的可能性,将样本数据空间中的真实样本x与真实样本编码为隐空间的高效表示e(x)以及隐空间中的随机噪声z与真实样本的生成样本g(z)进行组合作为d1训练过程中的输入,通过如下的目标函数进行对抗训练:
[0029][0030]
鉴别器2(d2)用于评估g(e(x))与真实数据x的相似度,g(e(x))是将编码器e的输出输入到生成器g中进行重构,将真实样本数据x与随机噪声以及真实样本数据x和g(e(x))进行组合作为d2的输入,训练过程中d2的目标函数如下:
[0031][0032]
鉴别器3(d3)能够使得e(g(z))与z尽可能相似,e(g(z))是对生成样本g(z)编码后的隐空间表示,它的输入由随机噪声z以及z和e(g(z))组成,d3目标函数如下:
[0033][0034]
因此,dg-mtad算法模型的总体目标函数包含以上三个鉴别器的损失函数,具体定义如下:
[0035][0036]
式中,v(d1,e,g),v(d2,e,g),v(d3,e,g)分别为3个鉴别器对抗训练的目标函数。通过多轮对抗训练不仅训练好了鉴别器的参数,而且使得编码器和生成器生成与目标输出尽可能相似的数据,至此,完成了dg-mtad模型的训练过程。
[0037]
步骤2.2:异常检测实现
[0038]
dg-mtad算法模型中的异常检测部分是通过比较gan模型中生成样本与真实样本的差异,利用正常类型的样本重构误差小而异常类型的样本重构误差大的原理实现的。将测试集样本输入到训练好的自编码器、生成器和鉴别器2模型中进行重构和鉴别,然后计算异常分数进行异常判断。dg-mtad算法模型的异常分数计算由以下两部分组成:
[0039]
(1)鉴别损失:
[0040]
由通过如下式子表示异常分数中的鉴别损失:
[0041]
l
dis
=d2(x
test
)
ꢀꢀꢀ
(6)
[0042]
(2)生成损失:
[0043]
生成损失的计算公式如下:
[0044][0045]
所以,dg-mtad算法模型的异常分数计算公式如下:
[0046][0047]
其中,为鉴别损失的权重参数,用于调节鉴别损失与生成损失对异常分数的影响比例。将该值与模型训练过程中训练好的阈值θ进行比较,从而完成异常判定。
[0048]
由于在样本预处理中需要进行滑动窗口处理,一些时刻的样本参与了多次异常分数计算过程,一些时刻的样本异常分数只计算了一次,我们采用每个时刻样本的平均异常分数作为该时刻的异常分数。
[0049]
本发明的有益效果是:dg-mtad模型在精确度、召回率、f1分数三个评价指标上均实现了90%以上的准确率,证明异常检测算法处理多变量时间序列的有效性,且异常识别的准确性高。通过对比其它三种方法:lstm-vae,mad-gan,vae-gan进一步证明了所提方法对多变量时间序列异常检测的准确性。通过分析dg-mtad算法与其它三种模型的平均训练时间差异,说明了算法的时效性较好,便于应用。另一方面训练时间越短,说明模型结构比较简单。实验中,在处理取得发动机多变量时间序列异常检测准确性问题中最好的表现,实验证明了dg-mtad方法的优越性。
附图说明
[0050]
图1是典型编码器的网络结构。
[0051]
图2是自编码器的训练过程。
[0052]
图3是生成对抗网络的训练过程。
[0053]
图4是本发明dg-mtad算法实现框架。
[0054]
图5是所提出模型dg-mtad与其它三种模型的平均训练时间对比。
具体实施例
[0055]
本实施例针对(nasa)公开发布的飞机燃气涡轮发动机数据集——fd001数据集,进行本专利所提出的lstm多变量时间序列异常检测方法的过程示意。
[0056]
该方法过程具体如下:
[0057]
(1)数据集介绍与数据预处理
[0058]
选取的数据集为由(nasa)公开发布的飞机燃气涡轮发动机数据集——fd001数据集,进行数据标准化、数据标签标定、数据集划分、数据切片。
[0059]
(2)搭建一组由编码器、生成器和鉴别器组成的dg-mtad算法模型。
[0060]
在dg-mtad算法中加入bigan算法的思想,在增加了编码器结构用于学习数据样本空间到隐空间的逆映射,并且相应的增加了两个鉴别器对生成器与编码器输出做进一步约束,从而获得深度生成模型的多变量时间序列异常检测模型。此外,为了处理时间序列数据,提出了采用lstm网络构建算法中的生成器、鉴别器和编码器模型。各结构的网络模型层数如下表1:
[0061]
表1网络模型层数设置
[0062][0063][0064]
dg-mtad算法实验中的所确定的其他模型参数设置如下表2,剩余未指出的模型参数均为默认值。
[0065]
表2模型其它参数设置
[0066]
gan、ae与lstm模型,为了证明方法的有效性,与当前应用较为广泛且模型结构相似的算法进行对比:其中,lstm-vae算法利用lstm替换vae的前馈网络得到改进的lstm与vae相结合的模型,mad-gan算法将lstm作为g络中生成器和鉴别器的结构,解决时序数据多变量之间的交互问题;lstm-vae-gan算法中同样地将lstm、vae与gan进行结合。
[0067]
(3)dg-mtad算法训练和测试过程用伪代码表示
[0068]
[0069][0070]
(4)dg-mtad算法验证
[0071]
所提出的模型准确性与其他模型的性能对比如下表3:
[0072]
表3 dg-mtad与其他模型的准确性对比
[0073][0074]
通过分析dg-mtad算法的准确性对比结果,可以得以下结论:
[0075]

所提出的dg-mtad模型在三个评价指标上均实现了90%以上的准确率,证明异常检测算法处理多变量时间序列的有效性,且异常识别的准确性高。通过对比其它三种方法:lstm-vae,mad-gan,vae-gan进一步证明了所提方法对多变量时间序列异常检测的准确性。同时可以得出对于发动机多变量时间序列异常检测问题,模型准确性性能的排序:
[0076]
dg-mtad》lstm-vae-gan》mad-gan》lstm-vae;
[0077]
通过分析dg-mtad算法的时效性对比结果,可以得以下结论:
[0078]

所提出模型dg-mtad与其它三种模型的平均训练时间差异,训练时长:mad-gan》lstm-vae-gan》dg-mtad》lstm-vae。训练时间一方面说明了算法的时效性,训练时间越短,方法时效性越好,更加便于应用;另一方面训练时间越短,模型结构越简单,相同结构下算法路线更合理。因此得lstm-vae模型是最简单的所以训练时间最短;mad-gan模型算法路线最为复杂,训练时间最长;而lstm-vae-gan与dg-mtad模型结构相似,并且都采用编码器反向学习优化算法路线,但是由于所提出的dg-mtad方法额外增加了两个鉴别器使得训练过程中编码器和生成器目的性更强,带来了训练时间的缩短;
[0079]

综合准确性对比与时效性对比结果,评估上述四种方法得出,所提dg-mtad方法能够在具有较好时效性的基础上,取得发动机多变量时间序列异常检测准确性问题中最好的表现,实验证明了dg-mtad方法的优越性。
[0080]
通过gan模型作为基准模型(baseline)进行模型叠加,准确性对比如下表4:
[0081]
表4 gan模型作为基准模型(baseline)进行模型叠加准确性对比
[0082][0083]
通过对baseline(gan)模型的层层叠加带来模型性能变化的记录,观察表格中评价指标的变化,可以得到以下分析结论:baseline与lstm+baseline、ae+baseline与lstm+ae+baseline分别进行分组对比,证明了添加lstm网络能够较大程度的提升模型性能。这是由于lstm网络具有较强的时间序列处理能力,能够保留较长序列中长期和短期的记忆信息,丰富了模型时序特征的提取,从而使模型获得更准确的异常检测能力。将baseline(gan)与ae+baseline、lstm+baseline与lstm+ae+baseline分别对比,结果证明了通过加入编码器模型性能得到了一定程度的改善。这是由于编码器能够对高维数据进行降维降噪,从而改善对模型对高维时间序列的检测性能。并且通过上述两组结果对比,进一步地证明了异常检测问题中处理时间序列数据时序关系的必要性;实验结果证明了模型叠加的有效性。叠加后获得的dg-mtad的f1达到0.923,远高于baseline(gan)模型,效果明显,说明所提出的dg-mtad算法通过结合lstm处理时间序列时序特征的优势、编码器降维降噪的优势以及gan模型中对抗训练获得强大的数据分布拟合能力与高维数据学习能力,从而实现了对多变量时间序列异常检测问题更好的检测效果。


文章投稿或转载声明

本文链接:http://www.wtabcd.cn/zhuanli/patent-9-852-0.html

来源:专利查询检索下载-实用文体写作网版权所有,转载请保留出处。本站文章发布于 2022-11-27 21:13:28

发表评论

验证码:
用户名: 密码: 匿名发表
评论列表 (有 条评论
2人围观
参与讨论