Multivariate Time-series Anomaly Detection via Graph Attention Network-2020年的
基于图注意网络的多变量时间序列异常检测
摘要
多元时间序列主要的限制是它们不能明确地捕获不同时间序列之间的关系,从而不可避免地产生假警报。
我们的框架将每个单变量时间序列视为一个单独的特征,并包括两个并行的图注意层,以学习多变量时间序列在时间和特征维度上的复杂依赖关系。此外,我们的方法联合优化了基于预测的模型和基于重建的模型,通过将单个时间戳预测和整个时间序列的重建相结合,获得了更好的时间序列表示。
1 intro
过往的相关工作:LSTM*2,随机 rnn
我们的方法将每个单变量时间序列视为一个单独的特征,并尝试显式地对不同特征之间的相关性建模,而每个时间序列中的时间依赖关系同时建模。
我们模型中的关键成分是两个图注意层,即面向特征的图注意层和面向时间的图注意层。面向特征的图注意层捕获多个特征之间的因果关系,面向时间的图注意层强调时间维度上的依赖关系。此外,我们联合训练了一个基于预测的模型和一个基于重建的模型,以更好地表示时间序列数据。这两个模型可以通过一个联合目标函数同时优化。
两个图注意力层如何结合???
2 相关工作
关于时间序列异常检测的文献很多,可以分为两类。第一类方法通过应用单变量模型[1],[6]-[8]来分析每个单独的时间序列,而第二类方法则将多个时间序列建模为一个统一的实体[2],[4],[9]-[13]。从另一个角度来看,现有的异常检测模型也可以分为两种范式,即基于预测的模型[2],[14],[15]和基于重建的模型[4],[11]-[13]。
A单变量检测
B多变量检测
基于预测的模型
基于重建的模型
MAD-GAN[11]不是独立地处理每个时间序列,而是同时考虑整个变量集,以捕获变量之间的潜在相互作用。GANLi[10]提出了一种新的基于gan的异常检测方法,该方法将gan训练的鉴别器与生成器重建数据与实际样本之间的残差一起部署。LSTM- v AE[12]集成了LSTM与变分自编码器,融合信号和重建预期分布。对于编码,它使用基于lstm的编码器在每个时间步骤中将多元观测及其时间依赖性投射到潜在空间。对于解码,它从潜在表示中估计多元输入的预期分布。
**基于预测的模型专门用于下一个时间戳预测的特征工程,而基于构造的模型善于捕捉整个时间序列的数据分布。**在我们的论文中,我们证明了它们是相互补充的经验。此外,现有的解决方案都没有明确地捕获多个特征之间的相关性,本文着重解决了这一问题,以提高多变量时间序列异常检测的性能。
3 方法
来自同一实体的多个单变量时间序列形成多元时间序列。多元时间序列异常检测旨在检测实体级的异常。
输入N*K,N是时间戳,K是特征维度。用滑动窗口处理长时间序列生成固定长的的输入。多元时间序列异常检测的任务是产生一个输出向量y∈Rn,其中yi∈{0,1}表示第i个时间戳是否为异常。
通过用两个图注意网络并行建模特征间相关性和时间依赖性来解决这个问题,然后用门控循环单元(GRU)网络来捕获顺序数据中的长期依赖性。我们还通过优化联合目标函数来利用基于预测和基于重建的模型的力量。
a 结构分层注意力和融合模型,最后以联和损失函数优化
1)我们在第一层应用核大小为7的1- d卷积来提取每个时间序列输入的高级特征。正如前面的工作[23]所演示的,卷积运算擅长于滑动窗口内的局部特征工程。(短期时间特性)
2)一维卷积层的输出由两个并行图注意(GA T)[5]层处理,强调了多个特征和时间戳之间的关系。
3)我们将1-D卷积层和两个GA T层的输出表示连接起来,将它们馈送到隐藏维数为d1的门控循环单元(GRU)[24]层。该层用于捕获时间序列中的顺序模式。
4)将GRU层的输出并行输入基于预测的模型和基于重构的模型,得到最终结果。我们将基于预测的模型作为一个全连通网络来实现,基于重建的模型采用VAE
b 数据处理
数据归一化(最大最小归一化)
数据清洗:
基于检索和重建的模型对训练数据中的不规则和异常实例非常敏感。为了缓解这一问题,我们采用了一种最先进的单变量异常检测方法,光谱残差(SR),来检测训练数据中每个单独时间序列中的异常时间戳。在[1]之后,我们将阈值设置为3,生成异常检测结果。
那些检测到的异常时间戳将被该时间戳周围的正常值替换。注意,SR是轻量级的,对整个模型增加的开销很少。
c GAT
基本的GAT公式逻辑
面向特征的图注意层:一方面,我们需要检测没有任何先验的多元相关性。
因此,我们将多元时间序列视为一个完整的图,其中每个节点表示某个特征,每条边表示两个对应特征之间的关系。这样,可以通过图注意操作仔细地捕获相邻节点之间的关系。全连通图?
具体来说,每个节点xi由一个序列向量xi = {xi,t|t∈[0,n)}表示,共有k个节点,其中n是时间戳的总数,k是多元特征的总数。该层如图3所示。
**面向时间的图注意层:另一方面,我们利用图注意网络的力量来捕获时间序列中的时间依赖性。我们将滑动窗口内的所有时间戳视为一个完整的图。**具体来说,**节点xt表示时间戳t处的特征向量,其相邻节点包括当前滑动窗口中所有其他时间戳。**这很像transformer,其中序列中的所有单词都由完全连接的自注意操作建模。维度不对,不是滑动窗内的吗?
面向特征图注意层的输出、面向时间的图注意层的输出以及预处理都是一个形状为k × n的矩阵,拼成n*3k
d 联合优化
基于预测的模型给出的是误差RMSE,基于重构的模型给出的是概率,最后用一个超参数结合
4 实验
与SOTA比较
OmniAnomaly的局限性在于没有明确地处理模型中的特征相关性,这是成功检测多元时间序列异常的关键。
我们的面向特征的GAT层就是为了解决这个问题而设计的。这一层的优越性在我们的实验中得到了验证,因为我们的模型在所有三个数据集上都显著且一致地优于OmniAnomaly。
时间信息对于多变量时间序列异常检测也是至关重要的。**DAGMM算法由于没有考虑时间信息,性能不理想。**在我们的模型中,GRU用于捕获长期的时间依赖性,并应用面向时间的GAT层来计算相关时间戳之间的注意力得分。这些设计有助于实现比DAGMM更好的性能,我们还进行了额外的实验(见第五节)来比较不同的设计变化。
基于预测的方法,如LSTM-NDT,在SMAP上有很好的表现,但在MSL和TSA数据集上表现不佳。他们对不同的场景很敏感,因为它不能模拟不可预测的情况。另一方面,基于重建的方法(例如OmniAnomaly)在MSL和TSA数据集上获得了更好的结果。
这表明基于预测的模型和基于重建的模型都有各自的优点,本文提出的联合优化策略有利于最终的性能
不同时延的评估
看不懂
消融实验
分别ban面向时间的层和面向空间的层,GRU虽然可以捕捉时间依赖性但面向时间的图注意力依然不可缺少。GAT可以对不相邻的时间戳之间的长期依赖建模。
正常时的依赖关系和异常时的相关关系会发生变化,
联合优化
基于预测的模型以确定性的方式预测下一个时间戳的实际值,对时间序列的随机性很敏感。另一方面,重构模型通过学习随机变量的分布来缓解这一问题,它对扰动和噪声具有更强的鲁棒性。然而,仍然有一些基于重构的变体无法处理的情况。基于重构的模型能够很好地捕捉数据的全局分布,但它可能会忽略突然的扰动而破坏时间序列的周期性,特别是当值仍然符合正态分布时。
超参分析
列表
7 总结
本文提出了一种新的基于图注意网络的多变量时间序列异常检测框架。通过学习多元时间序列的特征和时间关系,并利用联合优化策略,我们的方法在三个数据集上始终优于其他最先进的模型。此外,我们的模型具有良好的异常诊断能力,可以帮助客户找到异常事件的实际根本原因。
广泛的分析为模型提供了更多的见解,并验证了所提议的体系结构的有效性。未来的工作可能来自两个方面。首先,我们的模型对特征之间的相关性没有先验知识。使用用户反馈或领域先验知识可以提高性能。其次,目前的异常诊断是在相对简单的场景下进行研究。我们可以利用我们的模型来调查更复杂的案件。