MEMTO: Memory-guided Transformer for Multivariate Time Series Anomaly Detection

系列文章目录

MEMTO:多变量时间序列异常检测的内存导向变压器 NeurIPS 2023



摘要

由于复杂的时间依赖性和变量间相关性,在现实世界的多变量时间序列数据中检测异常具有挑战性。近年来,基于重构的深度模型被广泛用于解决这一问题。然而,这些方法仍然存在过度一般化的问题,无法提供一致的高性能。为了解决这个问题,我们提出了MEMTO,一种使用基于重构的方法的内存引导转换器。它被设计成包含一个新颖的记忆模块,该模块可以学习每个记忆项应根据输入数据更新的程度。为了稳定训练过程,我们使用了一个两阶段的训练范式,其中包括使用K-means聚类来初始化记忆项。此外,我们引入了一种基于二维偏差的检测准则,该准则考虑输入空间和潜在空间计算异常分数。我们对来自不同领域的五个真实数据集进行了评估,该方法的平均异常检测f1得分为95.74%,显著优于之前的最先进方法。我们还进行了广泛的实验,以经验验证我们提出的模型的关键组件的有效性。


提示:以下是本篇文章正文内容

一、介绍

随着信息物理系统的发展,大量的时间序列数据从众多传感器中不断收集。水处理设施、太空探测器等关键基础设施故障导致的异常,可能会造成致命的财产损失。多变量时间序列异常检测的任务是识别多变量时间序列的各个时间戳是否正常或异常。由于严重的数据不平衡和未标记异常的普遍存在,在现实场景中异常检测是具有挑战性的。为了解决这些挑战,我们将这个问题表述为一个无监督学习任务。该方法的基本假设是训练数据仅由正态样本组成[25,42]。

传统的无监督学习方法如单类支持向量机(OC-SVM)[28]、支持向量数据描述(SVDD)[35]、隔离森林[20]、局部离群因子(LOF)[5]等已被广泛用于异常检测任务。近年来,结合深度表示学习的密度估计方法如DAGMM[45]和MPPCACD[41]也被提出。对于基于聚类的方法,Deep SVDD[25]在使用深度神经网络训练的特征空间中找到包含大多数正常样本的最小超球。然而,由于无法捕获动态非线性时间依赖性和复杂的变量间相关性,它们在时间序列域中表现出较差的性能。为序列数据量身定制的深度模型已经被引入来解决这些固有的挑战[30,7,29]。THOC[29]采用可微层次聚类机制,将不同分辨率的不同尺度时间特征进行组合。使用多个超球以不同分辨率表示每个正常模式,提高了捕获时间序列数据复杂时间特征的表示能力。

最近深度方法的主要类型之一是基于重构的方法,该方法使用由重建输入的自监督借口任务训练的编码器-解码器架构。该方法期望对正常样本进行准确的重构,而对异常样本进行高误差的重构。早期的方法包括基于lstm的编码器-解码器模型[22]和LSTM-VAE[23]。OmniAnomaly[31]和InterFusion[19]是由LSTM-VAE扩展而来的基于随机递归神经网络的模型。基于重建的方法的另一个分支是深度生成模型。MAD-GAN[17]和BeatGAN[42]是为时间序列异常检测量身定制的生成对抗网络[9]变体。最近提出的异常变压器[40]引入了异常-注意机制来同时模拟先验关联和序列关联。然而,据我们所知,现有的基于重构的方法可能存在过度泛化的问题,即异常输入被重构得太好[8,24]。如果编码器提取异常的独特特征,或者解码器对异常编码向量具有过度的解码能力,则可能发生这种情况。

本文提出了一种新的基于重构的多变量时间序列异常检测方法——记忆导向变压器。门控存储器模块是MEMTO的关键组件之一,它包括表示数据中正常模式的原型特征的项。我们采用增量方法来训练门控存储模块中的单个项目。它根据输入数据确定每个现有项目的更新程度。这种方法使MEMTO能够以更加数据驱动的方式适应各种正常模式。利用存储在存储器中正常模式的特征重构异常样本可以得到与正常样本相似的重构输出。在这种情况下,MEMTO很难重建异常,从而释放了过度泛化的问题。此外,我们已经注意到,如果随机初始化记忆项,增量更新记忆项会导致训练不稳定。因此,我们提出了一个两阶段的训练范式,通过K-means聚类将正常原型模式的归纳偏差注入到记忆项目中,以确保训练的稳定性。此外,我们的观察表明,异常的潜在表征与正常时间点的记忆项目相比,距离要远得多,因为每个项目都包含一个正常模式的原型。因此,在计算异常分数时,我们试图充分利用记忆项目存储正常模式的原型特征的性质。我们引入了一种基于二维偏差的检测准则,它综合考虑了输入和潜在空间。我们的方法已经在五个标准基准上进行了测试,其中包括实际应用程序。实验结果表明,与现有方法相比,该方法是有效的,可以获得最先进的异常检测结果。本文的贡献有四个方面:

