Intelligenza Artificiale e analisi dei dati

Obiettivi formativi e Competenze in uscita

Il corso illustra i principali metodi di Intelligenza Artificiale e Machine Learning utili per l’analisi dei dati e dei processi, considerando aspetti di diagnostica e prognostica dei sistemi industriali.


Le principali conoscenze acquisite saranno fondamenti teorici, caratteristiche e casi d’uso delle tecniche di apprendimento automatico supervisionato e non supervisionato, considerando anche tecniche basate su reti neurali deep. Verranno inoltre fornite conoscenze su process mining.


Le principali competenze acquisite saranno:

  • capacità di applicare metodi di classificazione e regressione per modellare problemi di machine learning supervisionato;

  • capacità di applicare metodi di clustering e data mining per risolvere problemi di machine learning non supervisionato;

  • capacità di applicare tecniche di process mining.

 

Prerequisiti

L’insegnamento richiede come prerequisito la conoscenza dei concetti base della programmazione e del linguaggio di programmazione Python

 

Contenuti

  1. Introduzione all'Intelligenza Artificiale: cenni storici, principali campi applicativi;

  2. Introduzione al Machine Learning: paradigmi di apprendimento;

  3. Metriche di valutazione delle performance dei modelli di machine learning;

  4. Classificazione e regressione con modelli basati su alberi (Alberi decisionali, Random forest) e reti neurali profonde (MultiLayer Perceptron, reti convoluzionali, reti ricorrenti);

  5. Clustering;

  6. Introduzione al Data Mining;

  7. Applicazioni degli algoritmi visti al settore industriale, con attenzione alla diagnostica e prognostica degli impianti industriali e alla anomaly detection per il controllo qualità della produzione.

  8. Introduzione al Process Mining e apprendimento di modelli di processi da dati aziendali.


Laboratorio:

  1. Utilizzo di librerie Python per la gestione e il preprocessing dei dati;

  2. Utilizzo della libreria Scikit-Learn per il Machine Learning

  3. Utilizzo della libreria PyTorch per la gestione di reti neurali.

 

Metodi e Approcci Didattici 

La didattica comprende lezioni frontali in aula e lezioni ed esercitazioni pratiche in Laboratorio.

 

Testi e Materiali Didattici 

Testi di riferimento utilizzati sono:
Peter Flach, “Machine Learning The Art and Science of Algorithms that Make Sense of Data”, Cambridge University Press, 2012
Tom M. Mitchell, “Machine Learning”, McGraw-Hill, 1997

Ian Goodfellow, Yoshua Bengio, and Aaron Courville. Deep learning. MIT press, 2016.

Jake VanderPlas. Python data science handbook: essential tools for working with data. O'Reilly Media, Inc., 2016.

 

Modalita’ di valutazione

L’esame consiste di una prova scritta seguita da una prova pratica (individuale o di gruppo) con annessa prova orale sulle conoscenze acquisite:

  • La prova scritta è organizzata come un insieme di domande teoriche che possono vertere su tutti gli argomenti trattati nel corso

  • La prova pratica sarà un progetto assegnato dal docente al singolo studente o al più a gruppi di due studenti. La valutazione avverrà tramite una presentazione del progetto che dovrà essere fatta dal singolo studente (in caso di attività individuale) o da tutto il gruppo (massimo 2) di studenti nel suo insieme. In questo ultimo caso, ogni studente del gruppo dovrà avere la responsabilità di una parte del progetto chiaramente identificata, dimostrare di avere compreso l'architettura applicativa e le funzioni di tutti i principali componenti software, oltre alla presentazione dettagliata dei componenti realizzati.