Prospective students

MSc Machine Learning is a unique programme that introduces students to the computational, mathematical and business views of machine learning. The programme is led and taught by world renowned researchers from the Department of Computer Science and the Gatsby Computational Neuroscience Unit.

The programme will provide students with an understanding of the development and application of new techniques in the field; an ability to analyse the range and scope of algorithms and approaches available; and the skills to design, develop and evaluate appropriate algorithms and methods for new problems and applications.


MSc Machine Learning comprises 8 taught modules and an Individual Project. Of the taught modules, 1 is core modules, with a minimum of 5 modules from options and the remainder from a combination of optional and elective modules.

Core Modules Term 1

COMPGI01 Supervised Learning

COMPGI01 Supervised Learning

This module covers supervised approaches to machine learning. It starts by reviewing fundamentals of statistical decision theory and probabilistic pattern recognition followed by an in-depth introduction to various supervised learning algorithms such as Perceptron, Backpropagation algorithm, Decision trees, instance-based learning, support vector machines. Algorithmic-independent principles such as inductive bias, side information, approximation and estimation errors. Assessment of algorithms by jackknife and bootstrap error estimation, improvement of algorithms by voting methods such as boosting. Introduction to statistical learning theory, hypothesis classes, PAC learning model, VC-dimension, growth functions, empirical risk minimization, structural risk minimization.

Students will gain an in-depth familiarity with various classical and contemporary supervised learning algorithms, understand the underlying limitations and principles that govern learning algorithms and ways of assessing and improving their performance, understand the underlying fundamentals of statistical learning theory, the complexity of learning and its relationship to generalization ability.

 

Further syllabus information can be found here.

Core Modules Project

COMPGI99 Individual Project

COMPGI99 Individual Project

Further syllabus information will be available shortly.

Optional Modules [Group 1] Term 1

COMPGI08 Graphical Models

COMPGI08 Graphical Models

The module provides an entry into probabilistic modeling and reasoning, primarily of discrete variable systems. Very little continuous variable calculus is required, and students more familiar with discrete mathematics should find the course digestible. The emphasis is to demonstrate the potential applications of the techniques in plausible real-world scenarios related to information retrieval and analysis. Concrete challenges include questionnaire analysis, low-density parity check error correction, and collaborative filtering of Netflix data.

 

Further syllabus information can be found here.

COMPGI18 Probabilistic & Unsupervised Learning

COMPGI18 Probabilistic & Unsupervised Learning

This module provides students with an in-depth introduction to statistical modelling and unsupervised learning techniques. It presents probabilistic approaches to modelling and their relation to coding theory and Bayesian statistics. A variety of latent variable models will be covered including mixture models (used for clustering), dimensionality reduction methods, time series models such as hidden Markov models which are used in speech recognition and bioinformatics, independent components analysis, hierarchical models, and nonlinear models.

 

Further syllabus information can be found here.

You will need to choose a 15 credits from the Group 1 optional modules.

Optional Modules [Group 2] Term 1

COMPGI07 Programming & Mathematical Methods for Machine Learning

COMPGI07 Programming & Mathematical Methods for Machine Learning

The aims of the module are to provide a practical knowledge and understanding of the programming environments of Matlab and Mathematica. Knowledge of and proficiency in these languages/packages form an essential component of courses GI06 (Evolutionary Systems) and GI01 (Supervised Learning). The aim is also to introduce students to those elements of linear algebra which play an important role in machine learning and data analysis.

 

Further syllabus information can be found here.

COMPGI13 Advanced Topics in Machine Learning

COMPGI13 Advanced Topics in Machine Learning

Kernel methods

To gain an understanding of the theory and applications of kernel methods, including:

  • An overview of how kernel feature spaces can be constructed, including in infinite dimensions, and the smoothing properties of functions in these spaces.
  • Simple and complex learning algorithms using kernels (ridge regression, kernel PCA, the support vector machine)
  • Representations of probabilities in reproducing kernel Hilbert spaces. Statistical two-sample and independence tests, and learning algorithms using these embeddings (clustering, ICA)

Learning theory

To learn the fundamentals of statistical learning theory. In particular to:

  • Understand what characterizes a learning problem and what it means for an algorithm/system/machine to “learn”.
  • Understand the key role of regularization and the different approaches to use it efficiently in practice.
  • Acquire familiarity with a variety of statistically consistent learning algorithms, both from modeling and practical perspectives.

Further syllabus information can be found here.

COMPGI14 Machine Vision

COMPGI14 Machine Vision

The course addresses algorithms for automated computer vision. It focuses on building mathematical models of images and objects and using these to perform inference. Students will learn how to use these models to automatically find, segment and track objects in scenes, perform face recognition and build three-dimensional models from images.

At the end of the course, students will be able to understand and apply a series of probabilistic models of images and objects in machine vision systems. To understand the principles behind face recognition, segmentation, image parsing, super-resolution, object recognition, tracking and 3D model building.

 

Further syllabus information can be found here.

COMPGI16 Approximate Inference and Learning in Probabilistic Models

