Amazon SageMaker Canvas 中的时间序列预测 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon SageMaker Canvas 中的时间序列预测

注意

时间序列预测模型仅支持表格数据集。

Amazon SageMaker Canvas 使您能够使用机器学习时间序列预测。时间序列预测使您能够做出随时间变化的预测。

您可以对以下示例进行时间序列预测:

  • 预测未来几个月的库存。

  • 未来四个月内售出的商品数量。

  • 假日期间降价对销售额的影响。

  • 未来 12 个月的商品库存。

  • 在接下来的几个小时内进入商店的顾客数量。

  • 预测产品降价 10% 对一段时间内销售额的影响。

要进行时间序列预测,您的数据集必须具有以下内容:

  • 一个时间戳列,其所有值均为datetime类型。

  • 一个目标列,其中包含用于预测未来值的值。

时间戳列中的datetime值必须使用以下格式之一:

  • YYYY-MM-DD HH:MM:SS

  • YYYY-MM-DDTHH:MM:SSZ

  • YYYY-MM-DD

  • MM/DD/YY

  • MM/DD/YY HH:MM

  • MM/DD/YYYY

  • YYYY/MM/DD HH:MM:SS

  • YYYY/MM/DD

  • DD/MM/YYYY

  • DD/MM/YY

  • DD-MM-YY

  • DD-MM-YYYY

您可以对以下时间间隔进行预测:

  • 1 分钟

  • 5 分钟

  • 15 分钟

  • 30 分钟

  • 1 小时

  • 1 天

  • 1 周

  • 1 个月

  • 1 年

输入数据集中的未来值

Canvas 会自动检测数据集中可能包含未来值的列。如果存在这些值,则可以提高预测的准确性。Canvas 用Future values标签标记这些特定的列。Canvas 会推断出这些列中的数据与您要预测的目标列之间的关系,并利用这种关系来生成更准确的预测。

例如,您可以预测一家杂货店的冰淇淋销售量。要进行预测,必须有一个时间戳列和一个指示杂货店卖出多少冰淇淋的列。为了获得更准确的预测,您的数据集还可以包括价格、环境温度、冰淇淋口味或冰淇淋的唯一标识符。

天气转暖后,冰淇淋的销量可能会增加。冰淇淋价格下降可能会导致销售量增加。如果有一列环境温度数据和一列定价数据,就能提高预测杂货店冰淇淋销量的能力。

虽然提供未来值是可选的,但这有助于您直接在 Canvas 应用程序中执行假设分析,向您展示未来值的变化会如何改变您的预测。

处理缺失值

由于不同的原因,您可能缺少数据。数据缺失的原因可能会影响您希望 Canvas 如何估算数据。例如,您的组织可能使用自动系统,该系统只在发生销售时才进行跟踪。如果您使用的数据集来自此类自动系统,则目标列中会有缺失值。

重要

如果目标列中有缺失值,建议使用没有缺失值的数据集。SageMaker Canvas 使用目标列来预测未来值。目标列中的缺失值会大大降低预测的准确性。

对于数据集中的缺失值,Canvas 会在目标列中填入 0,并在其他数值列中填入该列的中值,从而自动估算缺失值。

不过,您可以为数据集中的目标列和其他数值列选择自己的填充逻辑。目标列的填充准则和限制不同于其他数值列。目标列填写至历史时期结束,而数值列则填写至历史时期和未来时期,直至预测范围结束。只有当数据中至少有一条记录带有未来时间戳和特定列的值时,Canvas 才会在数值列中填写未来值。

您可以选择以下填充逻辑选项之一来估算数据中的缺失值:

  • zero – 填充 0

  • NaN – 填充 NaN,即非数字。这仅支持目标列。

  • mean – 填充数据序列的平均值。

  • median – 填充数据序列的中值。

  • min – 填充数据序列的最小值。

  • max – 填充数据序列的最大值。

选择填充逻辑时,应考虑模型如何解释该逻辑。例如,在零售场景中,记录有货商品的零销售额与记录无货商品的零销售额是不同的,因为后者并不一定意味着顾客对无货商品缺乏兴趣。在这种情况下,在数据集的目标列中填入 0 可能会导致模型的预测偏差过大,并推断出顾客对无货商品缺乏兴趣。反之,填充 NaN 可能会导致模型忽略有货商品中零卖出的真实情况。

预测类型

您可以进行以下类型的预测之一:

  • 单个项目

  • 所有项目

对于数据集中所有项目的预测,SageMaker Canvas 会返回数据集中每个项目的未来值预测。

对于单个项目预测,您只需指定项目,SageMaker Canvas 就会返回对未来值的预测。预测包括一个折线图,描绘出预测值随时间变化的情况。