IniziaInizia gratis

Classificazione di immagini con ResNet

Hai creato il modello a partire da ResNet18 pre-addestrata. Ora è il momento di testarlo su un'immagine di esempio.

Applicherai le trasformazioni di preprocessing a un'immagine e la classificherai. Dovrai usare il livello softmax() seguito da argmax(), dato che ResNet18 è stata addestrata su un insieme di dati multi-class.

Hai selezionato la seguente immagine per il test di previsione: A cup of espresso

La trasformazione di preprocessing è salvata come preprocess. L'immagine PIL è caricata come img.

Questo esercizio fa parte del corso

Deep Learning per Immagini con PyTorch

Visualizza il corso

Istruzioni dell'esercizio

  • Applica le trasformazioni di preprocessing all'immagine e ridimensionala usando .unsqueeze(0) per aggiungere la dimensione del batch.
  • Passa l'immagine attraverso il modello, ridimensiona l'output usando .squeeze(0) per rimuovere la dimensione del batch e aggiungi un livello softmax().
  • Applica argmax() per selezionare la classe con probabilità più alta.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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)
Modifica ed esegui il codice