当前位置: 首页 > article >正文

Dynamic Soft Contrastive Learning for Time Series Anomaly Detection 解读

ICASSP 2025 - 2025 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)
在这里插入图片描述

摘要

多变量时间序列异常检测已在不同领域进行了广泛研究。在无监督方法的范围内,密度估计被认为是一个有前途的方向。然而,在数据空间中与正常数据紧密分布的异常会影响所需的密度估计结果,从而显著影响异常的区分。 在这项工作中,为了应对这一挑战,我们提出了动态软对比学习 (DiSCo)。DiSCo 生成的表示可以更好地捕获数据分布中的潜在相关性,为后续的密度估计任务提供更紧凑、信息更丰富和更合适的描述。此外,DiSCo 采用动态且可学习的距离度量来衡量输入之间的相似性。学习到的特定任务距离度量有助于最小化类内距离和最大化类间距离,从而有助于生成更好的表示。DiSCo 的有效性是通过对四个常见的异常检测数据集进行的广泛实验来证明的。

动机

  1. 在密度估计领域,归一化流 (NF) 是一个相对较新的模型系列 [7]–[9]。NF 通过转换简单的基数分布或通过可学习的可逆映射转换先验分布,然后应用变量变化公式来模拟复杂的高维边际分布。到目前为止,基于流的模型通常是在数据空间上训练的 [5], [9], [10]。尽管如此,我们的实验结果表明,学习时间序列数据的适当表示可以提高基于密度的异常检测的准确性。对比学习是一种新兴的方法,专注于学习表征。它的特点是能够将不同的数据对分开,同时将相似的数据对拉在一起 [11]。直观地说,这种独特的特性将促进密度估计过程。
  2. 对比学习在时间序列任务中已被证明是有效的,例如预测和分类 [12]、[13]。软对比学习 [14] 将传统的硬分配扩展到软分配,其中软分配不相等地最小化负对的损失贡献。[14] 中的作者尝试了几种不同的距离度量来计算软分配,包括余弦距离、欧几里得距离、动态时间规整 (DTW) 和时间对齐测量 (TAM) [15]。结果仅显示几乎没有改善。这隐含地反映了选择合适的距离指标的难度。我们重新思考指标选择问题,并将其转化为一个从学习到优化的过程。设计的指标是动态的、可学习的和特定于任务的,有助于为后续的密度估计任务生成更紧凑、信息更丰富、更合适的描述。
  3. 当使用归一化流进行密度估计时,变量的相互依赖性可以作为数据输入的条件使复杂的分布更容易学习 [9]。在实际场景中,变量的相互依赖关系是复杂和动态的,静态条件不能很好地模拟可变的相互依赖关系。 为了解决这个问题,根据之前的研究 [6],我们利用图结构学习来模拟随时间变化的各种依赖关系。

贡献

我们的主要目标是准确估计分布密度,使低密度的异常更容易检测

  1. 为了实现这一点,我们构建了一个稳健的实例表示,并对它们进行密度估计,而不是直接估计数据分布。
  2. 我们通过对比学习过程获得表征。受度量学习的启发,与最新的时间序列软对比学习 (SCL) 不同,我们提出了一种新的动态软对比学习模块,它将 SCL 中的距离测量从静态扩展到动态。此扩展释放了查找适当距离度量的要求,并使模型能够直接学习度量

方法

  1. 时序表示为L * N。N个变量。
  2. 所提出的模型如图 1 所示。它包含三个主要块,即时空条件生成 (STC)、动态软对比学习 (DiSCo) 和条件归一化流 (CNF)。
  3. 最初,时间序列数据同时馈送到 STC 和 DiSCo 中STC 会生成多个条件,对应不同的实例。这些条件反映了时间段中不同的相互依赖关系。
  4. DiSCo 采用对比学习和动态软分配来为后续任务生成更合适的嵌入
  5. CNF 将 condition 和 embedding 作为输入,并通过一系列可逆映射将复分布转换为碱基分布。

在这里插入图片描述

