Unraveling the ‘Anomaly’ in Time Series Anomaly Detection: A Self-supervised Tri-domain Solution

系列文章目录

解开时间序列异常检测中的“异常”:一个自监督的三域解决方案 ICLR2024



摘要

时间序列异常检测(TSAD)中持续存在的挑战,包括异常标签的稀缺性以及异常长度和形状的可变性,导致需要一个更强大、更有效的解决方案。由于有限的异常标签阻碍了传统的监督模型在异常检测中的应用,各种最先进的深度学习技术(如自监督学习)被引入来解决这个问题。然而,它们在处理异常长度和形状的变化时遇到困难,限制了它们对各种异常的适应性。此外,许多基准数据集存在显式异常的问题,即使是随机函数也可以检测到。一个被称为点调整(PA)的病态评价度量加剧了这个问题,它会导致模型性能膨胀。在这种背景下,我们提出了一种新的基于自监督学习的三域异常检测器(TriAD),它通过跨三个方面(时间、频率和剩余域)建模特征来解决这些挑战,而不依赖于异常标签。与传统的对比学习方法不同,TriAD使用域间和域内对比损失来学习正常数据之间的共同属性,并将其与异常数据区分开来。此外,我们的方法可以通过与不和谐发现算法集成来检测不同长度的异常。值得注意的是,这项研究首次重新评估了TSAD的深度学习潜力,利用了严格设计的数据集(即UCR Archive)和评估指标(即PA%K和隶属关系)。实验结果表明,与SOTA深度学习模型相比,TriAD在基于PA%K的F1分数上实现了令人印象深刻的三倍增长。此外,与SOTA不和谐发现算法相比,TriAD将异常检测精度提高了50%,同时将推理时间缩短到十分之一。本文阐明了严格的数据集和评估指标的重要性,为解决时间序列异常检测的多方面挑战提供了新的方向。源代码可在https://github.com/pseudo-Skye/TriAD上公开获得。


一、引言

识别时间序列数据中的异常在包括卫生监测系统、金融服务和制造流程在内的广泛领域发挥着至关重要的作用。这些异常可能代表严重事件,如睡眠呼吸暂停综合征[1]、欺诈交易[2]和供应链中断[3],每一个都表现出不同的特征。尽管从不同的角度进行了许多努力来解决这一任务,但仍然存在许多阻碍鲁棒异常检测方法进展的挑战。

在这里插入图片描述

时间序列异常检测(TSAD)的主要挑战之一是异常情况标签的稀缺性或不可用性。为了解决这个限制,一种领先的方法是自监督学习[4]-[6],它有效地利用了未标记的数据,并充分利用了可用的注释。然而,许多基于对比学习[7]-[9]的方法依赖于数据增强技术,如抖动、洗牌或缩放来创建增强样本的正对。这种方法借鉴了计算机视觉,不适合时间序列数据的异常检测。这是因为,如图1所示,在增强过程中引入的改变特征可以被解释为真实数据集中的异常,从而导致检测过程中的潜在不准确性。

时间序列异常检测的另一个重大挑战是异常事件的长度变化,这些异常事件可以表现为点异常或序列异常。为了克服固定检测长度的限制,可行的解决方案是基于预测的[10],[11]或基于重建的[12],[13]模型,其中预测数据点的值,与这些预测的显著偏差被认为是潜在的异常。最近的一项研究[14]中讨论的最可靠的基准方法之一是使用LSTM-AE来重建输入数据的时间模式。然而,如图2所示,如果异常序列是连续的,则该模型具有很强的鲁棒性,可以像正常模式一样很好地重建异常模式。在这种情况下,模型的预测可能会准确地拟合异常模式,从而使正常数据点和异常点之间的预测误差最大化具有挑战性。此外,由于这些方法依赖于预测误差,因此面临阈值敏感性问题。另一种方法是不和谐发现算法[15],[16],它们利用两两相似性比较来检测异常,而不必依赖显式异常标签和异常长度的约束。然而,随着数据集的增长,两两相似性比较过程会带来更多的计算延迟,这给实时异常检测带来了困难。

在这里插入图片描述
此外,在以前的TSAD工作中,一些广泛使用的基准数据集(例如Yahoo和NASA等)被发现存在缺陷,例如不切实际的异常密度,错误标记的地面真实值,或者异常非常明显的实例,它们可以通过简单的“一行”方法轻松解决[17],[18]。此外,广泛使用的评估指标虽然常见,但因评分前的不适定点调整(PA)而受到批评,导致对模型性能的误导印象[14],b[19]。

鉴于这些挑战和存在缺陷的基准数据集,最近人们对基于人工智能的模型的真正能力产生了怀疑和争论,我们也将在第II-B节中讨论。幸运的是,这种氛围为更强大的深度学习模型的出现提供了机会,这些模型能够在严格的数据集和评估指标上进行彻底的测试,从而揭示它们的真正能力。在本文中,我们回顾了现有基准的问题,并提出了一种新的基于自监督学习的三域异常检测器(TriAD),该检测器消除了异常标记的必要性,并减轻了异常长度和形状的限制。

