Dipartimento di InformaticaUniversità degli Studi di Milano

Algoritmi per dati su larga scala2024/25

Laurea magistrale in Informatica · Università degli Studi di Milano · Le lezioni sono in inglese · 6 CFU · 48 ore

Edizione archiviata: questa pagina è conservata come riferimento e alcuni materiali o collegamenti potrebbero non essere più disponibili. Edizione in corso (2025-26) →
Questa pagina si riferisce all'insegnamento di Analisi dei dati su larga scala della Laurea magistrale in Informatica. Il modulo Algorithms for massive data all'interno dell'insegnamento «Algorithms for massive data, cloud and distributed computing» della Laurea magistrale in Data science for economics è descritto in un'apposita pagina.

L'insegnamento si propone di descrivere il quadro complessivo dei processi per l'elaborazione dei big data, sia per quanto riguarda le metodologie e le tecnologie applicate in tale contesto.

Risultati attesi

Gli studenti:

  • saranno in grado di utilizzare le tecnologie per la memorizzazione distribuita dei dati;
  • apprenderanno il framework dell'elaborazione distribuita MapReduce e le sue principali estensioni;
  • apprenderanno i principali algoritmi utilizzati per problemi classici relativi ai big data, e a implementarli in un ambiente di elaborazione distribuito;
  • saranno in grado di scegliere i metodi appropriati per risolvere problemi caratterizzati da big data.

Avvisi

  1. Progetti per l'insegnamento di «Algoritmi per dati su larga scala» (Laurea magistrale in Informatica)

    Sono disponibili i testi dei progetti per l'insegnamento di «Algoritmi per dati su larga scala» della Laurea magistrale in «Informatica».

  2. Modifica aula lezioni AMD

    A partire dal 1 aprile le lezioni del martedì dell'insegnamento di «Algorithms for massive datasets» avranno luogo nel «Laboratorio magistrale» al terzo piano del Dipartimento di Informatica. Le lezioni del mercoledì avranno luogo presso la stessa aula a partire dal 9 aprile. Gli orari delle lezioni rimarranno invariati.

  3. Modifica aula lezioni AMD

    A partire dal 1 aprile le lezioni dell'insegnamento di «Algorithms for massive datasets» avranno luogo nel «Laboratorio magistrale» al terzo piano del Dipartimento di Informatica.

Avvisi precedenti (2)
  1. Modifica all'orario delle lezioni di Analisi per dati su larga scala

    Le lezioni del 29 e 30 aprile di Analisi per dati su larga scala sono sospese. Verranno recuperate a maggio.

  2. Pagine degli insegnamenti 2024/25

    Sono disponibili le pagine degli insegnamenti di Statistica e analisi dei dati e di Algoritmi per dati su larga scala dell'anno accademico 2024/25.

Orari del corso

Le lezioni si svolgono durante il secondo semestre e in presenza presso le strutture di Città Studi. L'orario è il seguente:

Giorno Ora Luogo
martedì 14:30 - 16:30 Lab. magistrale 3 piano 100 (Settore didattico)
mercoledì 13:30 - 15:30 Lab. magistrale 3 piano V10 (Didatteca)

Eventuali variazioni rispetto al calendario pianificato verranno comunicate in aula e pubblicizzate nel paragrafo Avvisi di questa pagina.

Ricevimento studenti

Su appuntamento, stanza 5015 del Dipartimento di Informatica. È possibile contattare il docente tramite posta elettronica, avendo cura di leggere preventivamente la guida predisposta dal Prof. Sebastiano Vigna e di specificare chiaramente nell'oggetto del messaggio il nome dell'insegnamento e l'anno accademico. In particolare, si invitano gli studenti a usare sempre come mittente l'indirizzo fornito loro dall'Ateneo (basato cioè sul dominio studenti.unimi.it) firmando con nome, cognome e matricola e ricordando che i tempi di risposta possono variare in funzione degli impegni del docente.

Materiale didattico

