Sor0ush's picture
download
raw
1.78 kB
import os
import torch
import torchvision.datasets as datasets
class SUN397:
def __init__(self,
preprocess,
location=os.path.expanduser('~/data'),
batch_size=32,
num_workers=0,
use_val=False):
# Data loading code
traindir = os.path.join(location, 'sun397', 'train')
valdir = os.path.join(location, 'sun397', 'test')
self.train_dataset = datasets.ImageFolder(traindir, transform=preprocess)
self.train_loader = torch.utils.data.DataLoader(
self.train_dataset,
shuffle=True,
batch_size=batch_size,
num_workers=num_workers,
)
self.test_dataset = datasets.ImageFolder(valdir, transform=preprocess)
if use_val:
self.val_dataset, self.test_dataset = torch.utils.data.random_split(self.test_dataset, [len(self.test_dataset) // 5, len(self.test_dataset) - len(self.test_dataset) // 5])
self.val_loader = torch.utils.data.DataLoader(
self.val_dataset,
batch_size=batch_size,
num_workers=num_workers
)
self.test_loader = torch.utils.data.DataLoader(
self.test_dataset,
batch_size=batch_size,
num_workers=num_workers
)
self.test_loader_shuffle = torch.utils.data.DataLoader(
self.test_dataset,
shuffle=True,
batch_size=batch_size,
num_workers=num_workers
)
idx_to_class = dict((v, k)
for k, v in self.train_dataset.class_to_idx.items())
self.classnames = [idx_to_class[i][2:].replace('_', ' ') for i in range(len(idx_to_class))]

Xet Storage Details

Size:
1.78 kB
·
Xet hash:
329cd5076ceaf49e979bde2ec91c7702859e6964f1a33b50d211faea4d59e727

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.