COMPGI16 Approximate Inference and Learning in Probabilistic Models

The module will present the foundations of approximate inference and learning in probabilistic graphical models (e.g. Bayesian networks and Markov networks), with particular focus on models composed from conditional exponential family distributions. Both stochastic (Monte Carlo) methods and deterministic approximations will be covered. The methods will be discussed in relation to practical problems in real-world inference in Machine Learning, including problems in tracking and learning.

 

Further syllabus information can be found here.

COMPGI19 Statistical Natural Language Processing

COMPGI19 Statistical Natural Language Processing

The course introduced the basics of statistical natural language processing (NLP) including both linguistics concepts such as morphology and syntax and machine learning techniques relevant for NLP.

Students successfully completing the module will understand relevant linguistic concepts; relevant ML techniques, what makes NLP challenging (and exciting), how to write programs that process language and how to rigorously formulate NLP tasks as learning and inference tasks, and address the computational challenges involved.

 

Further syllabus information can be found here.

COMPGI23 Introduction to Deep learning

COMPGI23 Introduction to Deep learning

At the conclusion of this module students should understand: 

 

  1. The fundamental principles, theory and approaches for learning with deep neural networks
  2. The main variants of deep learning (such convolutional and recurrent architectures), and their typical applications
  3. The key concepts, issues and practices when training and modeling with deep architectures; as well as have hands-on experience in using deep learning frameworks for this purpose
  4. How to implement basic versions of some of the core deep network algorithms (such as backpropagation)
  5. How deep learning fits within the context of other ML approaches and what learning tasks it is considered to be suited and not well suited to perform

 

Further syllabus information can be found here.

Optional Modules [Group 2] Term 2

COMPGI09 Applied Machine Learning

COMPGI09 Applied Machine Learning

This module aims to cover some of the issues that may arise in the practical application of machine learning in real-world problems. In addition, the course will cover some of the mathematics and techniques behind basic data analysis methods for both static and time-series data.

On completion of the module, students will have the ability to assess the effectiveness of solutions presented and to question them in an intelligent way; synthesise solutions to general open-ended problems covering material from the whole programme, tempered with information on commercial reality obtained from this course.

 

Further syllabus information can be found here.

COMPGI10 Bioinformatics

COMPGI10 Bioinformatics

The aim of this module is to introduce students to the new field of bioinformatics (computational biology) and how machine learning techniques can be employed in this area. The course is aimed at students who have no previous knowledge of biology and so the aim of Part 1 of the module is to give a basic introduction to molecular biology as a background for bioinformatics. Part 2 will concentrate on modern bioinformatics applications, particularly those which make good use of pattern recognition and machine learning methods.

 

Further syllabus information can be found here.

COMPGI15 Information Retrieval & Data Mining

COMPGI15 Information Retrieval & Data Mining

The course is aimed at an entry level study of information retrieval and data mining techniques. It is about how to find relevant information and subsequently extract meaningful patterns out of it. While the basic theories and mathematical models of information retrieval and data mining are covered, the course is primarily focused on practical algorithms of textual document indexing, relevance ranking, web usage mining, text analytics, as well as their performance evaluations. Practical retrieval and data mining applications such as web search engines, personalisation and recommender systems, business intelligence, and fraud detection will also be covered.

Students are expected to master both the theoretical and practical aspects of information retrieval and data mining.

 

Further syllabus information can be found here.

COMPGI17 Affective Computing and Human-Robot Interaction

COMPGI17 Affective Computing and Human-Robot Interaction

The module targets students who have no previous knowledge in cognitive science and emotion theory. The aim of Part 1 is to give a basic introduction to the theory of emotion from psychology and neuroscience viewpoints and to understand its importance in human decision and communication processes. Part 2 will concentrate on the application of machine learning techniques to emotion recognition by looking at current applications in entertainment, education, and health. Part 3 will focus on the challenges in designing robots that are capable of socially interacting with humans.

 

Further syllabus information can be found here.

COMPGI22 Advanced Deep Learning and Reinforcement Learning

COMPGI22 Advanced Deep Learning and Reinforcement Learning

Students successfully completing the module should understand:

  1. The basics of deep learning and reinforcement learning paradigms.
  2. Architectures and optimization methods for deep neural network training.
  3. How to implement deep learning methods within a given ML framework and apply them to data.
  4. The theoretical foundations and algorithms of reinforcement learning.
  5. How to apply reinforcement learning algorithms to environments with complex dynamics.

 

Further syllabus information can be found here.

You will need to choose a minimum of 60 and a maximum of 90 credits from the Group 2 optional modules.

Elective Modules Term 1

COMPGL01 Introduction to Logic, Semantics and Verification

COMPGL01 Introduction to Logic, Semantics and Verification

The module aims to familiarize students with formal methods for reasoning about transition systems and programs.

 

 

Further syllabus information can be found here.

COMPGX01 Robotic Systems Engineering

COMPGX01 Robotic Systems Engineering

