BIG DATA COMPUTING

Obiettivi formativi

Obiettivi generali: Conoscenza dei principali scenari applicativi di interesse nell'analisi di collezioni di dati di grandi dimensioni. Conoscenza e comprensione dei principali problemi metodologici e di analisi posti dalla dimensione crescente dei dati. Conoscenza delle principali tecniche di soluzione e dei principali strumenti a disposizione per implementarle. Comprensione degli aspetti teorici e fondazionali delle principali tecniche per l'analisi di collezioni di dati di grandi dimensioni Capacità di tradurre le nozioni acquisite in programmi per la soluzione di problemi specifici. Conoscenza delle principali tecniche di valutazione e loro applicazione a scenari specifici. Obiettivi specifici: Capacità di: - individuare le tecniche più adatte a un problema di analisi di dati di grandi dimensioni; - implementare la soluzione proposta, individuando gli strumenti più adatti a raggiungere lo scopo tra quelli disponibili; - progettare e realizzari scenari sperimentali per valutare le soluzioni proposte in condizioni realistiche; Conoscenza e comprensione: - conoscenza dei principali scenari applicativi; - conoscenza delle principali tecniche di analisi; - comprensione dei presupposti teorici e metodologici alla base delle tecniche principali - conoscenza e comprensione delle principali tecniche e indici di valutazione delle prestazioni Applicare conoscenza e comprensione: - essere in grado di tradurre esigenze applicative in problemi concreti di analisi dei dati; - essere in grado di identificare gli aspetti del problema, se presenti, che potrebbero rendere la dimensione (o dimensionalità) dei dati un fattore critico; - essere in grado di individuare le tecniche e gli strumenti più adatti alla soluzione dei problemi concreti di cui sopra; - essere in grado di stimare a priori, almeno qualitativamente, la scalabilità delle soluzioni proposte; Capacità critiche e di giudizio: Essere in grado di valutare, anche sperimentalmente, l'efficacia, l'efficienza e la scalabilità delle soluzioni proposte Capacità comunicative: Essere in grado di descrivere in modo efficace le specifiche di un problema e di comunicare ad altri le scelte adottate e le motivazioni sottostanti a tali scelte. Capacità di apprendimento: Il corso consentirà lo sviluppo di capacità di approfondimento autonomo su argomenti del corso o ad essi correlati. Metterà lo studente nelle condizioni di individuare e consultare in modo critico manuali avanzati o letteratura scientifica per affrontare scenari nuovi oppure per applicare tecniche alternative a scenari noti.

Canale 1
ARISTIDIS ANAGNOSTOPOULOS Scheda docente
ARISTIDIS ANAGNOSTOPOULOS Scheda docente
LUCA BECCHETTI Scheda docente

Programmi - Frequenza - Esami

Programma
Calcolo su vasta scala e analisi di grafi di grandi dimensioni Approccio tradizionale e paradigma MPC (Map Reduce - like). Soluzione di problemi elementari usando Apache Spark Algoritmi MapReduce/Hadoop - like per il conteggio del numero di triangoli e il calcolo delle componenti connesse Principali approcci al problema dell'individuazione di comunità in grafi di grandi dimensioni Tecniche di Hashing e sampling per esplorazione del vicinato Esplorazione del vicinato e il problema dell'elevata dimensionalità dei dati in spazi euclidei Riduzione della dimensionalità in spazi euclidei e non mediante tecniche di hashing Esplorazione efficiente mediante tecniche di hashing e bucketing Riduzione dello spazio di ricerca mediante tecniche di sampling Riduzione della dimensionalità Approccio di base basato sulla decomposizione SVD Tecniche di sparsificazione Tecniche probabilistiche di proiezione in sottospazi a dimensionalità ridotta Tecniche di Sketching e sampling per stream di dati Stima dei momenti in finestre scorrevoli Tecniche di Sketching per la stima e il tracciamento di elementi frequenti Tecniche di Sketching per la stima della dimensione di join Tecniche di Sketching per grafi di grandi dimensioni, con applicazione a esplorazione del vicinato e analisi della struttura a comunità Versioni distribuite nel paradigma MapReduce Algoritmi di semi-streaming per grafi di grandi dimensioni
Prerequisiti
- Nozioni di algebra lineare - Conoscenze di Analisi Matematica e studio delle funzioni, conoscenze di base di calcolo delle probabilità e statistica - Programmazione, algoritmi e strutture dati fondamentali
Testi di riferimento
- Capitoli scelti di "Foundations of Data Science", by Avrim Blum, John Hopcroft, and Ravindran Kannan, available at https://www.cs.cornell.edu/jeh/book.pdf - Capitoli scelti di "Mining of massive datasets" (2nd edition). Cambridge University Press, 2014, by Jure Leskovec, Anand Rajaraman, and Jeffrey David Ullman. - Articoli scientifici e risorse on-line su argomenti specifici
Frequenza
La frequenza alle lezioni teoriche e pratiche non è obbligatoria ma è fortemente consigliata
Modalità di esame
- Homework teorici e pratici assegnati sugli argomenti svolti durante il corso - Prova scritta su tutti gli argomenti del corso - Prova orale
Modalità di erogazione
La modalità di svolgimento è in presenza. Parte dell'attività consisterà in lezioni di tipo teorico accompagnate da altri di tipo pratico, nel corso delle quali gli studenti metteranno in pratica, insieme al docente, i concetti appresi
LUCA BECCHETTI Scheda docente

