返回列表

6th solution - Pure statistical forecast

389. M5 Forecasting - Uncertainty | m5-forecasting-uncertainty

开始: 2020-03-03 结束: 2020-06-30 销量与需求预测 数据算法赛
第6名方案 - 纯统计预测

第6名方案 - 纯统计预测

作者: Rafael de Rezende, Katharina Egert, Ignacio Marin, Guilherme Thompson
比赛排名: 第5名

我们非常高兴能在我们的第一次 Kaggle 比赛中进入前十名。(我们在在这个项目上投入了无数小时)

关于我们团队,有一点需要了解:我们首先是供应链专业人士,其次才是数据科学家。我们利用了大量的领域知识来解决这个问题,我们使用的许多技术都是从我们在 Lokad(我们都在那里工作或曾经工作过)日常工作中借鉴而来的。

摘要

我们的解决方案是一个多阶段状态空间模型,状态分为活跃和非活跃。

(这里有一个很好的参考:https://gluon.mxnet.io/chapter12_time-series/issm-scratch.html

我们的预测是通过第12层的蒙特卡洛模拟生成的,我们认为不同商店的需求是独立的,因此我们将需求轨迹从第12层聚合到第10层。第1至第9层的时间序列通过简单的创新状态空间模型单独处理。我们使用负二项分布对发射进行建模,以表示需求的离散性。

季节性因子经过精心手工调整,事件则用简单的线性系数建模。(在商店部门层级计算)

优点

  1. 我们的解决方案是完全可解释的(白盒方法)——因此如果受到质疑,我们可以轻松地描述每一个预测。

  2. 它是线性可扩展的,你可以把整个沃尔玛的数据集给我们,它仍然可以毫无问题地运行(当然我们需要一些额外的 CPU)。而且通过将代码的核心部分迁移到编译语言,我们还可以获得 10 倍的性能提升。

  3. 它清楚地区分了需求和销量(即如果我们从不缺货会卖出多少)。

  4. 它可以输出预测范围的完整需求分布,例如:下周会卖多少?注意这与每天卖多少是不同的。

  5. 它可用于训练基于代理的模型(用于我们的 MEIO 解决方案)。

不足之处

  1. 耗时。添加新类别需要额外的人工分析。

  2. 没有考虑价格影响(无法在给定的数据集中正确建模)。

  3. 不预测新 SKU。(我们需要针对这种情况单独制定解决方案)。

结论

我们确实相信,量身定制的统计模型非常适合手头的问题。我们在各个年份和时期的得分相当稳定,最重要的是对解决方案拥有完全的控制权。

同比赛其他方案