class: center, middle # Introduction to Machine Learning ## Master 2 MIDS and MO .medium[Aurélie Fisher - Stéphane Gaïffas] .center[
] --- layout: true class: top --- # Format - Courses on .stress[slides] - All material in English - You will send your .stress[homeworks] via the `moodle` of the course - You will need to install these on your laptop : .center[
] - **Simplest** (and maybe best) way to get them (not tensorflow) is to install .center[
] --- class: center, middle
# We won't help to install stuff ! --- # Who ? You'll have the blessing of being taught by two amazing professors : - .stress[Aurélie Fischer]
.small[[http://www.lpsm.paris/dw/doku.php?id=users:fischer:index](http://www.lpsm.paris/dw/doku.php?id=users:fischer:index)] - .stress[Stéphane Gaïffas]
.small[[https://stephanegaiffas.github.io](https://stephanegaiffas.github.io)] --- # When ?
This means .stress[5 hours per week !] --- # Where ? Everything is on the course webpage: .center[[https://stephanegaiffas.github.io/teaching/m2mo](https://stephanegaiffas.github.io/teaching/m2mo)] -- .stress[Homeworks] will be `jupyter notebook`s to be sent via **moodle** only -- About .stress[questions] : PLEASE **ask questions** (boring otherwise) - Live - On the `#course-introduction-ml` channel of the following `Slack` workspace : .center[.small[[https://join.slack.com/t/m2midsunivdeparis/shared_invite/zt-gzhj589y-3h6bSFgsD4gmjZUA0oAVnw](https://join.slack.com/t/m2midsunivdeparis/shared_invite/zt-gzhj589y-3h6bSFgsD4gmjZUA0oAVnw)]] --- class: center, middle # No emails ! .center[
] **Slack** = .stress[best way] to contact us --- # Evaluation - **40%** for .stress[homeworks]
(send your jupyter notebooks via moodle) - **60%** for the .stress[final exam] # Material - Slides, notebooks and some data - .stress[Everything] is on the webpage : .center[[https://stephanegaiffas.github.io/teaching/m2mo](https://stephanegaiffas.github.io/teaching/m2mo)] --- class: center, middle, inverse # Agenda --- # 1. Introduction to supervised learning Contains .stress[three courses] taught by **S. Gaïffas** and about: - Binary classification - LDA / QDA for Gaussian models - Logistic regression - Standard metrics and recipes (overfitting, cross-validation) - Regularization (Ridge, Lasso) - Support Vector Machine, the Hinge loss - Kernel methods **Practical sessions** will be quick introductions to `python`, `numpy`, `pandas`, `scikit-learn` --- # 2. Trees and ensemble methods Contains .stress[two courses] taught by **A. Fischer** about: - KNN and kernels - Decision trees, CART - Bagging, Random Forests, Boosting **Practical sessions** using the `scikit-learn` library, and `XGBoost` or `LightGBM` if time permits --- # 3. Deep learning Contains .stress[one course] taught by **S. Gaïffas** about: - Introduction to neural networks - The perceptron, examples of "shallow" neural nets - Multilayer neural networks, deep learning - Adaptive-rate stochastic gradient descent, back-propagation - Convolutional neural networks **Practical session** about `TensorFlow` with an application to **image classification** --- # 4. Unsupervised learning Contains .stress[two courses] taught by **A. Fischer** about: - KMeans and quantification, some theory, custom distances - Mixture models, Gaussian mixtures, EM algorithm - CEM and ICL algorithms - Dimension reduction technique, PCA, Spectral clustering - If time permits, some theoretical guarantees for ML algorithms **Practical sessions** illustrating these algorithms with `scikit-learn` --- # 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 High-Dimensional Data**: Methods, Theory and Applications, P. Bühlmann, S. van de Geer, *Springer-Verlag* --- class: center, middle, inverse # Thank you !