DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
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.
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
- CorsoMatematica applicata
- CurriculumMatematica per Data Science - 10
- Anno1º anno
- Semestre2º semestre
- SSDINF/01
- CFU6