我可以用回归模型进行样本预测吗?

Can I do out of sample predictions with regression model?

使用 the following guide,我制作了一个 sklearn 回归模型来进行时间序列预测。我能够使用该模型对一组测试数据进行预测,其中我有时间戳以及自变量数据,因为该模型只采用这些变量并将输出标签作为预测。

但是,我不确定如何,或者即使我可以使用这个模型来进行样本外预测,我只有一个未来的时间戳和 none 的自变量数据它。是否存在某种递归方法,模型可以使用测试集中的数据进行预测,然后使用预测和数据进行下一个预测等?谢谢!

是的,但这取决于您是要进行单步预测还是多步预测。

如您所述,对于单步预测,请使用最后可用的 window 数据作为预测函数的输入,此 returns 是领先预测值的第一步。

对于多步预测,您有以下三种选择:

  • 直接:为前面的每一步安装一个回归器,让每个安装的回归器用最后一个可用的回归器进行预测 window,
  • 递归:使用最后可用的window进行第一步预测,然后使用第一步预测滚动window并再次预测。

  • DirRec:上述策略的组合,您不是滚动 window,而是使用先前预测的值扩展它,但是请注意,这需要相应地拟合回归变量。

您可以在以下位置找到更多详细信息:

Bontempi, Gianluca, Souhaib Ben Taieb, and Yann-Aël Le Borgne. "Machine learning strategies for time series forecasting." European business intelligence summer school. Springer, Berlin, Heidelberg, 2012.

另请注意,您必须小心谨慎地正确评估您的模型。训练集和测试集在此设置中不是独立的,因为它们代表同一变量的后续时间点的测量值。所以你必须考虑潜在的自相关。