Students will gain an introductory overview of robotics and autonomous systems. Technically they will gain an understanding of the concepts and principles of ROS, the underpinning software development environment for robot systems, through a number of example applications, leading to the capability of using ROS for advanced robot control, navigation, sensing and verification.

Further syllabus information can be found here.

COMPGX02 Robotic Control Theory and Systems

COMPGX02 Robotic Control Theory and Systems

The aim of this module is to give students an insight into robotics and autonomous systems control theory and practice, specifically:

  • Control loops. damping, feedback and stability analysis with a working understanding about how these are used for navigating a robot within an environment;
  • Insight into developing a working prototype of a control system for a robot that solves a specific task.

Further syllabus information can be found here. 

COMPGX03 Robotic Sensing, Manipulation and Interaction

COMPGX03 Robotic Sensing, Manipulation and Interaction

The aim of this module is to make sure students are familiar with various concepts in robotic sensing and manipulation and to give them a working knowledge of haptic interfaces and haptic control. These concepts will be used to teach students the principles and practical implementation of a tele-manipulation system involving a user interface, end-effector and a haptic or visual display unit.

 

Further syllabus information can be found here.

Elective Modules Term 2

COMPGV08 Inverse Problems in Imaging

COMPGV08 Inverse Problems in Imaging

To introduce the concepts of optimisation, and appropriate mathematical and numerical tools applications in image processing and image reconstruction.

 

Further syllabus information can be found here.

COMPGV17 Computational Modelling for Biomedical Imaging

COMPGV17 Computational Modelling for Biomedical Imaging

This module aims to expose students to the challenges and potential of computational modelling in a key application area. It will explain how to use models to learn about the world; how to teach parameter estimation techniques through practical examples; and how to familiarize students with handling real data sets.

 

Further syllabus information can be found here. 

COMPGV19 Numerical Optimisation

COMPGV19 Numerical Optimisation

The aim of this module is to provide the students with an overview of the optimisation landscape and a practical understanding of most popular optimisation techniques and an ability to apply these methods to problems they encounter in their studies e.g. MSc project/dissertation and later in their professional career.

 

Further syllabus information can be found here. 

COMPGX04 Robotic Vision and Navigation

COMPGX04 Robotic Vision and Navigation

Students will gain knowledge about robot navigation with specific focus on the use of vision as a primary sensor for mapping the environment. The module will provide students with an understanding and practical experience of recovering geometry from optical sensors and creating an environment map which a robot can use for navigation and motion planning.

 

Further syllabus information can be found here. 

You may choose up to 30 credits as elective modules.

A minimum of an upper second-class UK Bachelor's degree in a highly quantitative subject such as computer science, mathematics, electrical engineering or the physical sciences, or an overseas qualification of an equivalent standard. Relevant work experience may also be taken into account. Additionally, candidates must be comfortable with undergraduate mathematics in areas such as linear algebra and calculus. 

 

English Language Requirements

If your education has not been conducted in the English language, you will be expected to demonstrate evidence of an adequate level of English proficiency.

The English language level for this programme is: Good

Further information can be found on our English language requirements page.

 

International students

Country-specific information, including details of when UCL representatives are visiting your part of the world, can be obtained from the International Students website.

UK/EU fees (FT):  £11,800 for 2017/18

Overseas fees (FT): £24,610 for 2017/18

UK/EU fees (FT):   £12,950 for 2018/19

UK/EU fees (PT):   N/A for 2018/19

Overseas fees (FT): £26,670 for 2018/19

Overseas fees (PT): N/A for 2018/19

For a comprehensive list of the funding opportunities available at UCL, including funding relevant to your nationality, please visit the Scholarship and Funding website.

Tuition Fee Deposit

This programme requires that applicants firmly accepting their offer pay a deposit. This allows UCL to effectively plan student numbers, as students are more demonstrably committed towards commencing their studies with us.

For full details about the UCL tuition fee deposit, please see the central UCL pages.

Tuition fee deposits within the Department of Computer Science are currently listed as:

UK/EUOverseas
Full-time*Part-timeFull-time*Part-time
£2000£1000£2000£1000
*where part-time is an available mode of study

Machine Learning graduate destinations:       

  • IBM
  • Cisco
  • Dunhmuby
  • Xerox

Machine Learning graduate roles:                

  • Investment Analyst
  • Security Analyst
  • R&D
  • Software Developer

Further study destinations:

  • UCL
  • University of Helsinki
  • Cranfield University

Average starting salary £45,000 (Graduate Surveys, January 2015).

Programme Administrator
Rebecca Martin
Office 5.22, Malet Place Engineering Building 
+44 (0)20 7679 0481
advancedmsc-admissions@cs.ucl.ac.uk

More information

To apply now click here.

This MSc receives many more applications than it has places available and the admissions process is competitive. It may therefore take longer than the Admissions stated 6 weeks for a decision to be made and communicated. Applicants are advised to apply as early as possible due to the competition for places. Those applying for scholarship funding (particularly overseas applicants) should take note of application deadlines.

Deadline 29th June 2018.