本技能提供端到端的供应链需求预测分析能力:从数据读取与清洗、特征工程、多模型预测,到库存优化建议与可视化报告输出。
以下类型的用户请求应激活本技能:
标准 CSV/Excel 格式(最常见):
| 字段名 | 说明 | 必选 |
|--------|------|------|
| date / 日期 | 日期(支持 YYYY-MM-DD, YYYY/MM/DD, YYYYMM) | 是 |
| sku / 品号 / product_id | 产品编号 | 推荐 |
| sales / 销量 / demand / 需求量 | 历史销售量 | 是 |
| price / 价格 | 单价 | 否 |
| promotion / 促销 | 促销标记(0/1 或 Y/N) | 否 |
| stock / 库存 | 当前库存量 | 否 |
| lead_time / 提前期 | 补货提前期(天) | 否 |
| 数据量 | 季节性 | 推荐方法 |
|--------|--------|----------|
| < 24 个时间点 | 无 | 移动平均 / 指数平滑 |
| < 24 个时间点 | 有 | Prophet(自动处理季节性) |
| 24–100 个时间点 | 可选 | ARIMA / Prophet |
| > 100 个时间点 | 有 | Prophet / XGBoost / LightGBM |
| > 200 个时间点 + 多特征 | 有 | XGBoost / LSTM |
默认策略: 当数据量不明确时,优先使用 Prophet(鲁棒性最强,对季节性和节假日处理友好)。
执行 scripts/eda_and_clean.py 进行数据质量检查:
python scripts/eda_and_clean.py --input <数据文件路径> --output cleaned_data.csv
脚本会输出:
执行 scripts/forecast.py 进行多模型预测:
# 自动选择最优方法(推荐)
python scripts/forecast.py --input cleaned_data.csv --periods 12 --auto
# 指定方法
python scripts/forecast.py --input cleaned_data.csv --periods 12 --method prophet
# 可选方法: moving_average, exponential_smoothing, arima, prophet, xgboost, lightgbm, lstm
输出:
forecast_results.csv:预测值及置信区间
forecast_plot.html:交互式预测可视化
执行 scripts/inventory_optimizer.py 计算安全库存与补货建议:
python scripts/inventory_optimizer.py \
--forecast forecast_results.csv \
--lead-time 7 \
--service-level 0.95
输出:
执行 scripts/generate_report.py 生成完整 HTML 报告:
python scripts/generate_report.py \
--cleaned cleaned_data.csv \
--forecast forecast_results.csv \
--output demand_forecast_report.html
报告包含:
首次使用前,运行以下命令安装依赖:
pip install pandas numpy matplotlib plotly scikit-learn xgboost lightgbm prophet statsmodels torch openpyxl
若安装 Prophet 遇到问题:
pip install prophet --no-build-isolation
# macOS: conda install -c conda-forge prophet
若不需要深度学习(LSTM),可跳过 torch:
pip install pandas numpy matplotlib plotly scikit-learn xgboost lightgbm prophet statsmodels openpyxl
| 文件 | 说明 |
|------|------|
| cleaned_data.csv | 清洗后的标准化数据 |
| forecast_results.csv | 预测结果(含置信区间) |
| forecast_plot.html | 交互式预测图表 |
| demand_forecast_report.html | 完整分析报告 |
| inventory_recommendations.csv | 库存优化建议表 |
references/methods_guide.md:各预测方法的原理、适用场景和参数调优指南
references/metrics_guide.md:预测准确率指标解释(MAPE、MAE、RMSE、Bias)
references/inventory_formulas.md:安全库存、EOQ、ROP 等公式说明
assets/sample_data.csv:标准输入格式示例数据
数据量不足(< 12 个时间点):
→ 使用简单移动平均,明确告知用户预测置信度有限,建议收集更多数据
数据存在大量缺失值(> 30%):
→ 向用户确认缺失原因(停产?门店关闭?),根据业务逻辑决定是填补还是截断
存在明显异常值:
→ 展示给用户确认是真实业务事件(大促、疫情)还是数据错误,再决定是否保留
预测误差偏大(MAPE > 30%):
→ 检查是否有未纳入的外部影响因素,建议加入促销、节假日等特征变量
共 1 个版本