/* * Copyright 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. */ /* * Do not modify this file. This file is generated from the sagemaker-2017-07-24.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.SageMaker.Model { /// <summary> /// Defines the input needed to run a training job using the algorithm. /// </summary> public partial class TrainingJobDefinition { private Dictionary<string, string> _hyperParameters = new Dictionary<string, string>(); private List<Channel> _inputDataConfig = new List<Channel>(); private OutputDataConfig _outputDataConfig; private ResourceConfig _resourceConfig; private StoppingCondition _stoppingCondition; private TrainingInputMode _trainingInputMode; /// <summary> /// Gets and sets the property HyperParameters. /// <para> /// The hyperparameters used for the training job. /// </para> /// </summary> [AWSProperty(Min=0, Max=100)] public Dictionary<string, string> HyperParameters { get { return this._hyperParameters; } set { this._hyperParameters = value; } } // Check to see if HyperParameters property is set internal bool IsSetHyperParameters() { return this._hyperParameters != null && this._hyperParameters.Count > 0; } /// <summary> /// Gets and sets the property InputDataConfig. /// <para> /// An array of <code>Channel</code> objects, each of which specifies an input source. /// </para> /// </summary> [AWSProperty(Required=true, Min=1, Max=20)] public List<Channel> InputDataConfig { get { return this._inputDataConfig; } set { this._inputDataConfig = value; } } // Check to see if InputDataConfig property is set internal bool IsSetInputDataConfig() { return this._inputDataConfig != null && this._inputDataConfig.Count > 0; } /// <summary> /// Gets and sets the property OutputDataConfig. /// <para> /// the path to the S3 bucket where you want to store model artifacts. SageMaker creates /// subfolders for the artifacts. /// </para> /// </summary> [AWSProperty(Required=true)] public OutputDataConfig OutputDataConfig { get { return this._outputDataConfig; } set { this._outputDataConfig = value; } } // Check to see if OutputDataConfig property is set internal bool IsSetOutputDataConfig() { return this._outputDataConfig != null; } /// <summary> /// Gets and sets the property ResourceConfig. /// <para> /// The resources, including the ML compute instances and ML storage volumes, to use for /// model training. /// </para> /// </summary> [AWSProperty(Required=true)] public ResourceConfig ResourceConfig { get { return this._resourceConfig; } set { this._resourceConfig = value; } } // Check to see if ResourceConfig property is set internal bool IsSetResourceConfig() { return this._resourceConfig != null; } /// <summary> /// Gets and sets the property StoppingCondition. /// <para> /// 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, /// SageMaker ends the training job. Use this API to cap model training costs. /// </para> /// /// <para> /// To stop a job, 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. /// </para> /// </summary> [AWSProperty(Required=true)] public StoppingCondition StoppingCondition { get { return this._stoppingCondition; } set { this._stoppingCondition = value; } } // Check to see if StoppingCondition property is set internal bool IsSetStoppingCondition() { return this._stoppingCondition != null; } /// <summary> /// Gets and sets the property TrainingInputMode. /// </summary> [AWSProperty(Required=true)] public TrainingInputMode TrainingInputMode { get { return this._trainingInputMode; } set { this._trainingInputMode = value; } } // Check to see if TrainingInputMode property is set internal bool IsSetTrainingInputMode() { return this._trainingInputMode != null; } } }