•我们提出的MEMTO是第一个使用门控存储模块的多变量时间序列异常检测方法,该方法以数据驱动的方式适应各种正常模式。

•我们提出了一种两阶段训练范式,这是一种普遍适用的方法,旨在增强基于记忆模块的模型的稳定性和鲁棒性。

•我们在在线检测过程中提出了一种基于二维偏差的检测准则。它同时考虑潜在空间和输入空间,对数据中的信息进行综合聚合。

•MEMTO在五个真实世界的基准数据集上实现了最先进的结果。广泛的烧蚀研究证明了MEMTO关键元件的有效性。

二、相关工作

在本节中,我们将简要介绍内存网络。[11,38]是对可检索和写入的外部记忆的早期研究。[34]提出了改进版本的记忆网络[38],它使用注意机制[3]来检索记忆条目,因此由于采用端到端训练方式,需要较少的训练监督。近年来,人们尝试将记忆网络应用于各个领域。自然语言处理包括问答[16,39,11,34]。在计算机视觉中,有视频表示学习[12]、单点学习[12][14,6,27]和文本到图像合成[44]。此外,也有一些研究将记忆网络用于计算机视觉中的异常检测[8,24,21]。虽然MemAE[8]是第一个将内存网络集成到自编码器架构中的,但它缺乏显式的内存更新过程。MNAD[24]提出了一种更新内存的独特策略,该策略涉及显式地在内存项中存储正常数据的各种正常模式。尽管如此,这种方法只是向每个内存项添加相关查询的加权和,而不控制向现有内存项注入新信息的程度。然而,我们在MEMTO中的门控内存模块是第一个以数据驱动的方式适应各种正常模式的,通过学习如何密集地更新每个现有的内存项来响应新的正常模式。

在这里插入图片描述
图1:拟议MEMTO的说明。不知道对不对,描述了门控存储器更新阶段的更新门ψ,它控制着更新项的程度。红色⊕表示查询和检索到的记忆项的连接。“弱解码器”代表两个完全连接的层。

三、方法

3.1 MEMTO的总体描述

我们将原始时间序列D定义为子序列 D = { X 1 , … , X N } D=\{X^1,\ldots,X^N\} D={X1,,XN},其中N表示子级数的总数。每个子序列 X s ∈ R L × n X^{s}\in\mathbb{R}^{L\times n} XsRL×n是一个时间戳序列 [ x 1 s , … , x L s ] \left[x_{1}^{s},\ldots,x_{L}^{s}\right] [x1s,,xLs]。L, n, x t s ∈ R n x_{t}^{s}\in\mathbb{R}^{n} xtsRn分别表示子序列长度,表示输入维数,表示t时刻的时间戳。 q s = [ q 1 s , … , q L s ] ∈ R L × C q^{s}=[q_{1}^{s},\ldots,q_{L}^{s}]\in\mathbb{R}^{L\times C} qs=[q1s,,qLs]RL×C X s X^{s} Xs对应的编码器输出特征(即查询序列),其中C为潜在维数。 q t s ∈ R C ( t = 1 , … , L ) \begin{aligned}q_{t}^{s}\in\mathbb{R}^{C}(t=1,\ldots,L)\end{aligned} qtsRC(t=1,,L)是时刻t的单个查询向量(即查询)。

