【发布时间】:2021-11-05 17:55:04
【问题描述】:
from torchvision import datasets, transforms
transform = transforms.Compose([transforms.ToTensor(),transforms.Normalize((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) # A
trainloader = torch.utils.data.DataLoader(trainset.train_data, batch_size=64, shuffle=True) # B
dataiter = iter(trainloader)
images, labels = dataiter.next() # A
images = dataiter.next() # B
images.shape
为什么上面的代码,方法#A给出了torch.Size([64, 1, 28, 28]),而#B给出了torch.Size([64, 28, 28])? #A 中值为 1 的第二个维度从何而来?
提前谢谢你。
【问题讨论】: