为什么回测很重要以及如何正确进行回测
回测重要性及正确进行回测
我们如何知道我们的预测模型是否准确可靠,并评估其在未知数据上的性能?这就是回测的作用。
- 什么是回测?
- Python示例:航空公司乘客
- 结论
什么是回测?
为了评估预测模型的性能,我们使用一种称为回测(也称为时间序列交叉验证)的过程。回测本质上是一种测试模型在过去使用时的表现的方法。
它是如何工作的?
要对时间序列预测模型进行回测,我们首先将数据分成两部分:训练集和验证集(有时也称为测试集,但我们将在下一节中澄清两者的区别)。训练集用于训练模型,而测试集用于评估模型在未知数据上的表现如何。一旦模型训练完成,您可以使用它对测试集进行预测。您可以将这些预测与实际值进行比较,以评估模型的性能。
我们如何衡量模型的性能?
有几种指标可用于评估时间序列预测模型的性能,例如平均绝对误差(MAE)或均方根误差(RMSE)。这些指标衡量预测值与实际值之间的接近程度。
该过程通常会重复多次,以便我们能够:
- 获得模型性能的良好估计
- 可视化性能随时间的演变
下面我们展示了回测过程的图形表示,使用了3个分割:
在上图中,我们只显示了3个不重叠的验证期间。然而,没有什么阻止我们使用更多部分重叠的窗口,潜在地每个时间步使用一个。