图1展示了MEMTO的整体架构,它主要由带有门控存储器模块的编码器-解码器架构组成。首先将输入子系列 X s X^{s} Xs馈送到编码器,然后将编码器输出特征用作查询,以检索相关项或更新门控内存模块中的项。解码器的输入是更新后的查询: q ^ t s ∈ R 2 C   ( t = 1 , … , L ) , \hat{q}_{t}^{s}\in\mathbb{R}^{2C}~(t=1,\ldots,L), q^tsR2C (t=1,,L),,它们是查询 q t r s q_{t_{\mathrm{r}}}^{s} qtrs和检索到的记忆项 q t s ∈ R C {q}_{t}^{s}\in\mathbb{R}^{C} qtsRC的组合特征。解码器将更新后的查询序列映射为: q ^ s = [ q ^ 1 s , … , q ^ L s ] \hat{q}^{s}=[\hat{q}_{1}^{s},\ldots,\hat{q}_{L}^{s}] q^s=[q^1s,,q^Ls]返回到输入空间,输出重构后的输入子序列 X ^ s ∈ R L × n \hat{X}^{s}\in\mathbb{R}^{L\times n} X^sRL×n。算法2显示了我们在附录B中提出的模型的整体机制。

3.1.1编码器和解码器

众所周知,Transformer[36]可以捕获时间序列数据[43]中的长期复杂时间模式。MEMTO使用变压器编码器将输入子序列投射到潜在空间。相反,我们采用由两个完全连接的层组成的弱解码器。至关重要的是,解码器不应该过于强大,因为这可能导致其性能独立于编码器编码输入时间序列的能力的情况。在极端情况下,由多个深层组成的强解码器甚至可以从不包含输入数据[37]信息的随机噪声中准确地生成输入数据。

3.1.2Gated memory module门控内存模块

为了解决基于重构的模型中的过度泛化问题,我们引入了一种新的内存模块机制,该机制以数据驱动的方式适应各种正常模式。在这种方法中,存储在内存模块中的每个项目都代表正常数据的原型特征。我们提出的两阶段迭代更新过程允许我们使用存储在内存模块中的正常数据的原型模式提取输入子序列的潜在表示,这可以作为正则化来减轻过度泛化。该机制旨在限制编码器捕获异常独特属性的能力,从而使重建异常数据更具挑战性。

Gated memory update stage 内存项 m i ∈ R C ( i = 1 , … , M ) . m_{i}\in\mathbb{R}^{C}(i=1,\ldots,M). miRC(i=1,,M).,其中M表示存储项的数量,它被训练成包含输入时间序列[24]的原型正常模式。我们期望内存项包含与正常时间戳相对应的所有查询 q t s q_{t}^{s} qts的原型。因此,我们采用一种增量的方法,通过定义查询条件下的内存注意 v i , t s v_{i,t}^{s} vi,ts来更新内存项。它由softmax计算每个内存项和查询之间的点积,如下所示:
在这里插入图片描述

其中τ表示温度超参数。我们在我们的记忆模块机制中提出了一个更新门$\psi $,以根据各种正常模式灵活地训练每个记忆项。这个门控制从查询中获得的新正常模式注入到存储在内存项中的现有原型正常模式的程度。它允许我们的模型以数据驱动的方式学习每个现有内存项应该更新到什么程度。我们的内存更新机制的方程是:
在这里插入图片描述

其中 U ψ   a n d   W ψ U_{\psi}\mathrm{~and~}W_{\psi} Uψ and Wψ分别表示线性投影,σ和◦分别表示s型激活和逐元乘法。记忆更新阶段只在训练阶段执行。

Query update stage 在查询更新阶段,我们生成更新的查询 q ^ t s \hat{q}_{t}^{s} q^ts,然后将其作为输入馈送到解码器。与门控内存更新阶段类似,我们定义了内存条件查询关注 w t , i s w_{t,i}^{s} wt,is,由softmax计算每个查询与内存项之间的点积,如下所示:
在这里插入图片描述
然后,将检索到的记忆项 m i m_{i} mi加权和,取 w t , i s w_{t,i}^{s} wt,is作为其对应的权值,得到检索到的记忆项 q ~ t s \tilde{q}_t^s q~ts:

在这里插入图片描述

查询 q t s q_{t}^{s} qts和检索到的记忆项 q ~ t s \tilde{q}_{t}^{s} q~ts沿着特征维度连接,构成更新的查询 q ^ t s \hat{q}_{t}^{s} q^ts。更新后的查询: q ^ t s ( t = 1 , … , L ) \hat{q}_{t}^{s}(t=1,\ldots,L) q^ts(t=1,,L)是解码器的新鲁棒输入,因为 q t s q_{t}^{s} qts中异常的独特属性可以被内存项中的相关正常模式抵消。异常的重建输出通常与正常样本相似,这使得异常的重建更具挑战性。这种强化的难度有助于更有效地区分正常和异常数据,防止过度泛化。

