阅读量:3
在PyTorch中,可以使用torch.utils.data.DataLoader
加载测试数据集,并调用模型的eval()
方法进入评估模式。然后使用测试数据集对模型进行推理,并计算模型的性能指标,如准确率、损失值等。
import torch import torch.nn as nn import torch.optim as optim import torch.utils.data as data # 加载测试数据集 test_dataset = MyDataset(data_path='test_data.pth') test_loader = data.DataLoader(test_dataset, batch_size=64, shuffle=False) # 加载模型 model = MyModel() model.load_state_dict(torch.load('model.pth')) model.eval() criterion = nn.CrossEntropyLoss() # 在测试数据集上进行推理 correct = 0 total = 0 total_loss = 0 with torch.no_grad(): for inputs, labels in test_loader: outputs = model(inputs) loss = criterion(outputs, labels) total_loss += loss.item() _, predicted = torch.max(outputs, 1) total += labels.size(0) correct += (predicted == labels).sum().item() accuracy = correct / total average_loss = total_loss / len(test_loader) print(f'Accuracy: {accuracy}, Average Loss: {average_loss}')
除了计算准确率和损失值之外,还可以使用torch.utils.tensorboard
等工具来进行模型性能分析,例如可视化训练过程中的损失值和准确率的变化情况,以及模型的参数分布等。