提问人:rashid 提问时间:12/30/2022 最后编辑:rashid 更新时间:12/30/2022 访问量:48
FNN 模型错误:RuntimeError:张量 a (N) 的大小必须与非单例维度 0 处张量 b (M) 的大小匹配
Error with FNN model: RuntimeError: The size of tensor a (N) must match the size of tensor b (M) at non-singleton dimension 0
问:
我在 PyTorch 中为线性回归问题训练了 FNN 模型,保存了该模型,现在尝试通过使用 torch.no_grad():来检查我的模型性能。Y_test大小为 [64000 2],X_Test大小为 [64000 2]。Batch_size = 100。我正在尝试检查我的模型的准确性,每次都归零。无法理解问题。
X_Test = torch.tensor(PA_DATA[:64000,0:2], dtype=torch.float32)
#output
Y_Test =torch.tensor(PA_DATA[:64000,2:4], dtype=torch.float32)
test_dataset = Data.TensorDataset(X_Test, Y_Test)
testloader = DataLoader(test_dataset, batch_size=100, shuffle=False)
loss_func1 = torch.nn.MSELoss()
optimizer = torch.optim.Adam(model.parameters(), lr=0.0001)
running_accuracy = 0.0
running_test_loss = 0.0
total = 0
with torch.no_grad():
model.eval()
for X_Test,T_Val in testloader:
pred = model(X_Test)
test_loss = loss_func1(pred,Y_Test)
_, predicted = torch.max(pred.data, 1)
running_test_loss += test_loss.item()
total += Y_Test.size(0)
running_accuracy += (predicted == Y_Test).sum().item()
Test_loss_value = running_test_loss/len(testloader)
accuracy = (100 * running_accuracy / total)
print(accuracy)
有时它显示大小为 a (100) 的误差张量与张量大小 b(2) 不匹配。我尝试了各种方法,但无法计算准确性。
精度 = 0.0
测试损失: 0.001215781958308071
RuntimeError: The size of tensor a (100) must match the size of tensor b (64000) at non-singleton dimension 0
答: 暂无答案
评论