Evaluación de modelos multiclase
Evaluemos nuestro clasificador de nubes con precisión y recuerdo para ver lo bien que puede clasificar los siete tipos de nubes. En esta tarea de clasificación multiclase es importante cómo se promedian las puntuaciones entre las clases. Recuerda que hay cuatro enfoques:
- Sin promediar y con el análisis de los resultados por clase.
- Con micropromedio, se ignoran las clases y se calculan las métricas globalmente.
- Con macropromedio, se calculan las métricas por clase y se promedian.
- Con promedio ponderado, igual que el macro, pero con el promedio ponderado por el tamaño de la clase.
Tanto Precision
como Recall
ya están importados de torchmetrics
. ¡Es hora de ver lo bien que va nuestro modelo!
Este ejercicio forma parte del curso
Aprendizaje profundo intermedio con PyTorch
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Define metrics
metric_precision = Precision(task=____, num_classes=____, average=____)
metric_recall = ____
net.eval()
with torch.no_grad():
for images, labels in dataloader_test:
outputs = net(images)
_, preds = torch.max(outputs, 1)
metric_precision(preds, labels)
metric_recall(preds, labels)
precision = metric_precision.compute()
recall = metric_recall.compute()
print(f"Precision: {precision}")
print(f"Recall: {recall}")