黑五大促最高立省 60%
  • 年付套餐首年立省 60%
  • 终身授权立省 45%
剩余
立即领取优惠

零售需求预测:从销售记录到更合理的补货决策

保留原始记录,诚实回测预测方法,区分连续监控与每周检查,用水壶算例讲清再订货点、安全库存及订货量。

作者

Anichur Rahaman

2 个月前8 分钟阅读151 次浏览
零售需求预测:从销售记录到更合理的补货决策

想象一家有三间门店的家居用品零售商,在繁忙的周五卖光了畅销水壶,库房里却还堆着 140 个烛台。供应商下一次补货需要两周。这是教学场景,并非真实客户的经营结果。

旧的再订货设置来自每周售出 30 件的时期,团队现在看到更高的销售速度。所有商品都多买一点,只会占用更多资金,未必改善决策。必须同时弄清需求、供应商时间,以及员工实际上多久检查一次库存。

本文用虚构的八周 SKU 记录,演示简单预测回测与两种补货政策。所有数量均为教学假设。公式只有在假设适合实际运营时才有用,并不保证周五绝不缺货。复核日期:2026 年 11 月 4 日。

先定义要预测的需求

先定义 SKU、地点、数量单位、时间粒度和计划期限。销量记录的是已满足的购买,并不包含客户原本想买的全部数量。缺货可能遮蔽需求;零销量的一天本身既不能证明零需求,也不能证明存在损失。结合可售情况、营业时间与可靠的询单、未满足需求证据判断。

将观测销量、估计损失需求和管理调整分开。缺货估计有不确定性,不应作为真实销售交易记入账本。也不要自动删除每笔大单,要区分复购客户、一次性活动,以及下个期限已经知道的承诺订单。

分别预测出库需求与可用退货供给。退回的水壶可能晚到、损坏或不能再卖。净销售额对财务有用,却不必然代表应补数量。仅计入在相应时期能可靠使用的退货供给。

保留透明的调整记录

下表保留原来的教学数据。第 2 周确认有 10 件一次性需求,不计入这个常规基线,但仍保留实际库存消耗。第 4 周加入暂估的 7 件缺货损失。假设这些备注在对应周结束时就已获得;用未来数据反推会污染回测。

周记录销量基线调整计划序列
144044
271−10:已识别一次性需求61
352052
431+7:暂估损失需求38
555055
649049
763063
838038

原销量合计 403,调整序列合计 400,八周均值为 50。总量相近不代表每周节奏准确。保留每次调整的理由、证据、时间和负责人,并测试不同损失需求假设。

标注促销和价格变化,不要无声删除。趋势与日历影响需要合适的基线:月份比例可能把增长当成季节性,也可能重复叠加已有季节模型。更多重复周期有帮助,但两年数据不保证季节估计可靠。日期移动的节庆与新品需要额外判断。

不用未来信息来测试预测

四周移动平均是一种容易解释的候选方法,不是自动胜出的答案。每个测试周仅使用此前四个计划值预测。用相同日期、相同已知信息比较适当的朴素或季节基线。如果库存决策覆盖两周或三周,也应测试该期限的累计预测。

下面的一步滚动示例用于演算。四个测试观测远不足以证明生产可靠性。保存当时发出的预测版本,不能用后来知道的信息改写历史输入。

周预测实际计划值实际 − 预测绝对误差
548.7555+6.256.25
651.5049-2.502.50
748.5063+14.5014.50
851.2538-13.2513.25
合计200.00205+5.0036.50

第 8 周结束后,最近四周平均给出的第 9 周预测是 51.25,而不是 50。后面的库存例子另行假设稳定计划均值为 50,取自完整八周历史。这是单独的简化假设,并没有把最新移动平均说成 50。

理解误差指标的边界

在这四周非负需求中,WAPE = 绝对误差之和 ÷ 实际值之和 = 36.5 ÷ 205 = 17.8%。分母为零则记为 N/A。销量、趋势和构成变化会使跨期比较产生误导;总指标也会掩盖个别 SKU。

说明符号定义:偏差 = sum(预测 − 实际) ÷ sum(实际) = (200 − 205) ÷ 205 = −2.4%,表示本例总体低估。正负误差可能抵消,MAE = 36.5 ÷ 4 = 9.125 件。还要看服务、损耗和采购成本,不设通用 WAPE 合格线。

滚动起点测试可参阅 Forecasting: Principles and Practice;Hyndman 的 WAPE 说明讨论分母和非平稳性限制。缩放基线有意义时,也可考虑 MASE/RMSSE。

选择连续检查还是每周检查

连续检查:库存位置变化时持续监测,达到或低于再订货点时触发设定的补货决策。再订货点回答何时,不代表要买多少。订货量、未结采购和审批仍需单独规则。

