Back to blog
    供应链需求预测AI的数据准备
    supply-chaindemand-forecastingdata-pipelineenterpriseon-premiseai-trainingtime-series

    供应链需求预测AI的数据准备

    构建供应链需求预测AI数据管道的实用指南——涵盖数据源映射、按预测时间范围划分的质量要求、特征工程以及企业供应链的本地部署。

    EErtas Team·

    麦肯锡估计,AI驱动的需求预测可以将供应链误差降低30-50%,并将缺货导致的销售损失减少高达65%。然而,大多数企业需求预测项目在数据准备阶段就停滞了,而不是在模型开发阶段。原因是结构性的:需求预测需要整合来自从未被设计为相互通信的系统的数据——ERP、WMS、POS、CRM和外部数据提供商——形成一个干净的、时间对齐的统一数据集。

    预测模型本身往往是项目中最简单的部分。将历史销售数据、库存位置、供应商交货时间、促销日历和宏观经济信号整合成一致的、经过质量验证的训练集,才是项目60-80%工作量集中的地方。本指南涵盖如何系统地构建该数据管道。

    需求预测的数据源映射

    需求预测模型消费来自多个企业系统的数据。每个数据源有不同的格式、更新频率和质量特征。

    数据源来源系统典型格式更新频率关键字段
    历史销售/订单ERP (SAP, Oracle, NetSuite)CSV/Excel导出、API提取每日到每周SKU、数量、日期、渠道、客户细分、价格
    库存位置WMS (Manhattan, Blue Yonder)CSV/Excel导出每日SKU、位置、在库数量、在途、预留
    供应商交货时间采购/SRM系统Excel、手动跟踪表每月到每季度供应商、SKU/类别、报价交货时间、实际交货时间历史
    促销日历营销/贸易促销系统Excel、共享日历每月促销类型、开始/结束日期、受影响SKU、折扣力度
    销售点数据POS/零售系统CSV、EDI 852每日到每周门店、SKU、销售数量、价格、退货
    价格历史ERP或定价引擎CSV/Excel按价格变更事件SKU、生效日期、标价、净价、币种
    天气数据第三方API (NOAA, Weather Company)JSON/CSV每日区域、温度、降水、恶劣天气预警
    宏观经济指标政府统计、数据供应商CSV每月到每季度CPI、GDP增长、消费者信心、失业率
    竞争对手定价网络爬虫或第三方数据源JSON/CSV每日到每周竞争对手、产品类别、价格点、可用性

    并非每个预测模型都需要所有数据源。数据源的选择取决于预测时间范围和业务背景。杂货零售商的短期补货预测需要每日POS数据和促销日历。制造商的长期产能规划预测需要宏观经济指标和供应商交货时间趋势。

    按预测时间范围划分的质量要求

    不同的预测时间范围有不同的数据质量容忍度。用于年度产能规划的战略预测可以容忍一些数据不精确。驱动每日补货订单的运营预测则不能。

    预测时间范围时间跨度主要数据源质量要求可接受粒度
    运营1-14天POS数据、当前库存、天气、促销日历非常高:缺失值低于1%,每日粒度,数据延迟低于24小时每日按SKU按位置
    战术2-12周历史销售、库存、促销、供应商交货时间高:缺失值低于3%,每周粒度,每周更新可接受每周按SKU按区域
    战略3-18个月历史销售趋势、宏观经济指标、竞争格局中等:缺失值低于5%,每月粒度,每月更新每月按产品类别按市场
    长期规划1-5年年度趋势、市场研究、人口变化、技术采用曲线宽容:缺失值低于10%,每季度/每年粒度每季度按产品系列按细分

    数据新鲜度要求

    需求预测数据的价值随数据源不同而以不同速率衰减:

    数据源新鲜度要求陈旧数据的影响
    POS / 销售订单当日或次日基于昨日需求的补货订单会错过趋势变化
    库存位置当日因可用量承诺不准确导致过量库存或缺货
    促销日历提前2-4周预测遗漏未计入促销带来的需求激增
    供应商交货时间每月更新基于过时交货时间的安全库存计算
    天气1-3天预测窗口无法捕捉天气驱动的需求(季节性商品、暖通空调、饮料)
    宏观经济每月到每季度战略预测错过经济拐点

    需求预测数据的管道阶段

    阶段1:接入与模式验证

    接入阶段从源系统提取数据并验证每次提取是否符合预期的模式。模式漂移——当源系统在升级过程中更改列名、日期格式或添加/删除字段时——是生产预测管道中常见的故障模式。

    验证检查捕获内容失败时的操作
    列存在性系统升级后缺少预期字段拒绝文件,通知数据工程团队
    数据类型验证数字字段中的字符串、格式错误的日期拒绝受影响的行,记录以便更正
    行数阈值意外为空或被截断的提取如果计数低于历史平均值的80%则拒绝
    日期范围验证历史数据中的空白或未来日期记录标记空白以便插值,拒绝未来日期
    币种/单位一致性混合币种或文件中途的计量单位变更使用转换表标准化为基础币种/单位

    Ertas Data Suite通过专用解析节点处理多格式接入,支持CSV、Excel、PDF和其他常见企业导出格式。Format Normalizer节点跨数据源标准化日期格式、币种表示和计量单位编码。每个验证步骤在管道画布上可见,当源文件偏离预期时立即清晰可见。

    阶段2:去重与实体解析

    企业系统经常通过集成错误、批处理重跑和多系统订单采集产生重复记录。一个客户订单可能同时出现在ERP和POS系统中,但字段略有不同。

    跨系统的实体解析同样重要。同一产品在ERP中可能标识为SKU "A1234",在WMS中为"1234-A",在POS系统中为"产品A常规12oz"。没有统一的产品主数据,预测模型会将这些视为三个不同的产品,拥有各自独立的需求历史。

    关键去重和解析任务:

    • 订单去重: 按订单ID、日期和金额匹配,从多系统提取中移除重复项
    • 产品统一: 使用交叉引用表将所有产品标识符映射到单一规范SKU
    • 位置统一: 将仓库代码、门店编号和区域标识符映射到一致的层级结构
    • 客户去重: 在CRM和订单系统之间匹配客户记录(与B2B预测相关)

    阶段3:缺失值处理

    需求预测中的缺失数据需要领域感知的填补,而不是通用的统计填充。零销售日可能意味着没有需求(产品是季节性的),也可能意味着产品缺货(需求存在但未被记录)。填补策略必须区分这些场景。

    缺失数据场景检测方法填补策略
    真实零需求产品有库存,无销售记录记录为零——不填补
    缺货(删失需求)相关日期库存位置为零使用有库存时期的可比需求进行填补
    系统停机某位置/日期所有产品显示零销售使用前期同一星期几的平均值进行填补
    新产品(无历史)产品上市日期在训练窗口开始之后使用类似产品需求,按上市曲线假设调整
    停产产品产品停产日期在训练窗口内在停产日截断历史;不填补停产后的零值

    缺货导致的删失需求是最需要正确处理的关键场景。如果模型使用包含缺货零值的观察销售数据进行训练,它会学到需求定期降至零——并且恰好在产品最可能再次缺货时预测低需求,形成自我强化的循环。

    阶段4:特征工程

    原始历史数据需要转化为能捕获需求模式的特征。需求预测的特征工程分为几个类别:

    特征类别示例工程方法
    滞后特征1天前、7天前、28天前、364天前的销售历史销售的时间位移值
    滚动统计7天移动平均、28天滚动标准差、13周趋势基于窗口的聚合
    日历特征星期几、月份、季度、假日标志、假日前/后日期分解 + 假日日历查找
    促销特征活动促销标志、折扣力度、距上次促销天数、距下次促销天数与促销日历关联
    价格特征当前价格、价格变更标志、价格相对于90天平均值与价格历史关联,计算衍生指标
    外部信号温度预报、CPI变化、竞争对手价格指数按日期和区域与外部数据源关联
    库存特征供应天数、缺货标志、库存周数从库存位置和需求率计算

    阶段5:时间对齐与聚合

    不同的数据源在不同的时间粒度上运行。POS数据是每日的。宏观经济数据是每月的。供应商交货时间每季度更新。管道必须将所有数据源聚合或拆分到目标预测粒度。

    按数据类型的聚合规则:

    数据类型聚合方法拆分方法
    销售/需求量求和至更高粒度使用历史每日模式按比例分配
    价格平均值(或期末值)至更高粒度前向填充最后已知价格至每日粒度
    库存期末快照至更高粒度快照之间线性插值
    二元标志(促销、假日)任一为真至更高粒度将标志应用于原始事件期间内的所有天数
    天气温度取平均;降水取总和每日值已是原始粒度

    阶段6:验证与导出

    在训练数据集到达模型之前,全面验证会捕获那些否则会以无法解释的预测错误形式出现的问题。

    验证规则捕获内容阈值
    需求平稳性检验需要单独模型处理的结构性断裂或水平位移ADF检验p值;如果不经差分即非平稳则标记
    特征相关性使模型系数不稳定的多重共线性特征删除相关性高于0.95的任何配对中的一个
    目标泄漏包含未来信息的特征验证所有特征仅使用预测起点可用的数据
    类别平衡(用于分类)需求类别中的极端不平衡(如果对需求水平进行分类)如果少数类低于5%则标记
    时间完整性所有处理后时间序列中的空白运营预测数据零容忍空白

    以目标模型格式导出——通常为CSV或Parquet用于表格模型,并基于时间(而非随机)进行适当的训练/验证/测试拆分,以防止时间泄漏。

    为什么本地部署对供应链数据很重要

    供应链数据具有竞争敏感性。按SKU的历史需求揭示产品表现。供应商交货时间暴露采购关系。价格历史显示利润结构。库存位置反映运营效率。这些数据汇总起来提供了企业严格保护的业务运营全面视图。

    除了保密性之外,许多企业都有数据治理政策,禁止在未经全面安全审查的情况下将交易数据发送到外部云服务。对于全球供应链,数据驻留要求可能限制数据在地理上的处理位置。

    Ertas Data Suite作为原生桌面应用完全在本地运行。供应链数据永远不会离开企业网络。每个转换节点记录其操作,生成的审计追踪满足内部数据治理审查和外部合规要求。可视化管道画布让供应链分析师——他们理解业务逻辑但可能不编写Python——直接查看其数据如何为AI模型做准备。

    关键要点

    需求预测AI首先是一个数据集成问题,然后才是建模问题。管道必须处理多源接入、实体解析、领域感知填补(特别是缺货期间的删失需求)、时间对齐,以及针对泄漏和平稳性假设的严格验证。

    构建可观察、可复现数据管道的团队能够发布随数据质量提升而不断改进的预测模型。用脚本临时拼凑数据准备的团队则把时间花在调试那些追溯到他们看不见的数据问题的预测错误上。

    Turn unstructured data into AI-ready datasets — without it leaving the building.

    On-premise data preparation with full audit trail. No data egress. No fragmented toolchains. EU AI Act Article 30 compliance built in.

    Keep reading