class Aws::SageMaker::Types::TrainingJob

Contains information about a training job.

@!attribute [rw] training_job_name

The name of the training job.
@return [String]

@!attribute [rw] training_job_arn

The Amazon Resource Name (ARN) of the training job.
@return [String]

@!attribute [rw] tuning_job_arn

The Amazon Resource Name (ARN) of the associated hyperparameter
tuning job if the training job was launched by a hyperparameter
tuning job.
@return [String]

@!attribute [rw] labeling_job_arn

The Amazon Resource Name (ARN) of the labeling job.
@return [String]

@!attribute [rw] auto_ml_job_arn

The Amazon Resource Name (ARN) of the job.
@return [String]

@!attribute [rw] model_artifacts

Information about the Amazon S3 location that is configured for
storing model artifacts.
@return [Types::ModelArtifacts]

@!attribute [rw] training_job_status

The status of the training job.

Training job statuses are:

* `InProgress` - The training is in progress.

* `Completed` - The training job has completed.

* `Failed` - The training job has failed. To see the reason for the
  failure, see the `FailureReason` field in the response to a
  `DescribeTrainingJobResponse` call.

* `Stopping` - The training job is stopping.

* `Stopped` - The training job has stopped.

For more detailed information, see `SecondaryStatus`.
@return [String]

@!attribute [rw] secondary_status

Provides detailed information about the state of the training job.
For detailed information about the secondary status of the training
job, see `StatusMessage` under SecondaryStatusTransition.

Amazon SageMaker provides primary statuses and secondary statuses
that apply to each of them:

InProgress
: * `Starting` - Starting the training job.

  * `Downloading` - An optional stage for algorithms that support
    `File` training input mode. It indicates that data is being
    downloaded to the ML storage volumes.

  * `Training` - Training is in progress.

  * `Uploading` - Training is complete and the model artifacts are
    being uploaded to the S3 location.

Completed
: * `Completed` - The training job has completed.

  ^

Failed
: * `Failed` - The training job has failed. The reason for the
    failure is returned in the `FailureReason` field of
    `DescribeTrainingJobResponse`.

  ^

Stopped
: * `MaxRuntimeExceeded` - The job stopped because it exceeded the
    maximum allowed runtime.

  * `Stopped` - The training job has stopped.

Stopping
: * `Stopping` - Stopping the training job.

  ^

Valid values for `SecondaryStatus` are subject to change.

We no longer support the following secondary statuses:

* `LaunchingMLInstances`

* `PreparingTrainingStack`

* `DownloadingTrainingImage`
@return [String]

@!attribute [rw] failure_reason

If the training job failed, the reason it failed.
@return [String]

@!attribute [rw] hyper_parameters

Algorithm-specific parameters.
@return [Hash<String,String>]

@!attribute [rw] algorithm_specification

Information about the algorithm used for training, and algorithm
metadata.
@return [Types::AlgorithmSpecification]

@!attribute [rw] role_arn

The Amazon Web Services Identity and Access Management (IAM) role
configured for the training job.
@return [String]

@!attribute [rw] input_data_config

An array of `Channel` objects that describes each data input
channel.
@return [Array<Types::Channel>]

@!attribute [rw] output_data_config

The S3 path where model artifacts that you configured when creating
the job are stored. Amazon SageMaker creates subfolders for model
artifacts.
@return [Types::OutputDataConfig]

@!attribute [rw] resource_config

Resources, including ML compute instances and ML storage volumes,
that are configured for model training.
@return [Types::ResourceConfig]

@!attribute [rw] vpc_config

A VpcConfig object that specifies the VPC that this training job has
access to. For more information, see [Protect Training Jobs by Using
an Amazon Virtual Private Cloud][1].

[1]: https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html
@return [Types::VpcConfig]

@!attribute [rw] stopping_condition

Specifies a limit to how long a model training job can run. It also
specifies how long a managed Spot training job has to complete. When
the job reaches the time limit, Amazon SageMaker ends the training
job. Use this API to cap model training costs.

