728x90
모델에 대한 평가는 함수와 모듈을 이용하는 두 가지 방법이 있다.
1. 함수를 이용하여 모델을 평가하는 방법
import torch
import torchmetrics
preds = torch.randn(10, 5).softmax(dim=-1)
target = torch.randint(5, (10,))
acc = torchmetrics.functional.accuracy(preds, target) # 모델을 평가하기 위해 torchmetrics.functional.accuracy 이용
2. 모듈을 이용하여 모델을 평가하는 방법
import torch
import torchmetrics
metric = torchmetrics.Accuracy()
n_batchs = 10
for i in range(n_batchs):
preds = torch.randn(10, 5).softmax(dim=-1)
target = torch.randint(5, (10,))
acc = torchmetrics.functional.accuracy(preds, target)
print(f'accuracy on batch {i}: {acc}') # 현재 배치에서 모델 정확도
acc = metric.compute()
print(f'accuracy no all data: {acc}') # 모든 배치에서 모델 평가
혹은 사이킷런에서 제공하는 confusion metrix를 이용하는 방법도 고려해 볼 수 있다.
728x90
'딥러닝 > Pytorch' 카테고리의 다른 글
Pytorch nn.ModuleList (0) | 2022.05.30 |
---|---|
Pytorch nn.Embedding() (0) | 2022.05.30 |
Pytorch 기본 문법 - 모델 훈련 (0) | 2022.05.23 |
Pytorch 기본 문법 - 파라미터 정의 (0) | 2022.05.23 |
Pytorch 기본 문법 - 모델 정의 (0) | 2022.05.23 |