Il corso è andato in aula per l'ultima volta a settembre 2024 ed è formalmente sostituito, sebbene in lingua inglese con un taglio e un programma diverso, da "Quantum Computing and Neural Netwroks"
Sito ufficiale del Corso di Laurea in Ingegneria Elettronica
Sito ufficiale del Corso di Laurea in Ingegneria delle Comunicazioni
Programma A.A. 2024/2025. Il programma finale a consuntivo fa riferimento a TUTTO E SOLO quanto presentato, spiegato e discusso durante le lezioni del corso:
Introduzione al Machine Learning. Intelligenza artificiale, machine Learning e reti neurali. Applicazioni del machine learning ai sistemi elettrici ed elettronici.
Approcci pratici all'uso di reti neurali. Perceptron. Apprendimento, discesa a gradiente e backpropagation. Validazione del modello, overfitting e underfitting. Regolarizzazione. Preparazione dei dati.
Reti neurali "shallow". Radial Basis Function (RBF), Extreme Learning Machine (ELM) e Random Vector Functional-Link (RVFL), Echo State Network (ESN). Concetti di base sulla randomizzazione.
Introduzione alla predizione di serie temporali.
Deep learning e reti neurali "deep". Reti neurali ricorrenti e convolutive.
Introduzione all'Hyperdimensional Computing.
Machine learning applicato ad architetture computazionali, circuiti e sistemi. Concetti principali, casi di studio, problematiche, soluzioni e sviluppi futuri.
Machine learning applicato ai sistemi elettrici. Diagnosi dei guasti, sistemi di progettazione e controllo delle batterie, Smart Grid, reti energetiche distribuite e fonti rinnovabili.
Elementi di Intelligenza Artificiale Generativa. Meccanismi di attentioning, reti neurali generative, modelli diffusivi e autoencoder.
Architetture circuitali per il machine learning. Array sistolici, calcolo parallelo e pipelining. Calcolo parallelo su architetture multi-core e many-core (GPU computing).
Introduzione al quantum computing. Entanglement e sovrapposizione quantistica; calcolo tensoriale e operazioni matematiche fondamentali. Quantum gate array. Gli algortimi di Grover e Shor; introduzione alle reti neurali quantistiche e al quantum machine learning. Analisi dettagliata dell'algoritmo di Grover.
Esercitazioni pratiche (hands-on) usando Matlab e Python:
reti neurali e deep learning;
implementazione di algoritmi di machine learning (clustering, classificazione, regressione, deep learning).
predizione di serie energetiche;
calcolo parallelo multi-core e mediante GPU;
programmazione quantistica e utilizzo di calcolatori quantistici reali;
circuiti quantistici per l'ottimizzazione;
quantum deep learning;
Applicazioni e studi di caso:
predizione energetica da fonti rinnovabili, sistemi energetici intelligenti, Smart Grid;
applicazioni a dati reali (logistici, economici, biomedicali, meccatronici, ambientali e aerospaziali, etc.);
biometria e analisi comportamentale;
implementazione di reti neurali e neurofuzzy su microcontrollori, sistemi embedded e sensori intelligenti;
reti neurali quantistiche, ottimazione quantistica e sistemi generativi quantistici.
Materiale didattico:
Appunti e dispense fornite dai docenti:
[01-Intro] [02-AI_ML_NN] [03-NN_Hands-On]
[04-RNNs] [05-CNNs] [06-HDC_VSA (ext)]
[07-ML_Circuits] [08-ML_Applications] [09-Generative_AI]
[10-Computing_Structures] [11-Systolic_Arrays] [12-GPU_Computing]
[13-Prediction] [14-SNNs] [15-Quantum_Computing] [16-Grover_Algorithm]
Nota: gli script Matlab e Python utilizzati durante le esercitazioni sono stati condivisi su Google Classroom con gli studenti registrati che hanno frequentato il corso.
Nota: le slide con estensione '(ext)' contengono ulteriore materiale a titolo illustrativo in aggiunta a quanto discusso a lezione.
AVVISO. Per ogni tipo di comunicazione legata al corso, gli interessati sono pregati di inviarmi una e-mail indicando nell'OGGETTO "Machine Learning EE" e nel testo i seguenti dati: nome, cognome e numero di matricola. Cercherò di rispondere al più presto.