How can I avoid "Unsupported custom layer" error during Code Generation using %#codegen pragma in MATLAB R2025a?
5 ビュー (過去 30 日間)
古いコメントを表示
MathWorks Support Team
2025 年 8 月 28 日
回答済み: MathWorks Support Team
2025 年 8 月 29 日
While generating C code for my "tf_predict.m" MATLAB function which loads and calls my neural network to produce output predictions, I encountered this error:
"Unsupported custom layer 'kConcatenate1Layer789'."
Code generation does not support custom layers without '%#codegen' defined in the class definition.
Does this mean the custom concatenate layer is unsupported by MATLAB Coder? How do I fix it?
採用された回答
MathWorks Support Team
2025 年 8 月 28 日
This is expected. This error indicates that your custom layer "kConcatenate1Layer789" lacks the required "%#codegen" pragma in its class definition.
This has nothing to do with the built-in concatenation operation, but rather that the custom layer class must be explicitly marked for code generation as described in this MathWorks documentation for defining custom layers for code generation.
Add the pragma like this:
classdef kConcatenate1Layer789 < nnet.layer.Layer %#codegen
...
end
Also, I suggest running the following code to verify full compatibility of your network with C code generation. This can flag layers and syntax which is not supported for code generation.
analyzeNetworkForCodegen('<model>.mat')
For more information, please refer to this MathWorks documentation on "analyzeNetworkForCodegen".
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Input Specification についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!