MATLAB: ImageInputLayer Error in deep learning toolbox

deep learningimageinputlayer

Hi there!
I would be thankful for any help. I faced with this error:
Error using dlnetwork (line 117)
Invalid network.
Caused by:
Layer 'input': Empty Mean property. For an image input layer with 'zerocenter' normalization, specify a nonempty value
for the Mean property.
inputlayer = imageInputLayer([28 28 3],'Name','input')
Why in my case, it needs to determine the "Mean" while in that example the Mean=[] did not make a problem?

Best Answer

In case of layerGraph based approach we use trainNetwork to train the network and this function takes the entire data for the training. In case imageInputLayer the Normalization used is 'zerocenter' by default and Mean is '[ ]' by default i.e., the software calculates the mean at training time on the complete data within the trainNetwork function.
In case of dlnetwork based approach we won't use the trainNetwork function and instead use custom training loops. In this case we pass minibatches (minibatchqueue) of the data during each iteration of custom training loop. Hence the mean is not automatically calculated here.
Fore more information refer to the documentation of imageInputLayer, imageInputLayer - Properties, dlnetwork, layerGraph & trainNetwork.
This issue is known to the concerned people and they may address it in future releases.