Dipartimento di InformaticaUniversità degli Studi di Milano

Algoritmi per dati su larga scala2021/22

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 (2026-27) →
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)

    È disponibile il testo di un progetto per gli insegnamenti di «Algoritmi per dati su larga scala» e «Metodi statistici per l'apprendimento» della Laurea magistrale in «Informatica».

  2. 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». Un progetto congiunto con l'insegnamento di «Metodi statistici per l'apprendimento» sarà pubblicato a breve.

  3. Sospensione della lezione di Algoritmi per dati su larga scala del 13/4

    La lezione del 13/4 è sospesa e verrà recuperata in seguito.

Avvisi precedenti (2)
  1. Ricevimento del 10 marzo

    Il ricevimento studenti del 10 marzo è sospeso.

  2. Orario di ricevimento per il secondo semestre

    L'orario di ricevimento studenti per il secondo semestre si svolgerà il giovedì alle 17:00 nello studio del docente, a partire dal 03/03. Per evitare assembramenti è richiesto agli studenti di prenotarsi.

Orari del corso

Le lezioni si svolgono (fino a nuove indicazioni) a distanza autenticandosi a un link zoom accessibile dalla pagina moodle dell'insegnamento. L'orario provvisorio è il seguente:

Giorno Ora Luogo
martedì 14:30 - 16:30 G12
mercoledì 14:30 - 16:30 403

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 01/03/2022 Preliminari matematici.
L02 02/03/2022 HDFS e map-reduce.
L03 08/03/2022 Algoritmi map-reduce. Communication cost model.
  • RU 2.3-2.5.
L04 09/03/2022 Spark. Analisi di link.
L05 15/03/2022 Analisi di link.
L06 16/03/2022 Analisi di link. Ricerca di elementi simili.
  • RU 5.4-5.5, 3.1-3.3.
L07 22/03/2022 Ricerca di elementi simili.
  • RU 3.3-3.5.
L08 23/03/2022 Ricerca di elementi simili.
L09 29/03/2022 Insiemi di elementi frequenti.
  • RU 6.1-6.2
L10 30/03/2022 Insiemi di elementi frequenti.
  • RU 6.3-6.4.4
L11 05/04/2022 Analisi di stream di dati.
  • RU 4.1-4.3.
L12 06/04/2022 Analisi di stream di dati.
  • RU 4.4-4.5.
L13 12/04/2022 Basi di dati noSQL: mongodb.
L14 13/04/2022 Lezione sospesa.
    L15 26/04/2022 Clustering.
    L16 27/04/2022 Clustering.
    • RU 7.3-7.5.
    L17 03/05/2022 Recommendation systems.
    L18 04/05/2022 Recommendation systems. Regressione.
    L19 10/05/2022 Regressione e regressione logistica.
      L20 11/05/2022 Regressione logistica. Deep learning e TensorFlow.
      L21 17/05/2022 Deep learning e TensorFlow.
      L22 18/05/2022 Reti neurali ricorrenti.
      L23 24/05/2022 Riduzione della dimensionalità.
      L24 25/05/2022 Gradient boosting.
      L25 31/05/2022 Seminario.

        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 15/06/2022 (project deadline: 12/06)
        luglio 11/07/2022 (project deadline: 07/07)
        settembre 19/09/2022 (project deadline: 15/09)
        gennaio 20/01/2023 (project deadline: 16/01)
        febbraio 07/02/2023 (project deadline: 01/02)
        febbraio 21/02/2023 (project deadline: 16/02)