Lecture 9 - CNNs Flashcards
What is a Convolutional Neural Network (CNN)?
A CNN is a type of deep learning model designed for processing structured grid data like images. It uses convolutional layers to automatically and adaptively learn spatial hierarchies of features from input images.
What is the purpose of convolutional layers in CNNs?
Convolutional layers apply a set of learnable filters (kernels) to the input image to extract local features, such as edges, textures, and patterns, reducing the number of parameters and computations required.
Define “filter” or “kernel” in the context of CNNs.
A filter or kernel is a small matrix used to convolve with the input data to produce feature maps. It slides over the input and performs element-wise multiplication and summation.
What is the role of pooling layers in CNNs?
Pooling layers reduce the spatial dimensions of the feature maps, retaining the most important information and making the network invariant to small translations of the input.
Describe “ReLU” activation function.
The ReLU (Rectified Linear Unit) activation function applies the function
f(x)=max(0,x) to each element of the input, introducing non-linearity and helping to prevent vanishing gradients.
What is a fully connected layer in a CNN?
A fully connected layer connects every neuron in one layer to every neuron in the next layer, typically used at the end of the network to combine the extracted features for classification or regression.
Explain the concept of “stride” in convolution operations.
Stride refers to the number of pixels by which the filter matrix shifts over the input matrix. A larger stride reduces the spatial dimensions of the output feature map.
What is padding in CNNs?
Padding involves adding extra pixels around the border of the input image to control the spatial dimensions of the output feature maps and preserve important information at the edges.
Define “feature map” in the context of CNNs.
A feature map is the output of a convolutional layer after applying filters to the input image, representing the activation of specific features detected by the filters.
What is batch normalization?
Batch normalization is a technique to stabilize and accelerate the training of deep neural networks by normalizing the inputs of each layer to have a mean of zero and variance of one.
Describe the concept of “dropout” in CNNs.
Dropout is a regularization technique where randomly selected neurons are ignored (dropped out) during training, reducing overfitting by preventing neurons from co-adapting too much.
What are some common architectures of CNNs?
Common CNN architectures include LeNet, AlexNet, VGGNet, GoogLeNet (Inception), and ResNet, each with different configurations of convolutional and pooling layers.
Write the formula for a 2D convolution operation.
Provide the formula for the ReLU activation function.
What is the formula for the output size of a convolutional layer?