选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

CreateHyperParameterTuningJob - Amazon SageMaker
此页面尚未翻译为您的语言。 请求翻译

CreateHyperParameterTuningJob

Starts a hyperparameter tuning job. A hyperparameter tuning job finds the best version of a model by running many training jobs on your dataset using the algorithm you choose and values for hyperparameters within ranges that you specify. It then chooses the hyperparameter values that result in a model that performs the best, as measured by an objective metric that you choose.

A hyperparameter tuning job automatically creates Amazon SageMaker experiments, trials, and trial components for each training job that it runs. You can view these entities in Amazon SageMaker Studio. For more information, see View Experiments, Trials, and Trial Components.

Important

Do not include any security-sensitive information including account access IDs, secrets or tokens in any hyperparameter field. If the use of security-sensitive credentials are detected, SageMaker will reject your training job request and return an exception error.

Request Syntax

{ "Autotune": { "Mode": "string" }, "HyperParameterTuningJobConfig": { "HyperParameterTuningJobObjective": { "MetricName": "string", "Type": "string" }, "ParameterRanges": { "AutoParameters": [ { "Name": "string", "ValueHint": "string" } ], "CategoricalParameterRanges": [ { "Name": "string", "Values": [ "string" ] } ], "ContinuousParameterRanges": [ { "MaxValue": "string", "MinValue": "string", "Name": "string", "ScalingType": "string" } ], "IntegerParameterRanges": [ { "MaxValue": "string", "MinValue": "string", "Name": "string", "ScalingType": "string" } ] }, "RandomSeed": number, "ResourceLimits": { "MaxNumberOfTrainingJobs": number, "MaxParallelTrainingJobs": number, "MaxRuntimeInSeconds": number }, "Strategy": "string", "StrategyConfig": { "HyperbandStrategyConfig": { "MaxResource": number, "MinResource": number } }, "TrainingJobEarlyStoppingType": "string", "TuningJobCompletionCriteria": { "BestObjectiveNotImproving": { "MaxNumberOfTrainingJobsNotImproving": number }, "ConvergenceDetected": { "CompleteOnConvergence": "string" }, "TargetObjectiveMetricValue": number } }, "HyperParameterTuningJobName": "string", "Tags": [ { "Key": "string", "Value": "string" } ], "TrainingJobDefinition": { "AlgorithmSpecification": { "AlgorithmName": "string", "MetricDefinitions": [ { "Name": "string", "Regex": "string" } ], "TrainingImage": "string", "TrainingInputMode": "string" }, "CheckpointConfig": { "LocalPath": "string", "S3Uri": "string" }, "DefinitionName": "string", "EnableInterContainerTrafficEncryption": boolean, "EnableManagedSpotTraining": boolean, "EnableNetworkIsolation": boolean, "Environment": { "string" : "string" }, "HyperParameterRanges": { "AutoParameters": [ { "Name": "string", "ValueHint": "string" } ], "CategoricalParameterRanges": [ { "Name": "string", "Values": [ "string" ] } ], "ContinuousParameterRanges": [ { "MaxValue": "string", "MinValue": "string", "Name": "string", "ScalingType": "string" } ], "IntegerParameterRanges": [ { "MaxValue": "string", "MinValue": "string", "Name": "string", "ScalingType": "string" } ] }, "HyperParameterTuningResourceConfig": { "AllocationStrategy": "string", "InstanceConfigs": [ { "InstanceCount": number, "InstanceType": "string", "VolumeSizeInGB": number } ], "InstanceCount": number, "InstanceType": "string", "VolumeKmsKeyId": "string", "VolumeSizeInGB": number }, "InputDataConfig": [ { "ChannelName": "string", "CompressionType": "string", "ContentType": "string", "DataSource": { "FileSystemDataSource": { "DirectoryPath": "string", "FileSystemAccessMode": "string", "FileSystemId": "string", "FileSystemType": "string" }, "S3DataSource": { "AttributeNames": [ "string" ], "HubAccessConfig": { "HubContentArn": "string" }, "InstanceGroupNames": [ "string" ], "ModelAccessConfig": { "AcceptEula": boolean }, "S3DataDistributionType": "string", "S3DataType": "string", "S3Uri": "string" } }, "InputMode": "string", "RecordWrapperType": "string", "ShuffleConfig": { "Seed": number } } ], "OutputDataConfig": { "CompressionType": "string", "KmsKeyId": "string", "S3OutputPath": "string" }, "ResourceConfig": { "InstanceCount": number, "InstanceGroups": [ { "InstanceCount": number, "InstanceGroupName": "string", "InstanceType": "string" } ], "InstanceType": "string", "KeepAlivePeriodInSeconds": number, "TrainingPlanArn": "string", "VolumeKmsKeyId": "string", "VolumeSizeInGB": number }, "RetryStrategy": { "MaximumRetryAttempts": number }, "RoleArn": "string", "StaticHyperParameters": { "string" : "string" }, "StoppingCondition": { "MaxPendingTimeInSeconds": number, "MaxRuntimeInSeconds": number, "MaxWaitTimeInSeconds": number }, "TuningObjective": { "MetricName": "string", "Type": "string" }, "VpcConfig": { "SecurityGroupIds": [ "string" ], "Subnets": [ "string" ] } }, "TrainingJobDefinitions": [ { "AlgorithmSpecification": { "AlgorithmName": "string", "MetricDefinitions": [ { "Name": "string", "Regex": "string" } ], "TrainingImage": "string", "TrainingInputMode": "string" }, "CheckpointConfig": { "LocalPath": "string", "S3Uri": "string" }, "DefinitionName": "string", "EnableInterContainerTrafficEncryption": boolean, "EnableManagedSpotTraining": boolean, "EnableNetworkIsolation": boolean, "Environment": { "string" : "string" }, "HyperParameterRanges": { "AutoParameters": [ { "Name": "string", "ValueHint": "string" } ], "CategoricalParameterRanges": [ { "Name": "string", "Values": [ "string" ] } ], "ContinuousParameterRanges": [ { "MaxValue": "string", "MinValue": "string", "Name": "string", "ScalingType": "string" } ], "IntegerParameterRanges": [ { "MaxValue": "string", "MinValue": "string", "Name": "string", "ScalingType": "string" } ] }, "HyperParameterTuningResourceConfig": { "AllocationStrategy": "string", "InstanceConfigs": [ { "InstanceCount": number, "InstanceType": "string", "VolumeSizeInGB": number } ], "InstanceCount": number, "InstanceType": "string", "VolumeKmsKeyId": "string", "VolumeSizeInGB": number }, "InputDataConfig": [ { "ChannelName": "string", "CompressionType": "string", "ContentType": "string", "DataSource": { "FileSystemDataSource": { "DirectoryPath": "string", "FileSystemAccessMode": "string", "FileSystemId": "string", "FileSystemType": "string" }, "S3DataSource": { "AttributeNames": [ "string" ], "HubAccessConfig": { "HubContentArn": "string" }, "InstanceGroupNames": [ "string" ], "ModelAccessConfig": { "AcceptEula": boolean }, "S3DataDistributionType": "string", "S3DataType": "string", "S3Uri": "string" } }, "InputMode": "string", "RecordWrapperType": "string", "ShuffleConfig": { "Seed": number } } ], "OutputDataConfig": { "CompressionType": "string", "KmsKeyId": "string", "S3OutputPath": "string" }, "ResourceConfig": { "InstanceCount": number, "InstanceGroups": [ { "InstanceCount": number, "InstanceGroupName": "string", "InstanceType": "string" } ], "InstanceType": "string", "KeepAlivePeriodInSeconds": number, "TrainingPlanArn": "string", "VolumeKmsKeyId": "string", "VolumeSizeInGB": number }, "RetryStrategy": { "MaximumRetryAttempts": number }, "RoleArn": "string", "StaticHyperParameters": { "string" : "string" }, "StoppingCondition": { "MaxPendingTimeInSeconds": number, "MaxRuntimeInSeconds": number, "MaxWaitTimeInSeconds": number }, "TuningObjective": { "MetricName": "string", "Type": "string" }, "VpcConfig": { "SecurityGroupIds": [ "string" ], "Subnets": [ "string" ] } } ], "WarmStartConfig": { "ParentHyperParameterTuningJobs": [ { "HyperParameterTuningJobName": "string" } ], "WarmStartType": "string" } }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

