File size: 1,466 Bytes
97daae4 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
import torch
import torchvision
from torchvision.datasets import Food101, MNIST
from torch.utils.data import Subset, DataLoader
import torchvision.transforms as transforms
transform = transforms.Compose([
transforms.Resize((224, 224)),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485, 0.456, 0.406],
std=[0.229, 0.224, 0.225]),
])
split = 0.25
batch_size = 32
train_datasets = Food101(root = "./data", split = "train", transform = transform, download = True)
test_datasets = Food101(root = "./data", split = "test", transform = transform, download = True)
num_samples_train = int(split * len(train_datasets))
train_indices = torch.randperm(len(train_datasets))[:num_samples_train]
num_samples_valid = int(split * len(train_datasets))
valid_indices = torch.randperm(len(train_datasets))[:num_samples_valid]
num_samples_test = int(split * len(test_datasets))
test_indices = torch.randperm(len(test_datasets))[:num_samples_test]
split_tarin_data = Subset(train_datasets, train_indices)
split_valid_data = Subset(train_datasets, valid_indices)
split_test_data = Subset(test_datasets, test_indices)
train_dataloader = DataLoader(split_tarin_data, batch_size = batch_size, shuffle = True, drop_last = True)
valid_dataloader = DataLoader(split_valid_data, batch_size = batch_size, shuffle = True, drop_last = True)
test_dataloader = DataLoader(split_test_data, batch_size = batch_size, shuffle = False, drop_last = True) |