Dynamic soft contrastive learning

  1. 形式上,给定一批 K 个时间序列数据 X = { x 1 x_1 x1, · · · · , x K x_K xK },对比学习的任务是学习非线性映射 fθ : x → r,其中 x ∈ R T × N R^{T ×N} RT×N 是序列数据的窗口,r ∈ R T × D R^{T ×D} RT×D 是学习的表示,T 是窗口大小,N 是输入维度, D 是嵌入的特征维度。
  2. 软对比学习提出了软分配,以缓解两个增强视图中的相似样本可能会学习很远的困境。对于异常检测任务,软分配在计算实例损失方面效果较差 [14]。因此,我们仍然在实例损失中使用硬赋值,并专注于它在时间损失计算中的改进。时间序列中软对比学习的最新工作根据时间戳之间的差异计算软赋。定义为:
    在这里插入图片描述
    其中 τ T τ_T τT 是控制清晰度的超参数,σ 是 S 形函数 σ(a) = 1/(1+exp(−a)))。上述公式的直觉是相邻时间戳中的值相似。 为了说明,在变量发生周期性变化的情况下,可以想象来自更远时间点的数据可能比来自更邻近时间点的数据与当前点更紧密地对齐。我们将软赋值的计算从简单的时间戳差异扩展到嵌入的相似性比较。

在这里插入图片描述
其中 Dist 是相似性指标,ht = RNN(xt) 是 RNN 生成的嵌入。

  1. 以前的许多工作都试图选择合适的经典度量作为相似性度量,例如 DTW 和余弦距离。这很棘手,很难产生最佳结果。我们重新思考指标选择问题,并将其转化为一个学习优化(learningto-optimize)的过程。
    在这里插入图片描述
    其中 M 是正半定矩阵。受 Cholesky 分解的启发,我们采用 LTDL 获得可学习的正半定矩阵 M,其中 L 是较低的三角矩阵,D 是对角矩阵。
  2. 定义对比损失:
    在这里插入图片描述
    其中Ω是两个子序列重叠内的时间戳集,I 是指示函数,DyL 表示动态软分配的损失,K 是窗口数, L i n s t L_{inst} Linst 是 [16] 中给出的实例对比损失。
    (个人理解:应该是不同时间点的数据 + 不同增强的数据对比)

[16] Z. Yue, Y. Wang, J. Duan, T. Yang, C. Huang, Y. Tong, and B. Xu, “Ts2vec: Towards universal representation of time series,” in Proceedings of the AAAI Conference on Artificial Intelligence, vol. 36, no. 8, 2022, pp. 8980–8987.

Conditional normalizing flow

归一化流是一种无监督密度估计方法,它通过一系列可学习、可逆的仿射变换,将复杂的高维原始分布 pX (x) 映射到简单的碱基分布或先验的 πU (u)。当原始数据分布的密度估计难以处理时,另一种方法是估计基本分布上的 u 密度,然后将估计值对应回原始空间。
具体来说,给定一个源样本 x ∼ p X p_X pX(x) 和一个样本 u ∼ π U ( u ) π_U (u) πU(u);参数化、双射、可逆变换 fθ : X → U,其中 θ 是 f 的参数 ;和先验分布 π U ( u ) π_U (u) πU(u)
优化方程定义为:
在这里插入图片描述
如果考虑条件C,则可以写成:
在这里插入图片描述
在这项工作中,我们利用 CNF 来估计嵌入 r 而不是原始数据 x 的密度,即对 p R ( r ) p_R(r) pRr 而不是 p X ( x ) p_X (x) pXx 进行建模。嵌入 r 由 DiSCo 生成,它将不同的数据对分开,并将相似的数据对拉在一起。它用作更好的密度估计的辅助工具。
把对比的输出作为嵌入,因为空间更理想。同时把STC的输出作为条件。

Spatio-temporal condition

稳健的时空条件有助于更好地估计多元时间序列的密度 [5]。我们没有使用静态条件,而是利用图结构学习来捕捉动态的时空条件。分别用动态图和 RNN 提取时间序列的底层结构信息和时间相关性。
对于序列窗口 xc,时间 t 的时间表示 H t H_t Ht 推导为 H t = R N N ( x t , H t − 1 ) H_t = RNN(xt, H_{t−1}) Ht=RNNxtHt1,其中我们使用标准 LSTM,因为 RNN 在我们的实验中指的是 LSTM,而 H t H_t Ht是 LSTM 的隐藏状态。遵循前面的工作 [6],我们使用以下公式来聚合时空条件:
在这里插入图片描述
其中 Ct 是时间点 t 的时空特征;W1 和 W2 分别是 LSTM 中图卷积和历史信息的权重。W3 负责增强表示能力。对于窗口 c,时空条件 Cc 是 Ct 沿时间轴的串联。

