Signals to learning / Course design
A connected curriculum.
From reading one waveform to investigating a modern model: build each idea on a skill you can already use.
The course begins with basic arithmetic and reading graphs. Algebra, radians, vectors, complex numbers, derivatives and probability are introduced along the way. Browser lessons need no installation. Practical coding tasks use your own Python 3 notebook/editor; the site is not a code-execution sandbox.
The learning contract
Every lesson has observable objectives, original explanation, a worked example, a misconception, a prediction, an interactive experiment, two checks with feedback, an applied task, review criteria and further reading. The four projects integrate skills rather than simply introduce more terminology.
Progress records successful checks and your acknowledgement that you attempted the practical task. It is self-study bookkeeping, not a verified qualification. Review mode allows a fresh attempt without deleting earlier completion.
The full map
1. Read the signal
Begin with quantities you can draw and measure. Build the language that later becomes spectra, features and model scores.
- What is a signal? — Identify the independent variable and the measured quantity.
- Frequency, amplitude and phase — Relate frequency to period and amplitude to scale.
- Vectors and similarity — Calculate a dot product and a vector norm.
- Complex numbers and rotation — Read real and imaginary parts as two coordinates.
2. Maths for experiments
Learn the small amount of calculus, probability and experimental discipline needed to make reliable claims.
- Slopes and gradients — Calculate a derivative of a quadratic.
- Probability and uncertainty — Normalise nonnegative weights into probabilities.
- Noise and signal-to-noise ratio — Calculate mean-square power and SNR in decibels.
- Data splits and leakage — Separate training, validation and final test roles.
3. From time to samples
See what survives—and what becomes ambiguous—when time and amplitude become discrete.
- Sampling and time — Calculate sample spacing and record duration.
- Aliasing and Nyquist — Calculate a folded frequency for a real sinusoid.
- Quantisation and clipping — Distinguish time sampling from amplitude quantisation.
- Resampling safely — Predict the new Nyquist limit after downsampling.
4. Change coordinates
Turn samples into interpretable frequency coordinates while keeping finite-record limitations in view.
- Projection onto waves — Explain a Fourier coefficient as a projection.
- The discrete Fourier transform — Map a DFT bin to physical frequency.
- Windows and leakage — Explain finite-record leakage and window trade-offs.
- Time-frequency analysis — Calculate unpadded STFT frame and bin counts.
5. Build systems
Understand the operators that transform signals—and the boundary, phase and stability choices that make them work.
- Linearity and time invariance — Test linearity through superposition.
- Convolution step by step — Calculate a convolution sum with zero extension.
- Frequency response and filter trade-offs — Read a filter magnitude response and its DC gain.
- Recurrence and stability — Unroll a scalar recurrence from a defined initial state.
6. Learn from data
Turn representations into predictions. Follow the objective, the update and the evidence—not just a fitted curve.
- Features and linear regression — Distinguish features, targets and learned parameters.
- Gradient descent — Compute one gradient-descent step.
- Classification and cross-entropy — Convert a binary logit into probability.
- Evaluation and generalisation — Calculate precision and recall from confusion counts.
7. Neural building blocks
Connect nonlinear representations to gradients, shared filters and responsible model selection.
- Nonlinear features and neural networks — Explain why stacked affine maps alone cannot create nonlinear features.
- The chain rule and backpropagation — Multiply local derivatives along a computational path.
- Convolutions in neural networks — Explain parameter sharing and channel mixing.
- Regularisation and model selection — Explain regularisation as a constraint or penalty on fitting.
8. Learn sequences
Follow content, position, weighted retrieval and recurrent state into modern sequence models, without mistaking a toy illustration for a trained architecture.
- Position and representation — Explain why sequence order needs an explicit mechanism.
- Attention as weighted retrieval — Calculate normalised attention weights.
- Rotary position — Derive the relative-angle identity for one rotated pair.
- State-space memory — Unroll a fixed linear state-space system.
9. Make it reliable and fast
Connect model mathematics to bandwidth, arithmetic, memory traffic and reproducible measurements.
- Nonlinear aliasing — Identify harmonics generated by a cubic nonlinearity.
- FFTs and memory traffic — Count radix-2 stages and approximate byte traffic.
- Numerical stability — Explain overflow, cancellation and finite precision.
- Benchmarking and reproducibility — Design a benchmark with matched correctness and workload.
10. Integrate and investigate
Combine representations, computation and evidence. Each project has a runnable starting point or a concrete investigation protocol and an honest assessment rubric.
- Project: a denoising pipeline — Design a filtering experiment with a clean reference and aligned error metric.
- Project: a leakage-safe classifier — Construct a group-aware feature/classification pipeline.
- Project: a sequence-model investigation — Compare a fixed recurrence with content-weighted retrieval.
- Project: read and reproduce a research claim — Trace a specific research claim to its assumptions and evidence.
Design influences
MIT’s signals material and Dive into Deep Learning provide coverage checks. CMU’s retrieval-practice guidance informs questions with feedback and later review; Brown University’s Seeing Theory offers inspiration for direct manipulation. These influences do not constitute measured evidence of this course’s effectiveness. Prose, examples and implementations here are original.
- MIT: Signals and Systems
- Dive into Deep Learning: mathematical preliminaries
- Dive into Deep Learning: regression and generalisation
- Dive into Deep Learning: forward and backward propagation
- Dive into Deep Learning: convolutions for images
- scikit-learn: common pitfalls and leakage
- SciPy: signal processing guide
- SciPy: polyphase resampling
- Vaswani et al.: Attention Is All You Need
- Su et al.: RoFormer
- Gu and Dao: Mamba
- Dive into Deep Learning: numerical stability
- SciPy: shifted softmax and numerical references
- Dive into Deep Learning: computational hardware
- PyTorch: CUDA asynchronous execution and timing
- CMU: retrieval practice with feedback
- Seeing Theory, Brown University
What this course does not claim
This is a substantial introductory-to-advanced path through connected concepts, not a replacement for a complete university DSP/ML programme. It does not comprehensively cover analogue filter synthesis, stochastic estimation, control theory, reinforcement learning, generative models or distributed training. Toy models are labelled; no trained-model accuracy or hardware benchmark is fabricated.
No server-side notes, accounts, certificates or automatic coding assessment are provided. Existing web-server request logs remain independent of your local course data. Text, reference answers and rubrics remain readable without JavaScript.
Download the full curriculum and implementation specification
Begin the course →