为图像分类创建 Amazon SageMaker Autopilot 实验
以下说明演示如何使用 SageMaker API 参考创建 Amazon SageMaker Autopilot 作业作为试点实验,用于图像分类问题类型。
注意
文本和图像分类、时间序列预测以及大型语言模型微调等任务只能通过最新版本的 SageMaker API 获得。
用户如果偏好用户界面的便利性,则可以使用 Amazon SageMaker Canvas 访问预训练模型、生成式人工智能根基模型或者创建自定义的模型,针对特定文本、图像分类或预测需求进行定制。
以编程方式创建 Autopilot 实验
您可以在 Amazon SageMaker Autopilot 或 Amazon CLI 支持的任何语言中,通过调用 CreateAutoMLJobV2
API 操作,以编程方式创建 Autopilot 图像分类实验。
有关此 API 操作如何转换为所选语言中函数的信息,请参阅 CreateAutoMLJobV2
中的另请参阅部分并选择 SDK。例如,对于 Python 用户,请参阅 Amazon SDK for Python (Boto3) 中 create_auto_ml_job_v2
的完整请求语法。
以下参数集合介绍了图像分类中使用的 CreateAutoMLJobV2
API 操作的必需和可选输入请求参数。
必需参数
在调用 CreateAutoMLJobV2
以创建 Autopilot 实验进行图像分类时,您必须提供以下值:
-
AutoMLJobName
,用于指定您作业的名称。 -
AutoMLJobInputDataConfig
中至少有一个AutoMLJobChannel
来指定您的数据来源。 -
一个类型为
ImageClassificationJobConfig
的AutoMLProblemTypeConfig
。 -
OutputDataConfig
,指定用于存储 AutoML 作业构件的 Amazon S3 输出路径。 -
RoleArn
,指定用于访问您的数据的角色的 ARN。
所有其他参数都是可选的。
可选参数
以下部分提供了一些可以传递给图像分类 AutoML 作业的可选参数的详细信息。
您可以提供自己的验证数据集和自定义的数据拆分比率,也可以让 Autopilot 自动拆分数据集。
每个 AutoMLJobChannel
对象(参见必需参数 AutoMLJobInputDataConfig)都有一个 ChannelType
,可以将其设置为 training
或 validation
值,指定在构建机器学习模型时如何使用数据。
数据来源至少需要一个,最多可以有两个:一个用于训练数据,一个用于验证数据。如何将数据拆分为训练和验证数据集,取决于您有一个还是两个数据来源。
如何将数据拆分为训练和验证数据集,取决于您有一个还是两个数据来源。
-
如果您只有一个数据来源,则默认情况下
ChannelType
设置为training
,并且必须具有此值。-
如果未设置
AutoMLDataSplitConfig
中的ValidationFraction
值,则默认情况下,将使用来自此来源中数据的 0.2 (20%) 进行验证。 -
如果
ValidationFraction
设置为介于 0 和 1 之间的值,则根据指定的值拆分数据集,该值指定用于验证的数据集的比例。
-
-
如果您有两个数据来源,则其中一个
AutoMLJobChannel
对象的ChannelType
必须设置为默认值training
。另一个数据来源的ChannelType
必须设置为validation
。这两个数据来源必须具有相同的格式(CSV 或 Parquet)和相同的架构。在这种情况下,您不可为ValidationFraction
设置值,因为每个来源的所有数据都用于训练或验证。设置此值会导致错误。
要为 AutoML 作业的最佳候选模型启用自动部署,请在 AutoML 任务请求中包括 ModelDeployConfig
。这样便可以将最佳模型部署到 SageMaker 端点。以下是可供自定义的配置。
-
要让 Autopilot 生成端点名称,请将
AutoGenerateEndpointName
设置为True
。 -
要为端点提供自己的名称,请设置
AutoGenerateEndpointName to
。False
and provide a name of your choice in EndpointName