时间序列Python ARIMA(测试,培训和预测数据中可用的过去日期)

时间:2017-07-03 20:22:33

标签: python pandas forecasting

我理解将数据分成培训和测试提供了一种评估模型与看不见的数据的效果的方法。

我正在训练ARIMA模型,我从10月1日到11月22日有每日数据。我有兴趣在12月14日预测一些指标。我

  1. 培训所有可用数据并使用预测(' 2015-11-23',' 2015-12-14')或
  2. 将数据拆分为训练和测试以获得性能指标并使用训练集训练的模型(10月1日至11月7日)并进行预测,包括测试数据以及未来的日期,例如预测(' 2015年11月8日'' 2015年12月14日&#39)。
  3. 我希望我的问题有道理,很高兴澄清你是否觉得这令人困惑。

    谢谢!

1 个答案:

答案 0 :(得分:0)

如果您使用所有数据进行培训,那么您将无法预测将通用模型设置为看不见数据的程度。这是不使用测试集的一个问题。

您将遇到的另一个问题是,除非您决定进行交叉验证,否则您将无法尝试不同的配置或模型超参数。

数据序列预测对于交叉验证特别棘手,但我会遵循关于正向链接的this post's建议。如果您有6周的数据,则可以按如下方式将数据拆分为折叠:

  • 弃1:训练[w1],测试[w2]
  • 弃2:训练[w1 w2],测试[w3]
  • 弃3:训练[w1 w2 w3],测试[w4]
  • fold 4:训练[w1 w2 w3 w4],测试[w5]
  • fold 5:训练[w1 w2 w3 w4 w5],测试[w6]