Skip to content

Amazon Forecast - Runbook 与参考

English · GitHub source 事实核对时间(对照 AWS 官方文档):2026-08-19

概述

Amazon Forecast 是全托管时间序列预测服务,使用统计算法和机器学习算法根据历史数据预测未来值,无需 ML 经验。注意:Amazon Forecast 已不再向新客户开放;现有客户可以继续正常使用。

核心概念

  • 时间序列预测:基于历史序列预测未来数据点(需求、流量、容量、财务指标)。
  • 数据集:通过控制台、API、CLI 或 SDK 导入时间序列数据(以及相关条目/用户元数据)。
  • Predictor:由数据集训练出的预测模型;Forecast 自动完成算法选择和训练。
  • 预测生成:为你定义的时间范围生成预测;用回测评估准确率。
  • 功能:自动化 ML、先进算法、缺失值处理,以及内置的特征工程数据集(例如节假日)。
  • 用途:零售需求规划、供应链、资源规划、运营规划(Web 流量、服务器容量)。

常用操作(AWS CLI)

# 创建数据集组、导入数据并创建 predictor
aws forecast create-dataset-group --dataset-group-name retail \
  --domain RETAIL --dataset-arns <dataset-arn>
aws forecast create-dataset-import-job --dataset-arn <dataset-arn> \
  --dataset-import-job-name initial \
  --data-source '{"S3Config":{"Path":"s3://bucket/data","RoleArn":"arn:aws:iam::123456789012:role/forecast-role"}}'
aws forecast create-auto-predictor --predictor-name demand \
  --forecast-horizon 30 --data-config file://data.json

# 生成并获取预测
aws forecast create-forecast --forecast-name demand-30 \
  --predictor-arn <predictor-arn>
aws forecast describe-forecast --forecast-arn <forecast-arn>

最佳实践

  • 准备干净、规则的时间序列数据(时间戳、条目 ID、目标值),有可用元数据时提供相关时间序列。
  • 用 AutoPredictor 自动选择算法;生产前用回测验证准确率。
  • 预测范围匹配规划周期(例如 30 或 90 天)。
  • 有意识地处理缺失值;Forecast 提供多种填充方法。
  • 预测结果存 S3/Redshift 供下游规划系统使用。
  • 现有客户:跟踪服务状态;启动新预测项目时规划替代方案。

故障排查

症状 检查与处理
数据集导入失败 检查 CSV 格式、S3 权限和数据集 schema。
Predictor 训练失败 核对数据频率、条目数限制和预测范围设置。
预测准确率差 补充相关时间序列数据、清理离群值,并用回测指标评估。
新账户无法开通 Forecast 已对新客户关闭;使用文档化替代方案。
成本高于预期 Forecast 按生成的预测、存储和训练小时收费;审查用量。

配额

每账户数据集、predictor 和预测数量及数据集大小有限制;服务仅限现有客户开通。以 Amazon Forecast 端点和配额页面为准。

官方参考