在工业时间序列数据的情况下,序列通常是单变量的,并且由单个传感器捕获,因此很难从一维数据中提取特征。认识到异常可以以各种方式呈现,例如频率的突然变化,剩余尺度的移动,或时间形状的更明显的转换,TriAD框架旨在解决这些多方面的特征。TriAD捕获三个不同领域的特征:时间、频率和残差。通过为每个领域使用单独的编码器,它学习独特的表示,从而能够全面理解数据的底层模式。

为了解决标签稀缺性的挑战,TriAD通过修改时间序列输入的随机片段来使用数据增强,使其更加“异常”。该框架结合了域间和域内的对比损失,将TriAD与传统的单域对比学习方法区分开来。一方面,域内对比迫使原始时间序列窗口学习共同属性,同时将其与增强窗口区分开来。另一方面,域间对比保证了来自不同领域的学习表征是不相似的,保证了每个领域都有自己独特的表征。重要的是,整个训练过程完全依赖于正常数据,从而消除了标记异常的需要。

为了应对不同长度异常的挑战,TriAD结合了基于深度学习的方法和搜索算法的优势。自监督学习框架识别疑似包含异常的候选窗口,然后采用不和谐发现算法围绕这些可疑窗口进行探测。这个过程可以定位不同长度的潜在异常。最后,投票系统对测试序列的每个数据点进行汇总并打分,在没有人为干预的情况下提供预测结果。TriAD能够精确定位潜在的异常位置,从而使搜索算法能够专注于这些区域,从而进一步凸显了其有效性。如第IV-B2节所示,与最先进的(SOTA)不和谐发现算法相比,TriAD显著缩短了异常搜索窗口长度约20倍,这代表了异常搜索效率的大幅提高。

考虑到与有缺陷的基准数据集和不适定的评估指标相关的复杂性,我们使用UCR时间序列异常存档[17]对TriAD进行了评估,这是一种精心设计的资源,旨在克服现有异常检测数据集的缺点。与最近提出的[14]、[19]的严格评估指标(即PA%K和隶属关系)相结合,该评估过程确保了对TriAD能力的透明评估,对其有效性产生了清晰可信的理解。

本研究的主要贡献可概括为:

•据我们所知,这项研究是第一次尝试重新评估深度学习方法在时间序列异常检测中的真正潜力,利用严格设计的基准数据集和评估指标。
•我们提出的新方法为检测不同形状和长度的异常提供了一个鲁棒性和无标签的解决方案,解决了困扰现有基于深度学习的方法的一个主要挑战。
•从我们的实验结果来看,TriAD的性能比SOTA深度学习模型好三倍,以PA%K为基础的F1分数来衡量。此外,与SOTA不和谐发现算法相比,异常检测的准确率提高了50%,推理时间缩短了十分之一。

二、 PRELIMINARY

在本节中,我们首先定义时间序列异常,并介绍本研究中使用的频率特征。随后,我们讨论了不完善的数据集和不适当的评估指标所带来的问题。

A. Problem definition

定义1:时间序列异常给定周期时间序列 X = { x 0 , x 1 , . . . , x N − 1 } X=\{x_0,x_1,...,x_{N-1}\} X={x0,x1,...,xN1}长度为N,则该序列的结构建模[20],[21]可表示为:
在这里插入图片描述

其中正弦函数的和表征了时间序列的周期性或周期性行为,其频率分量用ωn表示。项an和bn表示决定每个频率分量ωn对时间序列总体表示的贡献的系数。同时,术语τ(n)解释了非周期性趋势或无法解释的变化。

由于设备[22]的运行周期,工业传感器数据通常呈现周期性模式。考虑到这一特点,本研究重点研究了时间序列数据的重要特征,包括季节性、小波和残差。考虑子序列 X i , l = { x i , x i + 1 , … , x i + l − 1 } X_{i,l}=\{x_{i},x_{i+1},\ldots,x_{i+l-1}\} Xi,l={xi,xi+1,,xi+l1},长度为l,从时间戳i开始,它可以分解为季节性ω, shapelets ρ和残差τ的分量。如果任何相似度测量 sim ⁡ ( ω , ω ^ ) , sim ⁡ ( ρ , ρ ^ ) , or ⁡ sim ⁡ ( τ , τ ^ ) \operatorname{sim}(\omega,\hat{\omega}),\operatorname{sim}(\rho,\hat{\rho}),\operatorname{or}\operatorname{sim}(\tau,\hat{\tau}) sim(ω,ω^),sim(ρ,ρ^),orsim(τ,τ^)分别超过给定的阈值 σ ω , σ ρ , a n d σ τ \sigma_\omega,\sigma_\rho,\mathrm{and}\sigma_\tau σω,σρ,andστ,则该子序列被认为是X的异常。其中, ω ^ , ρ ^ , a n d τ ^ \hat{\omega},\hat{\rho},\mathrm{and}\hat{\tau} ω^,ρ^,andτ^ 表示相应组分的预期正常行为。

定义2:时间序列频率特征傅里叶变换通常用于将时间序列从时间表示转换为频域,从而揭示在不同频率上的功率分布。这个过程可以表示为:

在这里插入图片描述
在这里插入图片描述
这里,X[k]表示第k次谐波的振幅,其中k从0变化到N−1。在本研究中,我们关注频域的三个关键特征:每个频率分量的幅度、相位和功率。表1详细列出了这些特征。

