MATLAB Answers

0

Undefined function or variable error using Neural Network Toolbox

Asked by Burak Özbagci on 27 Oct 2017
Latest activity Commented on by Walter Roberson
on 22 Jun 2018
I am following the provided example for Long-Short-Term-Memory networks found in the Neural Network Toolbox (https://de.mathworks.com/help/nnet/examples/classify-sequence-data-using-lstm-networks.html) and whenever I use the code given in the example for training the network
net = trainNetwork(X,Y,layers,options);
I get the following error:
>> net = trainNetwork(X,Y,layers,options);
Training on single GPU.
|=========================================================================================|
| Epoch | Iteration | Time Elapsed | Mini-batch | Mini-batch | Base Learning|
| | | (seconds) | Loss | Accuracy | Rate |
|=========================================================================================|
Error using trainNetwork (line 140)
Undefined function or variable 'endfunction'.
Caused by:
Undefined function or variable 'endfunction'.
I tried re-installing the toolbox and rehasing the toolbox cache but it does not matter. Also, if I try to use
maxEpochs = 150;
miniBatchSize = 27;
shuffle = 'never';
cpu = 'cpu';
options = trainingOptions('sgdm', ...
'MaxEpochs',maxEpochs, ...
'MiniBatchSize',miniBatchSize, ...
'Shuffle', shuffle), 'ExecutionEnvironment' , cpu);
I get this error message:
>> net = trainNetwork(X,Y,layers,options);
Error using trainNetwork (line 140)
Undefined function or variable 'endfunction'.
Caused by:
Undefined function or variable 'endfunction'.
It looks like while using the CPU for computation the function does not even start.
Thanks in advance.

  0 Comments

Sign in to comment.

2 Answers

Answer by Walter Roberson
on 27 Oct 2017
 Accepted Answer

endfunction is for Octave code not MATLAB

  4 Comments

Show 1 older comment
Thank you that was it. I removed any conflicting Octave codes found in my path. Now it works.
@Walter I am facing same type problem! I also use your suggestion ( dbstop if caught error ) but it is same. What should I do? In my PC neural network toolbox already installed.
When I run my code it gives me this error
Undefined function or variable 'batchNormalizationLayer'.
Error in leafRNN (line 30)
batchNormalizationLayer
batchNormalizationLayer needs R2017b or later.

Sign in to comment.


Answer by Shounak Mitra on 31 Oct 2017
Edited by Walter Roberson
on 31 Oct 2017

options = trainingOptions('sgdm', ...
'MaxEpochs',maxEpochs, ...
'MiniBatchSize',miniBatchSize, ...
'Shuffle', shuffle), 'ExecutionEnvironment' , cpu);
You might want to remove the bracket after shuffle? ;-)

  0 Comments

Sign in to comment.