Path: blob/master/site/es-419/guide/migrate/evaluator.ipynb
25118 views
Copyright 2021 The TensorFlow Authors.
Cómo migrar la evaluación
La evaluación es una parte fundamental de los modelos de medición y evaluación comparativa.
En esta guía se muestra cómo migrar tareas evaluadoras de TensorFlow 1 a TensorFlow 2. En Tensorflow 1 esta funcionalidad se implementa mediante tf.estimator.train_and_evaluate
, cuando la API se ejecuta de forma distribuida. En Tensorflow 2, puede utilizar el tf.keras.utils.SidecarEvaluator
incorporado, o un bucle de evaluación personalizado en la tarea del evaluador.
Hay opciones simples de evaluación en serie tanto en TensorFlow 1 (tf.estimator.Estimator.evaluate
) como en TensorFlow 2 (Model.fit(..., validation_data=(...))
o Model.evaluate
). La tarea del evaluador es preferible cuando desea que sus trabajadores no cambien entre entrenamiento y evaluación, y la evaluación integrada en Model.fit
es preferible cuando desea que su evaluación sea distribuida.
Preparación
TensorFlow 1: Evaluación con tf.estimator.train_and_evaluate
En TensorFlow 1, puede configurar un tf.estimator
para evaluar el estimador utilizando tf.estimator.train_and_evaluate
.
En este ejemplo, comience por definir el tf.estimator.Estimator
y especifique las especificaciones de entrenamiento y evaluación:
Posteriormente, entrene y evalúe el modelo. La evaluación se ejecuta de forma sincrónica entre el entrenamiento porque está limitada como una ejecución local en este cuaderno y alterna entre el entrenamiento y la evaluación. Sin embargo, si el estimador se utiliza de forma distribuida, el evaluador se ejecutará como una tarea de evaluación dedicada. Para obtener más información, consulte la guía de migración sobre entrenamiento distribuido.
TensorFlow 2: Evaluación de un modelo de Keras
En TensorFlow 2, si utiliza la API de Keras Model.fit
de la API para el entrenamiento, podrá evaluar el modelo con tf.keras.utils.SidecarEvaluator
. También puede visualizar las métricas de evaluación en TensorBoard, lo cual no se muestra en esta guía.
Para demostrarlo, empezaremos por definir y entrenar el modelo:
Después, evalúa el modelo usando tf.keras.utils.SidecarEvaluator
. En el entrenamiento real, se recomienda utilizar un trabajo separado para llevar a cabo la evaluación para liberar recursos de los trabajadores para el entrenamiento.
Siguientes pasos
Para obtener más información sobre la evaluación sidecar considere leer el
tf.keras.utils.SidecarEvaluator
de los documentos de la API.Para considerar la alternancia entre entrenamiento y evaluación en Keras considere leer sobre otros métodos incorporados.