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, kursun bir parçasıdır
PyTorch ile Orta Düzey Deep Learning
Egzersiz 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ı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
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}")