81610 - Machine Learning

Course Unit Page


This teaching activity contributes to the achievement of the Sustainable Development Goals of the UN 2030 Agenda.

Quality education Industry, innovation and infrastructure

Academic Year 2021/2022

Learning outcomes

Providing the student with the concepts necessary: - to understand and apply machine learning approaches; - implement classification, regression and clustering algorithms to solve problems in different applicative fields; use neural networks and other deep learning techniques. 

Course contents

  • Artificial Intelligence and Machine Learning
  • Supervided and Unsupervised Learning
  • Classification and Regression
  • Classifiers: Bayes, k-Nearest Neighbor, Support Vector Machines, Multiclassifiers
  • Clustering (K-means, EM) and Dimensionality Reduction (PCA, DA)
  • Neural Networks (NN)
  • Introduction to Deep Learning
  • Convolutional Neural Networks (CNN)
  • Recurrent Neural Networks (RNN)
  • Reinforcement Learning (RL)


Teacher's slides at:


Teaching methods

Lectures + Practical (guided) sessions in lab.

Lab assignments and solutions at:


Note: As concerns the teaching methods of this course unit, all students must attend Module 1, 2 on Health and Safety online

Assessment methods


Written exam with exercises and questions with free text answers.

The exam duration is 90 minutes.

Examples (previous exams with corrections) are available in the course web page.

It is not permitted to use books, teacher slides and notes.

A simple scientific calculator can be used (no smartphones).

The exam score is computed as the sum of single exercise/question scores. The scores of single exercises/questions can be slightly different based on their relative difficulty. If the total score exceeds 30, the final grade is 30 lode. 


During Covid-19 emergency, the written exam is replaced by an oral exam via videoconferencing. The exams topics (questions/exercises) are the same of the standard mode.

The exam grade can be rejected no more than two times.

Teaching tools

Software libraries and tools for machine learning:

- Scikit-learn (Python)

- Tensorflow, PyTorch, Caffè 

Links to further information


Office hours

See the website of Davide Maltoni