Python 我可以在MNIST培训、测试数据中找到特定数字数据的数量吗?
这是使用CNN加载MNIST数据分类代码数据的部分 在我提到的那本书中,有人说你可以通过只提到这一部分来了解训练集和测试集中有多少特定的数字数据 例如,您能告诉我们该培训或测试集中有多少“5”数据吗Python 我可以在MNIST培训、测试数据中找到特定数字数据的数量吗?,python,machine-learning,pytorch,Python,Machine Learning,Pytorch,这是使用CNN加载MNIST数据分类代码数据的部分 在我提到的那本书中,有人说你可以通过只提到这一部分来了解训练集和测试集中有多少特定的数字数据 例如,您能告诉我们该培训或测试集中有多少“5”数据吗 仅仅知道您可以使用mnist_train.train_数据或mnist_train.train_标签等访问数据张量,我不知道如何知道特定数字数据的数量。帮助您可以分别使用数据和目标属性访问数据集的数据和标签。例如,这里您可以分别使用mnist\u train.data和mnist\u train.l
仅仅知道您可以使用mnist_train.train_数据或mnist_train.train_标签等访问数据张量,我不知道如何知道特定数字数据的数量。帮助您可以分别使用
数据
和目标
属性访问数据集的数据和标签。例如,这里您可以分别使用mnist\u train.data
和mnist\u train.labels
访问培训数据和标签
由于此数据集的targets
属性是一个torch.Tensor
,因此您可以使用来计算每个目标的实例数。由于总共有10个类,因此输出将是长度为10的张量,其中第i个索引指定了类i的数据点数量
例如:
import torchvision.datasets as dsets
import torchvision.transforms as transforms
import torch.nn.init
import torch.nn.functional as F
device = "cuda" if torch.cuda.is_available() else "cpu"
print(device)
learning_rate = 0.001
training_epochs = 15
batch_size = 100
mnist_train = dsets.MNIST(root='MNIST_data/', # Specify download path
train=True, # Specify True to download as training data
transform=transforms.ToTensor(), # Convert to tensor
download=True)
mnist_test = dsets.MNIST(root='MNIST_data/', # Specify download path
train=False, # If false is specified, download as test data
transform=transforms.ToTensor(), # Convert to tensor
download=True)
您可以看到5类在训练分割中有5421个数据点。请不要添加不相关的标记,tensorflow没有任何内容。(删除)对不起,我点击了推荐。你试过什么?例如,
mnist\u train.train\u标签的输出是什么?然后你能看到和访问子元素的结构吗?哦,非常感谢。然后我可以使用target访问张量,并使用bincount获取每个实例的数量,我理解的正确吗?@TheRiver강이 对
>>> mnist_train = dsets.MNIST(root='MNIST_data/', train=True, transforms.ToTensor(), download=True)
>>> mnist_train.targets
tensor([5, 0, 4, ..., 5, 6, 8])
>>> torch.bincount(mnist_train.targets, minlength=10)
tensor([5923, 6742, 5958, 6131, 5842, 5421, 5918, 6265, 5851, 5949])