这是我当前的代码。
affine = transforms.RandomAffine([-15, 15], scale=(0.8, 1.2)) # 回転とリサイズ
normalize = transforms.Normalize((0.0, 0.0, 0.0), (1.0, 1.0, 1.0)) # 平均値を0、標準偏差を1に
to_tensor = transforms.ToTensor()
transform_hyouji=transforms.Compose([to_tensor,affine])
emnist_data = EMNIST(root='./EMNIST_1st', split=splits[-2],
train=False,download=True,
transform=torchvision.transforms.ToTensor())
splits = ('byclass', 'bymerge', 'balanced', 'letters', 'digits', 'mnist')
EMNIST_train = EMNIST(root='./EMNIST_1st', split=splits[-2],
train=True,download=True,
transform=torchvision.transforms.ToTensor())
EMNIST_test = EMNIST(root='./EMNIST_1st', split=splits[-2],
train=False,download=True,
transform=torchvision.transforms.ToTensor())
但是,我认为这个数据集的大小是
EMNIST_train.__len__(), EMNIST_test.__len__()
#(240000, 40000)
我想在保持平衡大小的情况下改变这个大小,即每个标签的速率几乎相同。
我认为这个问题(如何改变 Pytorch 数据集的大小?)很有帮助,但我认为这并不能保持标签平衡。
如果你告诉我怎么做,我将不胜感激。