90733 - DATA ANALYTICS

Anno Accademico 2026/2027

  • Docente: Giuseppe Lisanti
  • Crediti formativi: 6
  • SSD: INFO-01/A
  • Lingua di insegnamento: Italiano
  • Moduli: Giuseppe Lisanti (Modulo 1) Marco Di Felice (Modulo 2)
  • Modalità didattica: Lezioni in presenza (totalmente o parzialmente) (Modulo 1); Lezioni in presenza (totalmente o parzialmente) (Modulo 2)
  • Campus: Bologna
  • Corso: Laurea in Informatica per il management (cod. 6060)

Conoscenze e abilità da conseguire

Al termine del corso, lo studente: (i) conosce le principali tecniche abilitanti della data analytics basate sul Machine Learning; (ii) è in grado di implementare una pipeline di valorizzazione del dato, dall’acquisizione all'addestramento di un modello ; (iii) è consapevole delle principali applicazioni della data analytics

Contenuti

Questo insegnamento è parte del corso integrato STATISTICAL LEARNING AND DATA ANALYTICS

Prerequisiti: Analisi Matematica, Algebra Lineare, Programmazione in Python

L’insegnamento introduce concetti, tecniche e strumenti per la progettazione ed implementazione di processi di valorizzazione ed analisi di dati. A tal proposito, il corso intende fornire una panoramica esaustiva di tutti gli elementi costitutivi di una pipeline di analisi di dati, dall’acquisizione, pre-processamento ed estrazione di conoscenza mediante tecniche di Machine Learning, fino all’analisi delle prestazioni. Vengono inoltre discussi casi d’uso della data analytics in ambiti business e management di impresa. Di seguito un breve riassunto dei contenuti trattati nel corso:

Richiami di programmazione Python e sulle librerie per l’analisi dati (Pandas, Numpy, etc)

Introduzione ai dati: acquisizione dei dati, tipi di dati, data cleaning, data pre-processing, riduzione della dimensionalità.

Introduzione al learning: predizione e regressione, split dei dati, interpretabilità, bias-variance trade-off.

Tecniche di analisi dei dati supervisionata: k-Neareast Neighbor, Support Vector Machines, Alberi Decisionali, Random Forests, Reti Neurali

Tecniche di analisi dei dati non-supervisionata: K-Means clustering, Gaussian Mixture Model

La teoria è integrata da sessioni di laboratorio. Per le Reti Neurali verrà utilizzato il framework PyTorch. Per tutte le altre tecniche di Machine Learning verrà utilizzata la libreria Scikit-Learn. Entrambe le librerie verranno approfondite durante le lezioni (es., con codici di esempio) e durante i laboratori (es., con esercitazioni).

Testi/Bibliografia

Tutte le slide del corso sono rese disponibili sulla piattaforma Virtuale. Non esiste un unico testo di riferimento; per sezioni specifiche del corso (segnalate di volta in volta dai docenti), si consiglia la lettura dei testi seguenti:

  • Gareth James, Daniela Witten, Trevor Hastie, Robert Tibshirani, An Introduction to Statistical Learning, Springer, 2013
  • Cristopher Bishop, Pattern Recognition and Machine Learning, Springer, 2016
  • Jiawei Han, Micheline Kamber, Jian Pei, Data Mining: Concepts and Techniques, Morgan Kaufmann Series in Data Management Systems

Ulteriori letture vengono suggerite dai docenti durante il corso in base all’argomento affrontato.

Metodi didattici

Il corso prevede lezioni frontali ed esercitazioni. Quest'ultime sono svolte utilizzando prevalentemente il linguaggio Python; i docenti mettono a disposizione dataset, sketch di codice di esempio e soluzioni attraverso la pagina Virtuale del corso.

Modalità di verifica e valutazione dell'apprendimento

Questo insegnamento è parte di un corso integrato, il voto finale sarà unico e sarà ottenuto come media pesata dei voti ottenuti nei due insegnamenti. In particolare, il voto di Statistical Learning pesa il 40% mentre il voto di Data Analytics pesa il 60%. Il voto sarà registrato una volta che lo studente avrà sostenuto gli esami di entrambi gli insegnamenti.

Di seguito vengono fornite maggiori informazione sulla modalità di esame del solo insegnamento di Data Analytics. Per le modalità di esame del corso di Statistical Learning si prega di far riferimento alla relativa pagina.

La verifica dell’apprendimento per l’insegnamento Data Analytics prevede due prove: una prova scritta teorica (obbligatoria) e un progetto (opzionale).

La prova scritta teorica (obbligatoria) prevede che lo studente risponda a due o più domande a risposta aperta sugli argomenti affrontati durante le lezioni del corso. Il voto massimo della prova scritta è di 24. Le date per la prova teorica scritta vengono pubblicate tramite ALMAESAMI e gli studenti devono registrarsi all'appello tramite il medesimo portale. Il voto della prova scritta può essere rifiutato massimo una volta.

Per quanto riguarda la prova scritta teorica, l’uso dell’IA è vietato. Ogni utilizzo costituisce violazione dell’integrità accademica

Il progetto (opzionale) consiste nella implementazione di un processo di data-analytics, considerando tutte le fasi della pipeline presentate in aula ed utilizzando i tool illustrati a lezione (PyTorch + Scikit-Learn). Il dataset per il progetto è presentato dal docente entro la fine del corso. Il progetto deve essere svolto in gruppi di massimo 2 o 3 studenti. Il voto massimo per il progetto è 8. Le date per la discussione dei progetti verranno pubblicate su ALMAESAMI e tutti i componenti di ciascun gruppo dovranno registrarsi tramite il portale. Il progetto deve essere consegnato tramite la piattaforma VIRTUALE, obbligatoriamente, una settimana prima della data riportata su ALMAESAMI.

Gli studenti che intendono sostenere il progetto devono comunicarlo entro la fine del corso, inviando al docente la composizione del gruppo.

Per quanto riguarda il progetto è consentito un uso limitato e non sostanziale dell’IA per attività di supporto (es., verifica del codice e documentazione). Non è permesso l’uso sostanziale per lo svolgimento di parti della prova. Gli studenti appartenenti al gruppo devono dichiarare esplicitamente se hanno utilizzato strumenti di AI generativa per il progetto. Inoltre, gli studenti devono essere sempre in grado di rispondere a domande sul codice relativo al loro progetto.

Nel caso uno studente decida di sostenere sia la prova scritta teorica (obbligatoria) che il progetto (opzionale), il voto finale è ottenuto come somma dei voti conseguiti nelle singole prove.

Le due prove possono essere sostenute in maniera indipendente, es., uno studente può sostenere prima la prova scritta teorica e poi il progetto e viceversa.

Studenti e studentesse con DSA o disabilità temporanee o permanenti: si raccomanda di contattare per tempo l’ufficio di Ateneo responsabile (https://site.unibo.it/studenti-con-disabilita-e-dsa/it); sarà sua cura proporre agli studenti e alle studentesse interessati/e eventuali adattamenti, che dovranno comunque essere sottoposti, con un anticipo di 15 giorni, all’approvazione del/della docente, che ne valuterà l'opportunità anche in relazione agli obiettivi formativi dell'insegnamento.

Strumenti a supporto della didattica

I PDF delle slide utilizzate nel corso saranno resi disponibili sulla pagina del corso su Virtuale, prima di ogni lezione.

I notebook Python e i dataset necessari per le sessioni di laboratorio saranno resi disponibili sulla pagina del corso su Virtuale.

Orario di ricevimento

Consulta il sito web di Giuseppe Lisanti

Consulta il sito web di Marco Di Felice