I'm training a deep learning model to map binary images to grayscale values of the same shape. For the dataset, I can genearate one as large and diverse as I want it to be.

My question is: let's say the original dataset I created contains 100k images. I can either generate another 900k unique images (so that my training set is 1M in total), or to use data augemntation on the ones I already have and somehow (flipping, rotating, etc.) generate another 900k (I know that in 2D, there's probably only 8 different types of unique images that can be generated by flipping/rotating or a combination, but that's beside the point here).

Which one would you go for and why? Thank you so much!


1 Answer 1


You are going to generate the images by flipping, rotating, etc. which will happen anyways in augmentation. Augmentation can happen on the fly so you don't waste memory storing those new images, thus, you can train your network fast. You can use RandAugment or AutoAugment for augmentation.

  • $\begingroup$ Let me clarify: I can (a) generate "unique" new images, or (b) generate "augmented" new images. Which one is preferred? $\endgroup$ Commented Sep 18, 2022 at 16:39
  • 2
    $\begingroup$ Before taking this decision, taking the embeddings of your current dataset through Resnet50 or EffNetB0, then, doing PCA for plotting in 2D, would give us an idea about the distribution of data. If you find it wide enough, then, augment, if not, generate more and perhaps improve the method of generation if you don't find enough diversity. $\endgroup$ Commented Sep 18, 2022 at 17:57
  • $\begingroup$ Thanks! That's great advice, I'll give it a try. Just one question: since I'm not doing image classification, do you think the embeddings of ResNet50 (or similar classification NNs) would be accurate enough? Thanks once again! $\endgroup$ Commented Sep 18, 2022 at 19:09
  • $\begingroup$ Yes, they are useful since they tell you about the general properties of images. Out of ResNet and EffNetB0, go for EffNet though (it has proven to better across many-many domains). It beats the usual method of flattening the images and then performing PCA. $\endgroup$ Commented Sep 19, 2022 at 20:08

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .