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

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

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)

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 Deep Learning Toolbox in Help Center and File Exchange

Products

Release

R2022b

Asked:

on 7 Feb 2024

Answered:

on 10 Feb 2024

Community Treasure Hunt

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

Start Hunting!