Kom igångKom igång gratis

Bildklassificering med ResNet

Du har skapat modellen från den förtränade ResNet18. Nu är det dags att testa den på en exempelbild.

Du ska applicera förbehandlingstransformationer på en bild och klassificera den. Du behöver använda softmax()-lagret följt av argmax(), eftersom ResNet18 har tränats på en flerklass-datamängd.

Du har valt följande bild för att testa prediktionen: A cup of espresso

Förbehandlingstransformationen är sparad som preprocess. PIL-bilden är uppladdad som img.

Den här övningen är en del av kursen

Djupinlärning för bilder med PyTorch

Visa kurs

Övningsinstruktioner

  • Applicera förbehandlingstransformationerna på bilden och omforma den med .unsqueeze(0) för att lägga till batchdimensionen.
  • Skicka bilden genom modellen, omforma utdata med .squeeze(0) för att ta bort batchdimensionen, och lägg till ett softmax()-lager.
  • Applicera argmax() för att välja klassen med högst sannolikhet.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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)
Redigera och kör kod