Analyser les métriques par classe
Même si les métriques agrégées donnent une bonne idée des performances du modèle, il est souvent utile d’examiner les métriques par classe. Cela peut révéler des classes pour lesquelles le modèle est moins performant.
Dans cet exercice, vous allez relancer la boucle d’évaluation pour obtenir la précision de notre classificateur de nuages, cette fois-ci par classe. Ensuite, vous associerez ces scores aux noms de classes pour les interpréter. Comme d’habitude, Precision a déjà été importé pour vous. Bonne chance !
Cet exercice fait partie du cours
Deep learning intermédiaire avec PyTorch
Instructions
- Définissez une métrique de précision adaptée à des résultats par classe.
- Calculez la précision par classe en complétant la compréhension de dictionnaire, en itérant sur
.items()de l’attribut.class_to_idxdedataset_test.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Define precision metric
metric_precision = Precision(
____, ____, ____
)
net.eval()
with torch.no_grad():
for images, labels in dataloader_test:
outputs = net(images)
_, preds = torch.max(outputs, 1)
metric_precision(preds, labels)
precision = metric_precision.compute()
# Get precision per class
precision_per_class = {
k: ____[____].____
for k, v
in ____
}
print(precision_per_class)