[英]how can i fix pytorch predict problem with deep learning
给定groups=1
,大小为[48, 3, 3, 3]
的权重,预期输入[5, 128, 129, 4]
有 3 个通道,但有 128 个通道。
这是我的代码:
**model_ft.eval()
for image in test_loader:
image = image.cuda()
output = model_ft(image)
output = output.cpu().detach().numpy()
for i, (e, n) in enumerate(list(zip(output, name))):
sub.loc[sub['id_code'] == n.split('/')[-1].split('.')[0], 'diagnosis'] = le.inverse_transform([np.argmax(e)])
sub.to_csv('submission.csv', index=False)**
print(X_test.shape)
(3071, 128, 128, 3)
from torch.utils.data import DataLoader
test_loader = DataLoader(X_test, batch_size=5, shuffle=True)
print(train_data)
我不知道如何解决这个问题来预测我的竞争
我假设
print(X_test.shape)
(3071, 128, 128, 3)
你的意思是测试数据有 3071 个样本,每个样本有 128x128 像素和 3 个颜色通道。 另外我假设您使用的 model 不会转置输入,因此卷积层期望默认布局为形状 (N, C, H, W) 但您提供的数据为 (N, H, W , C)。
解决方案:在将其交给 model 之前,尝试image.transpose_(1, 3)
或image = image.cuda().transpose(1, 3)
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.