Can anyone explain how to do concatenation of flatten outputs from CNN with the outputs from DNN?

2 views (last 30 days)
I have defined two layers
1 CNN_Layer which takes input size of 12*25*1 and implment successive Con2D filters, MaxPooling ,etc and finally flatten the inputs from the final layer.
2 DNN_Layer which takes input size of 4*1 and ouput the same as the input(Just takes raw input and give us the raw input without changing it) .
My goal is to concatenat the faltten outputs from CNN_Layers and the outputs from DNN_Layers for further training using FCC layers.
The output from CNN_Layer after flatten is dim 864, so I expact 868 after concatenation .
Is there any way we can do that in matlab?
I know how to do that in Python.
combined_model= concatenate([CNN_Layers.output, DNN_Layers.output])
  1 Comment
Poorya Khanali
Poorya Khanali on 18 Feb 2021
Hi, could you find any solution to your problem? This is exactly the problem that I am currently facing? Any help would be appreciated.

Sign in to comment.

Answers (1)

Mohammad Sami
Mohammad Sami on 23 Jul 2020
Try using the concatenation Layer, introduced since R2019a.
https://www.mathworks.com/help/releases/R2020a/deeplearning/ref/nnet.cnn.layer.concatenationlayer.html
  1 Comment
Wabi Demeke
Wabi Demeke on 1 Aug 2020
This is multiple inputs(input1 dim(12*25*1) & Input 2 dim(1*4*1)) problem. The data need to be combined before it feed into and I don't want that at the beginning( https://www.mathworks.com/help/deeplearning/ug/multiple-input-and-multiple-output-networks.html#mw_4f57107d-31b4-4432-8d4f-2065ce9008f0). I beleive concatenationlayer/depthconcatenationlayer works as long as the input layer takes input1 or input2.

Sign in to comment.

Categories

Find more on Get Started with Statistics and Machine Learning Toolbox 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!