data normalization in transfer learning
9 views (last 30 days)
Show older comments
how to do data normalization ( Hyperparameters , Normalization: 'none' is the default) in the input layer for transfer learning.
For custom network, I can add "Normalization", zeros , or any other " but how and where to add this in transfer learning?
0 Comments
Accepted Answer
Pratyush Roy
on 17 Jan 2022
Hi,
A lot of the input layers for pretrained networks (e.g. say ResNet-50) have the normalization parameters stored in the imageInputLayer properties. For example, for ResNet-50, the Mean is stored from the time it was trained on the ImageNet dataset, while properties like Standard Deviation, Min and Max are obtained from the training images on which we are performing the Transfer learning. This documentation captures more information on this topic.
In case we want to add normalization of input data to an existing deep learning model for transfer learning, we can replace the original image input layer from the model with a new image input layer. This will enable the normalization properties and we can change them accordingly.
We can open the network in Deep Network Designer:
deepNetworkDesigner(transferLearningModel);
Then we can delete the image input layer from the network and replace this with the image Input layer from the Layer Library.
Hope this helps!
3 Comments
Pratyush Roy
on 17 Jan 2022
Hi,
You can freeze the weights of the network so that it does not update the parameters of the layers for which we want to preserve the weights. Please refer to this doc link for more information.
More Answers (0)
See Also
Categories
Find more on Build Deep Neural Networks in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!