如何确定时间序列预测的移动窗口大小?

机器算法验证 时间序列 交叉验证 预测模型 移动窗口
2022-04-10 04:41:11

我有一个模型可以在这个时间序列之前预测 +1 天。

在此处输入图像描述

查看图表,您可以每 5 天注意到一些季节性。我怀疑使用移动窗口作为训练集可以帮助我做出更好的预测。

但是我想以编程方式为我的模型找到最佳的移动窗口大小以下这些方法是否有效?我应该做一些不同的事情吗?

方法 1.我在历史数据上运行模型,使用任何可能的窗口大小,我选择最小化预测误差的窗口大小。这种方法既简单又快速,但恐怕它会使窗口大小过拟合历史。正确的?

在此处输入图像描述

方法 2。我使用交叉验证 (LOOCV) 来获得更真实的预测误差。这比方法 1 更好/更差吗?

在此处输入图像描述

1个回答

我想说您的第一种方法似乎是一个好的开始,对我来说似乎比您的第二种方法更好。您对可能风险的评估是正确的,因为您可以将其解释为在测试集上调整超参数带来的风险是性能估计过于乐观。调整您的第一种方法以包含一个验证集可能是一个想法,您可以在该验证集上调整窗口大小,然后仅使用测试集来获得性能估计。如果您对此不熟悉,我非常喜欢这个线程中讨论的内容:测试集和验证集之间有什么区别?

希望这可以帮助!