Assume one is using transfer learning via a model which was trained on ImageNet.

  1. Assume that the pre-processing, which was used to achieve the pre-trained model, contained z-score standardization using some mean and std, which was calculated on the training data.

    Should one apply the same transformation to their new data? Should they apply z-score standardization using a mean and std of their own training data?

  2. Assume that the pre-processing now did not contain any standardization.

    Should one apply no standardization on their new data as well? Or should one apply the z-score standardization, using the mean and std of their new data, and expect better results?

For example, I've seen that the Inception V3 model, which was trained by Keras, did not use any standardization, and I'm wondering if using z-score standardization on my new data could yield better results.


1 Answer 1

  1. You should use the same transformation (i.e same mean and std in case of z-score normalization) on the new data while using any pretrained model.
  2. If the pretrained model was trained without any normalization then it does not matter if you use normalization or not as long as range of input data is fixed (0-255 for the 8-bit input images). You can use pretrained models with batch normalization which takes care of internal covariance shift and thus there is no need to normalize data.

You must log in to answer this question.

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