Hello everyone,
I am working with a Pytorch dataset that I want to make bigger by taking the entire dataset and duplicate it multiple times to have a larger dataloader (using for one-shot learning purposes). For example I have 10 classes containing 1 image each, leaving a total of 10 images (dataloader of length 10 for 1 batch). I want to resample the entire dataset multiple times (duplicate each image 20 times to have total of 200 images) and make each duplication different through data augmentation.

So (dataset of 1 cat, 1 dog)  →  (resample/duplicate dataset 20 times) → (data augmention) → (dataset of 20 cats, 20 dogs with variations from their original image) = (dataloader of size 40 for 1 batch)

What would be an effective way to accomplish this?
vis_dataloader = DataLoader(sample_dataset,
                        shuffle=True,
                        num_workers=8,
                        #num_workers=0,
                        batch_size=1)
dataiter = iter(vis_dataloader)