MATLAB Answers

what is causes NaN values in the validation accuracy and loss from traning convolutional neural network and how to avoid it?

159 views (last 30 days)
Salma Hassan
Salma Hassan on 31 Dec 2017
Answered: mohammed mahmoud on 24 Jun 2020
I USE this line in matlab code [trainedNet,traininfo] = trainNetwork(trainMatrix,Layers,opts);
so the information about validation and traning accuracy/loss are storage in the variable traininfo.. when i open this variable i found only the first value in iteration number 1 and also the last value but between them the value are NAN. how to avoid this problem you know i need the whole values for plotting the learning curve after that
  3 Comments
Javier Pinzón
Javier Pinzón on 29 Jan 2018
Hello As Has,
Sorry for the late response, but, with the info provide is very difficult to find what is the root of the problem, may you provide us the next information?:
- Definition of the layers declared
- Network Options declared
At the moment that information. In that way, we can find what causes the problem.
Best Regards
Javier

Sign in to comment.

Answers (3)

Ignacio Arganda-Carreras
Ignacio Arganda-Carreras on 17 Oct 2018
Hello As Has,
I found the answer in the documentation of trainingInfo : "Each field is a numeric vector with one element per training iteration. Values that have not been calculated at a specific iteration are represented by NaN." So you need to check the iterations multiple of your validation frequency, those should have a value different from NaN.

aybike pirol
aybike pirol on 23 Jun 2020
Merhaba,
Ben de bu problemi yaşadım.
'ValidationFrequency' 1 olarak yazdığımda, ... sorun kayboldu. Artık NAN değeri yok.

Community Treasure Hunt

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

Start Hunting!