Machine learning

A.A. 2024/2025
6
Crediti massimi
48
Ore totali
SSD
INF/01
Lingua
Inglese
Obiettivi formativi
The objective of the Machine Learning course is to provide the basic skills to analyze real problems, identify proper solutions for knowledge discovery, and design/implement analytic models. The course presents the best practices from both a theoretical and practical perspective with special focus on Human Centered application problems.
The course covers numerous well-studied methods such as classification, regression, structured prediction, clustering, and representation learning. It familiarizes the students with popular techniques for pattern recognition, knowledge discovery, and data analysis/modeling using Python, the most common language in the field.
Risultati apprendimento attesi
At the end of the course students will be able to understand and discuss the principles of machine learning. They will be able to analyze practical problems, and to design and implement suitable solutions. They will be familiar with the most important techniques in the field and will be able to use them to build effective machine learning systems.
The students will be able to:
- Understand the broad applications of machine learning across various societal contexts
- Develop a comprehensive understanding of ML concepts and identify the best models to fit various applications
- Integrate multiple data management techniques: data preprocessing, learning, regularization, and model selection
- Develop and implement machine learning algorithms and devise solutions to real-life problems within human centric domains
- Describe the properties of models and algorithms for learning and explain the practical implications of the results
- Collaborate effectively on machine learning projects and assignments with both experts and peers.
Corso singolo

Questo insegnamento può essere seguito come corso singolo.

Programma e organizzazione didattica

Edizione unica

Responsabile
Periodo
Secondo semestre

Programma
Concetti essenziali:
- introduzione al linguaggio Python
- elementi di probabilita' e statistica
- classi di problemi di ottimizzazione
- discesa del gradiente, regolarizzazione
- apprendimento automatico: apprendimento statistico, regressione, classificazione, clustering, generalizzazione
- tecniche di apprendimento: k-fold cross validation, leave one out, batches or mini-batches, model selection
- preparazione dei dati
- teoria della decisione bayesiana
- modelli di regressione
- reti neurali feed-forward
- Support Vector Machines lineari e non lineari
- modelli multi-classe
- modelli generativi: autoencoders e GANs
- deep learning e reti neurali convolutive
- recurrent neural networks
- algoritmi genetici
Prerequisiti
Analisi matematica, elementi di programmazione Python e di programmazione orientata agli oggetti.
Metodi didattici
Lezioni frontali con esempi funzionanti e dimostrativi in juypter-notebook - Attivita' laboratoriali - Materiali forniti dai docenti.
Materiale di riferimento
- Python Data Science Handbook by Jake VanderPlas - Publisher(s): O'Reilly Media, Inc. -
ISBN: 978-1-491-91205-8
- The Elements of Statistical Learning by Trevor Hastie , Robert Tibshirani , Jerome Friedman - Springer - ISBN: 978-0-387-84858-7
Modalità di verifica dell’apprendimento e criteri di valutazione
Esame orale con discussione di un progetto finale relativo ai contenuti del corso, su dati proposti dallo studente o dai docenti secondo le regole e i criteri descritti nel portale Ariel.
INF/01 - INFORMATICA - CFU: 6
Lezioni: 48 ore