Класифікація зображень за допомогою ResNet
Ви створили модель на основі попередньо натренованої ResNet18. Тепер час перевірити її на прикладовому зображенні.
Ви застосуєте перетворення попередньої обробки до зображення та виконаєте класифікацію. Потрібно використати шар softmax(), а потім argmax(), адже ResNet18 було натреновано на багатокласному наборі даних.
Ви обрали таке зображення для тестування передбачення:

Перетворення попередньої обробки збережено як preprocess. Зображення PIL завантажено як img.
Ця вправа є частиною курсу
Глибоке навчання для зображень із PyTorch
Інструкції до вправи
- Застосуйте перетворення попередньої обробки до зображення та змініть форму за допомогою
.unsqueeze(0), щоб додати вимір пакета (batch). - Пропустіть зображення через модель, змініть форму виходу за допомогою
.squeeze(0), щоб прибрати вимір пакета, і додайте шарsoftmax(). - Застосуйте
argmax(), щоб вибрати клас із найбільшою ймовірністю.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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)