Max Pooling Layer Tuning

5 views (last 30 days)
Jahetbe
Jahetbe on 1 Sep 2023
Commented: Jahetbe on 2 Sep 2023
Hello,
I'm currently working on implementing a CNN for a regression problem, and I've encountered an issue when using the maxPooling2dLayer with a poolSize greater than 1. Here's the relevant part of my code:
Layers = [imageInputLayer([NIV 1 1])
convolution2dLayer(5, 15, 'Padding', 'same')
batchNormalizationLayer
reluLayer
maxPooling2dLayer(2) % (poolSize > 1 leads to an error!!!)
reluLayer
dropoutLayer(0.5)
fullyConnectedLayer(1)
regressionLayer];
The problem arises when I try to set the poolSize in the maxPooling2dLayer to a value greater than 1. I receive the following errors:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Error using trainNetwork (line 183)
Invalid network.
Error in CNN (line 280)
net = trainNetwork(XTrain, YTrain, Layers, Options);
Caused by:
Layer 5: Input size mismatch. Size of input to this layer is different from the expected input size.
Inputs to this layer:
from layer 4 (output size 6×1×15)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
I'm seeking assistance to resolve this issue. Any guidance or suggestions you could provide would be greatly appreciated.
Thank you!
  2 Comments
Matt J
Matt J on 1 Sep 2023
NIV is missing.
Jahetbe
Jahetbe on 1 Sep 2023
NIV is the 6

Sign in to comment.

Accepted Answer

Matt J
Matt J on 1 Sep 2023
Your input image's spatial dimensions are 6x1. This is not compatible with a 2x2 maxpooling filter. Did you mean to have 2x1 pooling instead? If so,
maxPooling2dLayer([2,1])
  3 Comments
Matt J
Matt J on 2 Sep 2023
I'm glad, but please Accept-click the answer to indicate so.

Sign in to comment.

More Answers (0)

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!