ComeçarComece de graça

Classificação de imagens com ResNet

Você criou o modelo a partir do ResNet18 pré-treinado. Agora é hora de testá-lo em uma imagem de exemplo.

Você vai aplicar transformações de pré-processamento a uma imagem e classificá-la. Será necessário usar a camada softmax() seguida de argmax(), já que o ResNet18 foi treinado em um conjunto de dados multiclasse.

Você selecionou a seguinte imagem para testes de predição: A cup of espresso

A transformação de pré-processamento está salva como preprocess. A imagem PIL foi carregada como img.

Este exercício faz parte do curso

Deep Learning para Imagens com PyTorch

Ver curso

Instruções do exercício

  • Aplique as transformações de pré-processamento à imagem e reestruture-a usando .unsqueeze(0) para adicionar a dimensão de batch.
  • Passe a imagem pelo modelo, reestruture a saída usando .squeeze(0) para remover a dimensão de batch e adicione uma camada softmax().
  • Aplique argmax() para selecionar a classe com maior probabilidade.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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)
Editar e executar o código