Videos and books
The free lecture series, books, papers and tools that pair best with the ML for Science track, with a note on what each one is good for.
Every resource on this page is free to watch or read, from the author's, the university's or the publisher's own page, or from arXiv. Each lesson of the track also ends with a Watch and read section that names the exact video, chapter or paper for that lesson.
How to use it. Watch one short video for the picture, then do the lesson and its notebook, then read the matching chapter or paper from the table at the end of this page. The long lecture series are for a second pass, when you want the same idea from another teacher.
A note on notation. Books and papers in this field use different symbols. Three differences matter most:
- Time direction in generative models. Score-based diffusion (Song et al.; lessons 12–13) puts data at and noise at . Flow matching (Lipman et al., the MIT 6.S184 course; lessons 14–15) puts noise at and data at . Converting flips the sign of the velocity.
- The sphere. This track uses colatitude and longitude (physics convention, lesson 09). Weather data and lesson 16 use latitude . Some mathematics books swap the names and .
- Data assimilation. The track follows the operational notation: background ; forecast ; analysis ; observations with . Särkkä's book writes the same Kalman filter with and .
Video courses #
Start here #
- Steve Brunton, Physics Informed Machine Learning (YouTube playlist). Short, clear videos on PINNs, neural ODEs, SINDy, Fourier neural operators and symmetry. Good before lessons 03, 05, 08, 10 and 11.
- ETH Zürich, AI in the Sciences and Engineering (CAMLab, 2025) (YouTube playlist). A full university course: PINNs, neural operators (FNO and more), and ML for weather. Good for lessons 08, 11 and 16.
- Chris Rackauckas, Parallel Computing and Scientific Machine Learning (YouTube playlist, lecture notes). Automatic differentiation, adjoints of ODE solvers, stiffness and neural ODEs from the developer of the Julia SciML tools. Good for lessons 01–03.
Differentiable simulation (lessons 01–04) #
- MIT 18.S096, Matrix Calculus for Machine Learning and Beyond (IAP 2023) (YouTube playlist, course page). Derivatives as linear maps, reverse mode, and adjoint methods. The language of lesson 01.
Chaos, data and uncertainty (lessons 05–07) #
- Steve Brunton, Dynamical Systems (with Machine Learning) (YouTube playlist). Koopman operators, DMD and SINDy in more depth than lesson 05.
- xwu, Short-course on Data Assimilation (ICL and INPE, 2022) (YouTube playlist). A full short course: optimal interpolation, 3D-Var and 4D-Var, the Kalman filter and the EnKF. Good for lesson 06.
- Philipp Hennig, Probabilistic Machine Learning (Tübingen, 2023) (YouTube playlist). Gaussian processes, kernels and Gaussian filtering as one framework. Good for lessons 06 and 07.
Neural operators, symmetry and physics (lessons 08–11) #
- Erik Bekkers, Group Equivariant Deep Learning (UvA, 2022) (YouTube playlist, course page). Groups, representations, steerable and -equivariant networks. The full course behind lesson 10.
Stochastic and generative models (lessons 12–15) #
- MIT 18.S096, Topics in Mathematics with Applications in Finance (Fall 2013) (YouTube playlist, course page). Lectures 17, 18 and 21 cover Brownian motion, Itô calculus and SDEs. Good for lesson 12.
- MIT 6.S184, Flow Matching and Diffusion Models (Peter Holderrieth, 2026) (YouTube playlist, course page and notes). SDEs, score functions, flow matching and guidance with one notation. The best single course for lessons 12–15.
ML weather and climate models (lesson 16) #
- ECMWF, Learning (learning.ecmwf.int). Free online courses and recorded training from the European weather centre, including numerical weather prediction, data assimilation and machine learning for weather.
Free books #
| Book | What it is good for | Lessons |
|---|---|---|
| Bright, Edelman and Johnson, Matrix Calculus (for Machine Learning and Beyond) | Derivatives as linear maps, VJPs and adjoints; the notes of MIT 18.S096. | 01, 03 |
| Driscoll and Braun, Fundamentals of Numerical Computation | Time stepping, stability regions and stiffness, with Python code. | 02 |
| Brunton and Kutz, Data-Driven Science and Engineering, 2nd ed. (author PDF) (book site) | SVD, Fourier methods, DMD, SINDy, Koopman theory and physics-informed ML. | 04, 05, 08, 11 |
| Evensen, Vossepoel and van Leeuwen, Data Assimilation Fundamentals (open access) | 3D-Var, 4D-Var, the Kalman filter and the EnKF from one Bayesian starting point. | 06 |
| Särkkä and Svensson, Bayesian Filtering and Smoothing, 2nd ed. | The Kalman filter and its nonlinear forms, with full derivations. | 06 |
| Rasmussen and Williams, Gaussian Processes for Machine Learning | The standard GP book: regression, kernels, marginal likelihood. Chapters 2, 4 and 5. | 07 |
| Boyd, Chebyshev and Fourier Spectral Methods, 2nd ed. | Fourier and spherical spectral methods, aliasing and the 2/3 rule (chapters 11 and 18). | 08, 09 |
| Bronstein, Bruna, Cohen and Veličković, Geometric Deep Learning (site) | Groups, symmetry and equivariance as the common idea behind CNNs, GNNs and more. | 10 |
| Thuerey et al., Physics-based Deep Learning | PINNs, differentiable physics and learned solvers, with code. | 03, 11 |
| Särkkä and Solin, Applied Stochastic Differential Equations | Itô calculus, Fokker–Planck and numerical SDE methods, with short, clear chapters. | 12, 13 |
| Peyré and Cuturi, Computational Optimal Transport | Monge and Kantorovich problems, Sinkhorn and the Wasserstein distance. | 14 |
| Lipman et al., Flow Matching Guide and Code | Flow matching from the basics to Riemannian manifolds, with one notation. | 14, 15 |
| Boumal, An Introduction to Optimization on Smooth Manifolds | Tangent spaces, retractions and the exponential map on the sphere. | 15 |
Short reads #
- Baydin et al., Automatic Differentiation in Machine Learning: a Survey. Forward and reverse mode, with history and examples (lesson 01).
- Steven G. Johnson, Notes on Adjoint Methods. Five pages that derive the adjoint method for linear systems and ODEs (lessons 03–04).
- Kidger, On Neural Differential Equations. A thesis that explains neural ODEs, adjoints and their numerics (lesson 03).
- Gneiting and Raftery, Strictly Proper Scoring Rules, Prediction, and Estimation. The standard reference for CRPS and proper scores (lessons 07 and 16).
- Li et al., Fourier Neural Operator for Parametric PDEs and Bonev et al., Spherical Fourier Neural Operators (lessons 08–09).
- Geiger and Smidt, e3nn: Euclidean Neural Networks. Irreps, tensor products and gates as implemented in e3nn (lesson 10).
- Wang, Sankaran and Perdikaris, Respecting Causality is All You Need for Training PINNs. Causal weighting (lesson 11).
- Yang Song, Generative Modeling by Estimating Gradients of the Data Distribution (blog) and Song et al., Score-Based Generative Modeling through SDEs (lesson 13).
- Lilian Weng, What are Diffusion Models?. A long blog post that connects DDPM, score matching and the SDE view (lesson 13).
- Chen and Lipman, Flow Matching on General Geometries. Riemannian flow matching (lesson 15).
- Lam et al., GraphCast and Rasp et al., WeatherBench 2. One model and one benchmark that every reader of lesson 16 should know.
Tools to explore after the notebooks: PySINDy, PyDMD, DA-tutorials (data assimilation in Python), POT (optimal transport), torch-harmonics (SHT and SFNO), e3nn, and WeatherBench 2.
Which lesson pairs with what #
| Lesson | Watch | Read |
|---|---|---|
| 01 Reverse-mode autodiff | Ari Seff, What is Automatic Differentiation?; MIT 18.S096 lectures 1–4 | Bright, Edelman and Johnson (derivatives as linear maps, reverse mode); Baydin et al. |
| 02 Time stepping and stiffness | Brunton, Stability of Forward Euler and Backward Euler Integration Schemes and Runge-Kutta Integrator Overview | Driscoll and Braun, chapter 6 (initial-value problems) and the sections on absolute stability and stiffness |
| 03 Adjoints and neural ODEs | MIT 18.S096 lecture 6 part 1; Brunton, Neural ODEs | Johnson, Notes on Adjoint Methods; Kidger (neural ODEs and backpropagation through solvers) |
| 04 Inverse problems and seismic imaging | MIT 18.S096 lecture 4 part 2 (adjoint gradients) | Brunton and Kutz, chapter 1 (SVD); Johnson, Notes on Adjoint Methods |
| 05 Chaos, DMD and SINDy | Brunton, Dynamic Mode Decomposition (Overview); Dynamical Systems (with Machine Learning) playlist | Brunton and Kutz, chapter 7 (DMD, SINDy and Koopman theory) |
| 06 Data assimilation | Visually Explained: Kalman Filters; xwu, Short-course on Data Assimilation | Evensen, Vossepoel and van Leeuwen; Särkkä and Svensson, chapter 6 |
| 07 Gaussian processes and UQ | Weinberger, Cornell CS4780 lecture 26; Hennig, Probabilistic ML | Rasmussen and Williams, chapters 2, 4, 5; Gneiting and Raftery |
| 08 Spectral methods and FNO | Brunton, Fourier Neural Operator (FNO); ETH AISE lectures on neural operators | Boyd, chapter 11; Li et al. (FNO) |
| 09 Spherical harmonics and SFNO | the lesson's own video list | Boyd, chapter 18; Bonev et al. (SFNO) |
| 10 Equivariant networks | e3nn tutorial 1/6 (Tess Smidt); Bekkers, Group Equivariant Deep Learning | Bronstein et al., chapters 3–5; Geiger and Smidt |
| 11 PINNs and failure modes | Brunton, PINN video; Koren Lab, Failure Modes and Solutions | Thuerey et al., PINN chapters; Wang, Sankaran and Perdikaris |
| 12 SDEs and Fokker–Planck | MIT 18.S096 (2013) lectures 17, 18, 21; MIT 6.S184 lecture 1 | Särkkä and Solin, chapters 2–5 and 8 |
| 13 Score matching and diffusion | Deepia, Score-based Diffusion Models; MIT 6.S184 lecture 3 | Yang Song's blog; Song et al. (score SDE) |
| 14 Flow matching and OT | Lipman, Flow Matching talk; MIT 6.S184 lecture 2 | Lipman et al., Flow Matching Guide and Code; Peyré and Cuturi, chapters 2–4 |
| 15 Flow matching on the sphere | the lesson's own video list | Chen and Lipman; Boumal, chapter 3 (tangent spaces and retractions) |
| 16 ML weather and climate models | Lessig (ECMWF); Remi Lam, GraphCast; WeatherBench 2 talk | Lam et al. (GraphCast); Rasp et al. (WeatherBench 2) |