Aan de slagGa gratis aan de slag

Evaluatie van een multiclass-model

Laten we onze wolken-classifier evalueren met precision en recall om te zien hoe goed hij de zeven wolkentypen kan classificeren. Bij deze multiclass-classificatietaak is het belangrijk hoe je de scores over de klassen gemiddeld. Er zijn vier manieren:

  • Niet middelen en de resultaten per klasse analyseren;
  • Micro-gemiddelde: de klassen negeren en de metrics globaal berekenen;
  • Macro-gemiddelde: metrics per klasse berekenen en die middelen;
  • Gewogen gemiddelde: zoals macro, maar dan met een gemiddelde gewogen naar klassengrootte.

Zowel Precision als Recall zijn al geïmporteerd uit torchmetrics. Tijd om te zien hoe goed ons model presteert!

Deze oefening maakt deel uit van de cursus

Gevorderde Deep Learning met PyTorch

Cursus bekijken

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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}")
Code bewerken en uitvoeren