Does the MATLAB has a convolutional LSTM layer
19 views (last 30 days)
Show older comments
I am trying to implement a convolutional LSTM network for image classification. As the existing LSTM/Bi-LSTM layers are for 1D vector/series, I am unable to have an LSTM layer right after a convolutional layer. Is there any way to implement a convolutional LSTM in Matlab?
3 Comments
Mohammad Sami
on 20 Jun 2024
While the following matlab example is not a direct answer to your question, it maybe possible for you to adapt it to your needs.
Accepted Answer
Garmit Pant
on 20 Jun 2024
Hello Araa
A convLSTM layer is a recurrent layer that uses convolution operations internally instead of matrix multiplications. MATLAB currently does not support the convLSTM layer.
Kindly refer to the following workaround to use LSTM networks for image classification:
- Use CNN Layers to extract features from image. The final result of Convolution must be a 1-D Vector.
- Use this 1-D vector to feed it to LSTM which will again output a new 1-D Vector.
- Output of LSTM can be used to classify the image by feeding it to a ‘classificationLayer’.
MATLAB also offers the functionality to define custom layers. You can refer to the following MathWorks documentation to understand the process of defining custom layers
Additionally, you can also check the following MathWorks documentation link to know the list of supported deep learning layers in MATLAB using the :
I hope you find the above explanation and suggestions useful!
More Answers (0)
See Also
Categories
Find more on Image Data Workflows 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!