如何将数据集拆分为训练集和验证集



我们有一些数据集:

从1月到6月,每天销售100种产品

我们的目标是预测7月份的每日销售额。

那么如何将数据集拆分为训练集、验证集

时间序列是不应随机拆分的典型情况(通常,当存在显著的示例相关性时,不应随机进行拆分)。

通常销售不是一个严格的动态时间序列(如股票价格),但使用train_test_split可能会有问题。

您可以在不使用sklearn的情况下获得所需的交叉验证拆分(例如,sklearn:时间序列数据的用户定义交叉验证、时间序列上的Python交叉验证…)

70-80%的训练是标准的。假设示例分布均匀,则可以将1月至4/5月的数据用于训练集,并将其余记录用于验证。

目前,据我所知,sklearn不支持对时间相关问题进行严格的交叉验证。所有开箱即用的交叉验证例程都将构建训练折叠,其中包括与测试折叠相关的未来信息(例如[WIP]RollingWindow交叉验证#3638)。

此外,您应该考虑您的数据是季节性的还是有其他明显的分组划分(例如地理区域)。

相关内容

  • 没有找到相关文章

最新更新