3.2 Training

对于自我监督的借口任务,我们在训练的同时尽量减少重建损失。重构损耗 L r e c L_{rec} Lrec定义为 X s   a n d   X ^ s X^s\mathrm{~and~}\hat{X}^s Xs and X^s之间的L2损耗:

在这里插入图片描述

密集的 W s W^{s} Ws使得一些异常有可能被很好地重构[8],其中 W s W^{s} Ws表示Ws的矩阵形式 w t , i s ( t = 1 , … , L ˉ ) w_{t,i}^{s}(t=1,\ldots,\bar{L}) wt,is(t=1,,Lˉ) ( i = 1 , … , M ) (i=1,\ldots,M) (i=1,,M)。因此,为了保证在内存中只检索有限数量的密切相关的标准原型,我们引入熵损失 L e n t r L_{entr} Lentr作为我们对Ws进行稀疏化正则化的辅助损失:

在这里插入图片描述
目标函数L为最小化损失项(6)和(7)的组合,如下:在这里插入图片描述
其中λ表示权重系数。

3.3 Two-phase training paradigm

在这里插入图片描述
用K-means聚类初始化内存项 由于我们增量地更新记忆项,因此如果随机初始化这些项,则在训练过程中存在不稳定的风险。我们提出了一种新的两阶段训练范式,该范式使用聚类方法将记忆项的初始值设置为数据的近似正常原型模式。

在第一阶段,MEMTO通过重建输入的自监督任务进行训练,经过训练的MEMTO编码器对随机抽样的10%的训练数据生成查询。然后,我们应用K-means聚类算法对查询进行聚类,并将每个质心指定为记忆项的初始值。在第二阶段,MEMTO在异常检测任务上使用这些初始化良好的项进行训练。算法1概述了使用K-means聚类的内存模块初始化。在我们所有的实验中,我们使用K-means聚类作为基线聚类方法。我们的主张并不是K-means聚类是各种聚类方法中的最佳选择,而是两阶段训练范式的有效性,该范式允许根据数据集的类型选择适当的聚类算法。

3.4 Anomaly criterion

我们引入了一个综合考虑输入和潜在空间的基于二维偏差的检测准则。我们将潜伏空间偏差(Latent Space Deviation, LSD)在时间点t处的 ( L S D ) L S D ( q t s , m ) \mathrm{(LSD)}LSD(q_{t}^{s},m) (LSD)LSD(qts,m)定义为每个查询在潜伏空间(9)中与最近的记忆项 m t s , p o s m_{t}^{s,pos} mts,pos之间的距离。异常时间点的LSD会比正常时间点的LSD大,因为每个记忆项都包含一个正常模式的原型。另外,我们定义时刻t的输入空间偏差(Input Space Deviation, ISD) I S D ( X t , : s , X ^ t , : s ) ISD(X_{t,:}^{s},\hat{X}_{t,:}^{s}) ISD(Xt,:s,X^t,:s)作为输入 X t , : s ∈ R n X_{t,:}^{s}\in\mathbb{R}^{n} Xt,:sRn与重构输入 X ^ t , : s ∈ R n \hat{X}_{t,:}^{s}\in\mathbb{R}^{n} X^t,:sRn在输入空间(10)中的距离。

在这里插入图片描述
我们将归一化LSD与ISD相乘,用LSD作为权重放大ISD的正异常差:

在这里插入图片描述
其中◦为元素明智乘法, A ( X s ) ∈ R L A(X^s)\in\mathbb{R}^L A(Xs)RL为每个时间点的异常评分。利用潜在空间(即潜在空间偏差)和输入空间(即输入空间偏差)的正常-异常区分标准可以获得更好的检测性能。

四、实验

表1:五个真实世界数据集上的精度§、召回率®、F1-score(F1)结果(以%计)。“是的。‘A.T和’ avg '表示异常变压器和平均值。我们重现MEMTO和异常变压器的结果,同时采用[40]报告的性能作为其他基线。
在这里插入图片描述

4.1实验设置

