Model değerlendirme
Eğitim döngüsünü hallettikten sonra modeli 1000 epoch boyunca eğittin ve model net olarak elinde. Ayrıca, tıpkı daha önce train_dataloader için yaptığın gibi, bu kez veriyi eğitim dizini yerine test dizininden okuyarak bir test_dataloader kurdun.
Artık modeli test verisi üzerinde değerlendirebilirsin. Bunu yapmak için, test verisinin batch’leri üzerinde yineleme yapan bir değerlendirme döngüsü yazman, her batch için modelin tahminlerini alman ve doğruluk skorunu hesaplaman gerekiyor. Haydi başlayalım!
Bu egzersiz
PyTorch ile Orta Düzey Deep Learning
kursunun bir parçasıdırEgzersiz talimatları
- Değerlendirme metriğini ikili sınıflandırma için
Accuracyolarak ayarla veaccdeğişkenine ata. - Her test verisi batch’i için modelin çıktısını al ve
outputsdeğişkenine ata. - Döngüden sonra toplam test doğruluğunu hesapla ve
test_accuracydeğişkenine ata.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
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}")