Layers argument must be an array of layers or a layer graph.

6 views (last 30 days)
XTrain = xlsread('R1_all_data.xlsx',1,'A1:G3788')';
YTrain = xlsread('R1_all_data.xlsx',1, 'H1:H3788')';
XTest = xlsread('R2_all_data.xlsx',1, 'A1:G3788')';
YTest = xlsread('R2_all_data.xlsx',1, 'H1:H3788')';
inputSize = 3788;
numResponses = 1;
numHiddenUnits = 5000;
layers = { sequenceInputLayer(inputSize)
lstmLayer(numHiddenUnits)
fullyConnectedLayer(numResponses)
regressionLayer };
opts = trainingOptions('adam', 'MaxEpochs', 1000, 'GradientThreshold', 0.01, 'InitialLearnRate',0.0001);
net = trainNetwork(XTrain,YTrain,layers,opts);
YPred1=predict(net,XTest)
  1 Comment
Matt J
Matt J on 7 Feb 2024
Edited: Matt J on 7 Feb 2024
You have posted only code. Do you have a question about it? If you are getting error messages please copy/paste them.

Sign in to comment.

Answers (1)

Krishna
Krishna on 10 Feb 2024
Hello PRAMOD,
It appears that the issue you're encountering stems from an improper initialization of the layers object. The mistake was made by using curly braces {} to initialize:
layers = { sequenceInputLayer(inputSize)
lstmLayer(numHiddenUnits)
fullyConnectedLayer(numResponses)
regressionLayer }
Instead, you should initialize using square brackets [] like this:
layers = [ sequenceInputLayer(inputSize)
lstmLayer(numHiddenUnits)
fullyConnectedLayer(numResponses)
regressionLayer ]
I hope this correction resolves your problem.

Categories

Find more on Sequence and Numeric Feature Data Workflows in Help Center and File Exchange

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!