我们在五个真实世界的多元时间序列数据集上评估MEMTO。(1)服务器机器数据集(SMD[33])是一家大型互联网公司发布的为期5周的38维大型数据集。(ii & iii)火星科学实验室漫游车(MSL)和土壤湿度主动式被动卫星(SMAP)是NASA b[13]发布的公开数据,分别为55维和38维。(iv)安全水处理(SWaT[18])由六个阶段的基础设施过程组成,51个传感器连续运行11天。(v) Pooled Server Metrics (PSM[1])由来自eBay的不同应用服务器节点的26维数据组成。有关数据集的更多详细信息可在附录A中找到。

我们通过应用长度为100的非重叠滑动窗口来生成子序列,以获得每个数据集的固定长度输入。我们将训练数据分成80%用于训练和20%用于验证。关于超参数设置的更详细信息可以在附录a中找到。二元分类的标准评估指标,包括精度、召回率和f1分数,未能考虑到时间序列数据的顺序属性,使得它们在评估上下文和集体异常方面不足[10,4]。因此,我们使用这些指标的调整版本,这些指标已成为时间序列异常检测中广泛使用的评估指标[32,2]。这里使用点调整方法,如果检测到单个时间戳异常,则认为包含该时间戳的异常段中的每个时间点都被正确检测到。

4.2主要结果

在主要实验中,我们通过将MEMTO与12种模型进行比较,来评估MEMTO在多变量时间序列异常检测任务中的性能。传统的机器学习基线是LOF[5]、OC-SVM[28]和隔离森林[20]。我们还比较了几种最新的深度模型,包括密度估计模型(MPPCAD[41]和DAGMM[45])、基于聚类的模型(deep - svdd[26]和THOC[29])和基于重建的模型(LSTM-VAE[23]、BeatGAN[42]、OmniAnomaly[31]、InterFusion[19]和Anomaly Transformer[40])。

表1给出了5个多元时间序列异常检测任务的评价结果。总体而言,使用变压器(如MEMTO和Anomaly Transformer)的模型在所有数据集上始终表现出高性能,f1得分超过90%。然而,与之前最先进的模型Anomaly Transformer相比,MEMTO在基准测试中的平均f1分数大幅提高,从93.62%提高到95.74%。MEMTO通过调整数据中存在的各种正常模式,并使用数据驱动的方法创建这些模式的原型,从而有效地检测复杂时间序列数据中的异常,从而获得新的最先进的结果。

4.3消融研究

在本节中,我们通过对三个关键组成部分:异常准则、记忆模块和训练范式的一系列研究,全面分析了所提出的MEMTO模型。附录C显示了消融研究的更详细的分析。
在这里插入图片描述
在这里插入图片描述
Anomaly criterion 与其他时间序列异常检测模型不同,MEMTO同时考虑输入和潜在空间来获得异常分数。表2给出了MEMTO使用不同异常检测标准的性能。仅使用ISD或LSD两种异常标准中的一种,平均f1得分较低,分别为69.23%和60.16%。特别是,它们在SWaT上表现出极低的性能,这表明跨数据集的性能差异很大。相比之下,我们提出的方法同时使用ISD和LSD,在所有数据集上始终显示出最高的性能,与其他方法相比,方差相对较低。

Memory module 在这项研究中,我们评估了我们的新型门控记忆模块在异常检测任务中的能力。表3显示,去除门控内存模块导致f1平均分数显著下降32.56%,特别是SWaT上的f1分数显著下降到不到三分之一。为了进一步验证我们方法的有效性,我们还通过使用相同的实验设置替换MEMTO中的内存模块,将其与两种现有的内存模块机制(MemAE[8]和MNAD[24])进行比较。我们的研究结果表明,简单地添加显式内存更新过程并不一定会提高性能,MemAE和MNAD之间的性能比较证明了这一点。然而,当我们应用我们所建议的内存模块,将更新门集成到内存更新过程中时,可以观察到显著的性能改进。我们的方法在不同领域的数据集异常检测任务中证明了它的优越性。

Training paradigm为了提高训练过程中记忆项更新的稳定性,我们使用K-means聚类来初始化记忆项的值,而不是随机初始化。实验结果有力地证明了MEMTO两阶段训练模式的有效性。表3表明,与应用K-means聚类相比,不应用K-means聚类导致MEMTO的平均f1分数下降8.4p%。在MemAE和MNAD中,分数分别下降了14.7%和15.4%,这表明我们提出的训练范式可以普遍适用于基于内存模块的模型。

4.4讨论与分析

