Computational Learning Theory: 2015-2016
Machine learning studies automatic methods for identifying patterns in complex data and for making accurate predictions based on past observations. From predicting which movies a customer will like to assigning credit ratings, systems that learn are becoming increasingly widespread and effective. Computational learning theory aims to develop rigourous mathematical foundations for machine learning, in order to provide guarantees about the behaviour of learning algorithms, to identify common methods underlying effective learning procedures, and to understand the inherent difficulty of learning problems. To address such issues we will bring together notions from probability theory, optimisation, online algorithms, and game theory.
On completing this course, students should:
- understand key models of supervised and unsupervised learning and be able to formulate specific learning problems in these models;
- understand a variety of learning algorithms and recognize when they are applicable.
Students should have experience of reading and writing mathematical proofs. Familarity with calculus, probability theory, and linear algebra (to the level of the undergraduate Computer Science degree) is essential.
- Introduction, PAC model, sample complexity for finite sets of hypotheses [3 Lectures]
- The Growth Function, VC dimension, Rademacher complexity, lower bounds [3 Lectures]
- Support Vector Machines, margin theory [3 Lectures]
- Kernels [1 Lecture]
- Online learning: Perceptron and Winnow algorithms [2 lectures]
- Online convex optimisation [1 lecture]
- Weak learning, adaptive boosting, margin bounds [2 Lectures]
Learning consistent hypotheses.
PAC learning: sample complexity, VC-dimension, Rademacher complexity.
Support vector machines, kernels, margin theory.
Online learning: Perceptron, Winnow, online convex optimisation.
Weak learning and the Adaboost algorithm.
- Michael Kearns and Umesh Vazirani. An Introduction to Computational Learning Theory, MIT Press, 1995.