赶上最新的AI论文

无监督的时间序列异常检测(NCAD

时间序列

三个要点
✔️ 为时间序列异常检测提出的一个强大框架
✔️ 将数据增强与表达式表示模型相结合,而不仅仅是预测模型
✔️ 不会浪费哪怕是最少量的标签数据,而是将更多的标签纳入模型以提高性能。

Neural Contextual Anomaly Detection for Time Series
written by Chris U. CarmonaFrançois-Xavier AubetValentin FlunkertJan Gasthaus
(Submitted on 16 Jul 2021)
Comments: 
Published on arxiv.
Subjects: Machine Learning (cs.LG); Artificial Intelligence (cs.AI)

code:  

本文所使用的图片要么来自该文件,要么是参照该文件制作的。

简介

这是AWS人工智能实验室的一篇论文。它提出了一个时间序列异常检测的框架,即NCAD(神经上下文异常检测),它可以处理无监督和有监督、无缝、单变量和多变量。

我们认为,半监督学习是利用现有数据的理想方式,因为在低标签数据集上的无监督学习是低效的,因为这些信息没有被利用。因此,我们准备了一个可以无缝处理无监督、半监督和监督学习的框架,其结构允许纳入额外的数据。

最近,计算机视觉中的深度异常检测的发展在这种概念下取得了显著的性能,一个显著的例子是与超球体分类器相关的工作,它将单类分类扩展为一个强大的半监督学习异常检测框架。

多变量时间序列表示学习的最新发展是通过有效结合最初用于图像处理中的异常检测的技术,如HSC(超球体分类器)和OE(离群点暴露),并针对时间序列进行修改来实现的。合成异常值被注入到手头的数据中,以方便学习正常值和异常值之间的界限。所有的信息都可以有效地作为领域知识或作为半监督学习的训练标签来使用。

该方法将时间序列数据划分为固定长度的重叠窗口。每个窗口又分为两部分:背景窗口和嫌疑人窗口(图1)。其目的是检测可疑窗口的异常情况。其目的是检测嫌疑人窗口中的异常值。 基于异常值在嵌入中引起大的扰动的直觉,异常值在学习到的潜在表示空间中被识别出来。也就是说,我们期望两个分别包含正常值和异常值的重叠片段的表示在比较时相差甚远。

时间序列的异常现象本质上是有背景的。利用这一点,我们将HSC损失扩展到上下文超球体损失。我们用上下文表示法动态地拟合超球体的中心。为了便于学习正常和异常之间的界限,我们使用了数据扩展。特别是,我们使用OE方差来创建背景异常,并使用简单注入的离群点异常。

相关研究

我们将现有的时间序列异常检测方法分为三类:1)预测方法;2)恢复模型;3)基于压缩的方法。

预测方法包括传统方法,如ARIMA。SPOT和DSPOT利用极值理论对分布的裙边进行建模,检测时间序列中的异常值。

在深度异常检测中,使用VAE和GAN的恢复模型方法来自预测方法:DONUT使用VAE来预测滑动窗口的分布。 SR-CNN在无监督的异常检测模型SR的基础上训练一个有监督的CNN,使用注入的单一离群标签。 AnoGAN使用GAN对一连串的观察物进行建模,并在潜在空间进行概率预测。 DAGMM,LSTM-VAE使用递归网络和VAE。OmniAnomaly通过深度创新状态空间模型和规范化流程扩展了这个框架。MSCRED,使用卷积自编码器,通过测量恢复误差来发现异常情况。 MTAD-GAT是一种基于图形注意力网络的方法,在另一篇文章中有所描述。

基于压缩的方法在图像异常检测中正变得越来越普遍。其原理与类似SVM的支持向量数据描述方法SVDD(训练数据中只有一个类别)中使用的单类分类相同。实例被映射到潜意识表征,并在潜意识空间中形成一个球体。远离球心的点被认为是反常的。DeepSVDD通过最小化欧氏距离来实现这一目标。THOC将这一原则应用于时间序列的范畴。

