首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果我的时间序列包含滞后的特性,我应该洗牌我的`train_test_split`吗?

如果我的时间序列包含滞后的特性,我应该洗牌我的`train_test_split`吗?
EN

Data Science用户
提问于 2021-07-05 01:57:36
回答 1查看 564关注 0票数 0

我知道这是不建议洗牌您的培训和测试集的时间序列,否则的模型将无法理解时间依赖的功能。

但是,对于数据框架的所有特性,我现在都使用滞后变量。如果我对每个特性有7天的延迟,那么模型,在这种情况下,随机森林(RF)可以访问每个特性的过去7天来预测每个\hat{y}_{i}

在使用sklearn.model_selection.train_test_split时,我可以设置shuffle=True吗?我已经测试了该模型的7天的滞后与/没有shuffle,它适用于相当适合时,shuffle=False。射频与shuffle=True的性能要好得多,我的训练/测试MAE收敛得很好。

当对时间序列数据使用时间滞后变量时,设置我的shuffle=True有什么错误吗?

EN

回答 1

Data Science用户

回答已采纳

发布于 2021-07-05 12:47:58

是的,设置shuffle=True是错误的。

通过对数据进行洗牌,您可以让模型学习数据分布的属性,这些属性可能只出现在测试期间。例如,如果你有一个趋势的数据,洗牌将“帮助”你处理它。

在实时场景中,您将永远无法访问发行版的这些属性。

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

https://datascience.stackexchange.com/questions/97454

复制
相关文章

相似问题

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