如何解决试图了解FB先知交叉验证
我有一个月销售量为84(从2013年1月1日到2019年12月)的数据集-仅几个月,而不是几天。
Month 01 | Sale 1
Month 02 | Sale 2
Month 03 | Sale 3
.... | ...
Month 84 | Sale 84
通过可视化,看起来该模型非常适合...但是我需要对其进行检查...。
所以我了解到cross val不支持Months,所以我所做的就是转换为使用w / days(尽管我的原始df中没有日期信息)...
我想用前五年(60个月)尝试我的模型,而剩下的2年(24个月)去看看模型的预测效果如何。
所以我做了类似的事情:
cv_results = cross_validation( model = prophet,initial='1825 days',period='30 days',horizon = '60 days')
这有意义吗?
我没有得到截止日期和预测期的概念
解决方法
我也为此苦了一段时间。但是这是它的工作方式。最初的模型将在前1,825天的数据中进行训练。它将预测未来60天的数据(因为地平线设置为60)。然后,模型将在初始期间+期间(在这种情况下为1,825 + 30天)进行训练,并预测接下来的60天。它将继续这样,将训练数据再增加30天,然后预测接下来的60天,直到不再有足够的数据来执行此操作。
总而言之,周期是在每次交叉验证迭代中向训练数据集中添加多少数据,而地平线是它将预测多远。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。