what is the different between mult=2 or 1 or 3 etc?
The book states …
"On each epoch (which is one complete pass through all of our images in the dataset) we randomly select a different part of each image. "
But I thought the transformations were applied per batch … not per epoch.
Think any of these transforms be better than padding (adding empty useless pixels).
That is incorrect, batch_tfms can apply a different transformation to each image. Rotation for instance, or flip, are random per image.
On the validation set, we center crop the image if it’s ratio isn’t in the range (to the minmum or maximum value) then resize. Link is:
Documentation of RandomResizedCrop
At each epoch you get a new transformation.
Are there pre-packaged transformations that are not affine? Things like lightness, hue, sharpness…
what’s the best rule of thumb with regards to how large a batch to feed at a time relative to gpu size?
Is there any significance to the size of the crop to be 224x224 ?
There is lightning and contrast transforms, randomly erasing a part of the image, perspective warping. Look at the docs on vision.augment for the whole list.
Either inherit new class from Transform or create new function with @Transform decorator.
Jeremy runs through these in source code walkthru videos.
If the data set in imbalanced, can I choose to augment only the under represented class? or choose a particular type of transformation that suits a class best.
Usually, whatever fits on your GPU is fine.
So the transformation is the same to each image per epoch? Just wanna make sure I understand.
How do you pick what augmentations to do? Do certain augmentations work better than others for a task? Does it make sense to schedule augmentations during training?
training will be faster and you can iterate on your model
Why 224 not say 480 , 720 which is close to capture sizes ?