B. The ‘anomaly’ in dataset and evaluation metrics

最近对时间序列异常检测的评估主要依赖于广泛认可的数据集,如NASA、Yahoo和Numenta。然而,研究[17],[20]表明,这些数据集中的许多实例存在异常误标记、琐碎、偏分布和不现实密度等问题。此外,许多研究纳入了PA过程,这可能会夸大模型的有效性。此过程将整个异常段视为正确识别的,即使其中只有一个实例被标记为异常。因此,这种方法可能导致评估期间的数据泄漏,因为它需要利用测试标签来调整预测。

在这里插入图片描述
在这里插入图片描述
因此,根据最近提出的评估方案[14],我们使用可靠的基线模型LSTM-AE来检查问题,在两个广泛使用的数据集(SWaT和KPI)上进行随机初始化和训练,这两个数据集以前没有被评估过。表2显示,当使用PA时,F1分数显著提高,这可能会给人一种模型完美的错误印象。然而,另一种度量PA%K试图缓和F1-PA的高估倾向和F1的潜在低估,它揭示了随机初始化模型可能出人意料地超过其在SWaT和KPI数据集上的训练性能。如图3所示,这种现象通常与“单行”问题有关,其中异常非常明显,使用单行代码设置随机阈值可以更容易地发现它们。UCR数据集通过包含最小的琐碎异常缓解了这个问题,如图1所示。这些初步观察结果强调了严格的数据集选择和可靠指标的使用的重要性,以提供模型有效性的真实反映。

在这里插入图片描述

三、 METHODOLOGY

在本节中,我们提出了如图4所示的框架TriAD,它捕获了三个域的特征,包括时间、频率和残差。这种方法解决了检测各种异常的基本问题,这些异常可能在一个或多个这些域中表现出异常。首先,我们介绍了预处理过程中使用的数据增强,然后讨论了从多域特征中提取潜在表征的编码器。然后,我们解释了我们的方法中包含的域间和域内对比损失。最后,我们概述了异常检测过程并检查了其时间复杂性。

A. Data augmentation

数据增强函数通过引入不同的变量来增强训练数据,有助于增强模型泛化和缓解过拟合。尽管数据增强在基于神经网络的计算机视觉任务中被定义和广泛采用,但其在时间序列异常检测中的应用仍然不太标准化。时间序列增强中采用的许多策略都是从计算机视觉中获得灵感的,将添加随机噪声、裁剪、变换和缩放等方法纳入时间序列域[23],[24]。

在这里插入图片描述我们的方法不是在整个训练数据集或滑动窗口上应用增强技术来增加数据量,而是随机修改一部分不同长度、位置和形状的输入数据。这些变化模拟了时间序列序列中潜在的异常。通过将这些被操纵的序列与原始序列配对以进行后续的对比学习,该模型被迫区分包含综合异常模式的序列和正常序列。

为了实现这一点,我们将完整的训练时间序列X分割成长度为L的窗口片,其中从时间戳i开始的窗口片记为 X i , L X_{i,L} Xi,L。每个窗口然后经历随机段改变使用既定的数据增强技术,如抖动和翘曲,如图5所示。具体来说,抖动[24]在数据中引入噪声以获得新的样本。这个过程表示为:

在这里插入图片描述
其中,λ表示添加到时间序列数据中特定时间戳上的随机噪声,j表示增强的随机开始时间戳,l表示增强的随机长度。与此同时,翘曲根据平滑曲线调整信号的大小。这个过程是通过将巴特沃斯滤波器[25]应用于原始时间序列来实现的,产生一个滤波版本,强调输入片的初级频率。该过程描述如下:

在这里插入图片描述
其中ωc表示截止频率。增广窗片 X i , L ′ X_{i,L}^{\prime} Xi,L是通过将增广段 X j , l ′ ( ϵ ) o r X j , l ′ ( ω c ) X_{j,l}^{\prime}(\epsilon)\mathrm{or}X_{j,l}^{\prime}(\omega_{c}) Xj,l(ϵ)orXj,l(ωc)积分到原始窗片 X i , L X_{i,L} Xi,L中来构造的。

B. Tri-domain encoder

从衍生的窗口切片及其各自的时间序列增强中,我们继续提取三种不同的特征表示:由单变量原始输入直接表示的时间特征;通过傅里叶变换获得的频率特征,如前面定义2中详细介绍的;残差特征是通过消除原始输入的潜在周期性趋势而得到的。在表示学习过程中,每一种特征类型都通过专门的编码器进行处理。基本原理很简单:不同的特征空间本质上捕获了数据的不同特征。具体来说,时间编码器专注于时间演变模式,频率编码器检查频谱内容及其分布,残差编码器强调与既定周期行为的偏差。

在本研究中,我们利用扩张卷积和残差连接来处理时间序列输入,有效地捕获短期和长期模式。每个残差块都由一对连续的卷积层构成,使用相同的填充以确保在卷积操作期间保留空间维度。当我们在数据块中前进时,扩张率翻倍,使网络在输入序列中逐渐捕获更宽的模式。在编码器阶段之后,潜在表示被汇集到两个共享的密集层中。

