Il corso fornirà una panoramica dei principi alla base delle reti neurali e delle deep architectures, passando dagli approcci classici a quelli più recenti
Learning how to use advanced machine learning algorithms, including learning data representation (dictionaries and metric), deep learning, and learning in dynamic environment (online, active and reinforcement learning), by grasping the underlying computational and modeling issues.
Agli studenti verrà fornita una panoramica delle reti neurali e delle deep architecture, partendo dai principi di base fino a concetti più avanzati. Verranno discussi i diversi tipi di architetture esistenti. Inoltre, verranno introdotte metodologie recenti per discutere problemi pratici relativi ad esempio ad aspetti computazionali, alla necessità di grandi quantità di dati e alla capacità di generalizzazione. Le attività pratiche, in cui gli studenti faranno pratica con l'uso delle reti neurali, accompagneranno sempre le lezioni teoriche. Gli studenti svilupperanno ulteriormente la loro capacità di analisi critica dei risultati.
Basi di Machine Learning, programmazione (preferibilmente in Python)
Le lezioni teoriche saranno sempre accompagnate a sessioni pratiche di laboratorio Gli studenti verranno invitati a lavorare in gruppo durante tali sessioni di laboratorio.
Il corso coprità i seguenti argomenti:
* Neural Networks * Convolutional Neural Networks * Recurrent Neural Networks * LSTMs * Transformers * Graph Neural Networks * Autoencoders and GANs * Deep clustering * Representation Learning Strategies * Transfer Learning and domain adaptation
Il materiale verrà messo a disposizione dai docenti, si veda il modulo AulaWeb del corso.
Ricevimento: Ricevimento su appuntamento da concordare via email (nicoletta.noceti@unige.it)
NICOLETTA NOCETI (Presidente)
VITO PAOLO PASTORE
VITTORIO MURINO (Presidente Supplente)
In accordo con il calendario didattico approvato dal Consiglio dei Corsi di Studio in Informatica e Computer Science
L'esame consisterà in due parti * Un progetto (in Python) che verrà presentato in un breve seminario (non previsto se numero di crediti < 9) * Un esame orale
L'esame valuterà la comprensione complessiva degli argomenti del corso, la capacità di generalizzare i concetti a problemi non visti e di analizzare i risultati ottenuti. Si terrà conto della chiarezza espositiva, della completezza dei concetti, della qualità delle soluzioni proposte e del pensiero critico.