超球体分类器(HSC)是对DeepSVDD的改进,它使用标准的二进制交叉熵进行训练,将其扩展到(半)监督学习环境中。这就把它扩展到了一个(半)监督学习的环境中,其中HSC的损失用伪概率表示为

一些研究表明,只需少量的标签化离群数据就能获得显著的性能改进。这方面的一个延伸是一个强大的工具,称为OE(Outlier Exposure)。它通过在训练期间从扩展的数据集中捕捉大量的异常值来提高检测性能。即使这样的负面例子不是真正的离群值,但这样的对比对于代表学习属性是有用的。此外,OE和HSC的结合在图像上显示出了显著的效果。

对于时间序列,人工异常,对于数据扩展还没有很好的研究,SR-CNN已经被用来把监督学习的CNN放在无监督学习的异常检测模型之上,通过注入单点异常值。

模型描述

异常检测的构建模块如下一种基于窗口的异常检测方法,加上灵活的学习范式和有效的启发式数据扩展。

不是预测二进制数据(正常,异常),而是在每个时间步骤中预测一个正的异常分数,然后设置一个阈值,以满足所需的精度/召回权衡,从而获得异常标签。

基于窗口的上下文超球体检测

如上所述,时间序列数据被划分为窗口,每个窗口又被划分为背景窗口和可疑窗口。嫌疑人窗口通常较小,可以是单一时间点。

异常检测是通过比较应用神经网络特征值提取器$phi(w;\theta)$和$phi(w(C);\theta)$获得的全窗口和上下文窗口的表示向量来进行的。

损失函数可以被看作是HSC的上下文版本。

用欧氏距离表示dist(,),用动态基函数表示l(),我们可以得到

直观地说,这意味着超球的中心是一个动态选择的HSC损失函数,作为每个语境的代表。对于一般的异常注入,学习这个方法意味着可以推广到现实世界中更复杂的异常情况。(可添加标签数据)

建筑学

NCAD由三部分组成:1)一个NN编码器$phi(\cdot;theta)$,我们使用TCN与沿时间序列的自适应最大集合2)一个类似距离的函数$dist(\cdot,\cdot)$ 3)一个概率分数函数l(z)

 编码器参数$theta$是通过最小化窗口w的分类器损失来学习的。

为了实时检测异常情况,该模型被应用于时间序列数据的滚动窗口。因此,每个时间点的数据出现在几个滚动窗口中。可以为第一个高分或为平均值发出警报。

数据扩展

该模型的另一个特点是使用一套数据增强技术来注入人工异常值。其目的是允许有监督的学习,而不需要使用地面真实的标签。这些数据扩展方法并不试图描述整个异常值的分布,而是增加了一个有效的通用启发式方法来检测常见的异常值情况。

情境异常暴露(COE)。

继OE的成功之后,我们提出了一种方法,它不依赖于在上下文中生成异常值例子的简单任务,而是用可疑窗口的数据带来并替换其他时间序列中的大块数据。对于可疑窗口中的数据,我们从其他时间序列中引入了一些数据块,并对其进行了替换;图5显示了原始数据,图6显示了对1500~1550进行了COE处理的数据。图5是原始数据,图6是将COE应用于1500~1550的数据。 数据在(a)和(b)、(c)和(d)之间互换。

不同的注射

 一个简单的观点po(点状离群值)建议。如下图所示,尖峰被注入。

窗口混杂

MIXUP的启发方式对训练数据进行线性组合,如图8所示。

实验

基准

数据集

使用了NASA的SMAP(土壤水分主动无源卫星)、MSL(火星实验室探测器),这在其他比较评估中经常使用,SWaT(安全水处理),这是11天的水处理数据,以及从互联网上提取的SMD(服务器机器数据集)。SMD(服务器机器数据集)取自互联网。

此外,来自YAHOO研究所的367个真实数据,以及合成数据和AIOPS数据竞赛中发布的单变量数据集KPI,都被用于单变量评估。

评级设置

