Machine Learning (CS)

General information

Degree: Master in Computer Science
Period: September - December


Provide knowledge of both theoretical and practical aspects of machine learning. Present the main techniques of machine learning and probabilistic reasoning.


Linear algebra, probability theory (briefly revised during the course). Boolean algebra, knowledge of a programming language. For a good introduction to linear algebra see: Gilber Strang, Introduction to Linear Algebra, Wellesley-Cambridge Press, 2016.


Introduction to machine learning: designing a machine learning system, learning settings and tasks, decision trees, k-nearest-neighbour estimation. Mathematical foundations: linear algebra, probability theory, statistical tests. Bayesian decision theory, maximum likelihood and Bayesian parameter estimation. Probabilistic graphical models, inference, parameters and structure learning. Discriminative learning: linear discriminant functions, support vector machines, kernel machines. Neural networks: representation learning, deep architectures. Unsupervised and reinforcement learning.

Course Information

Instructor: Andrea Passerini
Teaching assistant: Antonio Longa
Office hours: Arrange by email
Lecture time: Monday 8:30-10:30 (room b107)
Wednedsay 11:30-13:30 (room b017)
Lab time and place: TBD
Communications: Please check the moodle page of the course for news and updates.
Bibliography: R.O. Duda, P.E. Hart and D.G. Stork, Pattern Classification (2nd edition), Wiley-Interscience, 2001.
D. Koller and N. Friedman, Probabilistic Graphical Models, The MIT Press, 2009
J.Shawe-Taylor and N. Cristianini, Kernel Methods for Pattern Analysis, Cambridge University Press, 2004.
I. Goodfellow, Y. Bengio and A. Courville, Deep Learning, The MIT Press, 2016 (online version available here).
K. Murphy, Probabilistic Machine Learning: An Introduction, The MIT Press, 2021 (online version available here).
Slides: Introduction [slides] [handouts]
Decision Trees [slides] [handouts]
K-nearest neighbours [slides] [handouts]
Linear algebra [slides] [handouts]
Probability theory [slides] [handouts]
Evaluation [slides] [handouts]
Bayesian decision theory [slides] [handouts]
Parameter estimation [slides] [handouts]
Bayesian Networks [slides] [handouts]
Inference in BN [slides] [handouts]
Learning BN [slides] [handouts]
Naive Bayes [slides] [handouts]
Bayesian Network lab [slides] [data] [software]
Linear discriminant functions [slides] [handouts]
Support Vector Machines [slides] [handouts]
Non-linear Support Vector Machines [slides] [handouts]
Kernel Machines [slides] [handouts]
Scikit-learn lab [slides] [material]
Deep Learning [slides] [handouts]
Deep Learning lab [slides] [material]
Unsupervised learning [slides] [handouts]
BONUS TRACK: Reinforcement learning [slides] [handouts]
Videos: Registered lectures (from previous year) made available on Moodle


Modality: Oral examination.