Le lezioni sono basate:

  • sul libro Mining of Massive Datasets, scritto da A. Rajaraman e J. Ullman (indicato come RU nel calendario delle lezioni), gratuitamente scaricabile dal sito degli autori e pubblicato in versione cartacea da Cambridge University Press (ISBN:9781107015357);
  • sulle dispense e sul codice di esempio pubblicati nel calendario delle lezioni.

Programma

Il programma riguarda gli argomenti dettagliati nel calendario delle lezioni (disponibile all'inizio delle lezioni), che corrisponde al materiale trattato sul libro di testo, oltre che sui restanti documenti elencati tra il materiale didattico.

Propedeuticità

È richiesta la conoscenza degli argomenti principali di programmazione degli elaboratori, analisi matematica e probabilità e statistica al livello considerato in una laurea triennale di area informatica.

Calendario delle lezioni

Lezione Data Argomento Materiale
L01 25/02/2025 HDFS e map-reduce.
L02 26/02/2025 Algoritmi map-reduce. Communication cost model.
  • RU 2.3, 2.5
L03 04/03/2025 Communication cost model. Analisi di link.
  • RU 2.5, 5.1-5.2
L04 05/03/2025 Analisi di link.
L05 11/03/2025 Ricerca di elementi simili.
  • RU 3.1-3.4.
L06 12/03/2025 Ricerca di elementi simili.
L07 18/03/2025 Insiemi di elementi frequenti.
  • RU 6.1-6.2.
L08 19/03/2025 Spark.
L09 25/03/2025 Insiemi di elementi frequenti.
  • RU 6.3-6.4.4
L10 26/03/2025 Analisi di stream di dati.
  • RU 4.1-4.3
L11 01/04/2025 Analisi di stream di dati.
  • RU 4.3-4.5.
L12 02/04/2025 Analisi di stream di dati. Clustering.
  • RU 4.5, 7.1-7.3.
L13 08/04/2025 Clustering.
L14 09/04/2025 Basi di dati noSQL: mongodb.
L15 15/04/2025 Basi di dati noSQL: mongodb. Regressione.
  • RU 7.3-7.5.
L16 16/04/2025 Regressione. Regressione logistica.
L17 22/04/2025 Deep learning e TensorFlow.
L18 23/04/2025 Deep learning e TensorFlow.
L19 06/05/2025 Transformer e LLM.
L20 07/05/2025 Riduzione della dimensionalità.
L21 13/05/2025 Riduzione della dimensionalità. Gradient boosting.
L22 14/05/2025 Workshop: Led by data: big data, cloud & AI in today's enterprise (Microsoft)
    L23 20/05/2025 Workshop: The role of data & analytics in consulting (Target Reply)
      L24 21/05/2025 Recommendation system.

      Modalità d'esame

      L'esame consiste di un progetto e di una prova orale, entrambi relativi agli argomenti trattati nell'insegnamento. Il progetto richiede l'elaborazione di un dataset tramite applicazione critica delle tecniche descritte durante le lezioni, ed è riassunto in una relazione scritta.

      La valutazione del progetto, espressa in termini approvato/respinto, tiene conto del livello di padronanza degli argomenti e della chiarezza espositiva nella relazione presentata. La prova orale, alla quale si accede dopo che il progetto è stato valutato positivamente, è basata sulla discussione di alcuni argomenti trattati nell'insegnamento e sull'approfondimento di alcuni aspetti del progetto presentato. La valutazione della prova orale, espressa in trentesimi, tiene conto del livello di padronanza degli argomenti, della chiarezza espositiva e della proprietà di linguaggio.

      Gli studenti devono iscriversi all'appello in cui vogliono sostenere l'esame, e inviare via mail al docente il progetto entro le date indicate nella tabella che segue. Quando il progetto è stato corretto gli studenti saranno contattati per organizzare l'esame orale. La tabella sottostante indica le date provvisorie per gli orali.

      Appelli d'esame

      Sessione Data
      giugno 18/06/2025 (project deadline: 12/06)
      luglio 02/07/2025 (project deadline: 26/06)
      settembre 19/09/2025 (project deadline: 12/09)
      gennaio 21/01 (project deadline: 14/01)
      febbraio 11/02 (project deadline: 04/02)
      marzo 23/03 (project deadline: 16/03)