在这里插入图片描述
在这里插入图片描述

LSD的统计分析
我们进一步探索门控存储模块在数据中捕获原型正常模式的优越能力。图2展示了三个内存模块(our、MemAE和MNAD)上正常和异常样本的LSD值分布的箱形图。我们计算正常和异常样本的平均LSD值如下: E q + ∈ N o r m a l L S D ( q + , m ) \begin{aligned}\mathbb{E}_{q^+\in Normal}&LSD(q^+,m)\end{aligned} Eq+NormalLSD(q+,m) E q − ∈ A b n o r m a l L S D ( q − , m ) \mathbb{E}_{q^-\in Abnormal}LSD(q^-,m) EqAbnormalLSD(q,m),其中m为固定记忆项。每种类型内存模块的平均LSD值见附录D。

我们计算测试数据集中正常和异常样本的平均LSD值之间的比率。表4给出了使用三种不同内存模块时每个数据集的比率值。我们提出的方法在大多数数据集中始终显示比其他方法更小的比率值。这表明门控内存模块中存储的项目与异常样本查询的距离比正常样本查询的距离要远,两者之间的差距比其他类型的内存模块更大。它支持我们的断言,即门控存储器模块比其他比较的方法更好地编码数据中的正常模式。
在这里插入图片描述
图3:SMD上异常评分的可视化。每个图在y轴上显示异常分数,在x轴上显示时间。黄色阴影区域表示异常标签的真实值,蓝色线表示模型预测的异常分数,红色虚线表示阈值。附录D中包含了不同数据集的附加图。

Anomaly score 我们从所有数据集中随机提取长度为150的时间段进行实验,以证明基于二维偏差的检测准则的有效性。本实验中使用的基线包括利用LSD或ISD作为检测标准的MEMTO和以前最先进的模型异常变压器。图3展示了与一个段内的每个时间戳相关联的异常评分和真实值标签。结果表明,与基线相比,基于二维偏差的准则能较好地检测出异常。与基于关联的异常变压器检测准则相比,基于二维偏差的检测准则检测精度高,误报率低。此外,如果去除潜在或输入空间方面,MEMTO表现出不稳定的性能。而仅使用LSD作为检测标准的MEMTO在异常分数中表现出类似的模式,异常时间点的分数未能超过阈值。这表明考虑这两个因素对于稳健的性能至关重要,因为它放大了基于异常分数的正常和异常时间点之间的差距。在这里插入图片描述
Computational efficiency 我们分别测量了使用门控记忆模块和不使用两阶段训练范式的训练时间。结果如表5所示。当训练没有门控存储器模块的MEMTO时,参数数量和训练时间都减少了。然而,这导致性能下降26.27%,如表3所示。此外,两阶段训练范式的训练持续时间比没有两阶段训练范式的训练持续时间增加了约2.45倍,但推理时间不受影响。值得注意的是,两阶段训练模式提高了10.4%的绩效,即使在延长训练时间的情况下也证明了它的采用是合理的。

我们进一步比较了MEMTO和之前最先进的模型异常变压器之间的计算效率。Anomaly Transformer计算并保留每个编码器层的序列关联和先验关联,然后将各层之间的关联差异取平均值。在推理过程中执行此过程在计算上要求很高,而MEMTO只需要在每个查询和几个内存项之间进行点积运算,因此更简单,推理时间更短。如表5所示,由于采用两阶段训练范式,MEMTO需要的训练时间是Anomaly Transformer的两倍多,但值得注意的是,在考虑实际应用的关键推理时间时,MEMTO要快1.17秒。

在这里插入图片描述
此外,考虑到MEMTO门控存储模块内的存储项目数量增加,计算成本也随之增加,我们进行了实验来分析存储项目的最佳数量。图4说明了MEMTO的性能与所使用的内存项数量之间的关系。结果表明,MEMTO的性能对内存项目的数量具有鲁棒性,因为数据集之间的性能差异很小。因此,在权衡性能和计算复杂度后,我们指定10个内存项作为默认值。我们的研究强调了使用有限数量的记忆项来提取时间序列数据中正常模式的原型特征的有效性。与可能需要数千个记忆项的计算机视觉不同,我们证明在时间序列域中,一个任务只需要10个记忆项。

五、结论

