BIBIYAYA · FOOD AI OPERATIONS LABAI智能库存 · 临期食品管理 · 餐饮减废 · 厨余资源化

必赢亚洲智能库存:食品需求预测到底应该看最近七天,还是看过去一年?

同一款保质期两天的熟食,用最近七天的平均销量去订节前一天的货,会少订将近四成;反过来,直接拿去年同一天的销量当预测,又会把一个已经不存在的客流带进来。“看七天还是看一年”之所以争不清,是因为这两个窗口回答的根本不是同一个问题。

必赢亚洲智能库存做食品需求预测时,先不急着选窗口,而是把一款商品的日销量拆成六项相乘:基线水平、星期效应、季节与节假日、天气、促销和残差。每一项该去问哪个窗口,答案并不一样。

分层信号图:日销量被拆成基线水平、星期效应、季节与节假日、天气、促销和残差六层,近七天回答基线,近八周回答星期效应,往年同期回答节假日形状,天气取提前期内的预报,促销用日历剥离,残差决定安全库存
图 1:Demand Signal Layers——日销量拆成六层信号,每层对应一个取数窗口;近七天和近八周回答“现在”,往年同期回答“事件”。

七天回答“现在的水平”,一年回答“周期与事件的形状”

基线水平(Short-term Trend)只能由最近的数据回答。近七天恰好覆盖一个完整的星期,每个星期几各出现一次,所以七天平均天然抵消了星期效应,直接给出当前水平。代价是样本少:假设一款熟食日销量约 80 份,单日波动按泊松近似的标准差约 √80≈9 份,七天均值的标准误约 9÷√7≈3.4 份,水平估计会有 ±4% 左右的抖动。

星期效应用近八周的同星期数据估计,每个星期几有八个样本,比只看七天稳。季节与节假日(Seasonality / Holiday)只能向往年借形状:每个节日一年只出现一次,去年那个观测值本身带着噪声,要和前年的同类日期一起平滑。对齐方式也容易出错,中秋、春节按农历,公历日期每年不同,去年同期应按“距节日第几天”对齐,而不是按同一个日历日。

天气(Weather)只在有可靠预报的提前期内起作用,提前期长的品类要把天气项缩小。有研究(2026 年发表于 ScienceDirect)把热浪、强降雨这类天气扰动放进需求预测与库存管理的同一个框架,但天气替代不了基线。促销(Promotion)用促销日历标记后剥离,做法见促销日历剥离与异常判断的做法;残差是解释不了的部分,大小决定安全库存要留多少,见短保食品安全库存的算法。

两个窗口怎样加权:由品类与提前期决定

“两者都要看”不是答案,要回答的是各占多少。保质期短、提前期短的品类,昨天的销量比去年同一天更有信息,权重偏向近期;提前期长、需求依赖节令的品类,往年形状占比更大。下表是一组示例权重。

表 1:不同品类三个窗口的示例权重(示例推演数字,实际权重按各自回测校准)
品类 保质期 提前期 近七天 近八周 去年同期形状
现切水果、沙拉 1–2 天 当天 70% 22% 8%
鲜奶、酸奶 7–15 天 1 天 62% 28% 10%
熟食、烘焙 2–4 天 1 天 48% 32%20%
常温零食、饮料6–12 个月 7 天 30% 30% 40%
节令礼盒 1–2 个月 14 天 5% 15% 80%

权重不该凭感觉设。可执行的办法是按品类和提前期分别回测:假设某品类在提前期 1 天时,近七天法、近八周法、去年同期法的回测误差(MAPE)分别是 10%、15%、25%,按误差平方的倒数归一化,得到 1/100 : 1/225 : 1/625,约合 62% : 28% : 10%,也就是表中鲜奶、酸奶那一行。节日进入“提前期加 2 天”的窗口后,去年同期的权重再加 20 个百分点,其余两项按原比例缩小,熟食烘焙一行会从 48 : 32 : 20 变成 36 : 24 : 40。

三个会看错的情形

一、七天外推,下周碰上节日

沿用上面的熟食:近七天日均 80 份,星期效应取周三的 0.95,去年和前年节前一天相对当周基线的倍数平均为 1.6。下面是一组示例推演。

示例推演 · 节前一天的两种预测

七天外推:80 × 0.95 = 76 份
借往年形状:80 × 0.95 × 1.6 = 121.6 ≈ 122 份
差距:订 76 份,需求 122 份,少订 46 份,约 38% 的需求没有货

保质期只有两天,缺的这 46 份没有第二天补销的余地,顾客直接买了别的。

二、借了去年的水平,而不是去年的形状

去年同期这家店日均 120 份,今年周边施工,近七天基线只有 80 份。若把去年同日的实际销量(120×0.95×1.6≈182 份)直接当预测,会多订 60 份,而两天保质期的熟食多出来的量基本就是报废。往年数据只该借“倍数”,水平永远用近期的数字。

三、七天窗口里混进了断货日

销量不等于需求。假设某天中午 12 点货卖空,全天只卖了 45 份,按历史小时曲线,12 点前的销量约占全天的一半,当天真实需求约 45÷0.5=90 份。其余六天每天 80 份:直接平均是 (45+480)÷7=75.0,还原后是 (90+480)÷7≈81.4。少估的部分会让下一轮订得更少、更容易再断货,基线一路被压低。窗口里混进促销日则相反,会把基线抬高。

落地规则

  1. 为每个 SKU 先记下品类、保质期和提前期,再按“品类 × 提前期”查权重,不同提前期的预测用不同权重。
  2. 每天清洗七天窗口:断货日用小时曲线还原,促销日按促销日历剥离,闭店和改营业时间的日子标记后剔除。
  3. 每周用滚动回测更新权重,误差变大的窗口自动降权;新品没有往年数据时,去年同期一项直接置零,节假日形状至少取两年。
  4. 节日进入“提前期加 2 天”后,去年同期权重加 20 个百分点,并让人工确认前几次节日的倍数。

近七天回答“现在的水平”,过去一年回答“周期与事件的形状”,两者相乘才是明天的预测。

在必赢亚洲 AI 的模型分工里,时序模型负责基线与星期效应,带外部变量的节假日和天气项交给梯度提升模型。在必赢亚洲 App 里,系统设计为可以把某个商品当天的预测按这几项拆开,看清多出来的量来自节日、天气还是水平抬升。

KEEP READING

继续阅读必赢亚洲智能库存的其他文章

短保食品的安全库存为什么不能照搬普通商品的库存公式?

普通库存公式 SS=z×σ×√L 没有库存寿命这个变量。用同一款鲜奶的示例推演,说明怎样加入可售窗口、缺货与报废成本的不对称以及起订量,重算短保食品的安全库存。

短保食品的安全库存为什么不能照搬普通商品的库存公式?

销量突然暴涨时,AI 怎样判断是真实需求增长还是一次促销造成的短期异常?

用一组 14 天的模拟销量,说明怎样估计无促销基线、剥离促销提升量、识别回落坑,并用四个信号区分真实需求增长与一次促销造成的短期异常,再给出预测修正的做法。

销量突然暴涨时,AI 怎样判断是真实需求增长还是一次…

返回必赢亚洲智能库存栏目

在线询盘

请留下您的联系方式,我们会尽快与您联系。

扫码联系我们