What does the number of filters in a convolution layer convey?
How does this number effect the performance or quality of the architecture? I mean should we always opt for a higher numbers of filters? whats good of them? and How does people assign diffrent number of filters for different layers ? I mean looking at this question : How to determine the number of convolutional operators in CNN?
The answer specified 3 convolution layer with different numbers of filters and size, Again in this question : number of feature maps in convolutional neural networks you can see from the picture that, we have 28*28*6 filters for the first layer and 10*10*16 filter for the second conv layer. How do they come up with these numbers, Is this through trial and error? Thanks in advance


1 Answer 1


What does the number of filters in a convolution layer convey? - I usually like to think of filters as feature detectors. Although it depends on the problem domain, the significance # of feature detectors intuitively is the number of features (like edges, lines, object parts etc...) that the network can potentially learn. Also note that each filter generates a feature map. Feature maps allow you to learn the explanatory factors within the image, so the more # filters means the more the network learns (not necessarily good all the time - saturation and convergence matter the most)

How does this number affect the performance or quality of the architecture? - I don't think you will find a good answer for these types of question since we are still trying to formalize what is going on inside DL black box. Intuitively once again you will learn a more robust non-linear function the more filter banks you have however the performance is going to depend on the type of task and the data characteristics. You typically want to know what kind of data you are dealing with to determine the # parameters in your architecture (including filter). How many filters do I need? is more like asking how complex (specially) are the images in my dataset. There isn't any formal notion that relates # filters to performance. Its all experimental and iterative. Lots of trail and error forsure.

  • $\begingroup$ Good answer, adding to above points: CNNs, however, are no longer black boxes. You can actually see the features learned by feature maps. The number of filters that you set in a layer is to allow ENOUGH containers to network to learn relevant features (or their combinations). What is the sufficient number -> depends upon the dataset. Say, a CNN network at layer X needs at least 24 feature maps to learn important features, so you provide, say, 32, working on idea that you give network a breathing space and let it decide on it's own, maybe some out of 32 are redundant or slightly varied. $\endgroup$
    – MANU
    Mar 15, 2019 at 13:39

Your Answer

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

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