Clear Filters
Clear Filters

Error using dnnfpga.co​mpiler.cod​egenfpga. Layer 'block2b_add' has multiple inputs.

6 views (last 30 days)
Hello,
I have a pretrained NN imported from TensorFlow. I have imported and replaced the only one placeholder layer and the DAGNetwork seems to be ok. However, when I try to compile the NN with Deep Learning HDL Toolbox, I get the following error:
Error using dnnfpga.compiler.codegenfpga
Layer 'block2b_add' has multiple inputs. Specify which input of layer 'block2b_add' to use.
Error in dnnfpga.apis.Workflow/compileNetwork
Error in dnnfpga.apis.Workflow/compile
Error in generate_HDL_from_NN (line 18)
hW.compile;
block2b_add has two inputs and connections are defined.
Please find the NN in the LINK.
Could anyone help me to understand the issue?
Thank you in advance
---------------------------
Software version:
Deep Learning HDL Toolbox Support Package For Intel FPGA And SoC Devices 21.2.4
Matlab R2021b Update 6 (9.11.0.2207237)
Ubuntu 20.04
---------------------------
  3 Comments
Rubén
Rubén on 4 May 2023
Edited: Rubén on 5 May 2023
I'm sorry, but that message is not prompted while importing savedModel or NN.mat (at least with my Matlab version).
I have replaced EfficienB0_p1_C1.kRescalingLayer246310 by a scalingLayer - which has the same behaviour. However, I get the same error message while compiling.
Please, find in the following link the new NN: NN_RescalingLayer_replaced.mat
Aravind Devarakonda
Aravind Devarakonda on 12 May 2023
Hi Ruben
Thank you for replacing the network originally attached.
Regarding your inquiry, I have observed that the network given has a few layers that are not yet supported in the Deep Learning HDL Toolbox and are planned to be integrated in future updates.
These layers include :
1) Scaling Layer
2) Layer Normalization Layer
3) Swish Layer and,
4) FlattenCStyleLayer immediately followed by Convolution2DLayer is also not supported.
Currently, a flatten layer must be followed by either fully connected layer(s) or a join layer (eg. depth concatenation, addition) followed by fully connected layer(s).
As a workaround, I would suggest implementing the Scaling Layer as a custom layer by following the steps available on this documentation link -
https://in.mathworks.com/help/deep-learning-hdl/ug/create-deep-learning-processor-configuration-for-custom-layers.html
Regarding FlattenCStyleLayer immediately followed by Convolution2DLayer, I suggest replacing it with a fully connected layer.

Sign in to comment.

Answers (1)

Rubén
Rubén on 3 May 2023
Hello,
I tried to merge zero padding layer into group convolution layer because issue https://www.mathworks.com/support/bugreports/2661508 according to this comment https://es.mathworks.com/matlabcentral/answers/1947228-error-compiling-resnet50-deep-learning-hdl-toolbox-support-package#comment_2730974 but I get the same error.
Could you confirm this is the sme or a different issue?

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!