Sapienza - University of  Rome

DIET -  Department of Information Engineering, Electronics and Telecommunications  


Course Info: 

Machine Learning

Prof. Aurelio Uncini 

Laurea Magistrale: Ing. Comunicazioni, Ing. Informatica, Ing. Elettronica


Possible prosecution for Thesis, (also in companies, or in collaboration with other research centers at foreign universities).
For information contact the Teacher or its collaborators
 Dr. Simone Scardapane,  Dr. Michele Scarpiniti, Dr. Danilo Comminiello.


Procedures for the final examination:
The exam consists of an oral pre-test on the whole program and a dissertation (home-work project) that relates to a specific part of the program.




Course beginning:

Febrary  - last week,  2023
Duration 13 weeks.


Lesson timetable


08:00 - 12:00

Room 20, SPV


08:00 - 12:00

Room 20, SPV








The main objectives of the course “Machine Learning” (ML) is to introduce students to state-of-the-art methods and basic programming tools for analysis of complex data set. The ML course provides theoretical and practical basic-tools for the study and determination of adaptive and machine learning algorithms: linear, nonlinear, supervised, unsupervised for static (or memoryless) applications: regression, classification and clustering; and dynamic application: adaptive filtering, modeling and prediction of complex physical phenomena.


In particular, are provided: the theoretical and practical basic-tools for linear adaptive filtering in different application; the formal statistical methods for performance analysis of ML algorithms and the basic tools for the algorithm development.

A secondary objective of the ML course  is to teach students how to develop, and evaluate, simple ML or adaptive filtering algorithms in various application domains such as: multimedia and multimodal communications, biological, biomedical, sound, telecommunications, remote sensing, social networks, internet, big-data, industry 4.0,  etc.

Therefore, every student will lead a project that is based on machine learning state-of-the-art research.


Objectives of the Course

The student acquires the basic theory and is able to design, implement and evaluate the performance of, most common machine learning algorithms, also on parallel machines with different grain on several application contexts.


Course syllabus 6CFU

  1. Mathematical Elements for Machine Learning: Nonlinear Programming, Stochastic Processes and Estimation Theory

  1. Least Squares Methods for Adaptive Computation and Machine Learning: Regression and Classification

  1. Basic ML Algorithms:  K-Nearest Neighbors, kMeans

  1. Bayesian Approach to Statistical Learning and Ensemble Methods

  1. Over- and Under-Determined Systems of Linear Equations Optimal Solution, with L1-L2 Regularization 

  1. Linear and Nonlinear Adaptive Filters: Algorithms, Applications and  Variants  

  1. Naive Bayes Classifiers: Gaussian and Bernoulli Data-Model

  1. Regularized Networks, Mixture Model, Decision Trees and Kernel Machines, and SVM

  1. Monte Carlo Methods

  1. Neural Networks


Course syllabus 3CFU

  1. Python language fundamentals

  2. SciKit-learn

  3. ML exercise


Each course topic is accompanied by exercises in Python language, and the class and function references of scikit-learn. or TensorFlow





  • Aurelio Uncini, “Introduction to Neural Networks and Deep Learning,” Ed. 2022 (free pdf available  for the students). 
  • Aurelio Uncini, “Mathematical Elements for Machine Learning,” Ed.  2022 (free pdf available  for the students).

Other recommended reading

Old historical books