Students should be able to:
- Understand and design different deep learning architectures including convolution and residual networks, transformers and diffusion models. Develop architectures for high dimensional data and also dynamic/time varying data.
- Design and implement different optimisation procedures, using differentiable programming (automatic differentiation/ back-propagation), as well as optimisation by stochastic gradient methods combined with acceleration and variance reduction techniques (mini-batching/normalisation).