Work Around for Convolution1DLayer

2 vues (au cours des 30 derniers jours)
Kevin Monahan
Kevin Monahan le 7 Août 2024
Commenté : le 17 Août 2024
I am trying to do code generation of a trained deep learning network however it uses a convolution1dlayer. It seems this is not currently supported by matlab. What are some possible solutions to this problem?

Réponses (4)

Aditya
Aditya le 7 Août 2024
Modifié(e) : Aditya le 7 Août 2024
Hi Kevin,
Please do refer to this MATLAB answer post by MathWorks Support Team on the same issue: Is code generation supported for "convolution1DLayer"? - MATLAB Answers - MATLAB Central (mathworks.com)
Hope this helps!

Ram Kokku
Ram Kokku le 7 Août 2024
Modifié(e) : Walter Roberson le 7 Août 2024
Convolution1DLayer supports code generation in the latest (R2024a) version of MATLAB. See the extended capabilities section : here - https://www.mathworks.com/help/deeplearning/ref/nnet.cnn.layer.convolution1dlayer.html

Steven Lord
Steven Lord le 7 Août 2024
Are you certain that you're using release R2024a? It appears from the Release Notes that support for generating code from this layer was added in release R2024a.
  3 commentaires
Ram Kokku
Ram Kokku le 8 Août 2024
@Kevin Monahan, use TargetLibrary=none (https://www.mathworks.com/help/coder/ref/coder.deeplearningconfig.html). Both MATLAB Coder and GPU Coder support TargetLibrary=none. so, you should be able to generate both C/C++ and CUDA. For Better performance, you may need to explicit enable hardware features like instructionset (AVX2, AVX512) and multi-threading. See https://www.mathworks.com/help/coder/ug/optimize-generic-c-cpp-code-performance.html for more details.
森
le 17 Août 2024
I meet the same problem when generating coder containg Convolution1DLayer using TargetLibrary=none, and I also use the version 2024a. So this means actualy version 2024a stiil does not support the code generation for Convolution1DLayer?

Connectez-vous pour commenter.


Matt J
Matt J le 7 Août 2024
Modifié(e) : Matt J le 7 Août 2024
Why not just use a convolution2dLayer? A 1D input is just a special case of a 2D input.
  2 commentaires
Kevin Monahan
Kevin Monahan le 7 Août 2024
I did not make the model. It was given to me pretrained. I need to take it and move it out of Matlab for future research.
Matt J
Matt J le 7 Août 2024
Modifié(e) : Matt J le 7 Août 2024
Why does that matter? It was given to you, but surely you can use replaceLayer to swap the 1D convolutional layers for 2D ones.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Deep Learning with GPU Coder dans Help Center et File Exchange

Produits


Version

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by