本文介绍了MNIST,Torchvision中的输出和广播形状不匹配的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在Torchvision中使用MNIST数据集时出现以下错误

I am getting following error when using MNIST dataset in Torchvision

RuntimeError: output with shape [1, 28, 28] doesn't match the broadcast shape [3, 28, 28]

这是我的代码:

import torch
from torchvision import datasets, transforms

transform = transforms.Compose([transforms.ToTensor(),
                            transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)),
                          ])
trainset = datasets.MNIST('~/.pytorch/MNIST_data/', download=True, train=True, transform=transform)
trainloader = torch.utils.data.DataLoader(trainset, batch_size=64, shuffle=True)
images, labels = next(iter(trainloader))

推荐答案

该错误是由于数据集的颜色与灰度之间的关系,数据集是灰度的.

The error is due to color vs grayscale on the dataset, the dataset is grayscale.

我通过将transform更改为

I fixed it by changing transform to

transform = transforms.Compose([transforms.ToTensor(),
  transforms.Normalize((0.5,), (0.5,))
])

这篇关于MNIST,Torchvision中的输出和广播形状不匹配的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

06-21 12:14