0
$\begingroup$

I have two question about convolutional neural networks. The first:

after we do a layer of convolution and get a set of feature maps are the next convolutional layer filters applied distinctly for every feature map? Is there ever a moment when different feature map are mixed in some way before the fully connected layers? In my understanding every feature map learn a particular feature so for example one map fins horizontal lines and another vertical lines, so it would make sense that an higher order feature map would like to integrate both information from vertical and horizontal line to learn higher level feature.

The second:

I understood how the filter of a convolutional layer could be 3 dimensional since the input could be 3 dimensional, but after you apply the 3 dimensional filter you get 2 dimensional feature map, does it mean that other than the first convolutional layer all the others contain just 2 dimensional filters?

Are subsequent 3d filters the answer to the first question? since they actually get information from multiple feature map but if this is the case the ordering of the feature maps would have an influence on which of them get integrated together and which not.

$\endgroup$

1 Answer 1

1
$\begingroup$

after we do a layer of convolution and get a set of feature maps are the next convolutional layer filters applied distinctly for every feature map? Is there ever a moment when different feature map are mixed in some way before the fully connected layers? In my understanding every feature map learn a particular feature so for example one map fins horizontal lines and another vertical lines, so it would make sense that an higher order feature map would like to integrate both information from vertical and horizontal line to learn higher level feature.

It depends. There are several types of Convolutional Layers. In Normal Convolutions such mixing occurs, yes. In Depthwise Convolutions it doesn't, and each channel is kept separate. In Depthwise Separable Convolutions the mixing occurs too. See here for the distinction and illustrations: Depthwise separable convolutions for machine learning.

But in general, Normal Convolutions are used and these do mix the channels in their outputs, yes.

I understood how the filter of a convolutional layer could be 3 dimensional since the input could be 3 dimensional, but after you apply the 3 dimensional filter you get 2 dimensional feature map, does it mean that other than the first convolutional layer all the others contain just 2 dimensional filters? Are subsequent 3d filters the answer to the first question? since they actually get information from multiple feature map but if this is the case the ordering of the feature maps would have an influence on which of them get integrated together and which not.

The filter is 3 dimensional only if you're outputting a single channel, otherwise it's actually 4 dimensional! It's dimensions are $\text{numer of input ch.}\times\text{number of output ch.}\times\text{height}\times\text{width}$. See here again, where it's shown it's a 4D tensor as I described.

The situation you described could occur if the input to first layer is 3 dimensional (a RGB image, for example), and you output a single channel in this layer and every subsequent one. This way, the first filter would be 3D ($\text{numer of input ch.}\times1\times\text{height}\times\text{width}$) and the subsequent ones would be 2D ($1\times1\times\text{height}\times\text{width}$).

$\endgroup$
1
  • $\begingroup$ In the link you gave me it says "In the regular 2D convolution performed over multiple input channels, the filter is as deep as the input and lets us freely mix channels" doesn't this mean that each filter is basically 3D with depth equal to the number of feature maps of the previous layer? If it so wouldn't this mean that the number of learnable weights increases in each layer according to the number of feature maps we created so far? $\endgroup$
    – Claudio P
    Jul 18, 2019 at 19:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.