CommencerCommencer 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(), car ResNet18 a été entraîné sur un jeu de données multi-classes.

Vous avez sélectionné l’image suivante pour le test de prédiction : A cup of espresso

La transformation de prétraitement est enregistrée sous preprocess. L’image PIL est chargée dans img.

Cet exercice fait partie du cours

Deep Learning pour l’image avec PyTorch

Afficher le cours

Instructions

  • Appliquez les transformations de prétraitement à l’image et redimensionnez-la avec .unsqueeze(0) pour ajouter la dimension batch.
  • Faites passer l’image dans le modèle, redimensionnez la sortie avec .squeeze(0) pour supprimer la dimension batch, et ajoutez une couche softmax().
  • Appliquez argmax() pour sélectionner la classe avec la probabilité la plus élevée.

Exercice interactif pratique

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

# 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