小波在基于时间序列的异常检测算法中的应用

机器算法验证 时间序列 异常值 信号处理 小波
2022-02-10 13:56:43

我已经开始学习Andrew Moore 的 Statistical Data Mining Tutorials(强烈推荐给任何第一次涉足该领域的人)。我首先阅读了这个非常有趣的 PDF,标题为“基于时间序列的异常检测算法的介绍性概述”,其中 Moore 追溯了创建用于检测疾病爆发的算法的许多技术。在幻灯片进行到一半时,在第 27 页,他列出了许多其他用于检测疫情的“最先进的方法”。列出的第一个是小波Wikipeida 将小波描述为

一种波状振荡,其振幅从零开始,增加,然后减小回零。它通常可以被视为“短暂的振荡”

但没有描述它们在统计中的应用,我的谷歌搜索产生了高度学术论文,假设了解小波如何与统计相关或关于该主题的完整书籍。

我想对小波如何应用于时间序列异常检测有一个基本的了解,就像摩尔在他的教程中说明其他技术一样。有人可以解释使用小波的检测方法是如何工作的,或者提供一个可以理解的文章的链接吗?

4个回答

小波对于检测信号中的奇点很有用(参见例如这里的论文(参见图 3 的说明)和本文中提到的参考资料。我猜奇点有时可能是异常?

这里的想法是连续小波变换(CWT)具有沿频率传播的最大值线,即线越长,奇点越高。请参阅论文中的图 3,了解我的意思!请注意,有与该论文相关的免费 Matlab 代码,它应该在这里


此外,我可以为您提供一些启发式方法,详细说明为什么离散(前面的示例是关于连续的)小波变换(DWT对统计学家来说很有趣(请原谅非穷举性):

  • 有一大类(现实(Besov 空间))信号通过小波变换转换为稀疏序列。压缩特性
  • 一类广泛的(准平稳)过程,它们被转换为具有几乎不相关特征的序列(去相关属性
  • 小波系数包含在时间和频率上(在不同尺度上)本地化的信息。(多尺度属性)
  • 一个信号的小波系数集中在它的奇点上

您引用的演示文稿中的列表对我来说似乎相当随意,并且将使用的技术实际上取决于具体问题。但是您会注意到它还包括卡尔曼滤波器,因此我怀疑其预期用途是作为一种过滤技术。小波变换通常属于信号处理的主题,并且经常被用作具有非常嘈杂数据的预处理步骤。一个例子是 Chen 和 Zhan 的“多尺度异常检测”论文(见下文)。该方法是对不同的频谱而不是对原始噪声序列进行分析。

小波经常被比作连续时间傅里叶变换,尽管它们具有在时间和频率上都局部化的好处。小波既可用于信号压缩,也可用于平滑(小波收缩)。最终,在应用小波变换之后应用进一步的统计数据可能是有意义的(例如通过查看自相关函数)。可用于异常检测的小波的另一个方面是定位的效果:即,不连续性只会影响它附近的小波(与傅立叶变换不同)。一种应用是寻找局部平稳的时间序列(使用 LSW)。

Guy Nason有一本好书,如果您想进一步深入研究实际的统计应用程序,我会推荐这本书:“ Wavelet Methods in Statistics with R ”。这是专门针对小波在统计分析中的应用,他提供了许多真实世界的示例以及所有代码(使用wavethresh 包)。Nason 的书并没有专门讨论“异常检测”,尽管它确实在提供一般概述方面做了出色的工作。

最后,维基百科文章确实提供了许多很好的介绍性参考资料,因此值得详细阅读。

[附带说明:如果您正在寻找一种良好的现代技术来检测变化点,我建议您在花太多时间使用小波方法之前尝试 HMM,除非您有充分的理由在您的特定领域使用小波。这是基于我的个人经验。当然还有很多其他非线性模型可以考虑,所以这真的取决于你的具体问题。]

最常用和实现的离散小波基函数(与 Robin 的答案中描述的 CWT 不同)有两个很好的属性,使它们对异常检测有用:

  1. 它们得到紧凑的支持。
  2. 它们充当带通滤波器,通带由它们的支持决定。

这实际上意味着您的离散小波分解着眼于信号在各种尺度和频带上的局部变化。如果您(例如)在一个函数上叠加了大量高频噪声,该函数在较长时间内显示出低幅度偏移,小波变换将有效地分离这两个尺度,并让您看到许多其他尺度的基线偏移技术会错过;该基线的变化可能表明疾病爆发或其他一些利益变化。在很多方面,您可以将分解本身视为更平滑(并且在非参数估计中小波系数的有效收缩方面已经完成了相当多的工作,例如,参见 Donoho 关于小波的几乎所有内容)。与纯基于频率的方法不同,紧凑的支持意味着它们能够处理非固定数据。与纯粹基于时间的方法不同,它们允许一些基于频率的过滤。

实际上,要检测异常或变化点,您将对数据应用离散小波变换(可能称为“最大重叠 DWT”或“移位不变 DWT”的变体,具体取决于您阅读的人),然后查看在较低频率的系数集上查看基线是否有显着变化。这将向您显示在任何日常噪音下何时发生长期变化。Percival 和 Walden(参见下面的参考资料)得出了一些统计显着系数的检验,您可以使用这些检验来查看这样的转变是否显着。

Percival 和 Walden,“时间序列分析的小波方法”是离散小波的优秀参考著作。Burrus、Gopinath 和 Guo 的《小波和小波变换简介》是一本很好的入门著作。如果您来自工程背景,那么从信号处理的角度来看,“工程师和科学家的小波元素”是一个很好的介绍。

(编辑包括罗宾的评论)

到目前为止真的很好的答案!

关于 robin 的第一句话的数学证明(即小波可用于检测信号中的奇点),最初由 Yves Meyer 撰写,请参阅使用小波进行奇点检测和处理(Mallat 和 Hwang,1992 年)。它们不仅有用,而且可以保证集中在奇点周围,并通过他们的 Lipschitz 度量使它们可量化,这是一种“当且仅当”条件。

这就是说,我想反思 robin 的假设,即奇点可能是异常,并且可能通过说,由于小波表示更多地集中在奇点上,因此结果通常更稀疏,并且更稀疏的表示可以允许识别异常更可靠(即使只是作为具有较少参数的结果)。

当然,不是所有的事情都可以用小波解决,这已经不是 90 年代了。现在我们把神经网络扔到所有东西上!