/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace SageMaker { namespace Model { /** */ class CreateHyperParameterTuningJobRequest : public SageMakerRequest { public: AWS_SAGEMAKER_API CreateHyperParameterTuningJobRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CreateHyperParameterTuningJob"; } AWS_SAGEMAKER_API Aws::String SerializePayload() const override; AWS_SAGEMAKER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

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 Amazon Web Services account and Amazon Web Services 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.

*/ inline const Aws::String& GetHyperParameterTuningJobName() const{ return m_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 Amazon Web Services account and Amazon Web Services 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.

*/ inline bool HyperParameterTuningJobNameHasBeenSet() const { return m_hyperParameterTuningJobNameHasBeenSet; } /** *

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 Amazon Web Services account and Amazon Web Services 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.

*/ inline void SetHyperParameterTuningJobName(const Aws::String& value) { m_hyperParameterTuningJobNameHasBeenSet = true; m_hyperParameterTuningJobName = value; } /** *

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 Amazon Web Services account and Amazon Web Services 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.

*/ inline void SetHyperParameterTuningJobName(Aws::String&& value) { m_hyperParameterTuningJobNameHasBeenSet = true; m_hyperParameterTuningJobName = std::move(value); } /** *

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 Amazon Web Services account and Amazon Web Services 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.

*/ inline void SetHyperParameterTuningJobName(const char* value) { m_hyperParameterTuningJobNameHasBeenSet = true; m_hyperParameterTuningJobName.assign(value); } /** *

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 Amazon Web Services account and Amazon Web Services 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.

*/ inline CreateHyperParameterTuningJobRequest& WithHyperParameterTuningJobName(const Aws::String& value) { SetHyperParameterTuningJobName(value); return *this;} /** *

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 Amazon Web Services account and Amazon Web Services 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.

*/ inline CreateHyperParameterTuningJobRequest& WithHyperParameterTuningJobName(Aws::String&& value) { SetHyperParameterTuningJobName(std::move(value)); return *this;} /** *

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 Amazon Web Services account and Amazon Web Services 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.

*/ inline CreateHyperParameterTuningJobRequest& WithHyperParameterTuningJobName(const char* value) { SetHyperParameterTuningJobName(value); return *this;} /** *

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.

*/ inline const HyperParameterTuningJobConfig& GetHyperParameterTuningJobConfig() const{ return m_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.

*/ inline bool HyperParameterTuningJobConfigHasBeenSet() const { return m_hyperParameterTuningJobConfigHasBeenSet; } /** *

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.

*/ inline void SetHyperParameterTuningJobConfig(const HyperParameterTuningJobConfig& value) { m_hyperParameterTuningJobConfigHasBeenSet = true; m_hyperParameterTuningJobConfig = value; } /** *

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.

*/ inline void SetHyperParameterTuningJobConfig(HyperParameterTuningJobConfig&& value) { m_hyperParameterTuningJobConfigHasBeenSet = true; m_hyperParameterTuningJobConfig = std::move(value); } /** *

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.

*/ inline CreateHyperParameterTuningJobRequest& WithHyperParameterTuningJobConfig(const HyperParameterTuningJobConfig& value) { SetHyperParameterTuningJobConfig(value); return *this;} /** *

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.

*/ inline CreateHyperParameterTuningJobRequest& WithHyperParameterTuningJobConfig(HyperParameterTuningJobConfig&& value) { SetHyperParameterTuningJobConfig(std::move(value)); return *this;} /** *

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.

*/ inline const HyperParameterTrainingJobDefinition& GetTrainingJobDefinition() const{ return m_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.

*/ inline bool TrainingJobDefinitionHasBeenSet() const { return m_trainingJobDefinitionHasBeenSet; } /** *

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.

*/ inline void SetTrainingJobDefinition(const HyperParameterTrainingJobDefinition& value) { m_trainingJobDefinitionHasBeenSet = true; m_trainingJobDefinition = value; } /** *

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.

*/ inline void SetTrainingJobDefinition(HyperParameterTrainingJobDefinition&& value) { m_trainingJobDefinitionHasBeenSet = true; m_trainingJobDefinition = std::move(value); } /** *

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.

*/ inline CreateHyperParameterTuningJobRequest& WithTrainingJobDefinition(const HyperParameterTrainingJobDefinition& value) { SetTrainingJobDefinition(value); return *this;} /** *

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.

*/ inline CreateHyperParameterTuningJobRequest& WithTrainingJobDefinition(HyperParameterTrainingJobDefinition&& value) { SetTrainingJobDefinition(std::move(value)); return *this;} /** *

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

*/ inline const Aws::Vector& GetTrainingJobDefinitions() const{ return m_trainingJobDefinitions; } /** *

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

*/ inline bool TrainingJobDefinitionsHasBeenSet() const { return m_trainingJobDefinitionsHasBeenSet; } /** *

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

*/ inline void SetTrainingJobDefinitions(const Aws::Vector& value) { m_trainingJobDefinitionsHasBeenSet = true; m_trainingJobDefinitions = value; } /** *

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

*/ inline void SetTrainingJobDefinitions(Aws::Vector&& value) { m_trainingJobDefinitionsHasBeenSet = true; m_trainingJobDefinitions = std::move(value); } /** *

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

*/ inline CreateHyperParameterTuningJobRequest& WithTrainingJobDefinitions(const Aws::Vector& value) { SetTrainingJobDefinitions(value); return *this;} /** *

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

*/ inline CreateHyperParameterTuningJobRequest& WithTrainingJobDefinitions(Aws::Vector&& value) { SetTrainingJobDefinitions(std::move(value)); return *this;} /** *

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

*/ inline CreateHyperParameterTuningJobRequest& AddTrainingJobDefinitions(const HyperParameterTrainingJobDefinition& value) { m_trainingJobDefinitionsHasBeenSet = true; m_trainingJobDefinitions.push_back(value); return *this; } /** *

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

*/ inline CreateHyperParameterTuningJobRequest& AddTrainingJobDefinitions(HyperParameterTrainingJobDefinition&& value) { m_trainingJobDefinitionsHasBeenSet = true; m_trainingJobDefinitions.push_back(std::move(value)); return *this; } /** *

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.

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.

*/ inline const HyperParameterTuningJobWarmStartConfig& GetWarmStartConfig() const{ return m_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.

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.

*/ inline bool WarmStartConfigHasBeenSet() const { return m_warmStartConfigHasBeenSet; } /** *

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.

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.

*/ inline void SetWarmStartConfig(const HyperParameterTuningJobWarmStartConfig& value) { m_warmStartConfigHasBeenSet = true; m_warmStartConfig = value; } /** *

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.

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.

*/ inline void SetWarmStartConfig(HyperParameterTuningJobWarmStartConfig&& value) { m_warmStartConfigHasBeenSet = true; m_warmStartConfig = std::move(value); } /** *

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.

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.

*/ inline CreateHyperParameterTuningJobRequest& WithWarmStartConfig(const HyperParameterTuningJobWarmStartConfig& value) { SetWarmStartConfig(value); return *this;} /** *

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.

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.

*/ inline CreateHyperParameterTuningJobRequest& WithWarmStartConfig(HyperParameterTuningJobWarmStartConfig&& value) { SetWarmStartConfig(std::move(value)); return *this;} /** *

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

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

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

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

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

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

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

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

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

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

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

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

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

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

*/ inline CreateHyperParameterTuningJobRequest& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

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

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

*/ inline CreateHyperParameterTuningJobRequest& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

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

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

*/ inline CreateHyperParameterTuningJobRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

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

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

*/ inline CreateHyperParameterTuningJobRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } /** *

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.

*/ inline const Autotune& GetAutotune() const{ return m_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.

*/ inline bool AutotuneHasBeenSet() const { return m_autotuneHasBeenSet; } /** *

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.

*/ inline void SetAutotune(const Autotune& value) { m_autotuneHasBeenSet = true; m_autotune = value; } /** *

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.

*/ inline void SetAutotune(Autotune&& value) { m_autotuneHasBeenSet = true; m_autotune = std::move(value); } /** *

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.

*/ inline CreateHyperParameterTuningJobRequest& WithAutotune(const Autotune& value) { SetAutotune(value); return *this;} /** *

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.

*/ inline CreateHyperParameterTuningJobRequest& WithAutotune(Autotune&& value) { SetAutotune(std::move(value)); return *this;} private: Aws::String m_hyperParameterTuningJobName; bool m_hyperParameterTuningJobNameHasBeenSet = false; HyperParameterTuningJobConfig m_hyperParameterTuningJobConfig; bool m_hyperParameterTuningJobConfigHasBeenSet = false; HyperParameterTrainingJobDefinition m_trainingJobDefinition; bool m_trainingJobDefinitionHasBeenSet = false; Aws::Vector m_trainingJobDefinitions; bool m_trainingJobDefinitionsHasBeenSet = false; HyperParameterTuningJobWarmStartConfig m_warmStartConfig; bool m_warmStartConfigHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; Autotune m_autotune; bool m_autotuneHasBeenSet = false; }; } // namespace Model } // namespace SageMaker } // namespace Aws