Convolutions from Scratch
A convolution is a tiny dense layer you slide across an image, sharing the same weights at every location.
Prerequisites: Phase 3 (Deep Learning Core), Phase 4 Lesson 01 (Image Fundamentals)
#Learning Objectives
- Implement 2D convolution from scratch using only NumPy, including the nested-loop version and a vectorised
im2col version
- Compute output spatial size for any combination of input size, kernel size, padding, and stride, and justify the
(H - K + 2P) / S + 1 formula
- Hand-design kernels (edge, blur, sharpen, Sobel) and explain why each one produces the pattern of activations it does
- Stack convolutions into a feature extractor and connect the depth-of-the-stack to the size of the receptive field
Full Access lessonKeep going. The rest of this lesson is one step away.
Unlock all 503 lessons, video, code, quizzes and every future update. Pay in your own currency with Paystack.
The text and code of this lesson are based on AI Engineering from Scratch by Rohit Ghumare, MIT licensed.