Introduction to Machine Learning

Lecturer S. Gaiffas and A. Fisher
Period Term 1
Hourly Volume: 2h30 of courses and  2h30 of practical sessions per week

Machine learning is a scientific discipline that is concerned with the design and development of algorithms that allow computers to learn from data. A major focus of machine learning is to automatically learn complex patterns and to make intelligent decisions based on them. The set of possible data inputs that feed a learning task can be very large and diverse, which makes modeling and prior assumptions critical problems for the design of relevant algorithms.
This course focuses on the methodology underlying supervised and unsupervised learning, with a particular emphasis on the mathematical formulation of algorithms, and the way they can be implemented and used in practice.The course will describe for instance some necessary tools from optimization theory, and explain how to use them for machine learning.Numerical illustrations and applications to datasets will be given for the methods studied in the course.Practical sessions will start with a quick introduction to `Python` and the `jupyter notebook`, and the necessary libraries for data science.The sessions will use mainly the `scikit-learn` library and `tensorflow` to try out the algorithms studied during the course.


1. Supervised learning - part 1 (S. Gaïffas, 3 weeks)
Binary classification, standard metrics and recipes (overfitting, cross-validation) and regression - LDA / QDA for Gaussian models - Logistic regression, Generalized Linear Models - Regularization (Ridge, Lasso, etc.) - Support Vector Machine, the Hinge loss - Kernel methods – Some optimization notions.

2. Supervised learning - part 2 (A. Fischer, 2 weeks)
K-nn rule, kernel rule, decision trees, bagging, random forests, boosting, aggregation.
3. Neural Networks (S. Gaïffas, 1 week)
Introduction to neural networks - The perceptron, multilayer neural networks, deep learning.

4. Unsupervised learning (A. Fischer, 2 weeks)
Kmeans, link with vector quantization, distances - Mixture Models, EM-algorithm - PCA, dimension reduction, spectral clustering.


Extra info
Course spoken in French or English, all material in English


Machine Learning, K.M. Murphy, *MIT Press*

Foundations of Machine Learning. M. Mohri, A. Rostamizadeh and A. Talwalkar, *MIT Press*

Deep Learning, I. Goodfellow and Y. Bengio and A. Courville, *MIT Press*

Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython, W. McKinney, *O'Reilly*

Statistics for High-Dimensional Data: Methods, Theory and Applications, P. Bühlmann, S. van de Geer, *Springer-Verlag*