Aims:

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. The course will present the foundations of probabilistic graphical models (e.g. Bayesian networks and Markov networks) as an overarching framework for unsupervised modelling. We will cover Markov chain Monte Carlo sampling methods and variational approximations for inference. Time permitting, students will also learn about other topics in probabilistic (or Bayesian) machine learning.

Learning outcomes:

On successful completion of the module, a student will be able to:

Understand the theory of unsupervised learning systems.
	Have in-depth knowledge of the main models used in Unsupervised Learning; to understand the methods of exact and approximate inference in probabilistic models.
	Recognise which models are appropriate for different real-world applications of machine learning methods.
Content:

Basics of Bayesian learning and regression.
	Latent variable models, including mixture models and factor models.
	The Expectation-Maximisation (EM) algorithm.
	Time series, including hidden Markov models and state-space models.
	Spectral learning.
	Graphical representations of probabilistic models.
	Belief propagation, junction trees and message passing.
	Model selection, hyperparameter optimisation and Gaussian-process regression.
Audit:

Any student or researcher at UCL meeting the requisite conditions is welcome to attend the lectures. Students who wish to formally register on the module should consult with the Module leader.

Requisites:

To be eligible to select this module as an optional or elective, a student must: (1) be registered on a programme and year of study for which it is formally available; (2) have a good background in statistics, calculus, linear algebra, and computer science; and (3) have good competency in MATLAB or Octave (or be taking a class on MATLAB/ Octave, or be willing to learn it on their own).

Students wishing to take the module should thoroughly review the maths in the cribsheet provided before the start of the module.