Začněte nyníZačněte zdarma

Klasifikace obrázků pomocí ResNet

Model jsi sestavil/a z předtrénovaného ResNet18. Teď je čas otestovat ho na ukázkovém obrázku.

Na obrázek aplikuješ předzpracovací transformace a klasifikuješ ho. Budeš potřebovat vrstvu softmax() následovanou argmax(), protože ResNet18 byl natrénován na vícetrídní datové sadě.

Pro testování predikcí jsi vybral/a tento obrázek: A cup of espresso

Předzpracovací transformace je uložena jako preprocess. PIL obrázek je nahrán jako img.

Toto cvičení je součástí kurzu

Deep Learning pro obrázky s PyTorchem

Zobrazit kurz

Pokyny k cvičení

  • Aplikuj předzpracovací transformace na obrázek a uprav jeho tvar pomocí .unsqueeze(0), aby se přidala dávková dimenze.
  • Předej obrázek modelem, uprav tvar výstupu pomocí .squeeze(0) pro odstranění dávkové dimenze a přidej vrstvu softmax().
  • Použij argmax() pro výběr třídy s nejvyšší pravděpodobností.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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)
Upravit a spustit kód