Avaliação do modelo
Com o loop de treinamento resolvido, você treinou o modelo por 1000 épocas e ele está disponível para você como net
. Você também configurou um test_dataloader
exatamente da mesma forma que fez com train_dataloader
anteriormente, apenas lendo os dados do diretório de teste em vez do diretório de treinamento.
Agora você pode avaliar o modelo em dados de teste. Para fazer isso, você precisará escrever o loop de avaliação para iterar sobre os lotes de dados de teste, obter as previsões do modelo para cada lote e calcular a pontuação de precisão para ele. Vamos lá!
Este exercício faz parte do curso
Aprendizagem profunda intermediária com PyTorch
Instruções de exercício
- Configure a métrica de avaliação como
Accuracy
para classificação binária e atribua-a aacc
. - Para cada lote de dados de teste, obtenha os resultados do modelo e atribua-os a
outputs
. - Após o loop, calcule a precisão total do teste e atribua-a a
test_accuracy
.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
import torch
from torchmetrics import Accuracy
# Set up binary accuracy metric
acc = ____
net.eval()
with torch.no_grad():
for features, labels in dataloader_test:
# Get predicted probabilities for test data batch
outputs = ____
preds = (outputs >= 0.5).float()
acc(preds, labels.view(-1, 1))
# Compute total test accuracy
test_accuracy = ____
print(f"Test accuracy: {test_accuracy}")