CIFAR10은 torchvision에서 기본적으로 불러올 수 있다.
trainset = torchvision.datasets.CIFAR10(
root='/home/data/cifar10', train=True, download=True, transform=transform_train)
testset = torchvision.datasets.CIFAR10(
root='/home/data/cifar10', train=False, download=True, transform=transform_test)
trainloader = torch.utils.data.DataLoader(
trainset, batch_size=128, shuffle=True, num_workers=2)
testloader = torch.utils.data.DataLoader(
testset, batch_size=100, shuffle=False, num_workers=2)
다만 CIFAR10은 기본적으로 shuffle이 들어간 상태라 test할때도 shuffle된 data가 나온다.
ImageFolder은 어떨까? ImageFolder은 보통 불러올때 path만 불러와주면 된다.
trainset = torchvision.datasets.ImageFolder(
root='/home/data/cifar10/train', transform=transform_train)
위와 같이 순서가 되있고 안에 이미지들만 있으면, airplane:0, automobile:1, ... , truck:9 의 class를 부여받게 된다. 즉 test시 데이터로더에서 shuffle 을 False로 해놔도 torchvision CIFAR10으로 test data는 shuffle된 상태로 추론한다.