零售和新零售
新零售:有涉及数据挖掘的概念,可以通过算法解决业务问题。
- 推荐算法营销
- 内容营销
- 需求预测
- 用户流失问题/潜在用户评估
- 投放超定向广告
- 优化定价策略
零售重要概念
- 新零售和供应链的关系
- AI算法在新零售领域的潜力和需求?
- 举例身边的一些新零售企业
新零售场景下的销量预测
- 是一个回归问题
- 也可以是一个数学问题
- 也可以是一个概率问题
销量预测场景举例
- 库存太多或库存太少
- 新上产品,没有历史销量时怎么办
- 补货的时机和补货的量
所需要的数据
- 销售: 门店、时间、销量
- 门店信息:门店位置、等级、收银台数量、停车场数量
- 商品信息:商品大中小类、商品保质期
- 促销信息
大规模多层级时间序列问题
- 背景 :
- 销量可以根据产品、地理等维度划分为多个时间序列
- 以一个有两级产品(品类和品规)和两级地理(地区和门店)管理体系的企业为例,最细的时序维度时地区-门店-品类-品规。一个较大规模企业可能需要预测数万,甚至数十万个时序。
- 因此需要对大规模时序组合进行预测
- 地区-门店-品类-品规——北京-朝阳站-可口可乐-500ml,这个颗粒度会造成要预测的时间序列非常多,可能有10万个,那算法工程师真的要训练10万个模型吗?其实不一定,
- 4的解决方案:为捕捉时序之间的交互关系,并且允许相同层级的时序共享信息,我们选择多时间序列联合建模的方法,不使用传统的单时间序列模型。具体来说,我们将最细维度时序(地区-门店-品类-品规)的全部数据输入模型,再通过特征工程提取时序类特征。在预测阶段,我们对最细维度时序预测结果进行汇总,得到最高层级时序(如品类和门店销量)。
多步预测问题
- 背景
- 多步预测指我们关注多个目标,例如预测未来1-3个月每个月的向量。
- 传统时序模型的应对方法是将T+1时间的预测结果作为T+2时间的输入值,用来进行滚动预测。
- 这种方法的问题是可能造成预测误差累计。
- 解决方案
- 对每个预测目标时间(T+1,T+2等)分别建立模型,使多步预测更加稳定。
- 代价是需要训练预测目标时间倍数的模型。
- 具体
- 直接多步骤预测
- 递归多步预测
- 直接递归混合策略
- 多输出策略
间歇性需求问题
- 背景:部分时间销量为0的情况,原因可能是季节性产品或者 长尾商品,训练数据中存在大量零值会造成模型偏见。
- 解决方法
- 首先,将有大量连续零值时序视为已停产状态,从训练数据中剔除,不对其进行预测。
- 筛选完时序后,还会有间歇性需求存在。我们根据实际数据情况采用以下方法或方法组合应对:
- 使用 Tweedie Loss 等对零值敏感的损失函数训练模型。
- 使用 Hurdle Model,先训练一个分类模型预测销量是否0,再训练一个回归模型预测在销量非0情况下的销量。
方法论
通常零售场景下时间序列的预测分为三大块:
方法 | 模型举例 | 优点 | 缺点 |
---|---|---|---|
传统机器学习方法 | Moving Average, ARIMA, Prophet | 简单快速 | 准确率低,主要是变量的时间序列算法。 |
机器学习方法 | Tree-based Model ( Xgboost, Lightgbm)… | 通用性强,可解释性高 | 对某些时序模式(长尾商品)预测差 |
深度学习方法 | LSTM+RNN, TabNet | 自动提取内在特征,减少人为特征工程 | 需要大量数据支撑,Blackbox可解释性差。 |
通常传统统计学方法会作为baseline的选择,机器学习方法因为其准确率高,解释性强在 90% 的场景下都是第一选择,而深度学习方法则是看固定场景和数据量才会选用。