train network error. reshape number of elements must not change. Use [] to automatically calculate the dimension size.
12 次查看(过去 30 天)
显示 更早的评论
my input is a combined datastore of - 28x28 double input, and 1x1 categorical label.
layers = [
imageInputLayer([28 28 1],"Name","imageinput","Normalization","none")
fullyConnectedLayer(1,"Name","fc_2")
softmaxLayer("Name","softmax")
classificationLayer("Name","classoutput")];
miniBatchSize = 28;
options =
trainingOptions('adam', ...
'ExecutionEnvironment','cpu', ...
'MaxEpochs',84, ...
'MiniBatchSize',miniBatchSize, ...
'GradientThreshold',2, ...
'Shuffle','never',...
'Verbose',0, ...
'Plots','training-progress');
net = trainNetwork(cdsTrain,layers,options);
i get an error at trainnetwork script:
Number of elements must not change. Use [] as one of the size inputs to automatically calculate the appropriate size for that dimension.
Caused by:
Error using reshape
Number of elements must not change. Use [] as one of the size inputs to automatically calculate the appropriate size for that dimension.
I have tried quite a few similar designs for layers, by adding a few more layers in different manners, but they all display the same error, so i suspect it has something to do with the fully connected layer.
1 个评论
Arpana Singh
2022-10-13
Plz help me with this error,
although i have checked my array, everyting sems fine.plz help
code
layers = [
sequenceInputLayer(inputSize)
lstmLayer(numHiddenUnits)
fullyConnectedLayer(numHiddenUnits)
regressionLayer
];
options = trainingOptions('adam', ...
'MaxEpochs',100, ...
'GradientThreshold',0.01, ...
'InitialLearnRate',0.0001);
net= trainNetwork(XTrain,YTrain,layers,options);
geeting the erron in line -net= trainNetwork(XTrain,YTrain,layers,options);
Error using trainNetwork
Number of elements must not change. Use [] as one of the size inputs to automatically calculate the appropriate size for
that dimension.
Error in LSTM (line 27)
net= trainNetwork(XTrain,YTrain,layers,options);
Caused by:
Error using reshape
Number of elements must not change. Use [] as one of the size inputs to automatically calculate the appropriate size
for that dimension.
>>
回答(2 个)
Mahesh Taparia
2020-5-12
Hi
You are having an input of size MxN and you are directly reshaping it to a vector of length 1x1. Before the fullyConnectedLayer, there is a need to vectorized the features. To do this you can use flattenLayer before the fullyConnectedLayer. For more information, you can refer to this documentation of flattenLayer.
0 个评论
Nikolina Jarak
2021-5-9
I also got this error. Can anyone help mw how to solve?
caused by: error using reshape number of elements must not change. use [] as one of the size inputs to automatically calculate the appropriate size for that dimension.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Data Workflows 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!