Skip to main content

Machine Learning:  2017-2018



Schedule S1(CS&P)Computer Science and Philosophy

Schedule B2 (CS&P)Computer Science and Philosophy

Schedule S1Computer Science

Schedule B2Computer Science

Schedule S1(M&CS)Mathematics and Computer Science

Schedule B2Mathematics and Computer Science

Schedule BMSc in Computer Science



Machine learning techniques enable us to automatically extract features from data so as to solve predictive tasks, such as speech recognition, object recognition, machine translation, question-answering, anomaly detection, medical diagnosis and prognosis, automatic algorithm configuration, personalisation, robot control, time series forecasting, and much more. Learning systems adapt so that they can solve new tasks, related to previously encountered tasks, more efficiently.

This course will introduce the field of machine learning, in particular focusing on the core concepts of supervised and unsupervised learning. In supervised learning we will discuss algorithms which are trained on input data labelled with a desired output, for instance an image of a face and the name of the person whose face it is, and learn a function mapping from the input to the output. Unsupervised learning aims to discover latent  structure in an input signal where no output labels are available, an example of which is grouping web-pages based on the topics they discuss. Students will learn the algorithms which underpin many popular machine learning techniques, as well as developing an understanding of the theoretical relationships between these algorithms. The practicals will concern the application of machine learning to a range of real-world problems.

N.B. There is no past paper for the 2016-17 Machine Learning Course. Whilst you may refer to the 2015-16 Machine Learning exam in preparation, please note that the content and scope of the 2016-17 version will be different.


Machine learning is a mathematical discipline and it is helpful to have a good background in linear algebra, calculus, probability and algorithms. If you have not take the following courses (or their equivalents) you should talk to the instructor prior to registering for the class.

  • Continuous Mathematics
  • Linear Algebra
  • Design and Analysis of Algorithms


  • Introduction to different paradigms of machine learning
  • Linear prediction, Regression
  • Maximum Likelihood, MAP, Bayesian ML
  • Regularization, Generlization, Cross Validation
  • Basics of Optimization
  • Linear Classification, Logisitc Regression, Naïve Bayes
  • Suppor Vector Machines
  • Kernel Methods
  • Neural Networks, Back Propagation
  • Convolutional Neural Networks
  • Unsupervised Learning, Clustering, k-means
  • Mixture Models: EM Algorithm, Topic Modelling
  • Dimensionality Reduction, PCA

Reading list

  • Kevin P. Murphy. Machine Learning: A Probabilistic Perspective. MIT Press 2012
  • Ian Goodfellow, Yoshua Bengio and Aaron Courville. Deep Learning. MIT Press 2016