The goal E University
Image classification with convolutional networks
Build a CNN, understand convolution and receptive fields, and look inside the network to see what it has actually learned.
- Knowledge nodes
- 48
- From zero
- about 37 h
- Labs
- 6
See what you already know — no account
The diagnostic removes what you already know, so your path is usually much shorter.
What you can do afterwards
- DConvolution by hand
- DWhat does the network see? Images through the layers
- EConvolutional networks (CNNs)
- EImage preprocessing and augmentation
- ECNN architectures: LeNet to ResNet
- FObject detection
- FSegmentation
- DMNIST from scratch
- EData augmentation in practice
- EImage classification end to end
- EVisualising what a CNN sees
Labs along the way
You write the code. Tests you cannot see decide whether it holds up.
Lab: a neural network in pure NumPy — forward, backprop, gradient checkDa sandbox · about 75 minLab: dot product, norm and cosine similarityDin the browser · about 40 minLab: gradient descent from scratchDin the browser · about 50 minLab: matrix multiplication and one layer of a neural networkDin the browser · about 45 minLab: tensors, autograd and your first training loopDa sandbox · about 50 minLab: train a digit classifier in PyTorchDa sandbox · about 60 min
The whole path
Everything the goal builds on, grouped by level and in the order it builds on itself. Show on the map
AExplorer3 knowledge nodes
BInvestigator6 knowledge nodes
CBuilder9 knowledge nodes
- Functions and coordinate systems
- Programming logic — variables, conditions, loops
- Python — the basics
- Python — lists, loops and dictionaries
- Statistics — mean, median and spread
- Digital representation: text, images and audio
- Linear regression: fitting a straight line to data
- Neural networks — the intuition
- Images as matrices
DAI developer17 knowledge nodes
- Derivatives and optimisation
- Gradient descent
- Vectors
- Matrices and matrix multiplication
- Convolution by hand
- Linear regression with several features
- Neural networks — the forward pass with matrices
- Activation functions
- Backpropagation
- What does the network see? Images through the layers
- NumPy — arrays and vectorisation
- Overfitting and generalisation
- PyTorch — tensors and autograd
- Dataloaders, batches and epochs
- Training, validation and test
- Train a neural network in PyTorch
- MNIST from scratch
EUniversity11 knowledge nodes
- Convolutional networks (CNNs)
- Vanishing and exploding gradients
- Image preprocessing and augmentation
- Residual connections
- CNN architectures: LeNet to ResNet
- Computer vision — the basics
- Regularisation: dropout, weight decay, early stopping
- Data augmentation in practice
- Transfer learning
- Image classification end to end
- Visualising what a CNN sees