L’obiettivo del corso è quello di fornire agli studenti le conoscenze di base sui principi e le tecniche che caratterizzano il Deep Learning tramite lo studio dei fondamenti teorici e la loro applicazione su diversi scenari. In tal senso, verranno presentati modelli per la regressione e classificazione basati su reti neurali profonde al fine di realizzare sistemi intelligenti. Saranno inoltre fornite le competenze necessarie all’analisi di algoritmi di apprendimento automatico avanzati, le metodologie per la loro ottimizzazione, oltre che le capacità per l’utilizzo dei framework per il loro sviluppo. Al termine del corso lo studente sarà in grado di: avere una conoscenza dei fondamenti e la teoria alla base del Deep Learning; avere conoscenza un’ampia gamma di algoritmi di apprendimento profondo al fine di risolvere problemi di regressione e classificazione; effettuare il design ed il tuning di algoritmi di Deep Learning su set dati; valutare in autonomia gli algoritmi di Deep Learning in modo da selezionare il migliore in base al caso in esame.
Prerequisiti
Conoscenze di analisi dei dati Conoscenze dei principi fondamentali alla base del machine learning Conoscenze di programmazione Python
Testi
Deep Learning with Python, Second Edition
Autore: François Chollet
ISBN:9781617296864
Editore: Manning
Contenuti
-Introduzione al Deep Learning: il percettrone, modelli di apprendimento su più livelli, funzioni di attivazione, ottimizzatori, estrazione delle feature, la Backpropagation, problema della scomparsa del gradiente, problema dell’esplosione del gradiente. -Tool di sviluppo: TensorFlow, Keras. -Algoritmi di apprendimento supervisionato: Problemi di regressione e classificazione con reti neurali profonde. Processamento di immagini tramite reti neurali convoluzionali profonde: filtri convoluzionali, stride, padding, strati di pooling. Analisi di sequenze temporali mediante reti neurali ricorrenti: Long Short Term Memories (LSTMs), Gated Recurrent Units (GRUs). Algoritmo di Backpropagation Through Time (BPTT). -Ottimizzazione dei modelli: Scelta degli iperparametri di una rete neurale profonda, Fine tuning. Tecniche di trasferimento della conoscenza: Transfer learning. Metodi di regolarizzazione: Dropout, Regolarizzazione dei pesi. -Apprendimento non supervisionato: Gaussian Mixture Models, algoritmo di aspettazione-massimizzazione. Compressione: Deep Autoencoders, Variational Autoencoders. -Modelli generativi: Reti generatrici, Reti discriminatrici, Generative Adversarial Networks (GANs). -Apprendimento per rinforzo profondo: Markov Decision Process (MDP), concetti di agente, stato, azioni ed ambiente. Funzione di reward, apprendimento della politica. Algoritmi: Q-learning, Deep-Q learning.