ComenzarEmpieza gratis

Poner el modelo en modo de evaluación

Ya puedes poner tu modelo de lenguaje en modo de evaluación. Si el modelo no está en modo de evaluación durante la inferencia, capas como batch normalization y dropout modificarán su comportamiento y producirán una calidad de traducción inconsistente. ¡Construye el bucle para evaluar el modelo!

Se han precargado algunos datos: model, eval_dataloader, accelerator y metric.

Este ejercicio forma parte del curso

Entrenamiento eficiente de modelos de IA con PyTorch

Ver curso

Instrucciones del ejercicio

  • Pon el modelo en modo de evaluación antes de iterar por los lotes del conjunto de datos.
  • Agrega predictions y labels entre dispositivos para calcular las métricas de evaluación con el método .gather_for_metrics() de Accelerator.
  • Calcula la métrica de evaluación al final.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

metric = evaluate.load("glue", "mrpc")

# Set the model in evaluation mode
____.____()
for step, batch in enumerate(eval_dataloader):
    with torch.no_grad():
        outputs = model(**batch)
    predictions = outputs.logits.argmax(dim=-1)
    # Aggregate values across devices
    predictions, references = ____.____((predictions, batch["labels"]))
    metric.add_batch(predictions=predictions, references=references)
# Compute the evaluation metric
eval_metric = metric.____()
print(eval_metric)
Editar y ejecutar código