本文共 1553 字,大约阅读时间需要 5 分钟。
报错如下:
Traceback (most recent call last): File “6_database_deal_.py”, line 73, in for i, data in enumerate(test_loader): File “/home/muli/anaconda3/lib/python3.5/site-packages/torch/utils/data/dataloader.py”, line 560, in next batch = self.collate_fn([self.dataset[i] for i in indices]) File “/home/muli/anaconda3/lib/python3.5/site-packages/torch/utils/data/_utils/collate.py”, line 68, in default_collate return [default_collate(samples) for samples in transposed] File “/home/muli/anaconda3/lib/python3.5/site-packages/torch/utils/data/_utils/collate.py”, line 68, in return [default_collate(samples) for samples in transposed] File “/home/muli/anaconda3/lib/python3.5/site-packages/torch/utils/data/_utils/collate.py”, line 43, in default_collate return torch.stack(batch, 0, out=out) RuntimeError: invalid argument 0: Sizes of tensors must match except in dimension 0. Got 309 and 580 in dimension 2 at /pytorch/aten/src/TH/generic/THTensor.cpp:711数据集图像大小不一,加载训练集时进行了RandomResizedCrop , 但是在测试时忘记了,因此出现了以下报错信息:
RuntimeError: invalid argument 0: Sizes of tensors must match except in dimension 0. Got 309 and 580 in dimension 2 at /pytorch/aten/src/TH/generic/THTensor.cpp:711解决办法:
testTransform部分加入 transforms.Resize((224, 224))# 训练trainTransform = transforms.Compose([ transforms.RandomResizedCrop(224), # 随机裁剪, transforms.RandomHorizontalFlip(), # 随机水平翻转 transforms.ToTensor(), normTransform # 正则化])# 测试testTransform = transforms.Compose([ transforms.Resize((224, 224)), # 调整图像大小 transforms.ToTensor(), normTransform # 正则化])
转载地址:http://yjfxf.baihongyu.com/