Zacznij terazZacznij za darmo

Ewaluacja modelu

Pętla treningowa jest już gotowa – model był trenowany przez 1000 epok i jest dostępny jako net. Skonfigurowano też test_dataloader w dokładnie taki sam sposób jak wcześniej train_dataloader – z tą różnicą, że dane są wczytywane z katalogu testowego, a nie treningowego.

Możesz teraz ocenić model na danych testowych. W tym celu napisz pętlę ewaluacyjną, która przejdzie przez kolejne partie danych testowych, pobierze predykcje modelu dla każdej z nich i obliczy wynik dokładności. Do dzieła!

To ćwiczenie jest częścią kursu

Głębokie uczenie z PyTorch – poziom średnio zaawansowany

Zobacz kurs

Instrukcje do ćwiczenia

  • Skonfiguruj metrykę ewaluacyjną jako Accuracy dla klasyfikacji binarnej i przypisz ją do acc.
  • Dla każdej partii danych testowych pobierz wyniki modelu i przypisz je do outputs.
  • Po zakończeniu pętli oblicz łączną dokładność na zbiorze testowym i przypisz ją do test_accuracy.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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}")
Edytuj i uruchom kod