前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ICLR 2022 | 通过关联差异进行时序异常检测

ICLR 2022 | 通过关联差异进行时序异常检测

作者头像
VachelHu
发布2022-03-29 15:35:47
1.2K0
发布2022-03-29 15:35:47
举报
文章被收录于专栏:时序人时序人

#TSer#

时间序列学术前沿系列持续更新中 ⛳️

后台回复"讨论",加入讨论组一起交流学习吧 🏃

最近Transformer在统一建模方面表现出了很大的威力,是否可以将Transformer应用到时序异常检测上引起了很多学者的研究兴趣。最近来自清华大学几位学者发现:由于异常的稀有性,异常的关联应主要集中在其相邻的时间点上,这种相邻偏差意味着可以利用关联来区分正常点和异常点。因此,他们提出了一个Anomaly Transformer的模型,发表在今年人工智能顶会ICLR 2022上。

论文地址:https://openreview.net/forum?id=LzQQ89U1qm_

论文源码:未公布

会议介绍

ICLR的英文全称是 The International Conference on Learning Representations,即国际学习表征会议。

ICLR于2013年成立,由图灵奖得主,深度学习三大巨头之二的 Yoshua Bengio 和 Yann LeCun 牵头创办。这个一年一度的会议虽然今年(2022)才办到第九届,但已经被学术研究者们广泛认可,被认为是深度学习领域的顶级会议。

概述

在无监督异常检测中,一类主要的方法侧重于循环网络学习 pointwise representation,通过重建或自回归任务进行自监督,因此一个自然而实用的异常标准是时间点的重构或预测误差。但是由于异常的罕见性,时间点的表示对于复杂的时间模式信息较少,并且由于正常时间点的主导作用,使得异常难以区分。另一类异常检测方法通过显式关系建模方法(explicit association modeling),向量自回归和状态空间模型属于这一类。此外,基于子序列的方法通过计算子序列之间的相似度来检测异常,但在探索更广泛的时间上下文信息时,这些方法无法捕获每个时间点与整个系列之间的细粒度时间关联(只能捕获子序列级别粗粒度的关联)。

因此本文将Transformer引入无监督时序数据异常检测任务。首先提出series-association,这一个特性是直接可以通过Transformer模型来获取,也就是说将 Transformers 应用于时间序列,每个时间点的时间关联可以从自注意力图(self-attention map)中获得,它表示了关联权重在时间维度上所有时间点的分布。每个时间点的关联分布可以为时间上下文提供更丰富的信息描述来描述动态模式,例如时间序列的周期或趋势。

进一步,文中引入了prior-association。这是由于异常的稀有性和正常模式的主导地位,异常时间点很难与整个序列建立较强的关联。因此异常位置的关联应集中在相邻的时间点上,这些时间点由于连续性而更可能包含类似的异常模式。这种 adjacent-concentration inductive bias 被称为prior-association。相比之下,占主导地位的正常时间点可以发现与整个系列的信息关联,而不限于相邻区域。

基于这一观察,文中利用association distribution固有的正态-异常可区分特性, 这是一个新的异常时间点检测标准,通过对每个时间点的prior-association与series-association的距离进行量化,将结果称为 Association Discrepancy。如前所述,由于异常的关联更可能是相邻集中的,因此异常将表现出比正常时间点更小的关联差异。

总的来讲,本文提出Anomaly Transformer来计算 Association Discrepancy,为了计算Association Discrepancy,将self-attention机制更新为Anomaly-Attention机制,它是一个双分支结构,分别对每个时间点的prior-association和series-association进行建模。prior-association使用可学习的高斯核来呈现每个时间点的adjacent-concentration inductive bias ,而series-association对应于从原始序列中学习的自注意力权重。此外,在两个分支之间应用了极大极小策略,可以放大关联差异的正常-异常可区分性,并进一步推导出新的基于关联的准则。

算法模型

由于 Transformer 在异常检测方面的局限性,我们使用 Anomaly-Attention 机制将原始attention更新为 Anomaly Transformer,如下图所示:

Anomaly Transformer 的特点是交替堆叠 Anomaly-Attention blocks 和前馈层。这种堆叠结构有利于从深层多层次特征中学习底层关联。假设模型包含L层以及长度为N的输入时间序列X,则第l层可以表示为:

其中,

表示第l个输出层的维度是

。初始输入

表示对原始序列的嵌入表示。

是第l层的hidden representation。

用于计算association discrepancy。

01

Anomaly Attention

由于原始的自注意力机制不能同时对先验关联和序列关联(prior-association与series-association)进行建模。文中提出了具有两个分支结构的 Anomaly-Attention。

