首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >时间序列预测(DeepAR):预测结果似乎存在基本缺陷

时间序列预测(DeepAR):预测结果似乎存在基本缺陷
EN

Stack Overflow用户
提问于 2018-07-05 13:16:13
回答 1查看 853关注 0票数 1

我使用DeepAR算法来预测随时间变化的调查响应进度。我希望模型预测调查进度中的下20个数据点。每个调查都是我训练数据中的一个时间序列。每个时间序列的长度是调查运行的#天。例如,下面的系列表明,调查于2011年6月29日开始,最后一次回复是在2011年7月24日(25天为长度)。

代码语言:javascript
复制
{"start":"2011-06-29 00:00:00", "target": [37, 41.2, 47.3, 56.4, 60.6, 60.6, 
61.8, 63, 63, 63, 63.6, 63.6, 64.2, 65.5, 66.1, 66.1, 66.1, 66.1, 66.1, 66.1, 
66.1, 66.1, 66.1, 66.1, 66.7], "cat": 3}

如您所见,时间序列中的值可以保持不变,也可以增加。训练数据永远不会显示下降的趋势。令人惊讶的是,当我生成预测时,我注意到预测有下降的趋势。当训练数据中没有下降趋势的痕迹时,我想知道模型是如何学习到这一点的。在我看来,这似乎是预测中的一个基本缺陷。有人能解释一下为什么模型会有这样的行为吗?我使用下面的超参数构建DeepAR模型。对模型进行了测试,RMSE约为9。如果我更改任何超参数,是否会有所帮助?任何对此的建议。

代码语言:javascript
复制
time_freq= 'D',
context_length= 30,
prediction_length= 20,
cardinality= 8,
embedding_dimension= 30,
num_cells= 40,
num_layers= 2,
likelihood= 'student-T',
epochs= 20,
mini_batch_size= 32,
learning_rate= 0.001,
dropout_rate= 0.05,
early_stopping_patience= 10 
EN

回答 1

Stack Overflow用户

发布于 2018-07-06 18:38:55

如果在所有时间序列中都存在上升趋势,那么学习这一点应该没有问题。如果你的时间序列通常有一个上升和下降的周期,那么算法可能会学习到这一点,从而生成类似的模式,即使你预测的例子到目前为止只有一个上升趋势。你有多少个时间序列,它们的平均时长是多少?

你的所有超参数看起来都是合理的,如果不了解更多的数据,就很难说出需要改进的地方。如果你没有那么多的时间序列,你可以尝试增加纪元的数量(也许尝试几百个),并将提前停止增加到20 - 30。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51183829

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档