对于给定的窗口片 X i , L X_{i,L} Xi,L,我们提取的特征表示为 X f ∈ R L × C X_{f}\in\mathbb{R}^{L\times C} XfRL×C,其中C表示输入通道数(1通道用于时间和残差特征,3通道用于频率特征)。相同填充的卷积层保证了从堆叠残差块中学习到的隐藏表示采用 h ∈ R L × h d \mathbf{h}\in\mathbb{R}^{L\times h_d} hRL×hd的形式。维度hd对隐藏表示的影响将在第IV-D节中讨论。随后,密集层将高维表示压缩为一维输出 r ∈ R L \mathbf{r}\in\mathbb{R}^L rRL,便于对比学习阶段的相似性比较。我们将正规窗口 X i , L X_{i,L} Xi,L及其增广对应的 X i , L ′ X_{i,L}^{\prime} Xi,L的输出分别表示为 r i , d  and  r i , d ′ \mathbf{r}_{i,d}\text{ and }\mathbf{r}_{i,d}^{\prime} ri,d and ri,d,它们来自域d∈d的特征。

C. Tri-domain contrastive learning

对比学习是一种广泛使用的自监督学习技术,它在没有显式标签的情况下区分正数据对和负数据对。以往的时间序列研究采用了多种方法选择正对,如选择相邻段[26]或增广段[7]。然而,这些策略对于时间序列的异常检测并不总是有效的。由增强引入的扭曲可能会突出潜在的异常模式,破坏模型检测真正异常的能力。此外,当数据集中存在固有的异常时,将这些异常合并到子序列中可能导致不一致的正配对。为了克服时间序列异常检测的这些独特挑战,我们提出了一种基于不同特征域内和跨特征域表示的创新配对策略。对于域内对比学习,我们将原始样本和增强样本配置为负对,同时将同一批次的原始样本配对为正对。另一方面,跨领域对比学习的目的是保持来自同一领域的正对表征,同时使不同领域的表征保持距离以建立负对表征。损失函数用于域内和域间的对比学习过程。
1)域内对比损失:域内对比旨在增强编码器确认未改变数据之间共享的正常模式的能力(通过正对),同时确保其对扭曲的敏感性(通过负对)。给定三域编码器产生的输出 r i , d  and  r i , d ′ \mathbf{r}_{i,d}\text{ and }\mathbf{r}_{i,d}^{\prime} ri,d and ri,d,则域内对比损耗可以形式化为:
在这里插入图片描述
其中 r i , d + r_{i,d}^{+} ri,d+表示 r i , d r_{i,d} ri,d的正对,d, i和j表示不同的时间戳,B表示批处理中的实例。

2)域间对比损失:域间对比旨在确保编码器学习特定于领域的模式,并防止模型学习跨不同领域一致出现的琐碎特征。该方法仅适用于从原始的非增广时间序列输入中学习到的表示。因此,给定输出表示 r i , d r_{i,d} ri,d,则对应的损失函数定义为:

在这里插入图片描述
其中 r i , d ′ \mathbf{r}_{i,d^{\prime}} ri,d表示来自不同域 d ′ d^{\prime} d的学习表示,用于时间戳i的同一窗口实例。

3)总对比损失:最后,为了获得总对比损失并平衡域内和域间损失之间的相互作用,我们使用了一个参数α来调节它们的相对贡献:

在这里插入图片描述
关于不同α值对模型性能的影响的详细分析在第四节- d中提出。

D. Anomaly detection

在训练过程中,编码器被改进为在嵌入空间中拉近正常模式,同时与异常模式保持距离。为了在推理阶段检测异常,我们首先将测试集(包含异常)分割到单独的窗口中,并在将它们提供给编码器之前从三个域中提取特征。随后的特定于领域的表示进行交叉比较,以确定每个领域中最偏离的前Z个窗口。假设每个测试集包含一个不同长度的异常事件,我们简单地为每个域设置Z = 1。因此,TriAD指定了多达三个潜在的异常窗口,分别表示为 X t 0 , L , X t 1 , L X_{t_{0},L},X_{t_{1},L} Xt0,L,Xt1,L X t 2 , L X_{t_2,L} Xt2,L,每个域一个。强调“最多三个”是至关重要的,因为不同的领域评估可能偶尔会关注相同的异常窗口。保留来自所有三个领域的结果背后的基本原理在于异常的固有不可预测性:它们可以以特定于三个领域中的任何一个的模式显示。例如,当对频率嵌入进行评估时,主要以短频移为特征的异常将导致与其他异常的相似性最小。这种基于学习表征的多域相似性排序增强了TriAD的透明性和可解释性。

1)窗口选择:假设测试集只包含一个异常事件,一旦我们确定了三个候选窗口,我们怀疑其中至少有一个包含异常,然后我们将其缩小到最可能包含异常的单个窗口Xt,L,其中t∈{t0, t1, t2}。由于训练集只由正态数据组成,直接的策略是将候选窗口与正态窗口进行比较,以找到偏差最大的窗口。通过跨步遍历训练数据,捕获与所调查窗口长度相对应的数据,我们可以很容易地识别和排除正常窗口。这个过程确保剩余的窗口与训练数据相比显示出最大的不相似性。

