Max Pooling Layer Tuning

2 次查看(过去 30 天)
Jahetbe
Jahetbe 2023-9-1
评论: Jahetbe 2023-9-2
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!

采纳的回答

Matt J
Matt J 2023-9-1
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])

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Image Data Workflows 的更多信息

产品


版本

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by