每周定期检查:每个检查时点计算补到目标水平还需多少。保护期包含到下一次检查的等待时间,以及供应商提前期。不要等到穿过连续检查阈值,才执行每周计算。

简单欠交模型中,库存位置 = 可用在手 + 已确认在途 − 欠交需求。它不等于货架实物量或可承诺量。将预留及其他承诺与需求模型对齐,防止重复计数。排除损坏库存,并按到期日评估延误或不确定收货,不假设所有未结采购都准时。算例没有其他承诺或缺口。

在明确假设下计算缓冲

仅用于演算:周均需求 d = 50,固定提前期 L = 2 周,各周需求稳定且独立,样本标准差 σ = √(644/7) = √92 ≈ 9.5917,使用正态近似。选择 95% 的周期服务目标,z ≈ 1.64485。时间单位须一致,整件需求向上取整。

连续检查:SS = z × σ × √L ≈ 22.31,向上取整为 23 件。ROP = d × L + SS = 100 + 23 = 123 件。这是模型阈值,不是保证,也不是 95% 的按件满足率。

每周检查 R = 1,所以保护期 L + R = 3 周。缓冲 z × σ × √3 ≈ 27.33,向上取整为 28 件。目标 S = 50 × 3 + 28 = 178 件。沿用两周缓冲会低估本模型的保护期风险。

每周检查时假设库存位置为 124,q = max(0, 178 − 124) = 54。最低订货 60、每箱 12 件时,订 60 件,并检查资金、容量、保质期和审批。124 虽高于连续 ROP 123,也不取消这笔定期检查订单。

假设政策保护期取整缓冲/目标
连续检查2 周SS 23 · ROP 123
每周检查3 周SS 28 · S 178

同一连续检查模型中,90%、95%、99% 周期目标对应的取整缓冲为 18、23、32,再订货点为 118、123、132。本例提高目标需要更多缓冲;是否值得,取决于缺货后果与持有成本。这些是理论输入,不是已经测得的服务表现。

八条调整数据不能验证正态和独立假设。存在季节、相关、间歇需求或可变提前期时,应估计真实保护期限的误差或进行适当模拟。记录从向供应商下单到货物可用的时间与不确定性;平均两周并非固定两周承诺。上线后检查实际缺货、满足率和过剩。

库存概念与政策假设可参阅 NC State 安全库存教程及 Rossetti 连续与定期检查章节。本文数字是独立计算的教学示例。

六步从原始记录和预测测试,到三周保护期、目标 178、库存位置 124,以及按采购约束订 60 件。
每周算例保护三周,无须等待触及连续检查的再订货点 123。

按价值、波动与后果分配精力

ABC 应声明按哪种价值排序,例如年度耗用成本、贡献或收入。阈值由管理者选择,不是强制 80/15/5。XYZ 可用 CV = σ/均值描述波动,但要明确观察窗,处理零均值并检查季节性。

本例 CV ≈ 9.5917/50 = 0.192。内部 X 阈值可能把它归为较稳定,但这不授权自动采购。低收入备件也可能关键,波动商品也可能值得备货。不能只凭 CZ 标签就下架。

更先进的预测何时有用

只使用决策时可获得的信息,把复杂模型与可信简单基线比较。促销、价格、替代品和商品相似性可能有帮助,包括新品,但不能保证预测价值。SKU 数量本身不是采用或否决机器学习的规则。

围绕决策选择:样本外期限误差、服务与损耗、运营成本、可解释性和异常处理;需要时协调门店与总量计划。可以评估 StoreConsole 的库存模块是否提供所需记录和移动控制,再单独确认启用的预测及采购审批。低库存警报或产品导览不证明自动预测引擎已经可用。

库存导览(0:54):仓库、库存移动与低库存警报。演示记录管理,不保证自动补货。

建立可重复的计划流程

  1. 核对证据。 对齐库存与收货,检查缺货、促销、大单承诺和暂估调整,保留原始历史。
  2. 更新计划。 保存预测版本、期限、假设和负责人,使用当时已知信息,对重要异常检查不确定性。
  3. 检查政策。 使用选定连续或定期规则,更新预计收货、可用库存及欠交,核对容量、保质期和采购限制。
  4. 审批与跟踪。 审核建议订单,记录编号、承诺时间及实际可用收货。超时后先查原编号,再重试,防止重复采购。
  5. 从结果学习。 检查偏差、误差、未满足需求、满足率、损耗和供应商可靠性。频率应适合品类,三十分钟或连续三次同号误差不是通用规则。

回到水壶货架

故事中的采购员能区分观测、估计与所用采购政策,既能质疑水壶补货量,也能单独决定烛台如何处理。价值在于可重复、可审计的决策,而非某个公式能避免所有空货架。

Anichur Rahaman 是 StoreConsole 的创建者。本文说明运营计划方法;店铺故事、需求数值和服务目标均为教学示例。

作者简介

Anichur Rahaman

继续阅读