Error using classreg.learning.FullClassificationRegressionModel.prepareDataCR (line 213) X must be a numeric matrix.
Show older comments
Why do I get this error when running the "Deep Learning Example: Feature Extraction using AlexNet and CIFAR-10 Dataset"?
"Error using classreg.learning.FullClassificationRegressionModel.prepareDataCR (line 213) X must be a numeric matrix."
4 Comments
Adam Danz
on 1 Nov 2019
I've never worked with any component listed in the question and am 100% unfamiliar with all of it. Yet, I'd bet my next paycheck that some input variable is not a numeric matrix but it should be.
Guillaume
on 1 Nov 2019
Melvyn Smith's comment originally posted as an answer moved here:
That much is apparent from the error code itself. However, this is MATLAB demonstration code (with the images downloaded by the code itself, so I assume they are OK) downloaded from the MATLAB website, here:
https://uk.mathworks.com/videos/using-feature-extraction-with-neural-networks-in-matlab-1492009542601.html
So, why the error?
I am relatively new to deep learning and in the process of deciding whether to use MATLAB for my deep learning needs. I had thought there would be lots of support for it but other than a few introductory videos on their website, there does not seem to be a lot.
Guillaume
on 1 Nov 2019
I don't have the toolbox so can't test the example.
The obvious question is what is X then? Set matlab to break into the debugger when it encounters an error with:
dbstop if error
run the example the code and when it breaks into the debugger, look at the class and content of X.
Adam Danz
on 1 Nov 2019
I googled the demo you mentioned because no link was provided. It led to a file exchange by Math Works and someone else has recently left a comment on that page with the same error. Actually, there are quite a few errors listed in the comments.
I'm unfamiliar with the toolbox and we don't have much info here. If the demo is just meant to be run without any user inputs then the error may be due to an incompatible matlab release/version.
Answers (2)
Chirdpong Deelertpaiboon
on 12 Apr 2022
1 vote
I hope this is not too late for your question. I just found the answer from this post
This works for me. There are two lines from the example code that need to correct. The first one is
trainingFeatures = activations(convnet, trainingSet, featureLayer,'OutputAs','rows');
The second one is
testFeatures = activations(convnet, testSet, featureLayer,'OutputAs','rows');
Melvyn Smith
on 1 Nov 2019
0 votes
Categories
Find more on Deep Learning Toolbox 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!