You could iterate the Dataset containing the random transformations once and store all augmented tensors. Once this is done you could then create a TensorDataset which only returns the already transformed tensors.
Let me know, if that would work for you.