Programmi - Frequenza - Esami

Programma
Calcolo su vasta scala e analisi di grafi di grandi dimensioni Approccio tradizionale e paradigma MPC (Map Reduce - like). Soluzione di problemi elementari usando Apache Spark Algoritmi MapReduce/Hadoop - like per il conteggio del numero di triangoli e il calcolo delle componenti connesse Principali approcci al problema dell'individuazione di comunità in grafi di grandi dimensioni Tecniche di Hashing e sampling per esplorazione del vicinato Esplorazione del vicinato e il problema dell'elevata dimensionalità dei dati in spazi euclidei Riduzione della dimensionalità in spazi euclidei e non mediante tecniche di hashing Esplorazione efficiente mediante tecniche di hashing e bucketing Riduzione dello spazio di ricerca mediante tecniche di sampling Riduzione della dimensionalità Approccio di base basato sulla decomposizione SVD Tecniche di sparsificazione Tecniche probabilistiche di proiezione in sottospazi a dimensionalità ridotta Tecniche di Sketching e sampling per stream di dati Stima dei momenti in finestre scorrevoli Tecniche di Sketching per la stima e il tracciamento di elementi frequenti Tecniche di Sketching per la stima della dimensione di join Tecniche di Sketching per grafi di grandi dimensioni, con applicazione a esplorazione del vicinato e analisi della struttura a comunità Versioni distribuite nel paradigma MapReduce Algoritmi di semi-streaming per grafi di grandi dimensioni
Prerequisiti
- Nozioni di algebra lineare - Conoscenze di Analisi Matematica e studio delle funzioni, conoscenze di base di calcolo delle probabilità e statistica - Programmazione, algoritmi e strutture dati fondamentali
Testi di riferimento
- Capitoli scelti di "Foundations of Data Science", by Avrim Blum, John Hopcroft, and Ravindran Kannan, available at https://www.cs.cornell.edu/jeh/book.pdf - Capitoli scelti di "Mining of massive datasets" (2nd edition). Cambridge University Press, 2014, by Jure Leskovec, Anand Rajaraman, and Jeffrey David Ullman. - Articoli scientifici e risorse on-line su argomenti specifici
Frequenza
La frequenza alle lezioni teoriche e pratiche non è obbligatoria ma è fortemente consigliata
Modalità di esame
- Homework teorici e pratici assegnati sugli argomenti svolti durante il corso - Prova scritta su tutti gli argomenti del corso - Prova orale
Modalità di erogazione
La modalità di svolgimento è in presenza. Parte dell'attività consisterà in lezioni di tipo teorico accompagnate da altri di tipo pratico, nel corso delle quali gli studenti metteranno in pratica, insieme al docente, i concetti appresi
  • Codice insegnamento1044406
  • Anno accademico2025/2026
  • CorsoData Science
  • CurriculumCurriculum unico
  • Anno2º anno
  • Semestre1º semestre
  • SSDING-INF/05
  • CFU6