经验模态分解:分解复杂信号和时间序列的最直观方法

经验模式分解的逐步分解,帮助您从时间序列中提取模式后经验模式分解:分解复杂信号和时间序列的最直观方法首先出现在走向数据科学上。

来源:走向数据科学

作为数据科学家来分析您的时间序列?您有没有想过信号处理是否可以让您的生活更轻松?

如果是的话 - 留在我身边。这篇文章是为你而写的。 🙂

使用现实世界的时间序列可能会......痛苦。金融曲线、心电图轨迹、神经信号:它们通常看起来像毫无结构的混乱尖峰。

在数据科学中,我们倾向于依赖经典的统计预处理:季节性分解、去趋势、平滑、移动平均……这些技术很有用,但它们带有很强的假设,但在实践中很少有效。当这些假设失败时,您的机器学习模型可能表现不佳或无法泛化。

今天,我们将探索一系列在数据科学培训中很少教授的方法,但它们可以彻底改变您处理时间数据的方式。

在今天的菜单上🍔

🍰 为什么传统方法难以处理现实世界的时间序列🍛 信号处理工具如何提供帮助🍔 经验模态分解 (EMD) 的工作原理以及失败的地方

我上面提到的“经典”预处理技术是很好的起点,但正如我所说,它们依赖于关于信号应如何表现的固定、定义的假设。

他们中的大多数假设信号是平稳的,这意味着其统计特性(均值、方差、频谱内容)随着时间的推移保持恒定。

但实际上,最真实的信号是:

    非平稳(其频率内容不断变化)非线性(无法用简单的加性分量来解释)噪声同时与多个振荡混合
  • 非平稳(其频率内容不断变化)
  • 非平稳
  • 非线性(它们不能用简单的加性分量来解释)
  • 非线性
  • 嘈杂
  • 同时混合多个振荡
  • 那么……“信号”到底是什么?

    信号只是随时间变化的任何量(我们通常在数据科学中称为时间序列)。

    时间序列

    一些示例:

  • ❤️ ECG 或 EEG — 生物医学/大脑信号
  • 心电图或脑电图
  • 🌋 地震活动 — 地球物理学
  • 地震活动
  • 🖥️ CPU 使用率 — 系统监控