1

再会!

我正在尝试使用 Gluon TS 预测未来 1 天。

我的数据集如下所示:

df: 日期卷 Jan1 100 ... June1 99 June2 105 June3 90 June4 NaN

如何预测未来 1 天(6 月 4 日)?

我尝试了以下示例:

test_data = ListDataset([{"start": df.index[0], 
                              "target": df.Volume[:"June4"]}], 
                            freq="D")

    estimator = NBEATSEstimator(freq="D", prediction_length=1, context_length = 5,trainer=Trainer(epochs=60,ctx="gpu"))
    predictor = estimator.train(training_data=test_data)

_然而,我得到一个错误:'Got NaN in first epoch。尝试降低初始学习率。'__

如果我有所有以前的数据(6 月 3 日及更早),我应该如何预测 6 月 4 日?我究竟做错了什么?

另外,如果我改用目标 June3(与上面相同的数据集,数据包括 June3 和 June4 NaN 值)。

test_data = ListDataset([{"start": df.index[0], 
                            "target": df.Volume[:"June3"]}], 
                          freq="D")

  estimator = NBEATSEstimator(freq="D", prediction_length=1, context_length = 5,trainer=Trainer(epochs=60,ctx="gpu"))
  predictor = estimator.train(training_data=test_data)

我得到的预测结果非常接近 6 月 3 日的结果。

它是简单地复制 June3 的结果,还是使用 June2 和更早的时间,然后尝试预测未来 1 天(June3)?

4

0 回答 0