How to generate code from a trained LSTM network using MATLAB/Simulink?
14 ビュー (過去 30 日間)
MathWorks Support Team 2020 年 9 月 9 日
Is code generation from a trained LSTM network supported, and if so, how? There appear to be different approaches to generate code from a trained LSTM network while working without/with Simulink.
MathWorks Support Team 2023 年 11 月 17 日 0:00
編集済み: MathWorks Support Team 2023 年 11 月 17 日 14:52
In order to generate code from a trained LSTM network using MATLAB, there are different approaches:
(a) Generate C/C++ code using MATLAB Coder:
From MATLAB R2020a onwards, you can generate code for ARM Cortex-A CPUs. Refer to the blog post below on how to get started with deep learning models on ARM Cortex-A with MATLAB:
Another example is here: https://www.mathworks.com/help/coder/ug/code-generation-for-lstm-network-on-raspberry-pi.html
From MATLAB R2020b onwards, you can generate C++ code for an LSTM network, a stateful LSTM network, or a bidirectional LSTM network that uses the Intel® MKL-DNN library.
(b) Generate CUDA code using GPU Coder:
From R2019b onwards, you can generate code for NVIDIA GPUs. See the following documentation link for more information:
From R2020b onwards, using MATLAB Coder or GPU Coder, you can use coder.loadDeepLearningNetwork and other associated functions to run inference in a MATLAB Function block. This will support accelerated simulation and code generation for both CPU or GPU targets. The following link illustrates the workflow: