L'insegnamento si propone di introdurre gli studenti nel campo dell'intelligenza artificiale partendo dallo studio degli algoritmi di base nella loro intima natura. Dopo una iniziale panoramica dello stato dell'arte, lo studente sarà guidato nello studio a basso livello del funzionamento degli algoritmi di machine learning per poi essere in grado di sviluppare meccanismi di previsione anche per livelli di astrazione maggiori. Al termine dell'insegnamento, lo studente sarà in grado di analizzare, progettare e realizzare un sistema di Intelligenza Artificiale applicato ad uno specifico problema.
scheda docente
materiale didattico
Ottimizzazione non-lineare: il problema dei minimi locali
Preparazione dei dati per un corretto addestramento del sistema neurale
Addestramento supervisionato: algoritmo di backpropagation per il calcolo del gradiente della funzione di errore di un MLP
Realizzazione dell’algoritmo di backpropagation in C/C++ from scratch
Algoritmo di addestramento a discesa del gradiente (Gradient Descent)
Realizzazione dell’algoritmo Gradient Descent in C/C++ from scratch
Algoritmo di addestramento a discesa stocastica del gradiente (Stochastic Gradient Descent)
Realizzazione dell’algoritmo Stochastic Gradient Descent in C/C++ from scratch
Algoritmo di addestramento Levenberg-Marquardt
Realizzazione dell’algoritmo Levenberg-Marquardt in C/C++ from scratch
Addestramento con algoritmi genetici e swarm intelligence
Addestramento non supervisionato
Addestramento a rinforzo
https://d2l.ai/
Mutuazione: 20810549-2 DESIGN OF LEARNING ALGORITHMS in Ingegneria delle Telecomunicazioni LM-27 RIGANTI FULGINEI FRANCESCO
Programma
Introduzione alla teoria dell’ottimizzazioneOttimizzazione non-lineare: il problema dei minimi locali
Preparazione dei dati per un corretto addestramento del sistema neurale
Addestramento supervisionato: algoritmo di backpropagation per il calcolo del gradiente della funzione di errore di un MLP
Realizzazione dell’algoritmo di backpropagation in C/C++ from scratch
Algoritmo di addestramento a discesa del gradiente (Gradient Descent)
Realizzazione dell’algoritmo Gradient Descent in C/C++ from scratch
Algoritmo di addestramento a discesa stocastica del gradiente (Stochastic Gradient Descent)
Realizzazione dell’algoritmo Stochastic Gradient Descent in C/C++ from scratch
Algoritmo di addestramento Levenberg-Marquardt
Realizzazione dell’algoritmo Levenberg-Marquardt in C/C++ from scratch
Addestramento con algoritmi genetici e swarm intelligence
Addestramento non supervisionato
Addestramento a rinforzo
Testi Adottati
Dive into deep learninghttps://d2l.ai/
Modalità Frequenza
Frequenza facoltativa ma altamente raccomandata.Modalità Valutazione
Progettazione ed implementazione di un algoritmo/sistema di addestramento specifico