- Docente: Stefano Pagliarani
- Crediti formativi: 6
- SSD: MAT/06
- Lingua di insegnamento: Inglese
- Moduli: Stefano Pagliarani (Modulo 1) Giovanni Paolini (Modulo 2)
- Modalità didattica: Convenzionale - Lezioni in presenza (Modulo 1) Convenzionale - Lezioni in presenza (Modulo 2)
- Campus: Bologna
-
Corso:
Laurea in
Matematica (cod. 8010)
Valido anche per Laurea Magistrale in Matematica (cod. 5827)
Laurea Magistrale in Matematica (cod. 6730)
Conoscenze e abilità da conseguire
Alla fine del corso, gli studenti avranno acquisito una solida comprensione delle principali tecniche di machine learning. Avranno le competenze per applicare e adattare efficacemente questi metodi in diverse situazioni. Inoltre, gli studenti saranno dotati di conoscenze fondamentali dei concetti probabilistici che sottendono questi metodi.
Contenuti
- Introduzione al machine learning: problemi di regressione e classificazione, principali paradigmi di machine learning, overfitting e regolarizzazione, cenni all'interpretazione dell'overfitting in termini di complessità di un modello.
- Basi di teoria dell'informazione: entropia di variabili aleatorie discrete e assolutamente continue, teorema della codifica di sorgente, entropia relativa e applicazione al machine learning.
- Modelli lineari per supervised learning: regressione lineare, regressione logistica, interpretazione geometrica e interpretazione probabilistica delle loss functions e della regolarizzazione.
- Discesa stocastica del gradiente: richiami sul metodo di discesa deterministica, metodo di discesa stocastica e risultati di convergenza, applicazioni al training di modelli.
- Deep learning: reti neurali fully connected, risultati di densità di reti neurali in spazi funzionali, reti convoluzionali e transformer, caratterizzazione di layer equivarianti rispetto all'azione di gruppi.
- Richiami di teoria dei processi stocastici: processi gaussiani, catene di Markov e probabilità di transizione, processi stocastici diffusivi.
- Language models: introduzione al problema del language modeling, entropia di un linguaggio, approcci basati su reti neurali, large language models, pre-training e post-training.
- Reinforcement learning: algoritmi di base, deep Q-learning, reinforcement learning from human feedback, cenni ad applicazioni del reinforcement learning alla formalizzazione della matematica e alla dimostrazione automatica di teoremi.
- Cenni a modelli gaussiani e diffusivi: approccio bayesiano a regressione e classificazione, modelli discriminativi di tipo gaussiano, processi di Markov inversi e modelli diffusivi generativi.
Prerequisiti: nozioni fondamentali di algebra lineare, calcolo differenziale in più variabili, calcolo integrale, calcolo delle probabilità, programmazione in Python, e teoria dei gruppi.
Propedeuticità consigliate: Analisi Matematica I e II, Geometria I, Probabilità e statistica matematica, Informatica, Aritmetica e gruppi.
Testi/Bibliografia
- Christopher Bishop, Pattern Recognition and Machine Learning
- Aston Zhang, Zack C. Lipton, Mu Li, Alex J. Smola, Dive into Deep Learning
- Christopher Bishop, Deep Learning
- Carl Edward Rasmussen and Christopher K. I. Williams, Gaussian Processes for Machine Learning
- Richard S. Sutton and Andrew G. Barto, Reinforcement Learning: An Introduction
- Dan Jurafsky and James H. Martin, Speech and Language Processing
Metodi didattici
- Lezioni frontali alla lavagna e/o con le slides.
- Attività di programmazione e simulazione in laboratorio.
Modalità di verifica e valutazione dell'apprendimento
Consegna di un progetto finale in Python, da svolgere in gruppo, seguita da colloquio orale volto alla verifica del contributo individuale dei singoli studenti.
Strumenti a supporto della didattica
- Ricevimento e tutorato.
- Note in PDF su alcune parti del programma.
- Sessioni di laboratorio sotto la supervisione di un tutor.
Orario di ricevimento
Consulta il sito web di Stefano Pagliarani
Consulta il sito web di Giovanni Paolini