Machine Learning: 2019-2020
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.
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 taken the following courses (or their equivalents) you should talk to the lecturers prior to registering for the class.
- Continuous Mathematics
- Linear Algebra
- Design and Analysis of Algorithms
- C. M. Bishop. Pattern Recognition and Machine Learning. Springer 2006.
- Kevin P. Murphy. Machine Learning: A Probabilistic Perspective. MIT Press 2012.
- Ian Goodfellow, Yoshua Bengio and Aaron Courville. Deep Learning. MIT Press 2016.