现实世界的系统在运行过程中会产生大量的时序数据。
通过这些时序数据发现系统中可能存在的异常现象对于保障系统安全、设备平稳运行以及避免经济损失都有着非常重大的意义,例如大规模服务器、地空、水电设备的监测等。
因此,来自清华大学软件学院的团队重点研究了无监督时序异常检测问题,并被ICLR 2022接收为Spotlight。
作者:徐介晖*、吴海旭*、王建民、龙明盛
论文链接:
https://openreview.net/forum?id=LzQQ89U1qm_
在实际应用中,时序数据的异常检测极其困难,它需要从占主导地位的正常数据中发掘出异常点或者异常时间模式,其中涉及两个核心问题:
(1) 如何通过网络获取更具信息含量的表征,从而使得异常的表征不会被「淹没」于正常数据中;
(2) 如何基于学习的表征定义更加具有区分性的判据,用于筛选异常。
1. 动机
从时间序列的本质属性出发,我们发现每一个时间点都可以由其与整个序列的关联关系来表示,即表示为其在时间维度上的关联权重分布。相比于点级别的特征,这种关联关系暗含了序列的模式信息,比如周期、趋势等,因此更具信息含量。
同时,与正常点相比较,异常点很难与正常模式主导的整个序列都建立强关联关系,它们往往更加关注邻近区域(由于连续性)。因此,这种与整体序列、邻近先验之间的关联差异,为异常检测提供了一个天然的、强区分度的判据。
基于以上观察,我们提出了Anomaly Transformer模型,实现了基于关联差异(Association Discrepancy)的时序异常检测。其包含Anomaly-Attention机制用于分别建模两种形式的关联,同时以极小极大(Minimax)关联学习策略进一步增大正常点与异常点之间差别。
值得一提的是,在不同领域的5个数据集上,Anomaly Transformer都取得了SOTA的效果。
2. 方法
2.1 Anomaly Transformer
2.1.1 整体架构
相比于标准的Transformer模型,Anomaly Transformer中在每层中都新设计了一个Anomaly-Attention单元,用于从多层次的深度特征中学习潜在的时序关联。
整体架构如上图所示,Anomaly-Attention(左)同时建模了数据的先验关联(Prior-Association,即更关注邻近区域的先验)和序列关联(Series-Association,即从数据中挖掘的依赖)。
除了序列重建任务之外,我们的模型还采用了极小极大策略(Minimax)用于进一步增大异常点和正常点所具有的关联差异的差距,从而使得异常点能够被更加容易的检测出来。
2.1.2 Anomaly-Attention
为了计算关联差异,我们提出的一种全新的注意力机制Anomaly-Attention,用于统一建模先验关联和序列关联。
(1)先验关联用于表示由于时间序列连续性带来的,每个时刻更多地关注其邻近区域的先验。我们采用了一个具有可学习尺度参数的高斯核函数来表示。高斯核函数的中心位于对应时间点的索引上,由于高斯分布本身所具有的单峰分布的特性,这样的设计能够帮助学习到的权重天然的集中于对应时间点的邻域内。同时,自适应的尺度参数可以帮助先验关联动态适应不同的时序模式。
(2)序列关联用于表示直接从序列数据中挖掘出的依赖。其计算方式与标准Transformer的注意力矩阵计算方式类似,注意力矩阵中每一行的权重分布都对应了一个时间点的序列关联。同时,为了更好的完成序列重建任务,模型会自动挖掘到合理的时序依赖。
通过上述设计,模型可以分别捕捉到先验关联和序列关联,相较于过往的模型这种基于关联的表征蕴含着更加丰富的信息。
2.1.3 关联差异(Association Discrepancy)
我们将关联差异定义为这两者之间的差异,作为后续异常检测的判据,它由各个层次的先验关联、序列关联之间的对称KL距离计算得到:
2.2 极小极大关联学习
除了无监督任务广泛使用的重建误差外,我们还引入了一个额外的关联差异损失用于增大正常点和异常点之间的差距(如下所示)。
得益于先验关联的单峰特性,新增的关联差异损失会驱使序列关联更加关注非邻近的区域,这会使得异常点的重建更加的艰难,进而正常点和异常点之间的辨别更加容易。
然而,在实验中发现,若直接最小化关联差异将使得先验分布中可学习的尺度参数急剧变小,造成模型退化。因此,我们使用了极小极大(Minimax)策略用于更好的控制关联学习的过程。
(1) 在最小化阶段,固定序列关联,让先验关联近似,这样可以使先验关联适应不同的时序模式。
(2) 在最大化阶段,固定先验关联,优化序列关联以最大化关联之间的差异,该过程可以让序列关联更加关注于非临接、全局的点,从而使得异常点的重建更加困难。
最终,我们将标准化后的关联差异与重建误差结合起来,定义了新的异常检测判据:
3. 实验
我们在5个标准数据集上进行了模型验证,涵盖服务检测、地空探索等多个应用。Anomaly Transformer在5个基准中均实现了SOTA的效果。更多基准模型及数据说明请见论文。
3.1 消融实验
我们设计消融实验验证了提出的先验关联、训练策略、新的异常判据的有效性。
3.2 判据分析
针对时序异常的5种类型,我们可视化了其在不同异常判据下的区分性。可以发现基于关联差异的异常评判曲线有着更加准确的可区分性。
3.3 先验关联分析
针对上述不同的异常类别,我们也提供了先验关联中学到参数的可视化。如图所示,异常点处的相较于序列中别的点往往会比较小,这代表了它与非临接部分的关联较弱,这也印证了异常点很难与整个序列构建强关联的先验。
4. 总结
本文关注无监督时序异常检测问题,提出了基于关联差异的异常检测模型Anomaly transformer,并通过一个极小极大(Minimax)关联学习策略大幅提高了模型的异常检测能力。
Anomaly transformer在服务器监测、地空探索、水流观测等应用中均展现出了优秀的异常检测结果,具有很强的应用落地价值。