MulaiMulai sekarang secara gratis

Klasifikasi gambar dengan ResNet

Anda telah membuat model dari ResNet18 yang telah dilatih sebelumnya. Sekarang, saatnya mengujinya pada sebuah contoh gambar.

Anda akan menerapkan transformasi prapemrosesan pada sebuah gambar dan melakukan klasifikasi. Anda perlu menggunakan lapisan softmax() diikuti dengan argmax(), karena ResNet18 telah dilatih pada himpunan data multi-kelas.

Anda telah memilih gambar berikut untuk pengujian prediksi: A cup of espresso

Transformasi prapemrosesan disimpan sebagai preprocess. Gambar PIL diunggah sebagai img.

Latihan ini adalah bagian dari kursus

Deep Learning untuk Gambar dengan PyTorch

Lihat Kursus

Petunjuk latihan

  • Terapkan transformasi prapemrosesan pada gambar dan ubah bentuknya menggunakan .unsqueeze(0) untuk menambahkan dimensi batch.
  • Lewatkan gambar melalui model, ubah bentuk keluarannya menggunakan .squeeze(0) untuk menghapus dimensi batch, lalu tambahkan lapisan softmax().
  • Terapkan argmax() untuk memilih kelas dengan probabilitas tertinggi.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# 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)
Edit dan Jalankan Kode