91250 - DEEP LEARNING

Anno Accademico 2019/2020

  • Docente: Andrea Asperti
  • Crediti formativi: 6
  • SSD: INF/01
  • Lingua di insegnamento: Inglese

Conoscenze e abilità da conseguire

Al termine dell'attività formativa, lo studente comprende le idee fondamentali, gli sviluppi recenti e le applicazioni potenziali dei sistemi neuronali (artificiali) profondi. Lo studente comprende tecniche supervisionate e non supervisionate, topologie neurali di base, metodi per visualizzare e capire il comportamento delle reti neurali, tecniche antagoniste e generative, apprendimento per rinforzo e reti ricorrenti. Lo studente è capace di applicare tali tecnologie a risolvere problemi di classificazione in domini realistici.

Contenuti

Il corso comincia con una introduzione alle Reti Neurali e al Deep Learning, e al loro tipico meccanismo di addestramento: l'algoritmo di backpropagation.

Si discuteranno i principali tipi di reti neurali: feed forward, convoluzionali e ricorrenti, fornendo esempi concreti e discutendo architetture che si sono dimostrate utili per elaborazione di immagini, localizzazione, segmentazione, trasferimento di stile, elaborazione del testo e molti altre applicazioni.

Investigheremo tecniche per la visualizzazione del comportamento delle unita' neurali nascoste (tematica collegata a deep dreams e inceptionism), tecniche per ingannare le reti neural, moderne tecniche generative tra cui Variational Autoencoders e Generative Adversarial Networks e iloro piu' recenti sviluppi.

La parte finale del corso sara' destinata ad una introduzione al Deep Reinforcement Learning, con particolare attenzione alla progettazione di agenti per video giochi, guida autonoma, ed ad altre situazioni che richiedono comportamenti intelligenti complessi e adattivi.

Testi/Bibliografia

Testo consigliato:

I.Goodfellow, Y.Bengio, A.Courville Deep Learning  MIT Press.

Per ogni lezione verrano forniti puntatori specifici a materiale disponibileon line, in aggiunta alle slides del corso.

Metodi didattici

Lezioni frontali basate su slides, con discussione di esempi pratici mediante l'uso di python notebooks.

Modalità di verifica e valutazione dell'apprendimento

Discussione di un progetto su di un insieme di tematiche proposte dal docente.

I progetti possono essere svolti in gruppi di al piu' due persone. L'esame consistera' nella presentazione e discussione del lavoro svolto.

Questa modalita' di verifica puo essere soggetta a cambiamenti in conseguenza del numero degli sudenti iscritti.

Strumenti a supporto della didattica

Le lezioni faranno un uso estensivo di slides. Si forniranno esempi concreti e funzionanti mediante l'uso di python notebooks.

Orario di ricevimento

Consulta il sito web di Andrea Asperti