DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE

Obiettivi formativi

Obiettivi generali Acquisire familiarità con tecniche avanzate di machine learning supervisionato e non supervisionato; acquisire competenze di modellazione di problemi complessi attraverso tecniche di deep learning, e saperle applicare a contesti applicativi diversi. Obiettivi specifici Gli argomenti includono: reti neurali profonde, il loro addestramento e l'interpretazione dei risultati; reti convoluzionali e architetture prominenti; teoria del deep learning con particolare riferimento a questioni di convergenza; utilizzo di framework esistenti per l'implementazione di tecniche avanzate di machine learning; autoencoders; attacchi avversari. Conoscenza e comprensione: Conoscenza sul funzionamento delle reti neurali e loro interpretazione matematica come approssimatori universali. Comprensione dei limiti e delle potenzialità di modelli avanzati di machine learning. Applicazione di conoscenza e comprensione Progettazione, implementazione, messa in esercizio e analisi di architetture di deep learning per risolvere problemi complessi in disparati ambiti applicativi. Autonomia di giudizio Essere in grado di valutare le prestazioni di diverse architetture, e di valutare la capacità di generalizzazione delle stesse. Abilità comunicative Essere in grado di comunicare con chiarezza la formulazione di un problema di apprendimento avanzato e la sua implementazione, la sua applicabilità in contesti realistici, nonchè di motivare le scelte architetturali e di regolarizzazione. Capacità di apprendimento successivo: Essere in grado di apprendere tecniche alternative e più complesse quali i modelli generativi basati su traporto ottimo, le trasformate di scattering e lo studio del probilo energetico delle reti neurali. Essere in grado di implementare tecniche esistenti in maniera efficiente, robusta e affidabile.

Canale 1
EMANUELE RODOLA' Scheda docente

Programmi - Frequenza - Esami

Programma
- Data, features, and embeddings - Data awareness - Modeling prior knowledge - The curse of dimensionality - Task-driven features and invariances - Recap of linear algebra - Vector spaces, bases - Linear maps - Matrix notation and matrix algebra - Tensors and tensor operations - Parametric models and regression - Linear and polynomial regression - Convexity and Lp norms - Underfitting and overfitting - Cross validation - Logistic regression - Optimization - Gradient descent - Stochastic gradient descent - Learning rate, decay, momentum, batch size - Forward and reverse-mode automatic differentiation - Deep neural networks - Multi layer perceptron - Backpropagation - Universal approximation theorems - Autograd and modules - Invariance, equivariance, compositionality - Convolutional neural networks - Pooling - Double descent - Regularization: weight penalty, early stopping, dropout, batchnorm - Generative models - PCA - Manifolds and the manifold hypothesis - Representation learning - Autoencoders: variational, contractive, denoising - Generative adversarial networks - Adversarial learning - Decision boundaries - Black-box and white-box attacks - Adversarial perturbations: universal and one-pixel - Adversarial training - Geometric deep learning - Learning on graphs and point clouds - Learning on surfaces - Generative models of structured data - Adversarial surfaces
Prerequisiti
Importante: Calcolo; Algebra Lineare; Basi di machine learning. Indispensabile: Fondamenti di programmazione (linguaggio Python). Il corso coprirà comunque le basi di calcolo, algebra lineare e machine learning necessarie alla comprensione completa delle lezioni.
Testi di riferimento
Data la natura altamente dinamica dell'area coperta da questo corso avanzato, non è previsto un testo unico di riferimento. Durante il corso verranno indicate e fornite di volta in volta le fonti sotto forma di articoli scientifici e capitoli di libri. Come riferimento generale, i seguenti libri possono rivelarsi utili: Deep Learning Ian Goodfellow, Yoshua Bengio, Aaron Courville MIT Press, 2016 Deep Learning with PyTorch Vishnu Subramanian Packt, 2018
Modalità insegnamento
Il corso si svolge completamente in aula in modalità tradizionale. Sono previste lezioni frontali che coprono sia gli aspetti teorici che quelli più tecnici. Circa il 40% del corso consiste in lezioni speciali di tipo tutorial, vale a dire dimostrazioni pratiche svolte direttamente in aula usando il framework di deep learning PyTorch. Agli studenti viene richiesto di utilizzare il proprio computer per seguire queste lezioni pratiche dal vivo e di svolgere i tutorial che vengono proposti di volta in volta.
Frequenza
In presenza, ma senza obbligo di frequenza.
Modalità di esame
Le modalità di verifica consistono nei seguenti passi: 1. Una prova intermedia scritta di autovalutazione, che non concorre al calcolo finale del voto. 2. Lo svolgimento di un progetto, potenzialmente in gruppi. 3. Un esame orale opzionale. L'esame orale, opzionale, può apportare fino a 3 punti (sia in positivo che in negativo) al voto complessivo. Tutte queste fasi sono volte a valutare le competenze tecniche e la comprensione teorica sviluppate nel corso dell'insegnamento, così come la capacità di lavorare in gruppo, la conoscenza della letteratura, la capacità di formulare correttamente un problema di deep learning e la messa a punto di un impianto sperimentale (software).
Bibliografia
Deep Learning Ian Goodfellow, Yoshua Bengio, Aaron Courville MIT Press, 2016 Deep Learning with PyTorch Vishnu Subramanian Packt, 2018
Modalità di erogazione
Il corso si svolge completamente in aula in modalità tradizionale. Sono previste lezioni frontali che coprono sia gli aspetti teorici che quelli più tecnici. Circa il 40% del corso consiste in lezioni speciali di tipo tutorial, vale a dire dimostrazioni pratiche svolte direttamente in aula usando il framework di deep learning PyTorch. Agli studenti viene richiesto di utilizzare il proprio computer per seguire queste lezioni pratiche dal vivo e di svolgere i tutorial che vengono proposti di volta in volta.
  • Codice insegnamento10593236
  • Anno accademico2025/2026
  • CorsoComputer Science - Informatica
  • CurriculumCurriculum unico
  • Anno1º anno
  • Semestre2º semestre
  • SSDINF/01
  • CFU6