对于prior-association,文中采用了可学习的高斯核来计算与时间距离相关的先验,受益于高斯核的单峰特性,这种设计可以更加关注邻域。文中在高斯核中也采用了可学习的标量参数 σ,使得prior-association可以适应不同的时序模式,例如异常段的不同长度。对于series-association,直接从原始序列进行学习。请注意,这两种形式保持了每个时间点的时间依赖性,这比逐点表示更能提供信息。它们还分别反映了adjacent-concentration prior和学习到的真实关联,其差异应是能够区分正常和异常。对于 l 层,可以获得:

其中

分别是query, key, value 以及学习的scale。Prior-association

是基于可学习参数 σ 以及第 i 元素对应的第 i 时间点来生成。也就是说,对于 i 个时间点,它与第 j 个时间点的association weight 通过高斯核

来计算。更进一步,文中通过除以行的和(row sum)将association weight变换到离散分布

表示series-associations。Softmax 将attention map沿着最后一个维度规范化。因此,

的每一行构成了一个离散分布。

是经过Anomaly-Attention后第 j 层的隐状态。在有h个头的多头(multi-head)的版本中,

,最终的隐状态是每个头计算出来的隐状态的拼接。

02

Association Discrepancy

文中将Association Discrepancy形式化为先验关联和序列关联之间的对称 KL 散度,它表示这两个分布之间的信息增益。我们对来自多个层的关联差异进行平均,以将来自多级特征的关联组合成一个更具信息性的度量:

其中 KL 是 P 和 S 两个离散分布每一行的离散分布,

。最终计算结果的第i个元素对应于时间序列的第i个时间点。根据之前的观测,相比正常点异常点将会表现出更小的

Minimax Association Learning

作为无监督任务,本文采用重构误差来训练模型。重构误差会指导series-association寻找信息最丰富的关联。为了进一步放大正常和异常时间点之间的差异,文中还使用了一个额外的损失来扩大关联差异。由于prior-association的单峰性,discrepancy loss会引导series-association更加关注不相邻的区域,使得异常的重构更加困难,异常的可识别性更强。对于输入序列,损失函数定义为:

其中 X 是原始序列的重构。 λ 是平衡项。当 λ>0 ,目标是扩大关联差异。本文提出了一种极小极大策略以使关联差异更加可区分。

03

Minimax Strategy

直接最大化关联差异会极大地减少高斯核的尺度参数,这使得prior-association缺乏意义。文中提出minima策略。具体地,对于minimize phase,鼓励prior-association 去逼近从原始序列学习到的series-association ,这个过程使得prior-association 适应不同的时间模式。对于maximize phase,文中通过优化series-association以扩大association discrepancy。这个过程迫使series-association更多地关注非相邻的horizon。因此,整合重建损失,两阶段的损失函数是

其中 λ>0 以及

意味着停止关联的梯度反向传播(如一开始的图例所示)。由于 P 在最小化阶段逼近

,因此最大化阶段将对series-association产生更强的约束,迫使时间点更多地关注非相邻区域。在重建损失下,异常比正常时间点更难实现,从而放大了关联差异的正常-异常可区分性。

04

Association-based Anomaly Criterion

文中将归一化的关联差异包含到重建标准中,这将同时利用时间表示和可区分的关联差异。最终的异常分通过下式计算:

其中

表示元素乘法,

表示输入序列的异常标准。为了更好地重建,异常通常会减少关联差异,这仍然会获得更高的异常分数。因此,这种设计可以使重建错误和关联差异协同提高检测性能。

实验

作者在不同领域的5个数据集上进行了模型验证,涵盖服务检测、地空探索等多个应用。Anomaly Transformer在5个基准中均实现了SOTA的效果。更多基准模型及数据说明请见论文。

01

消融实验

为了进一步验证我们所提出模块的有效性,作者设计消融实验验证了提出的训练策略、先验关联、新的异常判据的有效性。

02

可视化分析

针对5类不同的异常类别,我们可视化了其在不同异常判据下的区分性。可以发现基于关联差异的异常评判曲线有着更加准确的可区分性。

针对5类不同的异常类别,我们可视化了其在先验关联中最终学得的σ的大小。不难发现,在异常点处的σ在整个序列中都比较小,这代表了它与非临接部分的关联较弱,这也支撑了我们认为异常点很难与整个序列构建强关联的判断。

03

优化策略

为了验证优化策略对于关联学习的影响,我们对比了直接使用重建误差训练、直接最大化关联差异、极小极大关联差异的影响。

如表所示,直接最大化关联差异将会引起高斯先验的优化问题,从而使得效果退化。而最大最小化策略使先验关联对序列关联增加了一个很强的限制,最终可以达到一个更加有辨别能力的结果。

总结

本文关注无监督时序异常检测问题,提出了基于关联差异的异常检测模型Anomaly transformer,并通过一个最大最小化学习策略大幅提高了模型的异常检测能力。

Anomaly transformer在服务监测、地空探索、水流观测等应用中均展现出了优秀的异常检测结果,模型具有良好的效果鲁棒性,具有很强的应用落地价值。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 时序人 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档