2)不和谐发现算法:在检测到最可疑的窗口后,我们使用一种专门的相似度搜索技术:不和谐发现算法来分离异常序列。过去的研究强调了不和谐发现算法在检测时间序列数据[15],[16],[27]-[29]中的异常方面的有效性。它们的优势在于评估每个时间序列片段与其最接近的匹配之间的距离,从而基于距离度量实现精确的异常检测。然而,这些算法中的许多算法都具有O(N2)[27],[28]的二次时间复杂度。其中,不和谐距离感知收集(DRAG)算法[29]作为不和谐发现的领先方法脱颖而出。尽管DRAG可以识别不同长度和形状的异常段,但仍然受到时间复杂度O(Nl)的阻碍,其中l为预定的异常搜索长度。尽管最近尝试通过合并估计的不和谐距离[15]或部署Orchard的索引[16]来确定最近邻来提高DRAG的效率,但这些方法的时间复杂性仍然随着测试集大小的增加而爆炸。

通过首先将我们的焦点限制在单个窗口 X t , L X_{t,L} Xt,L上,我们将搜索算法限制为通过改变异常长度来扫描该窗口。与扫描整个测试集的算法相比,这种方法大大减少了搜索负担。在我们的研究中,我们采用了最先进的MERLIN算法[15]来检测识别窗口周围的变长异常。双字发现算法的检测结果记为 X ^ t d d , l \hat{X}_{t_{\mathrm{dd}},l} X^tdd,l。为了获得更全面的见解,我们还在第IV-B2节中研究了针对TriAD的最新MERLIN++算法的时间效率和预测准确性。

3)异常评分:不和谐发现算法通常遍历每一个可能的异常长度,从而在不同的子序列长度下识别潜在的异常。然而,结果通常涉及视觉呈现,这需要人工检查以进一步确定检测结果。在本研究中,我们的目标是通过采用逐点评分方法来减少人工干预的需要,其中每个数据点根据其在TriAD标记的窗口中的位置和不和谐发现算法识别的子序列获得分数。

考虑时间戳n处的数据点 x n x_n xn。如果 x n x_n xn位于窗口 X t , L X_{t,L} Xt,L内,如TriAD所识别的,它被授予一次“异常投票”。此外,如果 x n x_n xn是子序列 X ^ t d d , l \hat{X}_{t_{\mathrm{dd}},l} X^tdd,l的一部分,并且被不和谐发现算法标记为特定异常长度l,则它将接受另一次投票。 x n x_n xn的综合得分可以表示为:
在这里插入图片描述
最后,我们使用投票阈值将数据点分类为异常。为了简单起见,在这项工作中,我们对至少获得一次投票的数据点的投票进行平均。超过这个平均值的数据点被归类为异常。这个可修改的阈值δ允许我们根据特定要求权衡召回率和精度。关于这一阈值的影响的广泛讨论可在第四- e节中找到。

值得注意的是,在计算异常分数的方程中,我们没有对triad检测窗口和MERLIN搜索产生的分数应用归一化或加权技术。考虑到我们将TriADdetected窗口处理为MERLIN搜索的初步过滤器,在此阶段大量加权效果较差。然而,在未来的研究中,我们预计一个增强的评分函数,可能整合归一化和更复杂的权重,可以显著改善预测结果。

E. Time complexity analysis

我们提出的框架的计算效率由三个主要阶段决定:三窗口检测,单窗口选择和不和谐发现阶段。总体时间效率对时间序列分割所选择的长度很敏感。对于一个时间序列X,它被分成M个窗口,每个窗口的大小为L,编码器生成的嵌入结果可以表示为r∈RD×M×L。各个阶段的时间复杂度如下:

•三窗口检测阶段涉及矩阵乘法,其中来自不同域的嵌入被排列并一起计算。这一阶段的时间复杂度为0 (mxl2)。•在单窗口选择中,考虑步长设置为1的最坏情况,计算候选窗口与训练集中剩余N−L+1段之间的欧氏距离。相关的时间复杂度为O((N−L) × L)。•不和谐发现算法的应用受益于缩短扫描长度,以窗口长度L为中心,其时间复杂度因此从之前的O(Nl)降低到更易于管理的O(Ll)。

综上所述,整个推理过程的累积时间复杂度为O(M×L2)+O((N−L)×L)+O(Ll)。影响这种复杂性的主要因素是分割期间使用的窗口长度。值得注意的是,这个长度明显小于之前的主导因素:测试集N中的总数据点。

四、 EXPERIMENT

在本节中,我们将在严格设计的真实世界时间序列异常检测数据集(UCR时间序列异常档案)下评估我们模型的鲁棒性。此外,为了真实地表示我们的模型的能力,我们采用了各种最近提出的严格的评估指标,与SOTA基线相比,提供了对其性能的透明洞察。我们还研究了不同模型参数的影响,并通过烧蚀研究讨论了不同TriAD模块的意义。此外,还包括一个详细的案例研究,以说明整个推理过程,并强调模型在处理各种微妙异常时的可解释性和多功能性。

A. Experimental settings

在本节中,我们首先介绍UCR时间序列异常归档。然后,我们详细介绍了实验设置,包括数据准备,模型训练以及本研究中使用的所有模型参数。

