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

com.amazonaws.services.sagemaker.model.HyperParameterTrainingJobDefinition 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.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;

/**
 * 

* Defines the training jobs launched by a hyperparameter tuning job. *

* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class HyperParameterTrainingJobDefinition implements Serializable, Cloneable, StructuredPojo { /** *

* The job definition name. *

*/ private String definitionName; private HyperParameterTuningJobObjective tuningObjective; private ParameterRanges hyperParameterRanges; /** *

* Specifies the values of hyperparameters that do not change for the tuning job. *

*/ private java.util.Map staticHyperParameters; /** *

* The HyperParameterAlgorithmSpecification object that specifies the resource algorithm to use for the * training jobs that the tuning job launches. *

*/ private HyperParameterAlgorithmSpecification algorithmSpecification; /** *

* The Amazon Resource Name (ARN) of the IAM role associated with the training jobs that the tuning job launches. *

*/ private String roleArn; /** *

* An array of Channel objects that specify the input for the training jobs that the tuning job launches. *

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

* The VpcConfig object that specifies the VPC that you want the training jobs that this hyperparameter * tuning job launches to connect to. Control access to and from your training container by configuring the VPC. For * more information, see Protect Training * Jobs by Using an Amazon Virtual Private Cloud. *

*/ private VpcConfig vpcConfig; /** *

* Specifies the path to the Amazon S3 bucket where you store model artifacts from the training jobs that the tuning * job launches. *

*/ private OutputDataConfig outputDataConfig; /** *

* The resources, including the compute instances and storage volumes, to use for the training jobs that the tuning * job launches. *

*

* Storage volumes store model artifacts and incremental states. Training algorithms might also use storage volumes * for scratch space. If you want Amazon SageMaker to use the storage volume to store the training data, choose * File as the TrainingInputMode in the algorithm specification. For distributed training * algorithms, specify an instance count greater than 1. *

*/ private ResourceConfig resourceConfig; /** *

* Specifies a limit to how long a model hyperparameter training job can run. It also specifies how long you are * willing to wait for a managed spot training job to complete. When the job reaches the a limit, Amazon SageMaker * ends the training job. Use this API to cap model training costs. *

*/ private StoppingCondition stoppingCondition; /** *

* Isolates the training container. No inbound or outbound network calls can be made, except for calls between peers * within a training cluster for distributed training. If network isolation is used for training jobs that are * configured to use a VPC, Amazon SageMaker downloads and uploads customer data and model artifacts through the * specified VPC, but the training container does not have network access. *

*/ private Boolean enableNetworkIsolation; /** *

* To encrypt all communications between ML compute instances in distributed training, choose True. * Encryption provides greater security for distributed training, but training might take longer. How long it takes * depends on the amount of communication between compute instances, especially if you use a deep learning algorithm * in distributed training. *

*/ private Boolean enableInterContainerTrafficEncryption; /** *

* A Boolean indicating whether managed spot training is enabled (True) or not (False). *

*/ private Boolean enableManagedSpotTraining; private CheckpointConfig checkpointConfig; /** *

* The job definition name. *

* * @param definitionName * The job definition name. */ public void setDefinitionName(String definitionName) { this.definitionName = definitionName; } /** *

* The job definition name. *

* * @return The job definition name. */ public String getDefinitionName() { return this.definitionName; } /** *

* The job definition name. *

* * @param definitionName * The job definition name. * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withDefinitionName(String definitionName) { setDefinitionName(definitionName); return this; } /** * @param tuningObjective */ public void setTuningObjective(HyperParameterTuningJobObjective tuningObjective) { this.tuningObjective = tuningObjective; } /** * @return */ public HyperParameterTuningJobObjective getTuningObjective() { return this.tuningObjective; } /** * @param tuningObjective * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withTuningObjective(HyperParameterTuningJobObjective tuningObjective) { setTuningObjective(tuningObjective); return this; } /** * @param hyperParameterRanges */ public void setHyperParameterRanges(ParameterRanges hyperParameterRanges) { this.hyperParameterRanges = hyperParameterRanges; } /** * @return */ public ParameterRanges getHyperParameterRanges() { return this.hyperParameterRanges; } /** * @param hyperParameterRanges * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withHyperParameterRanges(ParameterRanges hyperParameterRanges) { setHyperParameterRanges(hyperParameterRanges); return this; } /** *

* Specifies the values of hyperparameters that do not change for the tuning job. *

* * @return Specifies the values of hyperparameters that do not change for the tuning job. */ public java.util.Map getStaticHyperParameters() { return staticHyperParameters; } /** *

* Specifies the values of hyperparameters that do not change for the tuning job. *

* * @param staticHyperParameters * Specifies the values of hyperparameters that do not change for the tuning job. */ public void setStaticHyperParameters(java.util.Map staticHyperParameters) { this.staticHyperParameters = staticHyperParameters; } /** *

* Specifies the values of hyperparameters that do not change for the tuning job. *

* * @param staticHyperParameters * Specifies the values of hyperparameters that do not change for the tuning job. * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withStaticHyperParameters(java.util.Map staticHyperParameters) { setStaticHyperParameters(staticHyperParameters); return this; } /** * Add a single StaticHyperParameters entry * * @see HyperParameterTrainingJobDefinition#withStaticHyperParameters * @returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition addStaticHyperParametersEntry(String key, String value) { if (null == this.staticHyperParameters) { this.staticHyperParameters = new java.util.HashMap(); } if (this.staticHyperParameters.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.staticHyperParameters.put(key, value); return this; } /** * Removes all the entries added into StaticHyperParameters. * * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition clearStaticHyperParametersEntries() { this.staticHyperParameters = null; return this; } /** *

* The HyperParameterAlgorithmSpecification object that specifies the resource algorithm to use for the * training jobs that the tuning job launches. *

* * @param algorithmSpecification * The HyperParameterAlgorithmSpecification object that specifies the resource algorithm to use for * the training jobs that the tuning job launches. */ public void setAlgorithmSpecification(HyperParameterAlgorithmSpecification algorithmSpecification) { this.algorithmSpecification = algorithmSpecification; } /** *

* The HyperParameterAlgorithmSpecification object that specifies the resource algorithm to use for the * training jobs that the tuning job launches. *

* * @return The HyperParameterAlgorithmSpecification object that specifies the resource algorithm to use for * the training jobs that the tuning job launches. */ public HyperParameterAlgorithmSpecification getAlgorithmSpecification() { return this.algorithmSpecification; } /** *

* The HyperParameterAlgorithmSpecification object that specifies the resource algorithm to use for the * training jobs that the tuning job launches. *

* * @param algorithmSpecification * The HyperParameterAlgorithmSpecification object that specifies the resource algorithm to use for * the training jobs that the tuning job launches. * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withAlgorithmSpecification(HyperParameterAlgorithmSpecification algorithmSpecification) { setAlgorithmSpecification(algorithmSpecification); return this; } /** *

* The Amazon Resource Name (ARN) of the IAM role associated with the training jobs that the tuning job launches. *

* * @param roleArn * The Amazon Resource Name (ARN) of the IAM role associated with the training jobs that the tuning job * launches. */ public void setRoleArn(String roleArn) { this.roleArn = roleArn; } /** *

* The Amazon Resource Name (ARN) of the IAM role associated with the training jobs that the tuning job launches. *

* * @return The Amazon Resource Name (ARN) of the IAM role associated with the training jobs that the tuning job * launches. */ public String getRoleArn() { return this.roleArn; } /** *

* The Amazon Resource Name (ARN) of the IAM role associated with the training jobs that the tuning job launches. *

* * @param roleArn * The Amazon Resource Name (ARN) of the IAM role associated with the training jobs that the tuning job * launches. * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withRoleArn(String roleArn) { setRoleArn(roleArn); return this; } /** *

* An array of Channel objects that specify the input for the training jobs that the tuning job launches. *

* * @return An array of Channel objects that specify the input for the training jobs that the tuning job * launches. */ public java.util.List getInputDataConfig() { return inputDataConfig; } /** *

* An array of Channel objects that specify the input for the training jobs that the tuning job launches. *

* * @param inputDataConfig * An array of Channel objects that specify the input for the training jobs that the tuning job * launches. */ public void setInputDataConfig(java.util.Collection inputDataConfig) { if (inputDataConfig == null) { this.inputDataConfig = null; return; } this.inputDataConfig = new java.util.ArrayList(inputDataConfig); } /** *

* An array of Channel objects that specify the input for the training jobs that the tuning job launches. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setInputDataConfig(java.util.Collection)} or {@link #withInputDataConfig(java.util.Collection)} if you * want to override the existing values. *

* * @param inputDataConfig * An array of Channel objects that specify the input for the training jobs that the tuning job * launches. * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withInputDataConfig(Channel... inputDataConfig) { if (this.inputDataConfig == null) { setInputDataConfig(new java.util.ArrayList(inputDataConfig.length)); } for (Channel ele : inputDataConfig) { this.inputDataConfig.add(ele); } return this; } /** *

* An array of Channel objects that specify the input for the training jobs that the tuning job launches. *

* * @param inputDataConfig * An array of Channel objects that specify the input for the training jobs that the tuning job * launches. * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withInputDataConfig(java.util.Collection inputDataConfig) { setInputDataConfig(inputDataConfig); return this; } /** *

* The VpcConfig object that specifies the VPC that you want the training jobs that this hyperparameter * tuning job launches to connect to. Control access to and from your training container by configuring the VPC. For * more information, see Protect Training * Jobs by Using an Amazon Virtual Private Cloud. *

* * @param vpcConfig * The VpcConfig object that specifies the VPC that you want the training jobs that this * hyperparameter tuning job launches to connect to. Control access to and from your training container by * configuring the VPC. For more information, see Protect Training Jobs by Using an * Amazon Virtual Private Cloud. */ public void setVpcConfig(VpcConfig vpcConfig) { this.vpcConfig = vpcConfig; } /** *

* The VpcConfig object that specifies the VPC that you want the training jobs that this hyperparameter * tuning job launches to connect to. Control access to and from your training container by configuring the VPC. For * more information, see Protect Training * Jobs by Using an Amazon Virtual Private Cloud. *

* * @return The VpcConfig object that specifies the VPC that you want the training jobs that this * hyperparameter tuning job launches to connect to. Control access to and from your training container by * configuring the VPC. For more information, see Protect Training Jobs by Using an * Amazon Virtual Private Cloud. */ public VpcConfig getVpcConfig() { return this.vpcConfig; } /** *

* The VpcConfig object that specifies the VPC that you want the training jobs that this hyperparameter * tuning job launches to connect to. Control access to and from your training container by configuring the VPC. For * more information, see Protect Training * Jobs by Using an Amazon Virtual Private Cloud. *

* * @param vpcConfig * The VpcConfig object that specifies the VPC that you want the training jobs that this * hyperparameter tuning job launches to connect to. Control access to and from your training container by * configuring the VPC. For more information, see Protect Training Jobs by Using an * Amazon Virtual Private Cloud. * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withVpcConfig(VpcConfig vpcConfig) { setVpcConfig(vpcConfig); return this; } /** *

* Specifies the path to the Amazon S3 bucket where you store model artifacts from the training jobs that the tuning * job launches. *

* * @param outputDataConfig * Specifies the path to the Amazon S3 bucket where you store model artifacts from the training jobs that the * tuning job launches. */ public void setOutputDataConfig(OutputDataConfig outputDataConfig) { this.outputDataConfig = outputDataConfig; } /** *

* Specifies the path to the Amazon S3 bucket where you store model artifacts from the training jobs that the tuning * job launches. *

* * @return Specifies the path to the Amazon S3 bucket where you store model artifacts from the training jobs that * the tuning job launches. */ public OutputDataConfig getOutputDataConfig() { return this.outputDataConfig; } /** *

* Specifies the path to the Amazon S3 bucket where you store model artifacts from the training jobs that the tuning * job launches. *

* * @param outputDataConfig * Specifies the path to the Amazon S3 bucket where you store model artifacts from the training jobs that the * tuning job launches. * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withOutputDataConfig(OutputDataConfig outputDataConfig) { setOutputDataConfig(outputDataConfig); return this; } /** *

* The resources, including the compute instances and storage volumes, to use for the training jobs that the tuning * job launches. *

*

* Storage volumes store model artifacts and incremental states. Training algorithms might also use storage volumes * for scratch space. If you want Amazon SageMaker to use the storage volume to store the training data, choose * File as the TrainingInputMode in the algorithm specification. For distributed training * algorithms, specify an instance count greater than 1. *

* * @param resourceConfig * The resources, including the compute instances and storage volumes, to use for the training jobs that the * tuning job launches.

*

* Storage volumes store model artifacts and incremental states. Training algorithms might also use storage * volumes for scratch space. If you want Amazon SageMaker to use the storage volume to store the training * data, choose File as the TrainingInputMode in the algorithm specification. For * distributed training algorithms, specify an instance count greater than 1. */ public void setResourceConfig(ResourceConfig resourceConfig) { this.resourceConfig = resourceConfig; } /** *

* The resources, including the compute instances and storage volumes, to use for the training jobs that the tuning * job launches. *

*

* Storage volumes store model artifacts and incremental states. Training algorithms might also use storage volumes * for scratch space. If you want Amazon SageMaker to use the storage volume to store the training data, choose * File as the TrainingInputMode in the algorithm specification. For distributed training * algorithms, specify an instance count greater than 1. *

* * @return The resources, including the compute instances and storage volumes, to use for the training jobs that the * tuning job launches.

*

* Storage volumes store model artifacts and incremental states. Training algorithms might also use storage * volumes for scratch space. If you want Amazon SageMaker to use the storage volume to store the training * data, choose File as the TrainingInputMode in the algorithm specification. For * distributed training algorithms, specify an instance count greater than 1. */ public ResourceConfig getResourceConfig() { return this.resourceConfig; } /** *

* The resources, including the compute instances and storage volumes, to use for the training jobs that the tuning * job launches. *

*

* Storage volumes store model artifacts and incremental states. Training algorithms might also use storage volumes * for scratch space. If you want Amazon SageMaker to use the storage volume to store the training data, choose * File as the TrainingInputMode in the algorithm specification. For distributed training * algorithms, specify an instance count greater than 1. *

* * @param resourceConfig * The resources, including the compute instances and storage volumes, to use for the training jobs that the * tuning job launches.

*

* Storage volumes store model artifacts and incremental states. Training algorithms might also use storage * volumes for scratch space. If you want Amazon SageMaker to use the storage volume to store the training * data, choose File as the TrainingInputMode in the algorithm specification. For * distributed training algorithms, specify an instance count greater than 1. * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withResourceConfig(ResourceConfig resourceConfig) { setResourceConfig(resourceConfig); return this; } /** *

* Specifies a limit to how long a model hyperparameter training job can run. It also specifies how long you are * willing to wait for a managed spot training job to complete. When the job reaches the a limit, Amazon SageMaker * ends the training job. Use this API to cap model training costs. *

* * @param stoppingCondition * Specifies a limit to how long a model hyperparameter training job can run. It also specifies how long you * are willing to wait for a managed spot training job to complete. When the job reaches the a limit, Amazon * SageMaker ends the training job. Use this API to cap model training costs. */ public void setStoppingCondition(StoppingCondition stoppingCondition) { this.stoppingCondition = stoppingCondition; } /** *

* Specifies a limit to how long a model hyperparameter training job can run. It also specifies how long you are * willing to wait for a managed spot training job to complete. When the job reaches the a limit, Amazon SageMaker * ends the training job. Use this API to cap model training costs. *

* * @return Specifies a limit to how long a model hyperparameter training job can run. It also specifies how long you * are willing to wait for a managed spot training job to complete. When the job reaches the a limit, Amazon * SageMaker ends the training job. Use this API to cap model training costs. */ public StoppingCondition getStoppingCondition() { return this.stoppingCondition; } /** *

* Specifies a limit to how long a model hyperparameter training job can run. It also specifies how long you are * willing to wait for a managed spot training job to complete. When the job reaches the a limit, Amazon SageMaker * ends the training job. Use this API to cap model training costs. *

* * @param stoppingCondition * Specifies a limit to how long a model hyperparameter training job can run. It also specifies how long you * are willing to wait for a managed spot training job to complete. When the job reaches the a limit, Amazon * SageMaker ends the training job. Use this API to cap model training costs. * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withStoppingCondition(StoppingCondition stoppingCondition) { setStoppingCondition(stoppingCondition); return this; } /** *

* Isolates the training container. No inbound or outbound network calls can be made, except for calls between peers * within a training cluster for distributed training. If network isolation is used for training jobs that are * configured to use a VPC, Amazon SageMaker downloads and uploads customer data and model artifacts through the * specified VPC, but the training container does not have network access. *

* * @param enableNetworkIsolation * Isolates the training container. No inbound or outbound network calls can be made, except for calls * between peers within a training cluster for distributed training. If network isolation is used for * training jobs that are configured to use a VPC, Amazon SageMaker downloads and uploads customer data and * model artifacts through the specified VPC, but the training container does not have network access. */ public void setEnableNetworkIsolation(Boolean enableNetworkIsolation) { this.enableNetworkIsolation = enableNetworkIsolation; } /** *

* Isolates the training container. No inbound or outbound network calls can be made, except for calls between peers * within a training cluster for distributed training. If network isolation is used for training jobs that are * configured to use a VPC, Amazon SageMaker downloads and uploads customer data and model artifacts through the * specified VPC, but the training container does not have network access. *

* * @return Isolates the training container. No inbound or outbound network calls can be made, except for calls * between peers within a training cluster for distributed training. If network isolation is used for * training jobs that are configured to use a VPC, Amazon SageMaker downloads and uploads customer data and * model artifacts through the specified VPC, but the training container does not have network access. */ public Boolean getEnableNetworkIsolation() { return this.enableNetworkIsolation; } /** *

* Isolates the training container. No inbound or outbound network calls can be made, except for calls between peers * within a training cluster for distributed training. If network isolation is used for training jobs that are * configured to use a VPC, Amazon SageMaker downloads and uploads customer data and model artifacts through the * specified VPC, but the training container does not have network access. *

* * @param enableNetworkIsolation * Isolates the training container. No inbound or outbound network calls can be made, except for calls * between peers within a training cluster for distributed training. If network isolation is used for * training jobs that are configured to use a VPC, Amazon SageMaker downloads and uploads customer data and * model artifacts through the specified VPC, but the training container does not have network access. * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withEnableNetworkIsolation(Boolean enableNetworkIsolation) { setEnableNetworkIsolation(enableNetworkIsolation); return this; } /** *

* Isolates the training container. No inbound or outbound network calls can be made, except for calls between peers * within a training cluster for distributed training. If network isolation is used for training jobs that are * configured to use a VPC, Amazon SageMaker downloads and uploads customer data and model artifacts through the * specified VPC, but the training container does not have network access. *

* * @return Isolates the training container. No inbound or outbound network calls can be made, except for calls * between peers within a training cluster for distributed training. If network isolation is used for * training jobs that are configured to use a VPC, Amazon SageMaker downloads and uploads customer data and * model artifacts through the specified VPC, but the training container does not have network access. */ public Boolean isEnableNetworkIsolation() { return this.enableNetworkIsolation; } /** *

* To encrypt all communications between ML compute instances in distributed training, choose True. * Encryption provides greater security for distributed training, but training might take longer. How long it takes * depends on the amount of communication between compute instances, especially if you use a deep learning algorithm * in distributed training. *

* * @param enableInterContainerTrafficEncryption * To encrypt all communications between ML compute instances in distributed training, choose * True. Encryption provides greater security for distributed training, but training might take * longer. How long it takes depends on the amount of communication between compute instances, especially if * you use a deep learning algorithm in distributed training. */ public void setEnableInterContainerTrafficEncryption(Boolean enableInterContainerTrafficEncryption) { this.enableInterContainerTrafficEncryption = enableInterContainerTrafficEncryption; } /** *

* To encrypt all communications between ML compute instances in distributed training, choose True. * Encryption provides greater security for distributed training, but training might take longer. How long it takes * depends on the amount of communication between compute instances, especially if you use a deep learning algorithm * in distributed training. *

* * @return To encrypt all communications between ML compute instances in distributed training, choose * True. Encryption provides greater security for distributed training, but training might take * longer. How long it takes depends on the amount of communication between compute instances, especially if * you use a deep learning algorithm in distributed training. */ public Boolean getEnableInterContainerTrafficEncryption() { return this.enableInterContainerTrafficEncryption; } /** *

* To encrypt all communications between ML compute instances in distributed training, choose True. * Encryption provides greater security for distributed training, but training might take longer. How long it takes * depends on the amount of communication between compute instances, especially if you use a deep learning algorithm * in distributed training. *

* * @param enableInterContainerTrafficEncryption * To encrypt all communications between ML compute instances in distributed training, choose * True. Encryption provides greater security for distributed training, but training might take * longer. How long it takes depends on the amount of communication between compute instances, especially if * you use a deep learning algorithm in distributed training. * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withEnableInterContainerTrafficEncryption(Boolean enableInterContainerTrafficEncryption) { setEnableInterContainerTrafficEncryption(enableInterContainerTrafficEncryption); return this; } /** *

* To encrypt all communications between ML compute instances in distributed training, choose True. * Encryption provides greater security for distributed training, but training might take longer. How long it takes * depends on the amount of communication between compute instances, especially if you use a deep learning algorithm * in distributed training. *

* * @return To encrypt all communications between ML compute instances in distributed training, choose * True. Encryption provides greater security for distributed training, but training might take * longer. How long it takes depends on the amount of communication between compute instances, especially if * you use a deep learning algorithm in distributed training. */ public Boolean isEnableInterContainerTrafficEncryption() { return this.enableInterContainerTrafficEncryption; } /** *

* A Boolean indicating whether managed spot training is enabled (True) or not (False). *

* * @param enableManagedSpotTraining * A Boolean indicating whether managed spot training is enabled (True) or not ( * False). */ public void setEnableManagedSpotTraining(Boolean enableManagedSpotTraining) { this.enableManagedSpotTraining = enableManagedSpotTraining; } /** *

* A Boolean indicating whether managed spot training is enabled (True) or not (False). *

* * @return A Boolean indicating whether managed spot training is enabled (True) or not ( * False). */ public Boolean getEnableManagedSpotTraining() { return this.enableManagedSpotTraining; } /** *

* A Boolean indicating whether managed spot training is enabled (True) or not (False). *

* * @param enableManagedSpotTraining * A Boolean indicating whether managed spot training is enabled (True) or not ( * False). * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withEnableManagedSpotTraining(Boolean enableManagedSpotTraining) { setEnableManagedSpotTraining(enableManagedSpotTraining); return this; } /** *

* A Boolean indicating whether managed spot training is enabled (True) or not (False). *

* * @return A Boolean indicating whether managed spot training is enabled (True) or not ( * False). */ public Boolean isEnableManagedSpotTraining() { return this.enableManagedSpotTraining; } /** * @param checkpointConfig */ public void setCheckpointConfig(CheckpointConfig checkpointConfig) { this.checkpointConfig = checkpointConfig; } /** * @return */ public CheckpointConfig getCheckpointConfig() { return this.checkpointConfig; } /** * @param checkpointConfig * @return Returns a reference to this object so that method calls can be chained together. */ public HyperParameterTrainingJobDefinition withCheckpointConfig(CheckpointConfig checkpointConfig) { setCheckpointConfig(checkpointConfig); 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 (getDefinitionName() != null) sb.append("DefinitionName: ").append(getDefinitionName()).append(","); if (getTuningObjective() != null) sb.append("TuningObjective: ").append(getTuningObjective()).append(","); if (getHyperParameterRanges() != null) sb.append("HyperParameterRanges: ").append(getHyperParameterRanges()).append(","); if (getStaticHyperParameters() != null) sb.append("StaticHyperParameters: ").append(getStaticHyperParameters()).append(","); if (getAlgorithmSpecification() != null) sb.append("AlgorithmSpecification: ").append(getAlgorithmSpecification()).append(","); if (getRoleArn() != null) sb.append("RoleArn: ").append(getRoleArn()).append(","); if (getInputDataConfig() != null) sb.append("InputDataConfig: ").append(getInputDataConfig()).append(","); if (getVpcConfig() != null) sb.append("VpcConfig: ").append(getVpcConfig()).append(","); if (getOutputDataConfig() != null) sb.append("OutputDataConfig: ").append(getOutputDataConfig()).append(","); if (getResourceConfig() != null) sb.append("ResourceConfig: ").append(getResourceConfig()).append(","); if (getStoppingCondition() != null) sb.append("StoppingCondition: ").append(getStoppingCondition()).append(","); if (getEnableNetworkIsolation() != null) sb.append("EnableNetworkIsolation: ").append(getEnableNetworkIsolation()).append(","); if (getEnableInterContainerTrafficEncryption() != null) sb.append("EnableInterContainerTrafficEncryption: ").append(getEnableInterContainerTrafficEncryption()).append(","); if (getEnableManagedSpotTraining() != null) sb.append("EnableManagedSpotTraining: ").append(getEnableManagedSpotTraining()).append(","); if (getCheckpointConfig() != null) sb.append("CheckpointConfig: ").append(getCheckpointConfig()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof HyperParameterTrainingJobDefinition == false) return false; HyperParameterTrainingJobDefinition other = (HyperParameterTrainingJobDefinition) obj; if (other.getDefinitionName() == null ^ this.getDefinitionName() == null) return false; if (other.getDefinitionName() != null && other.getDefinitionName().equals(this.getDefinitionName()) == false) return false; if (other.getTuningObjective() == null ^ this.getTuningObjective() == null) return false; if (other.getTuningObjective() != null && other.getTuningObjective().equals(this.getTuningObjective()) == false) return false; if (other.getHyperParameterRanges() == null ^ this.getHyperParameterRanges() == null) return false; if (other.getHyperParameterRanges() != null && other.getHyperParameterRanges().equals(this.getHyperParameterRanges()) == false) return false; if (other.getStaticHyperParameters() == null ^ this.getStaticHyperParameters() == null) return false; if (other.getStaticHyperParameters() != null && other.getStaticHyperParameters().equals(this.getStaticHyperParameters()) == false) return false; if (other.getAlgorithmSpecification() == null ^ this.getAlgorithmSpecification() == null) return false; if (other.getAlgorithmSpecification() != null && other.getAlgorithmSpecification().equals(this.getAlgorithmSpecification()) == false) return false; if (other.getRoleArn() == null ^ this.getRoleArn() == null) return false; if (other.getRoleArn() != null && other.getRoleArn().equals(this.getRoleArn()) == false) return false; if (other.getInputDataConfig() == null ^ this.getInputDataConfig() == null) return false; if (other.getInputDataConfig() != null && other.getInputDataConfig().equals(this.getInputDataConfig()) == false) return false; if (other.getVpcConfig() == null ^ this.getVpcConfig() == null) return false; if (other.getVpcConfig() != null && other.getVpcConfig().equals(this.getVpcConfig()) == false) return false; if (other.getOutputDataConfig() == null ^ this.getOutputDataConfig() == null) return false; if (other.getOutputDataConfig() != null && other.getOutputDataConfig().equals(this.getOutputDataConfig()) == false) return false; if (other.getResourceConfig() == null ^ this.getResourceConfig() == null) return false; if (other.getResourceConfig() != null && other.getResourceConfig().equals(this.getResourceConfig()) == false) return false; if (other.getStoppingCondition() == null ^ this.getStoppingCondition() == null) return false; if (other.getStoppingCondition() != null && other.getStoppingCondition().equals(this.getStoppingCondition()) == false) return false; if (other.getEnableNetworkIsolation() == null ^ this.getEnableNetworkIsolation() == null) return false; if (other.getEnableNetworkIsolation() != null && other.getEnableNetworkIsolation().equals(this.getEnableNetworkIsolation()) == false) return false; if (other.getEnableInterContainerTrafficEncryption() == null ^ this.getEnableInterContainerTrafficEncryption() == null) return false; if (other.getEnableInterContainerTrafficEncryption() != null && other.getEnableInterContainerTrafficEncryption().equals(this.getEnableInterContainerTrafficEncryption()) == false) return false; if (other.getEnableManagedSpotTraining() == null ^ this.getEnableManagedSpotTraining() == null) return false; if (other.getEnableManagedSpotTraining() != null && other.getEnableManagedSpotTraining().equals(this.getEnableManagedSpotTraining()) == false) return false; if (other.getCheckpointConfig() == null ^ this.getCheckpointConfig() == null) return false; if (other.getCheckpointConfig() != null && other.getCheckpointConfig().equals(this.getCheckpointConfig()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getDefinitionName() == null) ? 0 : getDefinitionName().hashCode()); hashCode = prime * hashCode + ((getTuningObjective() == null) ? 0 : getTuningObjective().hashCode()); hashCode = prime * hashCode + ((getHyperParameterRanges() == null) ? 0 : getHyperParameterRanges().hashCode()); hashCode = prime * hashCode + ((getStaticHyperParameters() == null) ? 0 : getStaticHyperParameters().hashCode()); hashCode = prime * hashCode + ((getAlgorithmSpecification() == null) ? 0 : getAlgorithmSpecification().hashCode()); hashCode = prime * hashCode + ((getRoleArn() == null) ? 0 : getRoleArn().hashCode()); hashCode = prime * hashCode + ((getInputDataConfig() == null) ? 0 : getInputDataConfig().hashCode()); hashCode = prime * hashCode + ((getVpcConfig() == null) ? 0 : getVpcConfig().hashCode()); hashCode = prime * hashCode + ((getOutputDataConfig() == null) ? 0 : getOutputDataConfig().hashCode()); hashCode = prime * hashCode + ((getResourceConfig() == null) ? 0 : getResourceConfig().hashCode()); hashCode = prime * hashCode + ((getStoppingCondition() == null) ? 0 : getStoppingCondition().hashCode()); hashCode = prime * hashCode + ((getEnableNetworkIsolation() == null) ? 0 : getEnableNetworkIsolation().hashCode()); hashCode = prime * hashCode + ((getEnableInterContainerTrafficEncryption() == null) ? 0 : getEnableInterContainerTrafficEncryption().hashCode()); hashCode = prime * hashCode + ((getEnableManagedSpotTraining() == null) ? 0 : getEnableManagedSpotTraining().hashCode()); hashCode = prime * hashCode + ((getCheckpointConfig() == null) ? 0 : getCheckpointConfig().hashCode()); return hashCode; } @Override public HyperParameterTrainingJobDefinition clone() { try { return (HyperParameterTrainingJobDefinition) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.sagemaker.model.transform.HyperParameterTrainingJobDefinitionMarshaller.getInstance().marshall(this, protocolMarshaller); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy