I am studying a bit about deep learning and CNNs
. I understand the math. However, I am a bit stuck on a basic concept related to filters.
In Convolutional layers, the number of filters corresponding to the depth. For instance, if I have 128 filters, I'll apply each of these individually to the image. Since all these filters are being applied to the image, would this not make it Fully connected? (image is connected to each filter).
Can I have filters of different sizes in a single layer?
1 Answer
In each layer of a CNN
you have a number of filters. Suppose for the first convolutional layer you have $C_{out} = 10$ filters. The customary dimension for each of these filters is $(C_{input}, H, W)$ where $C_{input}$ represents the number of channels of the inputs of the current convolutional layer. $H$ and $W$ represents the height and width of the window of the filter. Consider this point that you are convolving each filter with the inputs. An input is a volume with $(C_{input}, H^{'}, W^{'})$ dimension. What you do as convolution is convolving these volumes, each filter and the input. The height and the width of the input $H^{'}$ and $W^{'}$ are the same or bigger than the height and width of each filter, but the depth or the number of the channels of each filter has to be the same as the input channel. After convolving each filter you will have a two-dimensional activation map. By stacking the result of each filter you will have $C_{output}$ number of output feature maps which is equal to the number of filters.