시작하기무료로 시작하기

모델 평가

훈련 루프를 정리한 뒤 모델을 1000 에포크 동안 학습했고, 그 결과 모델은 net으로 제공됩니다. 또한 이전에 train_dataloader를 설정했던 것과 동일한 방식으로 test_dataloader도 구성했으며, 차이점은 학습 디렉터리가 아니라 테스트 디렉터리에서 데이터를 읽는다는 점뿐입니다.

이제 테스트 데이터로 모델을 평가할 수 있어요. 이를 위해서는 평가 루프를 작성하여 테스트 데이터의 배치들을 순회하고, 각 배치에 대한 모델 예측을 얻은 뒤, 정확도를 계산해야 합니다. 함께 해봅시다!

이 연습은 강의의 일부입니다

PyTorch로 배우는 Intermediate Deep Learning

강의 보기

연습 안내

  • 이진 분류를 위한 평가 지표로 Accuracy를 설정하고 acc에 할당하세요.
  • 테스트 데이터의 각 배치에 대해 모델의 출력을 구해 outputs에 할당하세요.
  • 루프가 끝난 뒤 전체 테스트 정확도를 계산해 test_accuracy에 할당하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

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}")
코드 편집 및 실행