在处理时间序列数据源时最常见的错误有哪些?

2025 年 1 月 7 日 | 阅读 9 分钟

与任何其他类型的数据一样,时间序列分析并非易事,尤其是在处理非常精细的事务时。在金融、经济、天气等许多领域分析时间序列数据非常重要。由于它在业务和研究中起着核心作用,因此需要进行妥善管理,以防止导致模型、预测和决策出现错误的错误。本文旨在列出并描述处理时间序列数据源时需要避免的主要错误,然后给出解决方案。

1. 忽略平稳性

理解平稳性

分解季节性时间序列数据的一个目标是使时间序列平稳。这意味着时间序列的基本属性,如均值、方差和相关性,应随时间保持不变。非平稳数据会扭曲时间序列分析的结果,因为大多数统计模型都假定数据在平稳环境中进行。

常见陷阱

忽视季节性和趋势:大多数时间序列显示出长期的向上或向下移动。季节性波动:通常,在固定的时间间隔内会出现小的波动。如果忽略这些,可能会导致模型性能不佳。

未能转换数据:这类数据是非平稳的,因此必须进行转换才能使其平稳。常见的转换类型是差分、取对数和去除趋势。

解决方案

使用 ADF 和 KPSS 检验:为了确定平稳性,请执行增强迪基-福勒(ADF)检验和 Kwiatkowski-Phillips-Schmidt-Shin(KPSS)检验。

适当转换数据:Torres 等人(1996 年)采用了差分等方法来去除趋势和季节性。

2. 缺失值处理部分也不足。

理解影响

这是时间序列数据的主要问题,因为它会影响收集数据的连续性和完整性。

常见陷阱

忽略缺失值:在这种情况下,忽略缺失值的解决方案是错误的,因为它会改变分析。

不恰当的插补方法:如果未考虑时间依赖结构,则执行均值插补等方法可能会导致偏差。

解决方案

插值或使用基于模型的方法进行插补:例如,线性插值、样条插值或基于模型的方法(如卡尔曼滤波)可能更适合。

特定于时间序列的插补方法:在处理缺失值时,STL 或通过 Arima 方法进行的季节性调整更适合。

3. 自相关

理解自相关

自相关性也可以指时间序列与该序列的过去值之间的相关性。如果未考虑自相关性,则会导致低估数据集中的真实关系。

常见陷阱

  • 使用传统的回归模型:大多数标准的回归模型都假定观测值是独立的,而这在时间序列中并不成立。
  • 忽略滞后变量:然而,如果遗漏了滞后变量本身,则会引入错误。

解决方案

  • 使用自相关和偏自相关图:这些图有助于指示自相关的发生或其强度。
  • 包含滞后变量:在模型中始终保存您的变量,以解决内生性问题。

4. 模型过拟合

理解过拟合

它们是一种学习噪声的现象,因此模型在未见过的新数据上表现不佳,这个过程称为过拟合。

常见陷阱

  • 参数过多:过度使用参数是一种缺点,因为它会导致所应用模型的过拟合。
  • 忽略交叉验证:这意味着如果未能采用适当的验证技术,所开发模型在泛化能力方面将不会非常好。

解决方案

  • 使用正则化技术:Lasso 和 Ridge 回归是一些可用于防止模型过拟合的技巧。
  • 采用交叉验证:一些可用于验证模型的方法包括滚动预测原点或时间序列拆分。

5. 特征工程不足

理解特征工程

特征选择可以解释为从原始数据中提取新特征以提高模型性能的过程。此过程有时涉及将数据转换为派生特征,如滞后特征和滚动统计量。

常见陷阱

  • 仅使用原始数据:仅使用原始时间序列数据可能会丢失一些重要模式,从而影响模型性能。
  • 忽略领域知识:这种方法可能会适得其反,因为它不包括一些可以带来更好模型的特定领域特征。

解决方案

  • 创建滞后特征和滚动统计量:诸如过去 T 个时期的平均值、过去 T 个时期的标准差以及前几个时期的值之类的指标也可以描述特定现象。
  • 纳入领域知识:考虑添加领域信息以派生更有用的属性,以增强模型的预测能力。

6. 对季节性和周期性波动的误解

分析季节性和周期性对业务绩效的影响。

季节性模式比周期性模式更规律,因为后者会波动并依赖于经济或商业周期。

常见陷阱

  • 混淆季节性与周期性:例如,在将周期性模式与季节性模式混淆时,会得出相反的建模假设。
  • 未进行季节性调整:忽略季节性波动实际上是对策略有效性的最大威胁。

解决方案

  • 分解时间序列:将其分解为趋势、季节性成分和其他残差。
  • 应用季节性调整方法:SARIMA(季节性 ARIMA)和 STL 也能很好地处理季节性。

7. 忽略模型假设

理解模型假设

任何时间序列模型都有关于数据的特定假设,包括误差正态性、误差同方差性和误差独立性假设。这些假设可能会被违反,从而导致错误的结论。

常见陷阱

  • 在未测试的情况下假定正态性:大多数模型都假设残差服从正态分布,即使我们没有检查。
  • 忽略异方差性:未能处理随时间变化的方差很可能导致估计无效。

解决方案

  • 进行诊断测试:进行 Shapiro-Wilk 正态性检验和 Breusch Pagan 异方差性检验。
  • 转换数据或使用稳健方法:常见的解决方案包括进行转换(如 Box-Cox),或使用稳健的建模方法来帮助处理违反的情况。

8. 未充分关注数据粒度

理解数据粒度

数据聚合可以描述为时间序列数据的细分程度,例如,每日观测值或月度甚至年度数据。确定适当的粒度在建模中非常重要。

