Clear Filters
Clear Filters

Different behavior of 'activations' function of Neural Network Toolbox between 2017b and 2018a.

3 views (last 30 days)
If I tried CNN sample code obtained here, I got error on 2018a and not on 2017a. Is it a bug or expected behavior? How can I fixed it on 2018a?
  1. Obtained sample code here.https://jp.mathworks.com/matlabcentral/fileexchange/57280-cnn---transfer-learning-example
  2. Run classifyFlowers.m
  3. Hit following error
Error: classifyFlowers (line 39)
classifier = fitcsvm(trainingFeatures, trainingSet.Labels);
Findings:
I found that the size of matrix of returned value from 'activations' function was different.
trainingFeatures = activations(convnet, trainingSet, featureLayer, 'MiniBatchSize', 1);
2017b (Expected):
>> size(trainingFeatures)
ans =
112 4096
2018a (Not Expected):
>> size(trainingFeatures)
ans =
1 1 4096 112

Accepted Answer

Johannes Bergstrom
Johannes Bergstrom on 4 May 2018
This is the expected behavior. Please see the release notes under 'Functionality Being Removed or Changed', https://www.mathworks.com/help/nnet/release-notes.html
Default output format of activations: In R2018a, the new default output format of activations is a 4-D array. To reproduce the old default behavior, set the 'OutputAs' value to 'rows'.

More Answers (0)

Categories

Find more on Sequence and Numeric Feature Data Workflows 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!