很难以一种普遍的方式来衡量时间序列异常检测的性能。根据不同的应用,在灵敏度、特异性和时间定位方面往往有不同的权衡(优先考虑什么)。为了考虑到这一点,已经提出了不同的方法。在这里,我们遵循Xu等人的方法如果模型至少在一个点上检测到了异常,则假定它在包括该点在内的整个区段中检测到了异常情况。

基准结果

表1显示了单变量数据集的结果,表2显示了与SOTA相比的多变量数据集的结果,其中的关键绩效指标是在无监督和有监督的情况下评估的。数据集,而在KPI数据集上的表现几乎相同。

对于多变量数据集,它在MSL和SWaT方面远远领先于其他数据集,几乎与SMAP的最佳THOC一样好,而在SMD方面仅次于OmniAnomaly。

分割分析

为了了解该方法的哪些部分是有效的,我们进行了一个分割实验:NCAD的第一行是完整的配置,然后是标有-的情况,其中没有对po、COE等进行处理。 我们可以看到,Contextual损失函数做出了重大贡献。数据扩展方法也提高了性能。

下表显示了雅虎数据集的隔离实验的结果。

无监督到有监督的缩放比例

为了研究当我们从无监督到半监督再到有监督时,这个方法的性能如何变化,我们通过改变雅虎数据集上正确标签的数量来测量性能的变化。

正如预期的那样,性能首先随着正确标签数量的增加而单调地提高。使用合成变体(po或COE)可以显著提高性能,即使正确标签的数量很少。通过注入与变体类型完全匹配的变体,性能要比只依赖标签数据好得多。

另一方面,如果要注入的异常点与所需的异常点不同(这里是COE的情况),其性能将不如用丰富的数据标签获得的性能。

使用专门的变体注射技术

在基准测试中,我们使用了通用的异常注入,但我们发现,设计模拟真实异常的异常注入作为方法的副产品,可以让我们得出检测所需类别异常的模型。设计这样一个异常点往往比拥有足够的真实异常数据更简单。下表(a)说明了这种方法的有效性。

当异常现象很微妙,接近正常数据,并且事先知道要检测的异常类型时,这种方法很有效。然而,在某些情况下,并没有这样的先验知识。而且模拟异常现象的产生可能很费时间。这是一个限制,妨碍了这种方法的普遍部署。出于这个原因,我们在基准评估中没有使用这种方法。

从注入的变体中归纳

人为的异常现象总是与真正的异常现象不同。无论生成方法是COE、po,还是更复杂的方法,我们都需要一个模型来弥合这个差距,从不完整的训练数据中生成真正的异常情况。 我们使用MIXUP来进一步提高模型的泛化性能;图3(b)显示了对这种改进的评估。该模型通过注入单个异常值进行训练,并在较长的异常值范围内测量模型的性能。在这个实验中,我们使用一个由简单的正弦波时间序列和高斯噪声组成的合成数据集。在这个基础数据集上,我们用不同宽度的高斯滤波器对尖峰离群点进行卷积,从而增加了宽度不同的实际离群点;随着我们增加混合比例,模型更好地概括了与注入的例子不同的离群点,F1得分也有所提高。

摘要

正如预期的那样,在单变量、多变量、无监督、半监督和有监督的情况下,它们的表现与最先进的技术一样或更好。从类型上看,对于预测性和恢复性模型,我们发现将表达性神经表征(也称为基于压缩的)与数据扩展相结合的方法更有优势。

另一方面,不足为奇的是,上下文数据扩展可以极大地提高性能,而错位的效果有限。如何实现上下文数据的扩展,还有待观察。

  • メルマガ登録(ver
  • ライター
  • エンジニア_大募集!!
友安 昌幸 (Masayuki Tomoyasu) avatar
JDLA G检定2020#2,E资格2021#1 数据科学家协会 DS检定 日本创新融合学会 DX检定专家 联合公司Amico咨询 CEO

如果您对文章内容有任何改进建议等,请通过 "联系我们 "表格与爱学网编辑部联系。
如果您能通过咨询表与我们联系,我们将非常感激。

联系我们