阅读笔记 | Anomaly Transformer: Time Series Anomaly Detection with Association Discrepancy

背景

无监督地对时间序列进行异常检测存在挑战,因为这需要模型自行学习得到区分异常的标准。

先前工作主要有逐点表示学习和显式关联建模方法两种,前者侧重于自监督学习序列表示,但由于异常点罕见性而不足以捕捉复杂的异常模式;后者侧重于直接建模时间点之间的关联性,然而其在学习信息丰富表示和细粒度关联方面存在挑战。

方法

核心观察:在无监督时间序列异常检测中,异常点的关联主要集中在它们相邻的时间点上,而不是整个时间序列。这种关联的局部集中性提供了一种天然的区分正常和异常时间点的标准。

方法思路:基于核心观察,文章利用高斯核函数的函数性质来体现相邻时间点的局部关联性(命名为Prior-Association;两两时间点下标之差的绝对值输入高斯分布函数,因此距离近的时间点得到更大的权重,反之更小,因此可以建模局部关联性),并用自注意力机制变体来建模全局关联性(命名为Series-Association)。两者的计算均被放入了多层结构的Anomaly Transformer中,输出结果用KL散度来计算两种关联性的相似度,用于表征逐点关联差异(Association Discrepancy),并采用了MINIMAX优化策略,以增强关联差异的可区分性(这个实现过程还不是很懂,需要结合代码看看)。根据核心观察,异常点的关联差异应该要比正常时间点更小。最终将归一化关联差异纳入AnomalyScore来作为逐点异常判定标准。


实验

  1. 论文在6个现实世界数据集上进行了广泛评估,包括SMD、PSM、MSL、SMAP、SWaT和NeurIPS-TS,涵盖3种实际应用。结果显示,该方法在所有数据集上都实现了state-of-the-art的性能。

  2. 进行了大量的ablation study以验证各模块的效果。结果表明,关联度差异性的判据明显优于常用的重构判据,提升了18.76%的F1 Score;学习到的先验关联也进一步提升了性能;最小最大策略也带来了7.48%的改进。这验证了方法的每个模块都起到了关键作用。

  3. 提供了检错率曲线以全面的比较不同阈值设置下的性能。该方法在所有的数据集上都取得了最高的AUC值,表明在各种假正率和真正率下都取得了最佳的性能。

  4. 通过可视化分析了不同类型异常下的判据性能。结果表明,关联度差异性判据能够提供更明显的区分度。重构判据由于抖动较大,在某些情况下效果不佳。

  5. 分析了学习到的先验关联参数,发现它能够适应不同时间序列模式,特别是在异常点处参数值较小,与先验假设吻合。

  6. 通过统计关联权重,分析了不同优化策略的效果。结果显示,最小最大策略能够进一步放大正常和异常点之间的区分度,因此性能最优。

个人思考

  • 文章巧妙地将时间序列异常检测中计算时间点与序列的关联性的需要,与Transformer的出色长程关联性建模能力联系起来,并利用高斯核函数建模异常点的局部关联性,将文章核心观察很好地进行了实现。对于高斯核部分,还很好还原了时间点的连续性。一开始我以为Prior-Association是要参与注意力计算的,然而看来代码发现并没有,其与Series-Association的计算几乎可以说是并行的。因此除了本文的主体Anomaly Transformer外,其实还用到了包括RBF神经网络和使用高斯核函数的SVM等方法都有的核方法,两者是缺一不可的。此外就是本文只对原始Transformer的编码器进行了改编使用。

  • 在应用方面,可以考虑用于网络的无监督时序异常检测分析任务。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

一条独龙

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

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

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

打赏作者

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

抵扣说明:

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

余额充值