neural networks

today i learned about neural networks

here’s a simple breakdown of what i learned.

convolutional neural networks are a type of deep learning model specifically designed for processing data with a grid like topology, like images. cnn’s are really good at finding local patterns in data through specialized layers.

here are the key parts:

  • convolutional layers
    • these are the learnable filters (kernels) that slide over the input data (like a magnifying glass sliding over a grid). each filter detects specific features like edges, textures, or colors. the process of applying these filters is convolution.
  • pooling layers
    • after the convolutional layers, pooling layers down sample the feature maps, reducing their spatial dimensions (for easier computation and model generalization). max pooling, a particular strategy for pooling, selects the maximum value within a given window, effectively capturing the most prominent feature in that region.
  • fully connected layers
    • once the features have been extracted and pooled, the data is flattened into a 1d vector. this vector is then passed through fully connected layers where each neuron is connected to every neuron in a previous layer. these features are responsible for combining the features to perform the final classification or regression task.

imagine it like this:

suppose youre reading a picture book

  • the convolutional layers are the individual pages that focus on a different parts of a scene
    • each page (filter/kernel) highlights certain details
  • the pooling layers are like the summary at the end of a chapter
    • they give you the broad idea without the specifics
  • the fully connected layer is like a conclusion where all the details are connected together
flowchart TD
    A["picture book"] --> B["convolutional layers\n(individual pages)"]
    B --> C["pooling layers\n(chapter summary)"]
    C --> D["fully connected layer\n(conclusion)"]

8 - 03/04/2025