

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 AutoML API 为表格数据创建回归或分类作业
<a name="autopilot-automate-model-development-create-experiment"></a>

您可以通过调用 Autopilot 或 AWS CLI支持的任何语言的 [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html) API 操作，以编程方式为表格数据创建 Autopilot 回归或分类作业。以下参数集合介绍了 `CreateAutoMLJobV2` API 操作的必需和可选输入请求参数。您可以找到此操作先前版本 `CreateAutoMLJob` 的备用信息。但是，我们建议使用 `CreateAutoMLJobV2`。

有关此 API 操作如何转换为所选语言中函数的信息，请参阅 `CreateAutoMLJobV2` 中的[另请参阅](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_SeeAlso)部分并选择 SDK。例如，对于 Python 用户，请参阅 适用于 Python (Boto3) 的 AWS SDK中 `[create\_auto\_ml\_job\_v2](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_auto_ml_job_v2)` 的完整请求语法。

**注意**  
[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html) 和 [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) 是的新版本，[DescribeAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html)它们提供了向后兼容性[CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html)。  
我们建议使用 `CreateAutoMLJobV2`。`CreateAutoMLJobV2` 可以管理与其先前版本 `CreateAutoMLJob` 相同的表格问题类型，以及非表格问题类型，例如图像或文本分类或者时间序列预测。

至少，所有表格数据实验都需要指定实验名称，提供输入和输出数据的位置，并指定要预测的目标数据。您还可以选择指定要解决的问题类型（回归、分类、多分类器）、选择建模策略（*堆叠集合*或*超参数优化*）、选择 Autopilot 任务用于训练数据的算法列表等。

 实验运行后，您可以比较试验，并深入研究每个模型的预处理步骤、算法和超参数范围的详细信息。您还可以选择下载他们的[解释功能](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-explainability.html)和[性能](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-insights.html)报告。使用提供的[笔记本](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-notebook-output.html )查看自动数据探索的结果或候选模型定义。

