I really need help about LSTM.

6 visualizaciones (últimos 30 días)
Nazila Pourhajy
Nazila Pourhajy el 15 de Oct. de 2021
Respondida: Asim el 23 de Oct. de 2024
Hi everyone.
I have a data set of 500*8 and I have 8 features for price prediction. I used LSTM to predict the price per hour of the day (a total of 24 prices for 24 hours a day). But I do not know how much output size should be for first fullyConnectedLayer after lstmLayer. please guide me. Thankful.
This is my code:
numResponses = size(YTrain{1},1);
featureDimension = size(XTrain{1},1);
numHiddenUnits = 15;
layers = [ ...
sequenceInputLayer(featureDimension)
lstmLayer(numHiddenUnits,'OutputMode','sequence')
fullyConnectedLayer(?????) %%50
dropoutLayer(0.5) %%0.5
fullyConnectedLayer(numResponses)
regressionLayer];

Respuestas (1)

Asim
Asim el 23 de Oct. de 2024
Hello Nazila,
To determine the output size for the first fullyConnectedLayer after the lstmLayer, you generally want to consider the complexity of your problem and the amount of data you have. A common approach is to start with a number of neurons that is a multiple of the number of hidden units in the LSTM layer.
Given your setup, you have 15 hidden units in the LSTM layer. A reasonable starting point for the fullyConnectedLayer could be 50 neurons, as you suggested. This is often a good balance between model complexity and computational efficiency.
Here’s how you can modify your code:
numResponses = size(YTrain{1},1);
featureDimension = size(XTrain{1},1);
numHiddenUnits = 15;
layers = [ ...
sequenceInputLayer(featureDimension)
lstmLayer(numHiddenUnits,'OutputMode','sequence')
fullyConnectedLayer(50) %% Adjusted to 50 neurons
dropoutLayer(0.5)
fullyConnectedLayer(numResponses)
regressionLayer];
This configuration should work well for your price prediction task. If you find that the model is underfitting or overfitting, you can experiment with different numbers of neurons in the fullyConnectedLayer to see what works best for your data.
I hope it helps.

Categorías

Más información sobre Image Data Workflows en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by