1、引言
1.1 基本介绍
时间和流数据的异常检测场景出现在许多应用中,如传感器数据、机械故障诊断、医疗数据、网络入侵数据、新闻文本帖子和财务帖子等。在这些问题中,时间连续性假设在识别异常值方面起着至关重要的作用。
时间连续性是指数据中的模式不会突然改变,除非有异常的过程在工作。
在时间序列数据中,时间连续性是即时的,预计将非常强。
在具有时间成分的多维数据(如文本流)中,时间连续性要弱得多,而且只从总体趋势的角度来看。
以下是两种时间连续性改变的情况:
时间序列中的突然改变的检测:
这些对应于底层数据流趋势的突然变化。在这种情况下,时间连续性是重要的,异常值被定义为不寻常的,因为它于近期或长期历史缺乏连续性。例如,时间序列值的突然变化(短期历史)或时间序列子序列的独特形状(长期历史)被识别为异常值。
在整个时间序列离线可用的情况下,可以利用事后的优势来识别异常的时间序列值或形状。 在时序分析中,垂直分析更重要,当每个单独的序列(或维度)被视为一个单元时,分析主要是在这个单元上进行的。如果有多个系列可用,则可以利用交叉关系,尽管它们通常在每个系列的分析中起次要作用。 这是因为时间序列数据是上下文的,它对序列值施加了很强的时间局部性。
多维数据中的新颖性和变化的检测:
在这种情况下,数据包含相互独立的单个多维点,与时间序列数据相比,时间连续性问题要弱得多。 例如,在从传感器数据导出的时间序列中,两个连续的数据值通常几乎相同。 另一方面,一个单独的文本文档(多维数据点)在一系列新闻文章中通常可能与它的前一篇文章有很大的不同。 为了构建一个鲁棒的离群模型,需要将数据点与文档的更大历史进行比较。
多维流数据中的异常可以对应于总趋势发生变化的时间实例或单个数据点的新情况。
1.2 时间序列中的异常值种类
时间序列中有两类异常值:上下文异常值、集体异常。
当特定时间戳的值突然相对于其时间上的相邻值发生变化时,异常值时上下文异常。
当整个时间序列或事件序列中的大子序列具有不寻常的形状时,异常值时集体异常。
对于如何定义异常值,需要对所研究的问题有深入的研究。
例如,在传感器数据的情况下,有时使用偏差检测方法进行噪声异常值过滤可能是有帮助的,而在其他情况下,医疗流中的异常形状可以诊断心脏状况,如心律失常。
1.3 离线和在线之间的微妙差异
离线和在线(流)之间也有一些微妙的差异。
在离线情况下,流的整个历史可以用于分析,而在在线情况下,只有到当前时间的流是可用的。
1.4 标签的使用
标签可用于监督时间序列或多维异常值检测中的异常检测过程。
在时间序列中,标签可以与时间实例、时间间隔相关联,也可以与整个序列相关联。
在多维数据中,标签与单个数据点相关联。在这种情况下,问题减少到罕见类检测的特殊情况。
因为监督方法总比无监督方法好,所以尽可能地使用监督方法。
1.5 时间序列的连续数据和离散数据
尽管时间数据可以包括连续数据或离散序列,但本章将重点放在连续数据上,以保持表示的同质性。 这是因为时间连续性的概念在离散数据中的定义不同于在连续数据中的定义。 在离散数据的情况下,数据值的缺乏排序显著影响了用于异常分析的方法的性质。 应该注意的是,连续序列总是可以离散为符号数据,尽管丢失了一些信息。离散数据的异常检测将在下章介绍。
接下来的三节中,将介绍三个部分:
基于对时间瞬间预测值的偏差检测(上下文异常);
时间序列数据中子序列的异常形状的检测(集体异常);
多维流数据中异常检测的方法。
2、流时间序列中基于预测的异常检测(基于对时间瞬间预测值的偏差检测:上下文异常)
时间异常检测的最常见应用是利用基于回归的预测模型检测待定时间实例的基于偏差的异常值。
这些异常是上下文异常,因为它们根据相邻时刻数据值之间的关系,在数据的特定时刻定义异常。
这种方法可以检测底层过程中的突然变化,也可以过滤底层流中的噪声。
基于偏差的时间序列异常值与时间序列预测问题密切相关,因为异常值是根据偏离预期值(或预测值)

本文探讨了时间序列数据及多维流数据中的异常检测技术。覆盖了上下文异常与集体异常的检测方法,包括基于预测、形状及多维流的异常检测策略。并讨论了监督与无监督方法在异常检测中的应用。
最低0.47元/天 解锁文章
6857

被折叠的 条评论
为什么被折叠?



