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 ?
No, it’s a random transformation for each image at each epoch.
This comes from trying different augmentations and checking validation accuracy. There is no definite way AFAIK to pick augmentations and be sure they’ll work. It usually is trial and error.
Too large, and memory consumption will be too high. Also, traditionally, 224x224 has been used in other deep learning models.
So the image_tfms are not gpu accelerated?
For all of these questions, the answer is “Try it!”. It’s certainly problem-dependent and there is no definitive answer.
It depends on the dimensions of the image. You could experiment with what cropping size retains the most information. I use 200 * 200 for my cell research as an example.
How can we also control the selection of the images for the validation set? (excluting creating a separate validation set folder) is there a silimar way like this one for deletion
I wrote a blog about it here: https://akashpalrecha.me/tutorials/blog/2020/03/27/split-transform.html
batch_tfms
needs all images to be of the same size. It runs on a whole batch, in the GPU. item_tfms
is a previous step that ensures that size consistency, and it runs on the CPU.