使用说明 - Amazon Redshift

使用说明

使用 CREATE MODEL 时,请注意以下事项:

  • CREATE MODEL 语句在异步模式下运行,并在将训练数据导出到 Amazon S3 时返回。Amazon SageMaker 中的其余训练步骤将在后台进行。当训练正在进行时,相应的推理函数可见,但无法运行。您可以查询 STV_ML_MODEL_INFO 以查看训练状态。

  • 预设情况下,在 Auto 模型中,训练最多可以在后台运行 90 分钟,并且可以延长。要取消训练,只需运行 DROP MODEL 命令。

  • 您用于创建模型的 Amazon Redshift 集群和用于暂存训练数据和模型构件的 Amazon S3 桶必须位于同一 AWS 区域。

  • 在模型训练期间,Amazon Redshift 和 SageMaker 将中间构件存储在您提供的 Amazon S3 桶中。默认情况下,Amazon Redshift 会在 CREATE MODEL 操作结束时执行垃圾回收。Amazon Redshift 从 Amazon S3 中删除这些对象。要在 Amazon S3 上保留这些构件,请设置 S3_GARBAGE COLLECT OFF 选项。

  • 您必须在 FROM 子句中提供的训练数据中至少使用 500 行。

  • 使用 CREATE MODEL 语句时,最多只能在 FROM { table_name | ( select_query ) } 子句中指定 256 个功能(输入)列。

  • 对于 AUTO ON,您可以用作训练集的列类型包括 SMALLINT、INTEGER、BIGINT、DECIMAL、REAL、DOUBLE、BOOLEAN、CHAR、VARCHAR、DATE、TIME、TIMETZ、TIMESTAMP 和 TIMESTAMPTZ。对于 AUTO OFF,您可以用作训练集的列类型包括 SMALLINT、INTEGER、BIGINT、DECIMAL、REAL、DOUBLE 和 BOOLEAN。

  • 不可使用 DECIMAL、DATE、TIME、TIMETZ、TIMESTAMP、TIMESTAMPTZ、GEOMETRY、GEOGRAPHY、HLLSKETCH、SUPER 或 VARBYTE 作为目标列类型。

  • 要提高模型精度,请执行以下操作之一:

    • 在 FROM 子句中指定训练数据时,在 CREATE MODEL 命令中添加尽可能多的相关列。

    • 对于 MAX_RUNTIME 和 MAX_CELLS,请使用较大的值。此参数的值越大,就会增加训练模型的成本。

  • 一旦计算训练数据并导出到 Amazon S3 桶后,CREATE MODEL 语句执行就会立即返回。在此之后,您可以使用 SHOW MODEL 命令检查训练的状态。当在后台训练的模型失败时,可以使用 SHOW MODEL 检查错误。您无法重试失败的模型。使用 DROP MODEL 移除失败的模型并重新创建新模型。有关 SHOW MODEL 的更多信息,请参阅SHOW MODEL

  • 本地 BYOM 支持的模型类型与 Amazon Redshift ML 为非 BYOM 案例支持的模型类型相同。Amazon Redshift 支持普通的 XGBoost(使用 XGBoost 版本 1.0 或更高版本),没有预处理器的 KMEANS 模型,以及经过 Amazon SageMaker Autopilot 训练的 XGBOOST/MLP/线性学习器模型。它支持后者与 Autopilot 指定的预处理器,该预处理器也由 Amazon SageMaker Neo 提供支持。

  • 如果您的 Amazon Redshift 集群增强了为 Virtual Private Cloud (VPC) 启用的路由,请确保为您的集群所在的 VPC 创建 Amazon S3 VPC 端点和 SageMaker VPC 端点。这样做使得流量可以在 CREATE MODEL 期间通过您的 VPC 在服务之间运行。有关更多信息,请参阅 SageMaker Clarify 作业 Amazon VPC 子网和安全组