我们介绍了MEMTO,一种基于无监督重构的多变量时间序列异常检测模型。MEMTO中的门控存储器模块自适应捕获响应输入数据的正常模式,并且可以使用两阶段训练范式进行鲁棒训练。我们提出的异常准则综合考虑了二维空间,提高了MEMTO的性能。在真实世界的多变量时间序列基准上进行的大量实验验证了我们提出的模型与现有的竞争模型相比达到了最先进的性能。

Limitations 虽然门控存储器模块的两个更新阶段和基于二维偏差的标准已经提高了性能,但其有效性的彻底理论证明仍有待建立。此外,我们承认我们忽略了视觉检查存储在内存项中的典型正常模式的局限性。在未来,我们将进一步探讨这些问题作为我们研究的一部分。

Broader impacts MEMTO专为检测多变量时间序列数据中的异常而定制,可应用于各种复杂的网络物理系统,如智能工厂,电网,数据中心和车辆。然而,我们强烈反对将其用于与金融犯罪或其他可能产生负面社会后果的应用相关的活动中。

A Training details

我们在MEMTO模型中使用了10个内存项,对应于K-means聚类中的簇数。为了确定异常,我们将阈值设置为来自训练和验证数据的异常得分组合结果的top-p%,并在表6中列出了每个数据集的指定值p,然后是[40]。我们将目标函数λ设为0.01,使用Adam优化器[15],学习率为5e-5,针对训练过程中的验证损失,采用10 epoch的耐心提前停止。我们的实验是在四个NVIDIA GTX 1080 Ti 12GB gpu上使用Pytorch框架进行的。此外,在实验执行过程中,我们还部分引用了[40]的代码。

A.1 Hyperparameter settings

MEMTO的重要超参数通过网格搜索确定,其他超参数根据经验观测设置为常用的默认值。我们执行网格搜索以确定以下范围内每个超参数的值:
在这里插入图片描述
其中lr, τ, M分别表示学习率,softmax函数中的温度,簇数。由于我们将聚类的质心设置为记忆项,因此记忆项的数量与聚类的数量相同。我们将最优超参数设置为:λ为1e-2, lr为5e-5, τ为0.1,M为10。本文中的所有实验都使用相同的超参数进行,而不考虑数据集。

A.2 Dataset

表6:五个基准测试中的详细信息。训练集、验证集和测试集中的样本数量分别在标有“Train”、“Valid”和“test”的列中表示。“p%”列表示实验中使用的异常比率。“Dim”列显示了每个数据集的数据维度大小。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
C.1 Objective function and anomaly criterion
将其中的两项逐一从目标函数中提取,并评价结果的性能。表7展示了在目标函数中同时纳入Lrec和Lentr项的意义。将基于二维偏差的标准应用于仅使用Lrec或Lentr作为损失函数的MEMTO变体,与我们的平均f1分数相比,显示出具有竞争力的性能。这证明了MEMTO对损耗项的鲁棒性。此外,当仅使用ISD或LSD作为异常标准时,这两种情况都显示出明显的性能下降,这强调了将ISD和LSD结合使用对于实现最佳性能的重要性。

C.2 Statistical significance test

我们还执行统计测试,将我们的结果与最新的最先进的模型,异常变压器进行比较。我们进行了t检验,以证明MEMTO和异常变压器之间的显著性能差异。表8中的结果显示,所有数据集的p值都小于0.05,证实了两种模型之间的显著性能差异。

在这里插入图片描述
图5给出了MEMTO在不同解码器层数下的性能。如图5所示,太浅的解码器(例如,单层解码器)性能更差,因为它缺乏足够的容量来准确重构输入数据。另一方面,如果解码器太大(例如,有十层的解码器),它可能变得过于表达,甚至重建异常,而不管编码器的编码能力如何。因此,它可能会导致过度泛化问题,最终会因为过于精确地重建异常而降低异常检测的性能。此外,具有更多参数的更大的解码器层可以增加计算和存储成本。我们的经验发现,考虑到性能和资源成本之间的平衡,两层解码器最适合本文提出的异常检测任务。

D Additional details for discussion

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

图6直观地表示了4.4节中未讨论的基准数据集的异常分数。我们从MSL、PSM、SMAP和SWaT测试数据集中随机抽取长度为150的数据,并绘制每个片段的异常分数。与其他基线相比,从点差法的角度来看,我们提出的方法能够准确地检测异常,假阳性率低。


  • 8
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

萧宛亦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值