All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.sagemaker.model.CreateHyperParameterTuningJobRequest Maven / Gradle / Ivy

/*
 * Copyright 2015-2020 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 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. *

*/ 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 trainingJobDefinitions; /** *

* 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. *

*
*/ private HyperParameterTuningJobWarmStartConfig warmStartConfig; /** *

* 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. *

*/ private java.util.List tags; /** *

* 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. *

* * @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 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. */ 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 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. *

* * @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 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. */ 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 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. *

* * @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 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. * @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 getTrainingJobDefinitions() { return trainingJobDefinitions; } /** *

* 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 trainingJobDefinitions) { if (trainingJobDefinitions == null) { this.trainingJobDefinitions = null; return; } this.trainingJobDefinitions = new java.util.ArrayList(trainingJobDefinitions); } /** *

* 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(trainingJobDefinitions.length)); } for (HyperParameterTrainingJobDefinition ele : trainingJobDefinitions) { this.trainingJobDefinitions.add(ele); } return this; } /** *

* 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 trainingJobDefinitions) { setTrainingJobDefinitions(trainingJobDefinitions); 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. *

*
* * @param 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. *

*/ 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. *

*
* * @return 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. *

*/ 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. *

*
* * @param 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. *

* @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 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. *

* * @return 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. */ public java.util.List getTags() { return 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. *

* * @param 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. */ public void setTags(java.util.Collection tags) { if (tags == null) { this.tags = null; return; } this.tags = new java.util.ArrayList(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. *

*

* 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. *

* * @param 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. * @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(tags.length)); } for (Tag ele : tags) { this.tags.add(ele); } return this; } /** *

* 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. *

* * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateHyperParameterTuningJobRequest withTags(java.util.Collection tags) { setTags(tags); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getHyperParameterTuningJobName() != null) sb.append("HyperParameterTuningJobName: ").append(getHyperParameterTuningJobName()).append(","); if (getHyperParameterTuningJobConfig() != null) sb.append("HyperParameterTuningJobConfig: ").append(getHyperParameterTuningJobConfig()).append(","); if (getTrainingJobDefinition() != null) sb.append("TrainingJobDefinition: ").append(getTrainingJobDefinition()).append(","); if (getTrainingJobDefinitions() != null) sb.append("TrainingJobDefinitions: ").append(getTrainingJobDefinitions()).append(","); if (getWarmStartConfig() != null) sb.append("WarmStartConfig: ").append(getWarmStartConfig()).append(","); if (getTags() != null) sb.append("Tags: ").append(getTags()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateHyperParameterTuningJobRequest == false) return false; CreateHyperParameterTuningJobRequest other = (CreateHyperParameterTuningJobRequest) obj; if (other.getHyperParameterTuningJobName() == null ^ this.getHyperParameterTuningJobName() == null) return false; if (other.getHyperParameterTuningJobName() != null && other.getHyperParameterTuningJobName().equals(this.getHyperParameterTuningJobName()) == false) return false; if (other.getHyperParameterTuningJobConfig() == null ^ this.getHyperParameterTuningJobConfig() == null) return false; if (other.getHyperParameterTuningJobConfig() != null && other.getHyperParameterTuningJobConfig().equals(this.getHyperParameterTuningJobConfig()) == false) return false; if (other.getTrainingJobDefinition() == null ^ this.getTrainingJobDefinition() == null) return false; if (other.getTrainingJobDefinition() != null && other.getTrainingJobDefinition().equals(this.getTrainingJobDefinition()) == false) return false; if (other.getTrainingJobDefinitions() == null ^ this.getTrainingJobDefinitions() == null) return false; if (other.getTrainingJobDefinitions() != null && other.getTrainingJobDefinitions().equals(this.getTrainingJobDefinitions()) == false) return false; if (other.getWarmStartConfig() == null ^ this.getWarmStartConfig() == null) return false; if (other.getWarmStartConfig() != null && other.getWarmStartConfig().equals(this.getWarmStartConfig()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getHyperParameterTuningJobName() == null) ? 0 : getHyperParameterTuningJobName().hashCode()); hashCode = prime * hashCode + ((getHyperParameterTuningJobConfig() == null) ? 0 : getHyperParameterTuningJobConfig().hashCode()); hashCode = prime * hashCode + ((getTrainingJobDefinition() == null) ? 0 : getTrainingJobDefinition().hashCode()); hashCode = prime * hashCode + ((getTrainingJobDefinitions() == null) ? 0 : getTrainingJobDefinitions().hashCode()); hashCode = prime * hashCode + ((getWarmStartConfig() == null) ? 0 : getWarmStartConfig().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); return hashCode; } @Override public CreateHyperParameterTuningJobRequest clone() { return (CreateHyperParameterTuningJobRequest) super.clone(); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy