Error in training SegNet on CPU

I am trying to train SegNet on a CPU with an Intel Core i7-4770 processor @ 3.40 GHz using the example code provided ( https://www.mathworks.com/help/vision/examples/semantic-segmentation-using-deep-learning.html ), but I am getting the following error:
Error using trainNetwork (line 154)
Too many input arguments.
Error in exampleSegnet (line 98)
[net, info] = trainNetwork(pximds,lgraph,options);
Caused by:
Error using gather
Too many input arguments.
I know the gather function collects arrays into memory, so could this error be caused by the computer running out of memory? I have about 25 free GB of memory. Additionally, the error persisted even when I reduced the proportion of training images to 10%.
Thanks

 Risposta accettata

Based on my understanding you want to train a Semantic Segmentation using CPU with an Intel Core i7-4770 processor. I also think that it may be an issue with the memory. As you maybe aware, that it is mentioned in the documentation, model was trained using NVIDIA Titan X, which has 12GB of GPU memory. As mentioned in the documentation did you try lowering the MiniBatchSize property in training options to 1? If it still not works you may still need to reduce the training data. It might be also possible that the example require GPU for training.
options = trainingOptions('sgdm', ...
'Momentum',0.9, ...
'InitialLearnRate',1e-3, ...
'L2Regularization',0.0005, ...
'MaxEpochs',100, ...
'MiniBatchSize',4, ...
'CheckpointPath',tempdir, ...
'Shuffle','every-epoch', ...
'VerboseFrequency',2);

5 Commenti

Hi Vishal,
Yes, I did set the MiniBatchSize to 1, and it still had the error.
I actually have access to a GPU now, and I can train the network now on the GPU.
Thanks for your answer.
sai krishna tirumala
sai krishna tirumala il 16 Ott 2018
Modificato: sai krishna tirumala il 16 Ott 2018
Hello Jordan,
I have a similar issue where I'm training my own data set, but I'm following the steps given in the documentation for creating a simple network classification from createSimpleDeepLearningNetworkForClassification and when I call the function trainNetwork I run into the same error. Please provide any solution if I can work without a GPU.
when i used the options like the above for training my own data images i got higy error and low accuracy any advice which parameters i should change it
evianita dewi asks Jordan Houri:
I have the same error. How did you solve the problem ?
MShia
MShia il 26 Nov 2019
Modificato: MShia il 26 Nov 2019
It is a bit strange but by removing the BatchNormalizationLayer, it works for me .

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Deep Learning Toolbox in Centro assistenza e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by