【发布时间】:2019-09-10 13:41:59
【问题描述】:
我正在使用 PyTorch 教程来计算每个类的准确率,它抛出了一个使用 tensor.item() 的错误,该错误已经在 class_correct[target] += c[i].item() 中
class_correct = list(0. for i in range(15))
class_total = list(0. for i in range(15))
with torch.no_grad():
for ii, data in enumerate(test_loader):
t_image, target, classess, image_path = data
t_image = t_image.to(device)
target = target.to(device)
outputs = model(t_image)
_, predicted = torch.max(outputs, 1)
c = (predicted == target).squeeze()
for i in range(4):
target = target[i]
class_correct[target] += c[i].item()
class_total[target] += 1
for i in range(14):
print('Accuracy of %5s : %2d %%' % (
classes[i], 100 * class_correct[i] / class_total[i]))
任何评论将不胜感激。
【问题讨论】:
-
拜托,你能提供
c.shape吗? -
@Berriel 当我得到 print(c.shape) 时,输出是 torch.Size([])
-
你现在明白错误了吗?
标签: pytorch