IniziaInizia gratis

Valutazione del modello

Ora che il training loop è a posto, hai addestrato il modello per 1000 epoche ed è disponibile come net. Hai anche configurato un test_dataloader esattamente come hai fatto prima con train_dataloader, leggendo però i dati dalla directory di test invece che da quella di train.

Adesso puoi valutare il modello sui dati di test. Per farlo, dovrai scrivere il loop di valutazione per iterare sui batch dei dati di test, ottenere le predizioni del modello per ogni batch e calcolare l'accuracy corrispondente. Mettiamoci al lavoro!

Questo esercizio fa parte del corso

Deep Learning intermedio con PyTorch

Visualizza il corso

Istruzioni dell'esercizio

  • Imposta la metrica di valutazione come Accuracy per la classificazione binaria e assegnala a acc.
  • Per ogni batch di dati di test, ottieni gli output del modello e assegnali a outputs.
  • Dopo il loop, calcola l'accuracy totale sul test e assegnala a test_accuracy.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

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}")
Modifica ed esegui il codice