常见陷阱

  • 使用过粗或过细的粒度:重要的是不要在泛化时包含过多的信息,以至于关键模式无法识别。
  • 不一致的粒度:不增强比例尺上的差异就无法协调粗略和详细的测量数据。

解决方案

  • 将粒度与分析目标对齐:确定符合您目标且与相关研究问题最相关的分析级别。
  • 根据需要聚合或细分数据:通过将数据进行宏观或微观处理到正确的级别来更改粗略度。

9. 数据预处理管理不当

理解数据预处理

与任何数据分析一样,在进行时间序列数据分析之前,预处理至关重要。这包括清理、规范化和转换数据。

常见陷阱

  • 数据清理不一致:这使得异常值、缺失值和噪声的可变性成为不可靠模型的重要决定因素。
  • 不当的归一化:如果未执行数据归一化或缩放,它会影响模型的响应,特别是对于高度敏感于数量差异的模型。

解决方案

  • 标准化数据清理过程:应建立标准化协议来处理异常观测值和缺失信息项。
  • 归一化或缩放数据:为了处理可变范围,应采用数据归一化方法,例如 z-score 归一化或 min-max 缩放。

10. 忽略外部因素

理解外部因素

可能影响时间序列数据的外部因素包括国内生产总值、天气和政治事件。

常见陷阱

忽略相关的外部变量:一项严重的不足努力通常包括未能考虑可能在正在构建的模型中发挥重要作用的其他外部变量。

假定独立于外部因素:这意味着如果假定时间序列独立于其他观测值,则所做的预测可能不够准确。

解决方案

  • 识别并包含相关外部因素:投入足够的时间来搜索可能影响时间序列的任何外部影响,并将它们整合到建议的模型中。
  • 在模型中使用外生变量:ARIMAX 或 VARX 等术语允许考虑外部变量。

11. 这是由于他们对模型评估指标的理解不佳。

理解评估指标

鉴于时间序列模型分析变量随时间的变化,使用能够反映练习目标的指标(如准确性、精度或其他质量衡量标准)是合适的。

常见陷阱

  • 使用不恰当的指标:应用诸如均方误差之类的简单统计量,未能考虑到指标在相关时间序列分析中的适用性。
  • 忽略模型鲁棒性:在声明/估计方面精确,但未能考虑对异常值和变异性的抵抗能力。

解决方案

  • 使用特定于时间序列的指标:因此,可以说,对于时间序列评估,平均绝对百分比误差(MAPE)、平均绝对标度误差(MASE)和 Theil's U 统计量更合适且建议使用。
  • 评估模型鲁棒性:一些技巧包括根据条件和异常值评估模型性能。

12. 数据频率

理解数据频率

例如,每日、每周、每月等是收集数据的方式,频率对结果和模型也有很大影响。

常见陷阱

  • 数据频率不一致:这解释了为什么以不同频率级别合并数据可能导致创建错误的模型。
  • 忽略特定于频率的模式:不注意按频率划分的模式可能是一个严重的缺点,因为可能会丢失一些重要信息。

解决方案

  • 标准化的数据频率:数据必须具有一致的频率,这可以通过重采样和聚合来实现。
  • 分析特定于频率的模式:描述特定于不同频率的模式,然后将其包含在模型中。

13. 过度依赖自动化工具

理解自动化工具

事实上,时间序列分析过程可以很容易地计算机化,但重要的是不要过度依赖自动化工具而不知情。

常见陷阱

  • 盲目信任软件输出:如果一个人在不检查输出的情况下依赖自动化工具,可能会遇到一些错误。
  • 缺乏定制:使用自动化工具转换的信息可能不适合进一步分析的特定需求。

解决方案

  • 理解底层算法:理解这些工具是如何实现的,以及它们基于哪些算法和方法。
  • 根据需要自定义模型:自定义模型和设置,以更贴近分析的规范。

14. 文档和版本控制

理解文档和版本控制

进行详尽的文档记录并正确进行版本控制与时间序列的可复现和协作工作相辅相成。

常见陷阱

  • 缺乏文档:在准备数据、定义模型及其假设以及选择参数时缺乏文档,也对可复现性提出了挑战。
  • 版本控制不当:未能实施版本控制可能会带来灾难性的后果,因为它会导致团队项目中出现许多误解和错误。

解决方案

  • 记录所有步骤:所有数据预处理活动、模型假设以及影响参数都应完整记录。
  • 使用版本控制系统:接下来,确保您使用 Git 等版本控制系统来帮助记录所做的更改,并使个人能够处理同一个项目。

15. 忽略模型可解释性

理解模型可解释性

清晰的模型分析对于解释如何以及为何获得特定结果至关重要,例如在金融或医疗应用中。

常见陷阱

  • 复杂模型可解释性差:模型的解释性较低,因为经验丰富的交易员无法理解复杂的模型,这使得他们对生成的模型结果不信任。
  • 忽略可解释性技术:未能纳入描述模型预测的方法可能对模型不利。

解决方案

  • 平衡复杂性和可解释性:选择能够为销售预测提供实际结果的模型,并具有合理的准确性标准以及清晰易懂的解释。
  • 使用可解释性技术:使用 SHAP 值或 LIME 来解释特定模型在做出预测时所做的事情。

结论

分析时间序列数据涉及许多需要考虑的因素,以避免以下陷阱。通过识别和解决平稳性、缺失值、自相关、过拟合、特征创建、季节和周期、假设、粒度、数据准备、外部因素、度量、数据频率、依赖自动化工具、文档、版本控制和可解释性等问题,从业人员可以开发出更准确、更可靠的模型。建议的策略将有助于避免使用时间序列数据相关的许多问题,并提高对其分析工作的质量。