

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Detener trabajos de entrenamiento pronto
<a name="automatic-model-tuning-early-stopping"></a>

Detenga pronto los trabajos de entrenamiento que un trabajo de ajuste de hiperparámetros lanza cuando no mejoran de forma significativa de acuerdo con la métrica objetiva. Detener pronto los trabajos de entrenamiento puede ser útil para reducir el tiempo de cómputo y ayuda a evitar ajustes excesivos del modelo. Para configurar un trabajo de ajuste de hiperparámetros para detener los trabajos de entrenamiento pronto, realice una de las siguientes operaciones:
+ Si utilizas el AWS SDK para Python (Boto3), establece el `TrainingJobEarlyStoppingType` campo del [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HyperParameterTuningJobConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HyperParameterTuningJobConfig.html)objeto en el que vas a configurar el trabajo de ajuste. `AUTO`
+ Si utiliza el [SDK de Amazon SageMaker Python](https://sagemaker.readthedocs.io/en/stable), defina el `early_stopping_type` parámetro del [HyperParameterTuner](https://sagemaker.readthedocs.io/en/stable/tuner.html)objeto en`Auto`.
+ En la consola Amazon SageMaker AI, en el flujo de trabajo **Crear un trabajo de ajuste de hiperparámetros**, en **Parada temprana**, elija **Automático**.

****Para ver un ejemplo de bloc de notas que muestre cómo utilizar la parada temprana, consulte [https://github.com/awslabs/amazon-sagemaker-examples/blob/master/hyperparameter\$1tuning/image\$1classification\$1early\$1stopping/hpo\$1image\$1classification\$1early\$1stopping.ipynb](https://github.com/awslabs/amazon-sagemaker-examples/blob/master/hyperparameter_tuning/image_classification_early_stopping/hpo_image_classification_early_stopping.ipynb) o abra el cuaderno en la sección Ajuste de hiperparámetros de la sección de ejemplos de IA en una instancia de bloc de notas. `hpo_image_classification_early_stopping.ipynb` SageMaker ****

## Cómo funciona la detención precoz
<a name="automatic-tuning-early-stop-how"></a>

Al activar la interrupción temprana de un trabajo de ajuste de hiperparámetros, la IA evalúa cada trabajo de entrenamiento que se inicie con el trabajo de ajuste de hiperparámetros de la siguiente manera: SageMaker 
+ Después de cada fecha de inicio de entrenamiento, obtiene el valor de la métrica objetiva.
+ Calcula el promedio de ejecución de la métrica objetiva de todos los trabajos de entrenamiento anteriores hasta la misma fecha de inicio y, a continuación, calcula la media de todos los promedios en ejecución.
+ Si el valor de la métrica objetivo para el trabajo de formación actual es peor (más alto al minimizar o más bajo al maximizar la métrica objetivo) que el valor medio de las medias acumuladas de la métrica objetivo para trabajos de formación anteriores realizados hasta la misma época, la SageMaker IA detiene el trabajo de formación actual.

## Algoritmos que admiten la detención precoz
<a name="automatic-tuning-early-stopping-algos"></a>

Para admitir la detención precoz, un algoritmo debe emitir métricas objetivas para cada fecha de inicio. Los siguientes algoritmos de SageMaker IA integrados permiten detener prematuramente el sistema:
+ [LightGBM](lightgbm.md)
+ [CatBoost](catboost.md)
+ [AutoGluon-Tabular](autogluon-tabular.md)
+ [TabTransformer](tabtransformer.md)
+ [Algoritmo de aprendizaje lineal](linear-learner.md): solo se admite si se utiliza `objective_loss` como métrica objetiva.
+ [XGBoost algoritmo con Amazon SageMaker AI](xgboost.md)
+ [Clasificación de imágenes - MXNet](image-classification.md)
+ [Detección de objetos - MXNet](object-detection.md)
+ [Sequence-to-Sequence Algoritmo](seq-2-seq.md)
+ [Información de IP](ip-insights.md)

**nota**  
Esta lista de algoritmos integrados que admiten la detención precoz está actualizada en fecha de 13 de diciembre de 2018. Más adelante probablemente haya más algoritmos integrados que admitan la detención precoz. Si un algoritmo emite una métrica que se puede utilizar como métrica objetiva para un trabajo de ajuste de hiperparámetros (preferiblemente una métrica de validación), esto significa que admite la detención precoz.

Para utilizar la detección precoz con su propio algoritmo, debe escribir sus algoritmos de modo que emitan el valor de la métrica objetiva después de cada fecha de inicio. En la siguiente lista se muestra cómo puede hacerlo en diferentes marcos de trabajo:

TensorFlow  
Utilice la clase `tf.keras.callbacks.ProgbarLogger`. Para obtener más información, consulta [tf.keras.callbacks. ProgbarLogger API.](https://www.tensorflow.org/api_docs/python/tf/keras/callbacks/ProgbarLogger)

MXNet  
Utilice la `mxnet.callback.LogValidationMetricsCallback`. Para obtener más información, consulte [ APIsmxnet.callback](https://mxnet.apache.org/versions/master/api/python/docs/api/legacy/callback/index.html).

Chainer  
Amplíe el chainer mediante la clase `extensions.Evaluator`. Para obtener más información, consulte la [API Chainer.Training.Extensions.Evaluator](https://docs.chainer.org/en/v1.24.0/reference/extensions.html#evaluator).

PyTorch y Spark  
No hay soporte de tipo general. Tiene que escribir explícitamente su código de entrenamiento de modo que calcule las métricas objetivas y las escriba en registros después de cada fecha de inicio.