시작하기무료로 시작하기

다중 클래스 모델 평가

정확도(precision)와 재현율(recall)로 구름 분류기가 7가지 구름 유형을 얼마나 잘 분류하는지 평가해 봅시다. 이런 다중 클래스 분류 과제에서는 클래스별 점수를 어떻게 평균 내는지가 중요해요. 다음의 네 가지 접근 방법을 기억하세요:

  • 평균을 내지 않고, 클래스별 결과를 따로 분석하기;
  • 마이크로 평균: 클래스를 구분하지 않고 전체 예시에 대해 전역적으로 지표를 계산하기;
  • 매크로 평균: 클래스별로 지표를 계산한 뒤 단순 평균 내기;
  • 가중 평균: 매크로 평균과 같지만, 클래스 크기로 가중치를 두어 평균 내기.

torchmetrics에서 PrecisionRecall은 이미 임포트되어 있어요. 이제 우리 모델이 얼마나 잘하는지 확인해 볼까요!

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

PyTorch로 배우는 Intermediate Deep Learning

강의 보기

실습형 인터랙티브 연습

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

# Define metrics
metric_precision = Precision(task=____, num_classes=____, average=____)
metric_recall = ____

net.eval()
with torch.no_grad():
    for images, labels in dataloader_test:
        outputs = net(images)
        _, preds = torch.max(outputs, 1)
        metric_precision(preds, labels)
        metric_recall(preds, labels)

precision = metric_precision.compute()
recall = metric_recall.compute()
print(f"Precision: {precision}")
print(f"Recall: {recall}")
코드 편집 및 실행