CommencezCommencez gratuitement

Classification d'images avec ResNet

Vous avez créé le modèle à partir de ResNet18 préentraîné. Il est maintenant temps de le tester sur une image d'exemple.

Vous allez appliquer des transformations de prétraitement à une image et la classer. Vous devrez utiliser la couche softmax() suivie de argmax(), puisque ResNet18 a été entraîné sur un jeu de données multiclasse.

Vous avez choisi l'image suivante pour tester la prédiction : A cup of espresso

La transformation de prétraitement est enregistrée sous preprocess. L'image PIL est importée sous img.

Cette activité fait partie du cours

Deep Learning pour les images avec PyTorch

Voir le cours

Instructions de l’exercice

  • Appliquez les transformations de prétraitement à l'image et remodelez-la avec .unsqueeze(0) pour ajouter la dimension lot.
  • Faites passer l'image dans le modèle, remodelez la sortie avec .squeeze(0) pour retirer la dimension lot, puis ajoutez une couche softmax().
  • Appliquez argmax() pour sélectionner la classe ayant la plus grande probabilité.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Apply preprocessing transforms
batch = ____.____

# Apply model with softmax layer
prediction = ____.____.____

# Apply argmax
class_id = prediction.____.item()
score = prediction[class_id].item()
category_name = weights.meta["categories"][class_id]
print(category_name)
Modifier et exécuter le code