Clasificación de imágenes con ResNet
Has creado el modelo a partir del ResNet18 preentrenado. Ahora es el momento de probarlo con una imagen de ejemplo.
Vas a aplicar transformaciones de preprocesamiento a una imagen y clasificarla. Deberás utilizar la capa « softmax() » seguida de « argmax() », ya que ResNet18 se ha entrenado con un conjunto de datos multiclase.
Has seleccionado la siguiente imagen para realizar la prueba de predicción:

La transformación de preprocesamiento se guarda como « preprocess ». La imagen PIL se ha subido como img.
Este ejercicio forma parte del curso
Aprendizaje profundo para imágenes con PyTorch
Instrucciones del ejercicio
- Aplica las transformaciones de preprocesamiento a la imagen y dale una nueva forma utilizando
.unsqueeze(0)para añadir la dimensión por lotes. - Pasa la imagen por el modelo, remodela la salida utilizando «
.squeeze(0)» (Reducir a una dimensión) para eliminar la dimensión por lotes y añade una capa «softmax()» (Reducir a una dimensión). - Aplica
argmax()para seleccionar la clase con mayor probabilidad.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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)