1)数据集:UCR时间序列异常存档[17]是最近推出的存储库,包含250个不同的时间序列数据集,专门用于时间序列异常检测研究。每个数据集包含一个长度不等的异常事件,范围从1到1700。所有数据集的异常长度分布如图6所示,百分比表示包含特定长度异常的数据集的比例。此外,这些数据集涵盖了健康、工业和生物学等不同领域,显示出具有特定特征的不同异常类型。第IV-F节讨论了不同异常类型的例子。值得注意的是,这些数据集中只有一小部分具有可以通过“单行”方法解决的异常。考虑到只有少数真实世界的数据集具有明确的异常,这些数据集确保了所提出的异常检测模型的泛化。

在这里插入图片描述
2)时间序列分割:考虑到UCR存档中的不同领域,每个数据集都引入了自己独特的季节模式。因此,为了提取与数据集固有季节性和残差一致的关键特征,我们确保我们的时间序列片段可以捕获每个数据集固有周期性的2.5倍。此外,为了进一步增强特征提取过程,我们将步长设置为窗口长度的四分之一,以保证在时间序列分割过程中有足够的覆盖率。

3)模型训练:对于我们的异常检测研究,我们对来自UCR存档的250个数据集中的每个数据集训练不同的模型,并将每个模型应用于其各自的测试集以获得检测结果。我们使用默认的批大小为8,学习率设置为0.001,并且我们对每个数据集进行了超过20个epoch的训练。此外,为了确保我们的模型保持一般化并避免过拟合,我们使用10%的训练数据作为验证集。为了确保结果的可靠性,我们在五种不同的种子下测试模型,并计算平均值和标准差,如表III所示。

4)模型参数:我们的模型经过精心设计,采用了包含6个剩余块的编码器。这个编码器产生的嵌入尺寸表示为hd = 32。为了在学习过程中达到适当的平衡,我们将对比损失参数α调整为0.4。该参数协调域内和域间对比损失的贡献。关于关键参数对模型性能影响的深入探讨,请参见第四节-d。

B. Performance comparison

在本节中,我们使用两个严格的评估指标:PA%K和隶属关系指标,将我们提出的方法的性能与最近研究中的SOTA深度学习模型进行比较。为了进行无偏比较,我们使用其源代码测试每个模型,并在将预测置于我们重新定义的评估指标之前排除任何PA过程。进一步深化我们的分析,我们进行了一个评估,以比较事件的准确性与最新的不和谐发现算法。我们的结果表明,我们的模型从点和事件的角度都表现出稳健的性能。

1)与SOTA深度学习模型的比较:在[14]提出的研究中,作者证明了随机初始化的LSTM-AE可以作为时间序列异常检测的基准,因为它对许多最先进的模型具有令人印象深刻的性能。受这项研究的启发,我们使用UCR数据集将最近的深度学习模型与训练好的和随机初始化的LSTM-AE进行了比较。值得注意的是,我们战略性地选择了一系列丰富的基线模型,包括注意力机制、自动编码器、对抗性和自监督学习等尖端技术。以下是这些模型的简要分类:
•LSTM-AE[14]:作为推荐的基线,该模型优于几个SOTA深度学习模型。简单的架构使用未经训练的自编码器和单层LSTM。我们给出了两个变量的结果:随机初始化和训练。•USAD[30]:这种无监督异常检测模型采用两个自动编码器,每个编码器包括一个共享编码器和不同的解码器。它的两阶段训练包括一个自动编码器阶段,然后是对抗性训练。•TS2Vec[31]:这项工作在增强的上下文视图中分层利用对比学习,促进鲁棒的时间戳表示。•异常转换器[32]:这项工作引入了异常-注意机制来测量关联差异,这是通过比较每个时间戳的先验关联与自注意图派生的序列关联来确定的。•MTGFlow[33]:该方法使用动态图和实体感知的规范化流程解决时间序列异常检测问题。它的基础是假设异常事件比正常事件显示更稀疏的密度。•DCdetector[34]:这项工作利用双重注意对比学习方法来有效区分正常和异常数据表示。它利用基于补丁的注意力网络来捕捉时间序列中的时间依赖性。

基于第II-B节中详述的与PA过程相关的问题,我们的研究采用了优化的基于PA的度量,PA%K,以及以事件距离为中心的方法,关联度量。以下是对这些评估指标的更深入研究:

•PA%K[14]:该指标通过考虑传统F1测量和病态PA之间的权衡来优化逐点评估。它通过权衡准确识别的异常的比例来衡量模型的性能。过程表示为:
在这里插入图片描述
在此公式中,检测输出表示为: y ^ 0 , y ^ 1 , . . . , y ^ N − 1 \hat{y}_0,\hat{y}_1,...,\hat{y}_{N-1} y^0,y^1,...,y^N1。每个组件用0和1标记,表示预期的异常标签。同时,A表示异常序列,其中所有组成点标记为1,共同表示单个异常事件。在本研究中,我们使用K值从1到100评估F1分数,并使用曲线下面积(AUC)确定优化分数。

