Why accept Matlab no vector as a response when I use CNN with residual connection?

I train my own CNN model like this tutorial:
but I need no classification layer at the end my neural network, but regression layer. That's why I need to define a vector for each sample. All in all, I have to train a matrix(40*num_of_samples), which must be converted into a 4D array like this tutorial:
I get this error:
Invalid validation data. Y must be a vector of categorical responses.
Does someone know how I can fix this?

3 Comments

Can you please provide more information about inputs and outputs to your CNN? It will be good if you can provide code sample.
Let say this is my input images:
X_Train(:,:,3,3000) = rand(100);
my outputs are defined like this:
Y_4D_train=randn(1,1,40,3000);
and the data for validation:
X_Val(:,:,3,1000) = rand(100);
Y_4D_Val =randn(1,1,40,1000);
and then I did like the tutorial:
imageSize = [100 100 3];
pixelRange = [-4 4];
imageAugmenter = imageDataAugmenter( ...
'RandXReflection',true, ...
'RandXTranslation',pixelRange, ...
'RandYTranslation',pixelRange);
augimdsTrain = augmentedImageDatastore(imageSize,X_Train,Y_4D_train, ...
'DataAugmentation',imageAugmenter, ...
'OutputSizeMode','randcrop');
...
...
At the end:
trainedNet = trainNetwork(augimdsTrain,lgraph,options);

Sign in to comment.

Answers (0)

Categories

Find more on Deep Learning Toolbox in Help Center and File Exchange

Products

Release

R2019a

Asked:

on 22 May 2019

Commented:

on 26 May 2021

Community Treasure Hunt

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

Start Hunting!