PyTorchでモデル評価を行う方法は何ですか?
PyTorchでモデルの評価を行う際には、通常、以下のステップが必要です。
- 必要なライブラリとモデルをインポートしてください。
import torch
import torch.nn as nn
import torch.optim as optim
import torchvision
from torchvision import transforms, datasets
- テストデータセットを読み込む:
transform = transforms.Compose([
transforms.ToTensor(),
transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))
])
test_dataset = datasets.CIFAR10(root='./data', train=False, download=True, transform=transform)
test_loader = torch.utils.data.DataLoader(test_dataset, batch_size=64, shuffle=False)
- モデルを読み込む:
model = YourModel()
model.load_state_dict(torch.load('model.pth'))
model.eval()
- 評価関数の定義:
def evaluate_model(model, test_loader):
correct = 0
total = 0
with torch.no_grad():
for images, labels in test_loader:
outputs = model(images)
_, predicted = torch.max(outputs.data, 1)
total += labels.size(0)
correct += (predicted == labels).sum().item()
accuracy = correct / total
print('Accuracy of the model on the test set: {:.2f}%'.format(accuracy * 100))
- 評価関数を呼び出す:
evaluate_model(model, test_loader)
PyTorchでモデルを評価することができます。