How to use LSTM and CNN to handle a regression problem?
168 ビュー (過去 30 日間)
表示 古いコメント
Hi, everyone!
I am working on a solar power prediction problem. The inputs of the network are some kinds of meteological data, and the outputs are multiple time-series solar power curves. I want to build a neural network combining LSTM and CNN to realize this function. I build a network without error like this:
layers1 = [...
sequenceInputLayer([25 168 1],'Name','input') % 25 is the number of feature dimension of meteological data, and 168 is the length of time series
sequenceFoldingLayer('Name','fold')
convolution2dLayer(5,1,'Padding','same','WeightsInitializer','he','BiasInitializer','zeros','Name','conv');
reluLayer('Name','relu')
sequenceUnfoldingLayer('Name','unfold')
flattenLayer('Name','flatten')
gruLayer(512,'OutputMode','sequence','Name','gru')
fullyConnectedLayer(25,'Name','fc2')
regressionLayer('Name','output')
];
lgraph = layerGraph(layers1);
lgraph = connectLayers(lgraph,'fold/miniBatchSize','unfold/miniBatchSize');
analyzeNetwork(lgraph);
However, the flattenLayer destory the time series, and the training cannot be finished.
Therefore, is there any solution about this problem? Or is there any other correct network can realize the same function?
Thanks in advance for your time and kindly help!
1 件のコメント
Davey Gregg
2022 年 4 月 6 日
編集済み: Davey Gregg
2022 年 4 月 6 日
How are you arranging the data into predictors and responses? I'm trying to do something similar and I just keep getting the "Invalid training data." error.
回答 (3 件)
H Sanchez
2021 年 4 月 30 日
To Whoever is looking for a CNN-RNN
I have created a simple template for hybrids cnn-rnn for time series forecasting. https://www.mathworks.com/matlabcentral/fileexchange/91360-time-series-forecasting-using-hybrid-cnn-rnn
Abolfazl Nejatian
2020 年 12 月 10 日
編集済み: KSSV
2022 年 8 月 7 日
Dear Gupta,
i have written a prediction code that uses CNNs and LSTM to forecast future values.
please visit my Mathworks page,
5 件のコメント
Imola Fodor
2022 年 3 月 3 日
what are the changes we need for the real time prediction? i have developed a regression model (for sysid) 1dcnn + LSTM on 1500 timesteps, and it works well, but when giving an input of 500 it is performing badly..i suppose the model needs the full input sequence to perform well, which is not what i would need
Raunak Gupta
2020 年 7 月 19 日
Hi,
I am unable to understand what exactly you are doing with input and output of the network, but I think its related to either sequence to sequence regression or time series forecasting. You may follow below mentioned examples for both cases and see if it matches with your application.
4 件のコメント
参考
カテゴリ
Find more on Deep Learning Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!