Autotune

Configures SageMaker Automatic model tuning (AMT) to automatically find optimal parameters for the following fields:

  • ParameterRanges: The names and ranges of parameters that a hyperparameter tuning job can optimize.

  • ResourceLimits: The maximum resources that can be used for a training job. These resources include the maximum number of training jobs, the maximum runtime of a tuning job, and the maximum number of training jobs to run at the same time.

  • TrainingJobEarlyStoppingType: A flag that specifies whether or not to use early stopping for training jobs launched by a hyperparameter tuning job.

  • RetryStrategy: The number of times to retry a training job.

  • Strategy: Specifies how hyperparameter tuning chooses the combinations of hyperparameter values to use for the training jobs that it launches.

  • ConvergenceDetected: A flag to indicate that Automatic model tuning (AMT) has detected model convergence.

Type: Autotune object

Required: No

HyperParameterTuningJobConfig

The HyperParameterTuningJobConfig object that describes the tuning job, including the search strategy, the objective metric used to evaluate training jobs, ranges of parameters to search, and resource limits for the tuning job. For more information, see How Hyperparameter Tuning Works.

Type: HyperParameterTuningJobConfig object

Required: Yes

HyperParameterTuningJobName

The name of the tuning job. This name is the prefix for the names of all training jobs that this tuning job launches. The name must be unique within the same AWS account and AWS Region. The name must have 1 to 32 characters. Valid characters are a-z, A-Z, 0-9, and : + = @ _ % - (hyphen). The name is not case sensitive.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 32.

