CommencerCommencer gratuitement

Évaluation d’un modèle multi-classes

Évaluons notre classificateur de nuages avec la précision et le rappel pour voir dans quelle mesure il distingue les sept types de nuages. Dans cette tâche de classification multi-classes, la manière de moyenner les scores entre classes est essentielle. Rappelez-vous qu’il existe quatre approches :

  • Sans moyenne, en analysant les résultats par classe ;
  • Micro-moyenne, en ignorant les classes et en calculant les métriques globalement ;
  • Macro-moyenne, en calculant les métriques par classe puis en les moyennant ;
  • Moyenne pondérée, comme la macro-moyenne mais avec un poids proportionnel à la taille de chaque classe.

Precision et Recall sont déjà importés depuis torchmetrics. Voyons maintenant comment se comporte notre modèle !

Cet exercice fait partie du cours

Deep learning intermédiaire avec PyTorch

Afficher le cours

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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}")
Modifier et exécuter le code