What is a Convolutional Neural Network?
A Convolutional Neural Network (CNN
) is a class of deep neural networks that excels at processing data with a grid-like topology, such as images. By applying convolutional filters, CNNs automatically learn hierarchical features—edges, textures, objects—directly from raw pixels.
Core Building Blocks
- Convolution Layer: Slides filters over the input to produce feature maps.
- Activation (ReLU): Introduces non‑linearity.
- Pooling Layer: Reduces spatial dimensions (e.g., MaxPooling).
- Fully Connected Layer: Flattens features for classification.
- Dropout: Prevents overfitting by randomly deactivating neurons.
Interactive Architecture Diagram
Input
Conv 1
ReLU 1
Pool 1
FC
Softmax
Training a CNN
Training involves feeding labeled images, computing loss, and updating weights via backpropagation with an optimizer (e.g., Adam). Key hyper‑parameters include learning rate, batch size, number of epochs, and regularization techniques.