•关联[19]:该指标从事件角度衡量预测的性能。它为接近实际事件的不正确预测提供补偿,并为长期异常事件提供更多奖励。然后,它将实际事件和预测之间的时间距离转换为分布函数,该分布函数反过来用于计算基于概率的精度和召回率。由于每个测试集只包含一个异常事件,因此公式表示为:在这里插入图片描述
在这里插入图片描述
与SOTA深度学习模型的比较结果如表3所示。正如观察到的,大多数深度学习模型都优于基准模型:一个随机初始化的LSTM-AE。考虑到数据集中存在的精心制作的异常类型的可靠性,这种性能是预期的。从逐点的角度来看,几乎所有的基线模型都从PA中获得了实质性的好处,导致F1分数增加了大约2到30倍。然而,PA%K调整提供了更真实的描述,突出了模型性能的真正有效性。结果表明,大多数模型很难在异常事件中检测到相当一部分数据点,并且它们的预测能力随着K的增长而减弱。相比之下,TriAD在pa之前和之后都保持一致的性能。这是因为TriAD本质上是为了在最可能的区域分配异常。因此,其精度至少比其他方法高4倍,最终使优化后的F1分数提高至少4倍。从事件的角度来看,虽然其他方法可能由于错误地识别许多积极的异常而表现出更高的召回率,但它们在补偿方面的精度下降。相比之下,TriAD通过关注异常区域显著减少了误报,最终导致在隶属关系评估下F1分数提高至少6%。在这里插入图片描述
在这里插入图片描述
2)与不和谐发现算法的比较:MERLIN++以其加速不和谐搜索时间的能力而闻名,同时通过Orchard的索引算法保持与原始MERLIN相同的精度水平。为了与该SOTA不和谐发现算法进行比较评估,我们采用了MERLIN++最初使用的评估指标。在这里,准确性取决于在测试集中成功检测到的异常事件的数量,并且在异常周围的100个数据点范围内的预测被认为是正确的。他们将250个数据集按长度升序排列,在最初的62个数据集中,MERLIN++正确识别了29个异常事件。在我们的方法中,我们直接利用TriAD识别的窗口,根据它们包含的异常来测量精度。如表4所示,当与MERLIN++研究的结果进行比较时,我们实现了大约50%的准确性提高。此外,在推理阶段,我们的方法比MERLIN++至少快10倍。注意,在250个数据集中,TriAD的平均三窗检测精度为0.531(±0.017),单窗检测精度为0.482(±0.019)。

在TriAD框架的最后阶段,我们集成了MERLIN来精确定位异常,提供可变长度选项的灵活性。将搜索长度限制在一个特定的窗口大小,这一阶段明显受益。在本研究中,为了释放MERLIN的全部潜力,我们在所选窗口之前和之后引入了数据点填充,这为正常数据的典型外观提供了额外的上下文。如图7所示,在所有数据集上,TriAD平均提供的搜索长度比MERLIN所需的搜索长度短20倍,大大加快了算法的速度。此外,由于TriAD在不和谐搜索阶段之前识别出更准确的窗口,它有可能帮助MERLIN避开来自大量正常数据的误报。这种关注促使算法识别特定区域内的异常,从而提高其预测精度。在这里插入图片描述

C. Ablation study

为了了解TriAD中每个模块的重要性,我们进行了消融研究。这个实验包括从框架中移除单个模块,并观察随后的性能下降。我们使用triwindow的异常检测精度对模型进行了微调,因为该指标可以直接衡量TriAD的性能并影响后续阶段。如图9所示,在TriAD的三种编码器中,通用编码器和频率编码器在异常检测的表示学习中起着至关重要的作用,而残差编码器的作用较小。这可能是由于数据集的主要异常与时间和频率变化有关,而残差变化则不那么重要。此外,域内对比学习比域间对比学习具有更大的权重,这表明数据增强显著有助于区分多视图异常表示。在这里插入图片描述
在这里插入图片描述

D.参数研究

为了评估TriAD中各种参数的影响,我们关注了三个关键参数:对比损失的权重(α)、CNN块的数量(深度)和编码器的表示维度(hd)。如图8所示,当α达到多域对比损失的平衡权重时,可获得最佳性能。此外,随着α的降低,该模型越来越受益于域内对比学习,这与我们从消融研究中得到的见解一致。无论CNN块的数量如何,性能都保持相对稳定,尽管深度为6的情况略优于其他情况。最后,表示维度为32产生最有利的结果,更大的维度可能导致模型中的过拟合。

E. Case study: UCR “025”

在这里插入图片描述
为了阐明TriAD的异常检测方法,我们提出了一个使用UCR数据集“025”的案例研究,该数据集的长度为4702个数据点。如图10所示,该异常包含27个数据点。与标准相比,这段显示了微妙的频率移动;虽然正常段在主峰之后有一个较小的峰,但异常忽略了这个较小的峰。我们首先将测试集分割为67个窗口,每个窗口覆盖大约2.5个周期或大约350个数据点。然后,每个窗口的特定领域编码器学习表示,并促进它们之间的成对相似性比较,如图11所示。值得注意的是,索引39的窗口实例在频率域和残差域的相似性得分最低,与其他窗口实例区别开来。这一结果表明,这个窗口可能包含以频率和残差的显著变化为特征的异常,即使它的时间相似性保持相对稳定,并且没有表现出如此剧烈的下降。
在这里插入图片描述
在精炼我们的选择以确定最可疑的窗口之后,我们在其前后引入填充,为MERLIN的分析做准备。如图12所示,在TriAD突出显示的窗口中,MERLIN在一个灵活的长度范围内进行搜索,范围从3到300。每次搜索都识别出特定长度的时间序列片段,这些片段看起来与其他片段最不同。结果表明,几乎所有不和谐搜索的结果,无论其长度如何,都集中在异常所在的区域内。

