What are the components of a Cnn?
Convolutional Layer: Applies filters to the input image to extract features like edges or textures. Each filter slides over the image, producing a feature map.
Activation Function (ReLU): Introduces non-linearity by setting negative values to zero, allowing the network to learn complex patterns.
Pooling Layer: Reduces the spatial size of the feature maps, often using max pooling, which selects the highest value in a region, making the network more computationally efficient.
Normalization (Batch Normalization): Normalizes the output of the previous layer to stabilize and speed up training, ensuring that values are centered and scaled properly.
Fully Connected Layer: Combines features from the convolutional layers for the final classification task.
Whats the problem of sigmoid?
e functional is expensive to compute
What gets better with tanh?
Why is ReLu good?
What are problems?
What are solutions?
What are further developments after leaky relu?
Which activation function is common in transformers?
What is the kernel size in convolution?
Size of the filter. Hyperparameter
How does a filter in convolution layers work?
How are different rgb channels handeled in convolution?
One filter per channel
Outputs are added,
than bias is added
What are other hyperparameters when it comes to filters?
Number of filters,
Padding
Stride
What is common with padding?
Very common: Set P = (K – 1) / 2 to make output have same size as input! (called same padding)
How to calculate the receptive field?
Important to consider while designing an cnn to cover the image
—> Stride can help to get a bigger receptive field
What does stride?
What is the stride when moving only one field at a time?
How do i calculate the output size of filter?
How to calculate the learnable parameters?
Number of fields in a filter:
How to calc the number of operations?
outputs * Filter size
What is dilation?
Filter with gaps
expansion of the receptive field
Whats pooling how does it work?
What happens when going trough the net?
What are we doing in batch normalization?
In batch normalization, we normalize the output of a layer by adjusting and scaling the activations. It calculates the mean and variance of a mini-batch, then shifts and scales the values to ensure they are centered (mean = 0) and have a standard deviation of 1.
This stabilizes and speeds up training by reducing internal covariate shift, allowing higher learning rates and improving overall performance.
• Makes deep networks much easier to train
• Allows higher learning rates, faster convergence
• Networks become more robust to initialization
• Acts as regularization during training
• Zero overhead at test-time: can be fused with convolutional layer
Last changed2 months ago