在[将 a 迁移 CreateAutoMLJob 到 CreateAuto MLJob V2](#autopilot-create-experiment-api-migrate-v1-v2) 中查找有关如何将 `CreateAutoMLJob` 迁移到 `CreateAutoMLJobV2` 的指南。

## 必填参数
<a name="autopilot-create-experiment-api-required-params"></a>

------
#### [ CreateAutoMLJobV2 ]

在调用 `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)` 为表格数据创建 Autopilot 实验时，您必须提供以下值：
+ `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)`，用于指定您作业的名称。
+ `[AutoMLJobInputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)` 中至少有一个 `[AutoMLJobChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)` 来指定您的数据来源。
+ 同时提供 `[AutoMLJobObjective](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobObjective)` 指标和您在 `AutoMLProblemTypeConfig` 中选择的有监督问题类型（二元分类、多元分类、回归），或者均不提供。对于表格数据，您必须选择 `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` 作为 `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` 的类型。您可以在 `TabularJobConfig` 的 `ProblemType` 属性中设置有监督学习问题。
+ `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)`，指定用于存储 AutoML 作业构件的 Amazon S3 输出路径。
+ `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)`，指定用于访问您的数据的角色的 ARN。

------
#### [ CreateAutoMLJob ]

在调用 `[CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html)` 创建 AutoML 实验时，您必须提供以下四个值：
+ `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-AutoMLJobName)`，用于指定您作业的名称。
+ `[InputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-InputDataConfig)` 中至少有一个 `[AutoMLChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html)` 来指定您的数据来源。
+ `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)`，指定用于存储 AutoML 作业构件的 Amazon S3 输出路径。
+ `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)`，指定用于访问您的数据的角色的 ARN。

------

所有其他参数都是可选的。

## 可选参数
<a name="autopilot-create-experiment-api-optional-params"></a>

以下部分提供了一些可选参数的详细信息，在使用表格数据时，您可以将这些参数传递给 `CreateAutoMLJobV2` API 操作。您可以找到此操作先前版本 `CreateAutoMLJob` 的备用信息。但是，我们建议使用 `CreateAutoMLJobV2`。

### 如何设置 AutoML 作业的训练模式
<a name="autopilot-set-training-mode"></a>

对于表格数据，在您的数据上运行用于训练候选模型的算法集取决于您的建模策略（`ENSEMBLING` 或 `HYPERPARAMETER_TUNING`）。以下将详细介绍如何设置此训练模式。

如果保留空白（或为 `null`），则 `Mode` 根据数据集的大小进行推理。

有关 Autopilot 的*堆叠组合*和*超参数优化*训练方法的信息，请参阅[训练模式和算法支持](autopilot-model-support-validation.md)

------
#### [ CreateAutoMLJobV2 ]

对于表格数据，您必须选择 `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` 作为 `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` 的类型。

您可以使用 `[TabularJobConfig.Mode](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` 参数设置 AutoML 作业 V2 的[训练方法](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html)。

------
#### [ CreateAutoMLJob ]

您可以使用 `[AutoMLJobConfig.Mode](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html#sagemaker-Type-AutoMLJobConfig-Mode)` 参数设置 AutoML 作业的[训练方法](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html)。

------

### 如何选择用于训练 AutoML 作业的特征和算法
<a name="autopilot-feature-selection"></a>

#### 特征选择
<a name="autopilot-automl-job-feature-selection-api"></a>

Autopilot 提供自动数据预处理步骤，包括特征选择和特征提取。但是，您可以使用 `FeatureSpecificatioS3Uri` 属性手动提供要在训练中使用的特征。

所选特征应包含在 JSON 文件中，采用以下格式：

```
{ "FeatureAttributeNames":["col1", "col2", ...] }
```

`["col1", "col2", ...]` 中列出的值区分大小写。它们应该是包含唯一值的字符串列表，这些值是输入数据中列名的子集。

**注意**  
提供作为特征的列的列表不能包括目标列。

------
#### [ CreateAutoMLJobV2 ]

对于表格数据，您必须选择 `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` 作为 `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` 的类型。

您可以使用 `[TabularJobConfig.FeatureSpecificationS3Uri](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` 参数设置所选特征的 URL。

------
#### [ CreateAutoMLJob ]

您可以在 [CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html)API 中使用以下格式设置 “[自动 MLCandidate GenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html)” 的`FeatureSpecificatioS3Uri`属性：

```
{
    "[AutoMLJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-AutoMLJobConfig)": {
        "[CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html#sagemaker-Type-AutoMLJobConfig-CandidateGenerationConfig)": {
            "[FeatureSpecificationS3Uri](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html#sagemaker-Type-AutoMLCandidateGenerationConfig-FeatureSpecificationS3Uri)":"string"
            },
       }
  }
```

------

#### 算法选择
<a name="autopilot-automl-job-algorithms-selection-api"></a>

默认情况下，您的 Autopilot 作业会在数据集上运行预定义的算法列表，以训练候选模型。算法列表取决于作业使用的训练模式（`ENSEMBLING` 或 `HYPERPARAMETER_TUNING`）。

您可以提供默认算法选择的子集。

------
#### [ CreateAutoMLJobV2 ]

对于表格数据，您必须选择 `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` 作为 `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` 的类型。

可以在的`AlgorithmsConfig`属性`AutoMLAlgorithms`中指定选定的数组[CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html)。

以下是一个 `AlgorithmsConfig` 属性示例，在 `AutoMLAlgorithms` 字段中列出了用于组合模式的三种算法（“xgboost”、“fastai”、“catboost”）。

```
{
   "[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)": {
        "[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)": {
          "[Mode](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)": "ENSEMBLING",
          "[CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html)": {
            "[AlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html#sagemaker-Type-CandidateGenerationConfig-AlgorithmsConfig)":[
               {"[AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html)":["xgboost", "fastai", "catboost"]}
            ]
         },
       },
     },
  }
```

------
#### [ CreateAutoMLJob ]

您可以在 “[自动 `AlgorithmsConfig`](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html)” 属性`AutoMLAlgorithms`中指定选定的数组MLCandidateGenerationConfig。

以下是一个 `AlgorithmsConfig` 属性示例，在 `AutoMLAlgorithms` 字段中列出了用于组合模式的三种算法（“xgboost”、“fastai”、“catboost”）。

```
{
   "[AutoMLJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-AutoMLJobConfig)": {
        "[CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html#sagemaker-Type-AutoMLJobConfig-CandidateGenerationConfig)": {
            "[AlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html#sagemaker-Type-AutoMLCandidateGenerationConfig-AlgorithmsConfig)":[
               {"[AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms)":["xgboost", "fastai", "catboost"]}
            ]
         },
     "Mode": "ENSEMBLING" 
  }
```

------

有关各种训练 `Mode` 可用算法的列表，请参阅 [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms)。有关每种算法的详细信息，请参阅[训练模式和算法支持](autopilot-model-support-validation.md)。

### 如何指定 AutoML 作业的训练和验证数据集
<a name="autopilot-data-sources-training-or-validation"></a>

您可以提供自己的验证数据集和自定义的数据拆分比率，也可以让 Autopilot 自动拆分数据集。

------
#### [ CreateAutoMLJobV2 ]

每个[https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)对象（参见必填参数 [Auto MLJob InputDataConfig](https://docs.aws.amazon.com/sagemaker-api/src/AWSSageMakerAPIDoc/build/server-root/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)）都有`ChannelType`，可以将其设置为`training`或指定在构建机器学习模型时如何使用数据的`validation`值。数据来源至少需要一个，最多可以有两个：一个用于训练数据，一个用于验证数据。

如何将数据拆分为训练和验证数据集，取决于您有一个还是两个数据来源。
+ 如果您只有**一个数据来源**，则默认情况下 `ChannelType` 设置为 `training`，并且必须具有此值。
  + 如果未设置 [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html) 中的 `ValidationFraction` 值，则默认情况下，将使用来自此来源中数据的 0.2 (20%) 进行验证。
  + 如果 `ValidationFraction` 设置为介于 0 和 1 之间的值，则根据指定的值拆分数据集，该值指定用于验证的数据集的比例。
+ 如果您有**两个数据来源**，则其中一个 `AutoMLJobChannel` 对象的 `ChannelType` 必须设置为默认值 `training`。另一个数据来源的 `ChannelType` 必须设置为 `validation`。这两个数据来源必须具有相同的格式（CSV 或 Parquet）和相同的架构。在这种情况下，您不可为 `ValidationFraction` 设置值，因为每个来源的所有数据都用于训练或验证。设置此值会导致错误。

------
#### [ CreateAutoMLJob ]

每个[https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html)对象（参见必填参数 [InputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-InputDataConfig)）都有`ChannelType`，可以将其设置为`training`或指定在构建机器学习模型时如何使用数据的`validation`值。数据来源至少需要一个，最多可以有两个：一个用于训练数据，一个用于验证数据。

如何将数据拆分为训练和验证数据集，取决于您有一个还是两个数据来源。
+ 如果您只有**一个数据来源**，则默认情况下 `ChannelType` 设置为 `training`，并且必须具有此值。
  + 如果未设置 [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html) 中的 `ValidationFraction` 值，则默认情况下，将使用来自此来源中数据的 0.2 (20%) 进行验证。
  + 如果 `ValidationFraction` 设置为介于 0 和 1 之间的值，则根据指定的值拆分数据集，该值指定用于验证的数据集的比例。
+ 如果您有**两个数据来源**，则其中一个 `AutoMLChannel` 对象的 `ChannelType` 必须设置为默认值 `training`。另一个数据来源的 `ChannelType` 必须设置为 `validation`。这两个数据来源必须具有相同的格式（CSV 或 Parquet）和相同的架构。在这种情况下，您不可为 `ValidationFraction` 设置值，因为每个来源的所有数据都用于训练或验证。设置此值会导致错误。

------

有关 Autopilot 中的拆分和交叉验证的信息，请参阅 [Autopilot 中的交叉验证](autopilot-metrics-validation.md#autopilot-cross-validation)。

### 如何设置 AutoML 作业的问题类型
<a name="autopilot-set-problem-type-api"></a>

------
#### [ CreateAutoMLJobV2 ]

对于表格数据，您必须选择 `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` 作为 `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` 的类型。

您可以使用 `[TabularJobConfig.ProblemType](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` 参数，进一步指定可用于 AutoML 作业 V2 的候选模型的有监督学习问题类型（二元分类、多元分类、回归）。

------
#### [ CreateAutoMLJob ]

您可以使用 `[CreateAutoPilot.ProblemType](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-ProblemType)` 参数在 AutoML 作业上设置[问题的类型](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-datasets-problem-types.html#autopilot-problem-types)。这限制了 Autopilot 尝试的预处理和算法类型。在完成作业后，如果您设置了 `[CreateAutoPilot.ProblemType](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-ProblemType)`，则 `[ResolvedAttribute.ProblemType](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResolvedAttributes.html)` 将匹配您设置的 `ProblemType`。如果您将其留空（或为 `null`），则 `ProblemType` 代表您进行推理。

------

**注意**  
在某些情况下，Autopilot 无法以足够高的置信度推理 `ProblemType`，在这种情况下，您必须提供值以使作业成功。

### 如何向 AutoML 作业添加样本权重
<a name="autopilot-add-sample-weights-api"></a>

您可以向表格数据集添加样本权重列，然后将其传递给 AutoML 作业，以请求在训练和评估期间对数据集行进行加权。

只有[组合模式](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html#autopilot-training-mode)支持样本加权。您的权重应为非负数字。没有权重值或权重值无效的数据点被排除。有关可用目标指标的更多信息，请参阅 [Autopilot 加权指标](autopilot-metrics-validation.md#autopilot-weighted-metrics)。

------
#### [ CreateAutoMLJobV2 ]

对于表格数据，您必须选择 `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` 作为 `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` 的类型。

要在创建实验时设置样本权重（参见 [CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)），可以在`TabularJobConfig`对象的`SampleWeightAttributeName`属性中传递样本权重列的名称。这样可以确保您的目标指标使用这些权重来训练、评估和选择候选模型。

------
#### [ CreateAutoMLJob ]

要在创建实验时设置样本权重（参见 [CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html)），可以在 A [uto MLChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html) 对象的`SampleWeightAttributeName`属性中传递样本权重列的名称。这样可以确保您的目标指标使用这些权重来训练、评估和选择候选模型。

------

### 如何配置 AutoML 以在 EMR Serverless 上为大型数据集启动远程作业
<a name="autopilot-set-emr-serverless-api-tabular"></a>

您可以配置 AutoML 作业 V2，以便在处理大型数据集需要额外计算资源时，自动启动 Amazon EMR Serverless 上的远程作业。通过在需要时无缝过渡到 EMR Serverless，AutoML 作业可以处理超出初始资源配置的数据集，而无需您进行任何人工干预。EMR Serverless 可用于表格和时间序列问题类型。我们建议为大于 5 GB 的表格数据集设置此选项。

要让 AutoML 作业 V2 自动过渡到针对大型数据集的 EMR Serverless，您需要向 AutoML 作业 V2 输入请求的 `AutoMLComputeConfig` 提供一个 `EmrServerlessComputeConfig` 对象，其中包括一个 `ExecutionRoleARN` 字段。

`ExecutionRoleARN` 是 IAM 角色的 ARN，授予 AutoML 作业 V2 运行 EMR Serverless 作业所需的权限。

该角色应具有以下信任关系：

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "emr-serverless.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

并授予权限进行：
+ 创建、列出和更新 EMR Serverless 应用程序。
+ 在 EMR Serverless 应用程序上启动、列出、获取或取消作业运行。
+ 标记 EMR Serverless 资源。
+ 将 IAM 角色传递给 EMR Serverless 服务以执行。

  通过授予 `iam:PassRole` 权限，AutoML 作业 V2 可以临时承担 `EMRServerlessRuntimeRole-*` 角色，并将其传递给 EMR Serverless 服务。EMR Serverless 任务执行环境使用这些 IAM 角色来访问运行时所需的其他 AWS 服务和资源，例如 Amazon S3，用于访问数据、记录、访问 AWS Glue 数据目录或其他基于您的工作负载 CloudWatch 要求的服务。

  有关此角色权限的详细信息，请参阅 [Amazon EMR Serverless 的作业运行时角色](https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/security-iam-runtime-role.html)。

所提供 JSON 文档中定义的 IAM 策略会授予这些权限：

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
            "Sid": "EMRServerlessCreateApplicationOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:CreateApplication",
            "Resource": "arn:aws:emr-serverless:*:*:/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessListApplicationOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:ListApplications",
            "Resource": "arn:aws:emr-serverless:*:*:/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessApplicationOperations",
            "Effect": "Allow",
            "Action": [
                "emr-serverless:UpdateApplication",
                "emr-serverless:GetApplication"
            ],
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessStartJobRunOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:StartJobRun",
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessListJobRunOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:ListJobRuns",
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessJobRunOperations",
            "Effect": "Allow",
            "Action": [
                "emr-serverless:GetJobRun",
                "emr-serverless:CancelJobRun"
            ],
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*/jobruns/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessTagResourceOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:TagResource",
            "Resource": "arn:aws:emr-serverless:*:*:/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "IAMPassOperationForEMRServerless",
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::*:role/EMRServerlessRuntimeRole-*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "emr-serverless.amazonaws.com",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
         }
    ]
}
```

------

## 将 a 迁移 CreateAutoMLJob 到 CreateAuto MLJob V2
<a name="autopilot-create-experiment-api-migrate-v1-v2"></a>

我们建议 `CreateAutoMLJob` 的用户迁移到 `CreateAutoMLJobV2`。

本节通过突出显示两个版本之间输入请求的对象[CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker-api/src/AWSSageMakerAPIDoc/build/server-root/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#API_CreateAutoMLJob_RequestSyntax)和属性的位置、名称或结构的变化来说明和 [CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax) 之间输入参数的差异。
+ **在两个版本之间没有变化的请求属性。**

  ```
  {
     "AutoMLJobName": "string",
     "AutoMLJobObjective": { 
        "MetricName": "string"
     },
     "ModelDeployConfig": { 
        "AutoGenerateEndpointName": boolean,
        "EndpointName": "string"
     },
     "OutputDataConfig": { 
        "KmsKeyId": "string",
        "S3OutputPath": "string"
     },
     "RoleArn": "string",
     "Tags": [ 
        { 
           "Key": "string",
           "Value": "string"
        }
     ]
  }
  ```
+ **在两个版本之间位置和结构发生变化的请求属性。**

  以下属性改变了位置：`DataSplitConfig`、`Security Config`、`CompletionCriteria`、`Mode`、`FeatureSpecificationS3Uri`、`SampleWeightAttributeName`、`TargetAttributeName`。

------
#### [ CreateAutoMLJob ]

  ```
  { 
      "AutoMLJobConfig": { 
          "Mode": "string",
          "CompletionCriteria": { 
              "MaxAutoMLJobRuntimeInSeconds": number,
              "MaxCandidates": number,
              "MaxRuntimePerTrainingJobInSeconds": number
          },
          "DataSplitConfig": { 
              "ValidationFraction": number
          },
          "SecurityConfig": { 
              "EnableInterContainerTrafficEncryption": boolean,
              "VolumeKmsKeyId": "string",
              "VpcConfig": { 
              "SecurityGroupIds": [ "string" ],
              "Subnets": [ "string" ]
              }
          },
          "CandidateGenerationConfig": { 
              "FeatureSpecificationS3Uri": "string"
          }
      },
      "GenerateCandidateDefinitionsOnly": boolean,
      "ProblemType": "string"
  }
  ```

------
#### [ CreateAutoMLJobV2 ]

  ```
  {       
      "AutoMLProblemTypeConfig": {
          "TabularJobConfig": {
              "Mode": "string",
              "ProblemType": "string",
              "GenerateCandidateDefinitionsOnly": boolean,
              "CompletionCriteria": { 
                  "MaxAutoMLJobRuntimeInSeconds": number,
                  "MaxCandidates": number,
                  "MaxRuntimePerTrainingJobInSeconds": number
              },
              "FeatureSpecificationS3Uri": "string",
              "SampleWeightAttributeName": "string",
              "TargetAttributeName": "string"
          }
      },
      "DataSplitConfig": { 
          "ValidationFraction": number
      },
      "SecurityConfig": { 
          "EnableInterContainerTrafficEncryption": boolean,
          "VolumeKmsKeyId": "string",
          "VpcConfig": { 
              "SecurityGroupIds": [ "string" ],
              "Subnets": [ "string" ]
          }
      }
  }
  ```

------
+ **在两个版本之间，以下属性的位置和结构发生了变化。**

  以下 JSON 说明了如何[自动MLJob配置。 CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html#sagemaker-Type-AutoMLJobConfig-CandidateGenerationConfig)类型为 “[自](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html)动” MLCandidate GenerationConfig 已移至 “[自动 MLProblemTypeConfig”。 TabularJobConfig。 ](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)CandidateGenerationConfig[CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html)在 V2 中属于类型。

------
#### [ CreateAutoMLJob ]

  ```
  {
     "AutoMLJobConfig": { 
        "CandidateGenerationConfig": { 
           "AlgorithmsConfig": [ 
              { 
                 "AutoMLAlgorithms": [ "string" ]
              }
           ],
           "FeatureSpecificationS3Uri": "string"
        }
  }
  ```

------
#### [ CreateAutoMLJobV2 ]

  ```
  {
      "AutoMLProblemTypeConfig": {
          "TabularJobConfig": {
              "CandidateGenerationConfig": { 
                  "AlgorithmsConfig": [ 
                      { 
                      "AutoMLAlgorithms": [ "string" ]
                      }
                  ],
              },
          }
      },
  }
  ```

------
+ **名称和结构发生了变化的请求属性。**

  以下 JSON 说明了 [InputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-InputDataConfig)（[自动](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html)数组MLChannel）是如何在 V2 中更改为自动 MLJobInputDataConfig（[自动MLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)[频道](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)数组）的。请注意，属性 `SampleWeightAttributeName` 和 `TargetAttributeName` 从 `InputDataConfig` 中移出并移入到 `AutoMLProblemTypeConfig` 中。

------
#### [ CreateAutoMLJob ]

  ```
  {    
      "InputDataConfig": [ 
          { 
              "ChannelType": "string",
              "CompressionType": "string",
              "ContentType": "string",
              "DataSource": { 
                  "S3DataSource": { 
                      "S3DataType": "string",
                      "S3Uri": "string"
                  }
              },
              "SampleWeightAttributeName": "string",
              "TargetAttributeName": "string"
          }
      ]
  }
  ```

------
#### [ CreateAutoMLJobV2 ]

  ```
  {    
      "AutoMLJobInputDataConfig": [ 
          { 
              "ChannelType": "string",
              "CompressionType": "string",
              "ContentType": "string",
              "DataSource": { 
                  "S3DataSource": { 
                      "S3DataType": "string",
                      "S3Uri": "string"
                  }
              }
          }
      ]
  }
  ```

------