在这里插入图片描述
虽然MERLIN可以直观地了解测试集中异常的可能分布,但解释这些结果需要人工参与。为了解决这个问题,我们使用投票系统将视觉数据转换为检测结果。如前所述,在这项工作中,我们使用平均投票分数来确定异常阈值。此外,我们还探讨了改变该阈值对检测结果的影响。如图13所示,将阈值设置在投票得分的第90百分位以上,可以显著提高检测精度。阈值的增加过滤掉了更多的正常数据,只保留了最明显的段。
在这里插入图片描述

F. Diversity of anomalies

在图16中,我们展示了TriAD在检测各种异常方面的熟练程度,无论其长度和形状如何。我们从测试集中突出了六种不同的异常,以证明这种多功能性:以意外波动为特征的类噪声异常;持续时间异常,表示稳定行为的意外扩展;季节性异常,固有季节性突然翻倍;趋势异常,显示未预料到的上升;以突然跳跃或突然下降为特征的持续移动的水平移异常;以及正常序列被扭曲的上下文异常。这些结果清楚地强调了TriAD在识别长度从20到200的异常方面的能力,并展示了对更细微的异常(如持续时间、电平变化和上下文异常)的特殊鲁棒性。相反,如图14所示,主要竞争对手MTGFlow的结果显示出将正常模式错误分类为异常模式的倾向,这归因于其在捕捉数据细微变化中的显著特征方面的局限性。因此,检测到的异常的多样性进一步强调了TriAD在区分跨时间、频率和剩余域的变化方面的能力。
在这里插入图片描述

G. Case when discord discovery fails

如图15所示,虽然TriAD在发现最可疑窗口方面显示出优势,但如果搜索窗口中包含的异常数据多于正常数据,特别是当异常事件跨越很宽的长度时,后续的不和谐发现可能会失败。在这种情况下,像MERLIN这样的不和谐发现算法可能会将规则模式错误地识别为异常,从而忽略了真正的异常。为了纠正这一点,我们提出的框架实现了一个异常:将窗口内的所有数据点赋值为正值。潜在的推理是,如果TriAD将一个窗口识别为可能包含异常,而没有发现异常,则很可能是窗口外的常规模式被错误地标记为异常。

在这里插入图片描述在这里插入图片描述

五、 RELATED WORKS

时间序列异常检测中的监督学习和无监督学习。各种机器学习方法可以使用监督和无监督策略检测异常。虽然监督方法使用生成和判别模型来区分规则模式和异常模式,但标签的有限可用性和固有的不平衡性经常阻碍其有效部署[35],[36]。考虑到这些挑战,研究的重点已转向无监督技术,即基于历史模式预测或重建时间序列数据,并根据预测与实际数据之间的差异确定异常情况。值得注意的是,cnn和rnn在无监督异常检测中取得了区别,通常与自编码器[37],[38]配对。与以rnn为中心的体系结构相比,注意机制在对顺序数据建模、利用并行处理能力[39]方面表现出了弹性。受自我注意在跟踪扩展时间模式方面的熟练程度的启发,研究人员还引入了以注意为中心的异常检测模型,该模型利用了来自广泛时间序列[40],[41]的多模态特征。此外,人们对工业物联网(IIoT)系统中的实时异常检测越来越感兴趣。这种方法解决了与受限内存预算b[42]和与部署深度学习模型相关的隐私问题b[43]相关的挑战。

时间序列的自监督学习。为了解决时间序列异常检测中缺乏标签所带来的挑战,自监督学习在各种时间序列应用中取得了显著的进步。一种流行的方法包括综合异常和训练模型,以区分它们与常规实例[44]-[47]。例如,NCAD[46]通过在训练阶段合并单点异常值来细化正常和异常样本之间的区别。除此之外,一些研究已经探索了视图生成的潜力,通过多尺度增强(multi-scale augmentation)创造了多个不同的视角[bb0,[48]]。例如,MTFCC[48]新颖地创建了绘制多尺度属性的视图。通过对不同尺度的时间序列进行采样,它假设来自相同样本的视图应该具有相似的表示,从而在编码器训练期间引入了多时间尺度特征一致性约束。然而,选择最佳的增强策略以保持时间依赖性并定义各自的正负对仍然需要进一步探索[49],b[50]。

六、相关工作

为了解决时间序列异常检测中的两个主要挑战——标签的有限可用性和异常的变化——我们引入了一个使用对比学习和精心设计的数据增强相结合的标签独立框架TriAD。此外,我们解决了基准测试中长期存在的问题,使用严格的评估对深度学习模型进行了彻底的、基于实验的比较。我们的实验结果显示,与最近的领先模型相比,优化后的F1积分显著增加了三倍。这一突破强调了深度学习模型作为未来时间序列异常检测任务的有效工具的潜力和可靠性,这增加了关于深度学习技术在该领域有效性的持续争论。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值