You are here: Home » Study Plan » Subject


Subject: DEEP LEARNING (A.A. 2021/2022)

master degree course in COMPUTER SCIENCE

Course year 2
Teaching units Unit Deep Learning
Information Technology (lesson)
  • TAF: Compulsory subjects, characteristic of the class SSD: ING-INF/05 CFU: 6
Teachers: Simone CALDERARA
Exam type oral
Evaluation final vote
Teaching language Italiano
Contents download pdf download




The aim of the course is to provide in-depth knowledge of the main machine learning and deep learning techniques for the analysis of heterogeneous data. In particular, the main data classification algorithms, temporal sequences of information and complex patterns such as images will be presented and analyzed. The main techniques of supervised and unsupervised machine learning will be presented.
Neural networks and how they work will also be illustrated. Present complex neural architectures for the analysis of spatial and temporal data and generative models. The rudiments of learning with reinforcement will also be provided.

Admission requirements

Basic knowledge of statistics and linear algebra
Python programming language

Course contents


Classification theory, taxonomy and metrics:
-classification taxonomy
-learning assumptions

Introduction to Bayesian Probability:
-Bayesian Statistics
-Bayes Classifier
-Naïve assumption

Linear Models for Classification:
-Logistic Regression

Margin methods and SVM

Ensemble Methods:
-Decision Trees and Random Forest

Unsupervised Learning and Dimensionality Reduction
-Hierarchical clustering
-Spectral clustering
-PCA and LLE



Neural Networks Introduction:
-Gradient descent
-Perceptron and MLE

Advanced NN:
-Convolutional network
-RNN and sequential data processing

Unsupervised NN
-Generative NN VAE
Generative NN GAN

Reinforcement Learning:
-Function approximation and RL
-Deep reinforcement Learning


Teaching methods

Slide from the lecturer. Lab session coding all the presented techniques in Python and Pytorch.

Assessment methods

Oral exam with both thory and math derivations. 3 Questions: one purely about classification theory one about the classifier and its math derivation one about the comparison of different techniques in solving a real life problem

Learning outcomes

Knowledge and Understanding:
Know and understand the key techniques of pattern recognition and machine learning for data analysis of heterogeneous nature .
Applying knowledge and understanding:
Know how to apply the main classification algorithms of data, temporal sequences of information and complex patterns such as images and know how to apply the main techniques of machine learning is of type supervised that unsupervised .
Autonomy of Findings
independent judgment in analyzing and designing complex systems , assessing the impact of information technology solutions in the application context , both in relation to the technical aspects organizational aspects and proving to actively participate in decision-making in interdisciplinary contexts .
Communication skills:
describe a heterogeneous stakeholders in a clear and understandable information , ideas , problems and solutions as well as technical aspects ;
Learning skills:
-the capacity to recognize the need for independent learning throughout the lifespan , given the high rate of technological and methodological innovation in the area of Computer Engineering ;
- Ability to independently acquire new expertise from the literature


The course will use the following textbooks freely available on the web
Machine Learning:
[ISL]: An Introduction to Statistical Learning. James, Witten, Hastie and Tibshirani.
[ESL]: The Elements of Statistical Learning, Second Edition. Hastie, Tibshirani and
Deep Learning:
[DLB]: Deep Learning. Ian Goodfellow and Yoshua Bengio and Aaron Courville. Suggested further readings:
[RL]: Reinforcement Learning Sutton, Barto.
[PRML]:Pattern Recognition and Machine Learning. Bishop Christopher. Readings are intended to be completed after classes.