To stop a job, Amazon SageMaker sends the algorithm the `SIGTERM`
signal, which delays job termination for 120 seconds. Algorithms can
use this 120-second window to save the model artifacts, so the
results of training are not lost.
@return [Types::StoppingCondition]

@!attribute [rw] creation_time

A timestamp that indicates when the training job was created.
@return [Time]

@!attribute [rw] training_start_time

Indicates the time when the training job starts on training
instances. You are billed for the time interval between this time
and the value of `TrainingEndTime`. The start time in CloudWatch
Logs might be later than this time. The difference is due to the
time it takes to download the training data and to the size of the
training container.
@return [Time]

@!attribute [rw] training_end_time

Indicates the time when the training job ends on training instances.
You are billed for the time interval between the value of
`TrainingStartTime` and this time. For successful jobs and stopped
jobs, this is the time after model artifacts are uploaded. For
failed jobs, this is the time when Amazon SageMaker detects a job
failure.
@return [Time]

@!attribute [rw] last_modified_time

A timestamp that indicates when the status of the training job was
last modified.
@return [Time]

@!attribute [rw] secondary_status_transitions

A history of all of the secondary statuses that the training job has
transitioned through.
@return [Array<Types::SecondaryStatusTransition>]

@!attribute [rw] final_metric_data_list

A list of final metric values that are set when the training job
completes. Used only if the training job was configured to use
metrics.
@return [Array<Types::MetricData>]

@!attribute [rw] enable_network_isolation

If the `TrainingJob` was created with network isolation, the value
is set to `true`. If network isolation is enabled, nodes can't
communicate beyond the VPC they run in.
@return [Boolean]

@!attribute [rw] enable_inter_container_traffic_encryption

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 [Boolean]

@!attribute [rw] enable_managed_spot_training

When true, enables managed spot training using Amazon EC2 Spot
instances to run training jobs instead of on-demand instances. For
more information, see [Managed Spot Training][1].

[1]: https://docs.aws.amazon.com/sagemaker/latest/dg/model-managed-spot-training.html
@return [Boolean]

@!attribute [rw] checkpoint_config

Contains information about the output location for managed spot
training checkpoint data.
@return [Types::CheckpointConfig]

@!attribute [rw] training_time_in_seconds

The training time in seconds.
@return [Integer]

@!attribute [rw] billable_time_in_seconds

The billable time in seconds.
@return [Integer]

@!attribute [rw] debug_hook_config

Configuration information for the Debugger hook parameters, metric
and tensor collections, and storage paths. To learn more about how
to configure the `DebugHookConfig` parameter, see [Use the SageMaker
and Debugger Configuration API Operations to Create, Update, and
Debug Your Training Job][1].

[1]: https://docs.aws.amazon.com/sagemaker/latest/dg/debugger-createtrainingjob-api.html
@return [Types::DebugHookConfig]

@!attribute [rw] experiment_config

Associates a SageMaker job as a trial component with an experiment
and trial. Specified when you call the following APIs:

* CreateProcessingJob

* CreateTrainingJob

* CreateTransformJob
@return [Types::ExperimentConfig]

@!attribute [rw] debug_rule_configurations

Information about the debug rule configuration.
@return [Array<Types::DebugRuleConfiguration>]

@!attribute [rw] tensor_board_output_config

Configuration of storage locations for the Debugger TensorBoard
output data.
@return [Types::TensorBoardOutputConfig]

@!attribute [rw] debug_rule_evaluation_statuses

Information about the evaluation status of the rules for the
training job.
@return [Array<Types::DebugRuleEvaluationStatus>]

@!attribute [rw] environment

The environment variables to set in the Docker container.
@return [Hash<String,String>]

@!attribute [rw] retry_strategy

The number of times to retry the job when the job fails due to an
`InternalServerError`.
@return [Types::RetryStrategy]

@!attribute [rw] tags

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

[1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
@return [Array<Types::Tag>]

@see docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/TrainingJob AWS API Documentation

Constants

SENSITIVE