Short courses


Applied Machine Learning Systems: Advanced Principles and Practice

  • 150 hours
  • 8 weeks (4-6pm) + optional assignment
  • 16 Jan 2024


This practical short course covers advanced principles and practice of machine learning systems engineering, including:

  • deep learning
  • deep reinforcement learning
  • generative adversarial networks
  • future directions in machine learning engineering

You'll learn how to apply machine learning technology to address various advanced machine learning tasks in lab session. These sessions will be based on programming languages/platforms such as Python, R or tensorflow.

This course is run by UCL's Department of Electronic and Electrical Engineering (EEE).

Who this course is for

This course is for researchers, engineers, IT professionals and managers working in various industries.

It's particularly suited to graduates in engineering, computer science and mathematics who want to further their knowledge on a particular topic, or work towards a Master's degree.


Before you take this course, you must have completed our introductory course on applied machine learning systems.

Course content

Topics covered include:

  • Deep neural networks 
    • Overview of classification and deep neural networks 
    • Convolutional neural networks, recurrent neural networks, and LSTMs (long short-term memory networks)
    • Training deep neural networks, gating architectures and use cases
  • Reinforcement learning  (RL)
    • Introduction to RL and how to cast problems into RL
    • Exploration vs exploitation
    • Practical solving methods and tricks to improve the learning methods
    • Challenges in DeepRL and use-cases
  • Adversarial learning 
    • Generative adversarial networks 
    • Discriminative adversarial networks
    • Semi-supervised learning and use cases   
  • Bayesian frameworks 
    • Learning based on priors
    • Comparisons/applications versus frequentist frameworks
  • Deep feature extraction and similarity with applications to text processing 
  • Natural language processing, applications and emerging frameworks

Dates, assessment and certificates

This course will run for 8 weeks and the majority of classes will be held from 4 - 6pm on Tuesdays. The two exceptions to this are as follows:

  • Week 3: 2 - 5pm on Wednesday
  • Week 4: 2 - 5pm on Tuesday

Teaching will take place in person with some materials available online. Please note, dates and teaching arrangements may need to change in response to government guidance around Covid-19.

The assessment involves carrying out a programming assignment to address a machine learning problem, demonstrating the functionality, delivering the code and a 4,000 word report.

If you complete the course but not the assignment, you'll receive a certificate of attendance.

If you take and pass the assignment you'll get a certificate stating this, which includes your pass level. You'll be able to use this towards a flexible Master's degree.

Benefits of UCL's Electronics and Electrical Engineering CPD courses

You can take this course as a standalone (one-off) course/module, or accumulate it towards a Master's degree (up to two standalone modules can be transferred towards the flexible Master's degree).

Benefits to the employee
The programme offers the opportunity for professional people working in the telecommunications industry to develop their career, be able to respond to changes in their environment, and learn while they earn. It's also designed to give you the opportunity of working towards an MSc qualification from an academic institution whose quality is recognised world-wide.

Benefits to employers
Our flexible CPD courses enhance staff motivation and assists in the recruitment and retention of high-quality staff. It enables your company to keep ahead of the competition by tapping into world-leading research, and to profit from UCL's world class Telecommunications and Business expertise.

View the full range of related courses available.

Learning outcomes

This course will help you to:

  • appreciate the major recent technological developments in machine learning engineering, including its history to date
  • understand general and specific ideas, methodologies, and advanced algorithms in machine learning engineering, including deep learning, deep reinforcement learning and adversarial learning
  • understand how to apply machine learning techniques to solve particular real-world problems
  • apply the acquired knowledge to solve concrete machine learning problems
  • appreciate future technological trends and applications in machine learning engineering, including its role in the economy and society

Course team

Professor Yiannis Andreopoulos - course leader

Professor Yiannis Andreopoulos - course leader

Yiannis is Professor of Data and Signal Processing Systems in the Electronic and Electrical Engineering Department at UCL. His areas of research interest include signal processing, and machine learning.

Course information last modified: 13 Sep 2023, 15:04