Buckets:
| import os | |
| import torch | |
| import torchvision.datasets as datasets | |
| template = ['a photo of a {}, a type of aircraft.'] | |
| class Caltech101: | |
| def __init__(self, | |
| preprocess, | |
| location="../../DataSets/clip_fewshot", | |
| batch_size=32, | |
| num_workers=14, | |
| use_val=False): | |
| # Data loading code | |
| location="../../DataSets/clip_fewshot" | |
| dataset = datasets.Caltech101( | |
| root=location, transform=preprocess) | |
| self.train_dataset, self.test_dataset = self.split_dataset(dataset) | |
| self.train_loader = torch.utils.data.DataLoader( | |
| self.train_dataset, | |
| shuffle=True, | |
| batch_size=batch_size, | |
| num_workers=num_workers, | |
| ) | |
| 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 | |
| ) | |
| self.classnames = [ | |
| "off-center face", | |
| "centered face", | |
| "leopard", | |
| "motorbike", | |
| "accordion", | |
| "airplane", | |
| "anchor", | |
| "ant", | |
| "barrel", | |
| "bass", | |
| "beaver", | |
| "binocular", | |
| "bonsai", | |
| "brain", | |
| "brontosaurus", | |
| "buddha", | |
| "butterfly", | |
| "camera", | |
| "cannon", | |
| "side of a car", | |
| "ceiling fan", | |
| "cellphone", | |
| "chair", | |
| "chandelier", | |
| "body of a cougar cat", | |
| "face of a cougar cat", | |
| "crab", | |
| "crayfish", | |
| "crocodile", | |
| "head of a crocodile", | |
| "cup", | |
| "dalmatian", | |
| "dollar bill", | |
| "dolphin", | |
| "dragonfly", | |
| "electric guitar", | |
| "elephant", | |
| "emu", | |
| "euphonium", | |
| "ewer", | |
| "ferry", | |
| "flamingo", | |
| "head of a flamingo", | |
| "garfield", | |
| "gerenuk", | |
| "gramophone", | |
| "grand piano", | |
| "hawksbill", | |
| "headphone", | |
| "hedgehog", | |
| "helicopter", | |
| "ibis", | |
| "inline skate", | |
| "joshua tree", | |
| "kangaroo", | |
| "ketch", | |
| "lamp", | |
| "laptop", | |
| "llama", | |
| "lobster", | |
| "lotus", | |
| "mandolin", | |
| "mayfly", | |
| "menorah", | |
| "metronome", | |
| "minaret", | |
| "nautilus", | |
| "octopus", | |
| "okapi", | |
| "pagoda", | |
| "panda", | |
| "pigeon", | |
| "pizza", | |
| "platypus", | |
| "pyramid", | |
| "revolver", | |
| "rhino", | |
| "rooster", | |
| "saxophone", | |
| "schooner", | |
| "scissors", | |
| "scorpion", | |
| "sea horse", | |
| "snoopy (cartoon beagle)", | |
| "soccer ball", | |
| "stapler", | |
| "starfish", | |
| "stegosaurus", | |
| "stop sign", | |
| "strawberry", | |
| "sunflower", | |
| "tick", | |
| "trilobite", | |
| "umbrella", | |
| "watch", | |
| "water lilly", | |
| "wheelchair", | |
| "wild cat", | |
| "windsor chair", | |
| "wrench", | |
| "yin and yang symbol", | |
| ] | |
| self.class_to_idx = {v: k for k, v in enumerate(self.classnames)} | |
| self.idx_to_class = {k: v for k, v in enumerate(self.classnames)} | |
| def split_dataset(self, dataset, ratio=0.8): | |
| train_size = int(ratio * len(dataset)) | |
| test_size = len(dataset) - train_size | |
| train_dataset, test_dataset = torch.utils.data.random_split( | |
| dataset, | |
| [train_size, test_size], | |
| generator=torch.Generator().manual_seed(42), | |
| ) | |
| return train_dataset, test_dataset |
Xet Storage Details
- Size:
- 4.65 kB
- Xet hash:
- b306fd14f6093c509a7752faea28bbb543bcbca42a3798f9bbb6368d153d44d0
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.