与设置良好的线性回归进行预测相比,时间序列有什么好处?

机器算法验证 回归 时间序列 预测
2022-04-06 12:14:09

编辑:我只想指出,我认为需要大卫和理查德的回答(和评论)来描绘全貌作为回应。对我来说,如果我所能做的只是强有力的预测并且对如何设置回归公式有很好的了解,我仍然没有真正需要从给定的回复中尝试时间序列框架,但我确实抓住了要点对系数和整体效率进行了解释(也许,我正在以“硬”的方式来做)。


我对像 ARIMA 这样的时间序列相关模型有点天真,因为与设置良好的预测回归模型相比,我似乎找不到它们的理由。由于自相关错误、季节性和外推等想法,网上的许多回复都指出线性回归的脆弱性,但在我看来,我可以通过良好的数据准备来适应其中的大部分:

  • 季节性- 建模。如果有周期性的下降,我很幸运能用各种标志列(月、季度、甚至年等)捕捉到它们。
  • 自相关- 包括滞后值。对先验值进行增量、滚动均值和各种统计数据似乎很有帮助。
  • 外推——我看不出时间序列方法如何更好地驾驭这一点,因为很少有序列在未来是真正静止的。我发现从初始参考点(即开始后的几个月)保持运行计数似乎有助于总体方向趋势,并且在某些时候你需要重新训练。

除此之外,回归模型允许包含多个其他输入特征的标准方法(例如,如果预测销售,则市场数据)确实有助于外推困境,以及典型的“优化它以解决问题”框架的好处机器学习......我从来没有找到真正的时间序列路线的理由。

有人可以帮助解释我在实际用例中缺少什么吗?或者仅仅是回归模型在使用前确实需要仔细的数据建模?

2个回答

在使用时间序列框架或回归框架之间进行选择是一种错误的二分法。

想要使用时间序列框架的主要原因是自相关错误。考虑到这一点,可以通过使用带有 ARMA 错误的回归(ARIMAX 模型混淆 - Hyndman)将自相关错误合并到回归中,并且在某种意义上获得“两全其美”。

自相关
这是一个反例。假设数据生成过程要么恰好是可逆 MA( ) 模型,要么非常近似于 1。如果您还想通过时间序列回归来近似它,您将需要一个 AR( ) 模型。这是不可行的,因此您最终会得到一个带有较大 ) 。估计AR(参数*会使其具有高方差,因此在预测中表现不佳。同时,您可以改用 MA( ) 模型。它只有 1+2 个参数*,因此方差更低,预测精度更高。1ppp+2p1

季节性
这里是另一个反例。将简约 SARIMA 模型视为数据生成过程或其近似值。SARIMA 模型生成的季节性不能由虚拟变量(您称之为标志)建模。此外,用时间序列回归来近似它可能需要很多变量并带来很多不必要的估计方差。
即使在最简单的 SARIMA(1,0,0)(1,0,0) 实例中,SARIMA 模型也将有 2+2 个参数*要估计,而等效的自回归(您可以将其视为时间序列回归) 将有 3+2 个参数。这样,您将估计一个多余的参数,从而增加模型的方差。如果我们要添加一些移动平均项,情况会变得更糟。

外推
如果您的意思是预测未来(超出可用数据),那么以上两点适用。否则,我同意这两种方法都存在挑战。

关于包括附加变量,带有 ARMA 错误的回归(正如 David Veitch 已经建议的那样)始终是一种选择。但这些额外的变量通常也需要预测,这将我们引向向量自回归 (VAR) 和 VARMA 模型。

总之,了解时间序列回归和ARIMA型时间序列模型是很好的。会有前者更自然或更有效的情况,也有相反的情况。然后,您只能受益于同时拥有这两种工具并能够使用在给定任务中效果更好的任何一种工具。

*+2 来自截距和误差方差。