/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.sagemaker.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.AmazonWebServiceRequest; /** * * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class CreateHyperParameterTuningJobRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** *
* 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. *
*/ private String hyperParameterTuningJobName; /** ** 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. *
*/ private HyperParameterTuningJobConfig hyperParameterTuningJobConfig; /** ** 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. *
*/ private HyperParameterTrainingJobDefinition trainingJobDefinition; /** ** A list of the HyperParameterTrainingJobDefinition objects launched for this tuning job. *
*/ private java.util.List* 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. *
** 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. *
*/ private java.util.List* 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. *
** 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. *
* * @param 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. */ public void setHyperParameterTuningJobName(String hyperParameterTuningJobName) { this.hyperParameterTuningJobName = 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. *
* * @return 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. */ public String getHyperParameterTuningJobName() { return this.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. *
* * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateHyperParameterTuningJobRequest withHyperParameterTuningJobName(String hyperParameterTuningJobName) { setHyperParameterTuningJobName(hyperParameterTuningJobName); 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. *
* * @param 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. */ public void setHyperParameterTuningJobConfig(HyperParameterTuningJobConfig hyperParameterTuningJobConfig) { this.hyperParameterTuningJobConfig = 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. *
* * @return 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. */ public HyperParameterTuningJobConfig getHyperParameterTuningJobConfig() { return this.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. *
* * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateHyperParameterTuningJobRequest withHyperParameterTuningJobConfig(HyperParameterTuningJobConfig hyperParameterTuningJobConfig) { setHyperParameterTuningJobConfig(hyperParameterTuningJobConfig); 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. *
* * @param 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. */ public void setTrainingJobDefinition(HyperParameterTrainingJobDefinition trainingJobDefinition) { this.trainingJobDefinition = 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. *
* * @return 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. */ public HyperParameterTrainingJobDefinition getTrainingJobDefinition() { return this.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. *
* * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateHyperParameterTuningJobRequest withTrainingJobDefinition(HyperParameterTrainingJobDefinition trainingJobDefinition) { setTrainingJobDefinition(trainingJobDefinition); return this; } /** ** A list of the HyperParameterTrainingJobDefinition objects launched for this tuning job. *
* * @return A list of the HyperParameterTrainingJobDefinition objects launched for this tuning job. */ public java.util.List* A list of the HyperParameterTrainingJobDefinition objects launched for this tuning job. *
* * @param trainingJobDefinitions * A list of the HyperParameterTrainingJobDefinition objects launched for this tuning job. */ public void setTrainingJobDefinitions(java.util.Collection* A list of the HyperParameterTrainingJobDefinition objects launched for this tuning job. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setTrainingJobDefinitions(java.util.Collection)} or * {@link #withTrainingJobDefinitions(java.util.Collection)} if you want to override the existing values. *
* * @param trainingJobDefinitions * A list of the HyperParameterTrainingJobDefinition objects launched for this tuning job. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateHyperParameterTuningJobRequest withTrainingJobDefinitions(HyperParameterTrainingJobDefinition... trainingJobDefinitions) { if (this.trainingJobDefinitions == null) { setTrainingJobDefinitions(new java.util.ArrayList* A list of the HyperParameterTrainingJobDefinition objects launched for this tuning job. *
* * @param trainingJobDefinitions * A list of the HyperParameterTrainingJobDefinition objects launched for this tuning job. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateHyperParameterTuningJobRequest withTrainingJobDefinitions(java.util.Collection* 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. *
*
* 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. *
*/ public void setWarmStartConfig(HyperParameterTuningJobWarmStartConfig warmStartConfig) { this.warmStartConfig = 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. *
*
* 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. *
*/ public HyperParameterTuningJobWarmStartConfig getWarmStartConfig() { return this.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. *
*
* 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. *
* @return Returns a reference to this object so that method calls can be chained together. */ public CreateHyperParameterTuningJobRequest withWarmStartConfig(HyperParameterTuningJobWarmStartConfig warmStartConfig) { setWarmStartConfig(warmStartConfig); 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. *
* * @return 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.
*/
public java.util.List
* 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.
*
* Tags that you specify for the tuning job are also added to all training jobs that the tuning job launches.
*/
public void setTags(java.util.Collection
* 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.
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setTags(java.util.Collection)} or {@link #withTags(java.util.Collection)} if you want to override the
* existing values.
*
* Tags that you specify for the tuning job are also added to all training jobs that the tuning job launches.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateHyperParameterTuningJobRequest withTags(Tag... tags) {
if (this.tags == null) {
setTags(new java.util.ArrayList
* 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.
*
* Tags that you specify for the tuning job are also added to all training jobs that the tuning job launches.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateHyperParameterTuningJobRequest withTags(java.util.Collection
* 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.
*
*
*
* @param 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. *
** 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. *
** 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. *
** 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. *
** 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. *
** ParameterRanges: The names and ranges of parameters that a hyperparameter tuning job can optimize. *
** 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. *
*