Newbie here.
I have a dataset of images that I want to train a model on. I want to train first on the “base” images and then applying augmentations to the images in a GRADUAL way (more and more aggressive) and keep training.
So, I use:
base_transform = transforms.Compose([
        transforms.Resize((224,224)),       # resize to 224x224
        transforms.ToTensor()
   ])

base_data = datasets.ImageFolder(os.path.join(DATASET_PATH, 'train'), transform=base_transform)
base_loader = DataLoader(base_data, batch_size=len(train_data), shuffle=True)

#This part takes 2.5 min, but should be done only ONCE
X_train_base,y_train_base = next(iter(base_loader)) #X_train_base and y_train_base are tensors on the CPU

#Push to the GPU
X_train_base = X_train_base.to(device)
y_train_base = y_train_base.to(device)

to create the base variables (and they are now tensors on the GPU). No problem here.
Now, I want to create the augmentation transformation:
aug_transform = transforms.Compose([
        transforms.RandomHorizontalFlip(),  # reverse 50% of images
        transforms.RandomAffine(degrees = (0,45), translate=(0.3,0.3), scale=(0.8,1.2), shear=None, resample=False, fillcolor=0),
        transforms.ColorJitter(brightness=0.3, contrast=0.3, saturation=0.3, hue=0.3),
        transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])
    ])

How do I now apply it to my base variables? I could only figure out how to apply them to images files on the disk.