Dipartimento di InformaticaUniversità degli Studi di Milano

Algoritmi per dati su larga scala2022/23

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. Ricevimento del 15 giugno

    Il ricevimento studenti del 15 giugno è sospeso.

  2. 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».

  3. Ricevimento dell'8 giugno

    Il ricevimento studenti dell'8 giugno avrà luogo remotamente, utilizzando l'indirizzo https://meet.jit.si/ricevimento-malchiodi.

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

  2. Modifica aula lezioni AMD

    A partire dal 28 marzo le lezioni dell'insegnamento di «Algorithms for massive datasets» avranno luogo nelle aule V8 (il martedì) e 204 (il mercoledì) dalle 14:30 alle 16:30.

  3. Ricevimento del 23 marzo

    Il ricevimento studenti del 23 marzo è sospeso.

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 110 V8
mercoledì 14:30 - 16:30 110 304

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 28/02/2023 HDFS e map-reduce.
L02 01/03/2023 Algoritmi map-reduce.
  • RU 2.3
L03 07/03/2023 Communication cost model.
  • RU 2.5
L04 08/03/2023 Spark. Analisi di link.
L05 14/03/2023 Analisi di link.
L06 15/03/2023 Analisi di link. Ricerca di elementi simili.
  • RU 5.4-5.5, 3.1-3.3.
L07 21/03/2023 Ricerca di elementi simili.
  • RU 3.3-3.5.
L08 22/03/2023 Ricerca di elementi simili.
L09 28/03/2023 Insiemi di elementi frequenti.
  • RU 6.1-6.2
L10 29/03/2023 Insiemi di elementi frequenti.
  • RU 6.3-6.4.4
L11 04/04/2023 Analisi di stream di dati.
  • RU 4.1-4.3.
L12 05/04/2023 Analisi di stream di dati. Clustering.
  • RU 4.4-4.5.
L13 18/04/2023 Clustering.
L14 19/04/2023 Basi di dati noSQL: mongodb.
L15 26/04/2023 Basi di dati noSQL: mongodb. Regressione.
  • RU 7.3-7.5.
L16 02/05/2023 Regressione.
L17 03/05/2023 Regressione logistica. Recommendation systems.
L18 09/05/2023 Recommendation systems.
L19 10/05/2023 Riduzione della dimensionalità.
L20 16/05/2023 Riduzione della dimensionalità.
    L21 17/05/2023 Gradient boosting.
    L22 23/05/2023 Deep learning e TensorFlow.
    L23 24/05/2023 Workshop (RadicalBit, Artea).
      L24 30/05/2023 Workshop (Microsoft).

        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 16/06/2023 (project deadline: 12/06)
        luglio 07/07/2023 (project deadline: 03/07)
        settembre 15/09/2023 (project deadline: 11/09)
        gennaio 22/01/2024 (project deadline: 17/01)
        febbraio 06/02/2024 (project deadline: 31/01)
        febbraio 21/02/2024 (project deadline: 14/02)