Pattern: ^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,31}

Required: Yes

Tags

An array of key-value pairs. You can use tags to categorize your AWS resources in different ways, for example, by purpose, owner, or environment. For more information, see Tagging AWS Resources.

Tags that you specify for the tuning job are also added to all training jobs that the tuning job launches.

Type: Array of Tag objects

Array Members: Minimum number of 0 items. Maximum number of 50 items.

Required: No

TrainingJobDefinition

The HyperParameterTrainingJobDefinition object that describes the training jobs that this tuning job launches, including static hyperparameters, input data configuration, output data configuration, resource configuration, and stopping condition.

Type: HyperParameterTrainingJobDefinition object

Required: No

TrainingJobDefinitions

A list of the HyperParameterTrainingJobDefinition objects launched for this tuning job.

Type: Array of HyperParameterTrainingJobDefinition objects

Array Members: Minimum number of 1 item. Maximum number of 10 items.

Required: No

WarmStartConfig

Specifies the configuration for starting the hyperparameter tuning job using one or more previous tuning jobs as a starting point. The results of previous tuning jobs are used to inform which combinations of hyperparameters to search over in the new tuning job.

All training jobs launched by the new hyperparameter tuning job are evaluated by using the objective metric. If you specify IDENTICAL_DATA_AND_ALGORITHM as the WarmStartType value for the warm start configuration, the training job that performs the best in the new tuning job is compared to the best training jobs from the parent tuning jobs. From these, the training job that performs the best as measured by the objective metric is returned as the overall best training job.

Note

All training jobs launched by parent hyperparameter tuning jobs and the new hyperparameter tuning jobs count against the limit of training jobs for the tuning job.

Type: HyperParameterTuningJobWarmStartConfig object

Required: No

Response Syntax

{ "HyperParameterTuningJobArn": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

HyperParameterTuningJobArn

The Amazon Resource Name (ARN) of the tuning job. SageMaker assigns an ARN to a hyperparameter tuning job when you create it.

Type: String

Length Constraints: Maximum length of 256.

Pattern: arn:aws[a-z\-]*:sagemaker:[a-z0-9\-]*:[0-9]{12}:hyper-parameter-tuning-job/.*

Errors

For information about the errors that are common to all actions, see Common Errors.

ResourceInUse

Resource being accessed is in use.

HTTP Status Code: 400

ResourceLimitExceeded

You have exceeded an SageMaker resource limit. For example, you might have too many training jobs created.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。