Statistical learning is about the construction and study of systems that can automatically learn from data. With the emergence of massive datasets commonly encountered today, the need for powerful machine learning is of acute importance. Examples of successful applications include effective web search, anti-spam software, computer vision, robotics, practical speech recognition, and a deeper understanding of the human genome.

This course gives an introduction to this exciting field. In the first part, we will introduce basic techniques such as logistic regression, multilayer perceptrons, nearest neighbor approaches, both from a theoretical and methodological point of views. In the second part, we will focus on more advanced techniques such as kernel methods, which is a versatile tool to represent data, in combination with (un)supervised learning techniques that are agnostic to the type of data that is learned from. The learning techniques that will be covered include regression, classification, clustering and dimension reduction. We will cover both the theoretical underpinnings of kernels, as well as a series of kernels that are important in practical applications. Finally we will touch upon topics of active research, such as large-scale kernel methods and the use of kernel methods to develop theoretical foundations of deep learning models.

The grading of the class will be done with (i) one final exam, (ii) two homeworks.

- Vapnik, The nature of statistical learning theory. Springer.
- Hastie, Tibshirani, Friedman, The elements of statistical learning. (free online).
- Shawe-Taylor, Cristianini. Kernel methods for pattern analysis. 2004.
- Francis Bach, Learning Theory from First Principles, 2022.

Lectures are scheduled from 9:45-11:15 on Mondays, and from 8:15-9:45 on Thursdays. The first part of the class will recap basic supervised learning techniques, theory, and algorithms. Lecture notes or slides will be updated here on the fly.

You can download the slides for all lectures of the second part of the class (advanced kernel methods) here! Each lecture corresponds to a range of slides. Slides are frequently updated. Please let us know if you spot typos!

** Homework 1.**
The first homework (data) is due by **Monday, November 21, 2022**. It is to be send by email to Pierre Gaillard as a pdf file containing all results and figures, together with the code file (e.g., notebook, python file,...). The report can be written in English or in French.

** Homework 2.**
The second homework is due by **Thursday, January 19 (extended deadline), 2023** at 09:00 AM (Hard deadline).
Students must submit a single PDF to the GradeScope plateform. Please follow the instructions to create an account on GradeScope and to submit the homework.
For questions about the Homework please send an email to "michael.arbel@inria.fr", the object of the email must start with the following code: 4V527W.