Evaluarea modelului
Acum că bucla de antrenament este gata, ai antrenat modelul timp de 1000 de epoci — acesta îți este disponibil sub numele net. Ai configurat și un test_dataloader exact în același mod în care ai creat train_dataloader anterior—doar că de data aceasta citește datele din directorul de testare, nu din cel de antrenament.
Poți evalua acum modelul pe datele de testare. Pentru asta, va trebui să scrii bucla de evaluare care să itereze peste loturile de date de testare, să obțină predicțiile modelului pentru fiecare lot și să calculeze scorul de acuratețe. Să începem!
Acest exercițiu face parte din cursul
Deep Learning intermediar cu PyTorch
Instrucțiuni pentru exercițiu
- Configurează metrica de evaluare ca
Accuracypentru clasificare binară și asign-o variabileiacc. - Pentru fiecare lot de date de testare, obține rezultatele modelului și asign-le variabilei
outputs. - După buclă, calculează acuratețea totală pe setul de testare și asign-o variabilei
test_accuracy.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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}")