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 :

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
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 couchesoftmax(). - 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)