Lecturer  A. Fischer 
Period  Term 1 
ECTS  6 
Hourly Volume:  5h lectures/tutorials 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.
1. Supervised learning  part 1
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 – Some optimization notions.
2. Supervised learning  part 2
Knn rule, kernel rule, decision trees, bagging, random forests, boosting, aggregation.
3. Neural Networks
Introduction to neural networks  The perceptron, multilayer neural networks, deep learning.
4. Unsupervised learning
Kmeans, link with vector quantization, distances  Mixture Models, EMalgorithm  PCA, dimension reduction, spectral clustering.
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*