trainNetwork RESHAPE error line 170

조회 수: 9(최근 30일)
Elaine Todd
Elaine Todd 2020년 2월 3일
댓글: Namasi Gomathi 2020년 5월 10일
Hi. I keep getting this error
Error using trainNetwork (line 170)
To RESHAPE the number of elements must not change.
I'm not quite sure what I am doing wrong since the trainNetwork function is kinda hard to understand without spending hours on going through it.
This is my code. My X is a 100x5 double and my Y is a 100x1 categorical.
layers = [sequenceInputLayer([100,5,1])
flattenLayer
bilstmLayer(100)
fullyConnectedLayer(10)
reluLayer
fullyConnectedLayer(2)
softmaxLayer
classificationLayer];
trained_net = train2(X,Y, layers);
Train2 function
function trained_net = train2(X,Y, layers)
% creates adam optimizer
options = trainingOptions('adam', 'InitialLearnRate',3e-4, ...
'SquaredGradientDecayFactor',0.99, 'MaxEpochs',20, ...
'MiniBatchSize',10, 'Plots','training-progress');
% trains network
trained_net = trainNetwork(X,Y,layers,options);

답변(1개)

Vinai Datta Thatiparthi
Vinai Datta Thatiparthi 2020년 2월 6일
Hello Elaine,
The code that you have written fails in the input validation phase of trainNetwork. The output size of the network does not match the size of the response data. Since you are defining a classification network, the output is a “classes mismatch” error. You may have to revisit the definition of layers to solve the problem.
Consider using the MATLAB debugging tools to pinpoint areas of code which is creating the error.
Hope this helps!
  댓글 수: 3
Namasi Gomathi
Namasi Gomathi 2020년 5월 10일
Im facing the same problem on R2020a

댓글을 달려면 로그인하십시오.

Community Treasure Hunt

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

Start Hunting!

Translated by