Lecturer  S. Gaiffas 
Périod 
Term 1 
ECTS  6 
Volume horaire:  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 `scikitlearn` library and `tensorflow` to try out the algorithms studied during the course.
Agenda of the course
1. Introduction to supervised learning (3 weeks)
 Binary classification, standard metrics and recipes (overfitting, crossvalidation) and regression LDA / QDA for Gaussian models Logistic regression, Generalized Linear Models Regularization (Ridge, Lasso, etc.) Support Vector Machine, the Hinge loss Kernel methods Decision trees, CART, Boosting
2. Optimization for Machine Learning (2 lectures)
 Proximal gradient descent Coordinate descent / coordinate gradient descent Quasinewton methods Stochastic gradient descent and beyond
3. Neural Networks (1 lecture)
 Introduction to neural networks  The perceptron, multilayer neural networks, deep learning Adaptiverate stochastic gradient descent, backpropagation Convolutional neural networks
4. Unsupervised learning (2 lectures)
 Gaussian mixtures and EM Matrix Factorization, Nonnegative Matrix Factorization Factorization machines Embeddings methods
Extra info
 Course spoken in French or English, all course material in English only ECTS credits : 6
References
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 HighDimensional Data: Methods, Theory and Applications, P. BÃ¼hlmann, S. van de Geer, *SpringerVerlag*