(用Graph-RNN同时学习时空关系,把所有时间点的时空特征拼接。)

Joint optimization

如上所述,DiSCo-AD 结合了条件归一化流和动态软对比学习来实现时间序列的密度估计。STC 和 CNF 的参数通过 MLE 联合优化。
在这里插入图片描述
DiSCo-AD 的总体优化目标是:
在这里插入图片描述
其中 λ 是控制每个损失贡献的超参数,默认情况下 λ = 0.5。

实验

对比实验

在这里插入图片描述

消融实验

在这里插入图片描述

  1. 为了测试每个设计模块的有效性,我们对 SWaT 和 MSL 进行了几个消融实验。为避免重复的词语,我们讨论了基于 SWaT 的性能变化,MSL 上也出现了同样的趋势。我们将时空条件表示为 STC,动态距离度量表示为 DDM,软对比学习表示为 SCL。比较结果见表 II。方法 0 是 DiSCo-AD 的幼稚版本,它只包含归一化流,性能最差。
  2. 这归因于缺乏捕捉进化的时间相关性、可变的相互依赖性和坚实的表示。集成 STC(方法 1)后,出现了很大的改进(75.0 → 84.8)。
  3. 当我们加入 SCL 时,性能会进一步提高(84.8 → 86.9)。
  4. DDM集成改进 (86.9 → 90.5)。

可视化

此外,还对 DiSCoAD 与表现第二好的模型 (即 MTGFlow) 进行了比较。在 SWaT 数据集中研究了 2016/1/2 11:00:00 至 11:40:00 期间两个模型的异常分数,如图 2 所示。图 2 中的红色突出显示是标记的异常。很明显,DiSCo-AD 在为正常数据分配较低的异常分数方面表现更好。这表明应用程序中对异常的错误检测较少。红色区域的数据点都分配了较高的异常分数,这表明 DiSCo-AD 在检测真实异常方面的卓越性能。

在这里插入图片描述

总结

  1. 本文对方法的描述比较详细,与其他论文相比是比较好的。
  2. 但是仍然有一些变量没有描述清楚。比如对比学习中。
  3. Flow方法方面没有太多改进,不过把条件概率引入是一个比较有意思的点。可惜没有进一步分析。消融实验好像没有flow相关的设计
  4. 当前度量学习的探究确实比较少,flow的模型也是。可惜还是缺少一些更加insight的结论。否则高度可以更上层楼。
  5. 个人认为是一篇值得学习的,可以考虑follow的论文。

http://www.kler.cn/a/611739.html

相关文章:

  • 【2025】基于springboot+uniapp的企业培训打卡小程序设计与实现(源码、万字文档、图文修改、调试答疑)
  • 套接字Socket
  • 算法-深度优先搜索
  • ubuntu单机部署redis集群
  • HarmonyOS NEXT 鸿蒙中关系型数据库@ohos.data.relationalStore API 9+
  • IP 分片重组与 TCP 会话重组
  • 二分查找模板--从题目中讲解三大二分模板
  • [vue]计算属性
  • WPF ContentPresenter详解2
  • 网损仪详解
  • 比R版本快几十倍| Pyscenic单细胞转录因子预测
  • nVisual对接企业微信实现机房设备与连接变更的自动化审批
  • 硬件防火墙配置与优化:给网络装上最稳的安全阀
  • 深入探索 C++20 中的 std::make_obj_using_allocator
  • 使用Python可视化图结构:从GraphML文件生成节点关系图(lightrag 生成)
  • springcloud项目在框架搭建时的问题的总结
  • 使用HTTP提交git时,每次都要输入用户名和密码的解决方案
  • CentOS 7 宝塔部署
  • 【工具】openEuler 22.03 (LTS-SP3) 如何离线安装 git-lfs
  • Spring Boot集成阿里云OSS:对象存储实战指南