MATEMATICA E INFORMATICAInformaticaAnno accademico 2022/2023

1007998 - INTRODUZIONE AL DATA MINING

Docente: GIOVANNI MICALE

Risultati di apprendimento attesi

Obiettivi formativi generali dell'insegnamento in termini di risultati di apprendimento attesi.

  1. Conoscenza e capacità di comprensione: Il corso mira a formare le conoscenze e le competenze di base per l’analisi, la rappresentazione, e l’organizzazione di dati.
  2. Capacità di applicare conoscenza e comprensione: lo studente acquisirà conoscenze riguardo ai modelli e gli algoritmi per l’analisi dei dati quali: mining ad alto supporto, sistemi di raccomandazione, ricerca di similarità, classificazione, clustering, reti neurali, analisi di reti.
  3. Autonomia di giudizio: Attraverso esempi concreti e casi di studio, lo studente sarà in grado di elaborare autonomamente soluzioni a determinati problemi legati all'analisi dei dati.
  4. Abilità comunicative: lo studente acquisirà le necessarie abilità comunicative e di appropriatezza espressiva nell'impiego del linguaggio tecnico nell'ambito generale dell'analisi dei dati.
  5. Capacità di apprendimento: il corso si propone, come obiettivo, di fornire allo studente le necessarie metodologie teoriche e pratiche per poter affrontare e risolvere autonomamente nuove problematiche che dovessero sorgere durante una attività lavorativa. A tale scopo diversi argomenti saranno trattati a lezione coinvolgendo lo studente nella ricerca di possibili soluzioni a problemi reali, utilizzando benchmark disponibili in letteratura.

Modalità di svolgimento dell'insegnamento

Lezioni frontali.

Qualora l'insegnamento venisse impartito in modalità mista o a distanza potranno essere introdotte le necessarie variazioni rispetto a quanto dichiarato in precedenza, al fine di rispettare il programma previsto e riportato nel syllabus.

Prerequisiti richiesti

Programmazione e strutture dati.

Frequenza lezioni

La frequenza a lezione è fortemente consigliata.

Per seguire meglio le lezioni, delle slide sono messe a disposizione dal docente. 

Le slide non costituiscono un mezzo di studio, ma favoriscono l'apprendimento degli argomenti presentati a lezione.

Per ulteriori approfondimenti sugli argomenti del corso, durante le lezioni verranno indicati riferimenti a libri di testo e risorse online.

Contenuti del corso

Il corso è diviso in due parti, una teorica in cui verranno illustrati i principali problemi di Data Mining e una pratica in cui verrà introdotto il linguaggio R e mostrato come tali problemi possono essere risolti in R. Le due parti saranno portate avanti in parallelo.

Gli argomenti affrontati nel corso sono:

Nell'ambito del linguaggio R, oltre alle funzioni di base, verranno introdotte diverse librerie per l'analisi dei dati, quali "caret" (per la classificazione), "igraph" (per l'analisi e la visualizzazione di reti) e "keras" (per la costruzione di reti neurali). 

Testi di riferimento

Per la parte teorica sull'analisi dei dati, si farà principalmente riferimento a diversi capitoli del libro:

Altri testi di Data Mining suggerito è

Per la parte relativa al calcolo delle probabilità il testo suggerito è:

Per il linguaggio R si può far riferimento al seguente libro di testo disponibile online:

Programmazione del corso

 ArgomentiRiferimenti testi
1Introduzione al data miningLeskovec Capitolo 1
2Richiami su calcolo delle probabilitàWarren Capitoli 1 e 2
3Linguaggio RMateriale fornito dal docente
4Data Mining ad alto supporto (apriori, insiemi frequenti, regole di associazione)Leskovec Capitolo 6
5Classificazione (alberi decisionali, SVM, classificatori bayesiani, classificatori lazy, estrattori di regole)Leskovec Capitolo 12 + Materiale fornito dal docente
6Clustering (gerarchico, k-means, density-based)Leskovec Capitolo 7
7Sistemi di raccomandazioneLeskovec Capitolo 9
8Catene di Markov e HMMMateriale fornito dal docente
9Introduzione alle reti (Misure di centralità, Coefficiente di Clustering)Materiale fornito dal docente
10Modelli random di retiMateriale fornito dal docente
11Graph matchingMateriale fornito dal docente
12Graph miningMateriale fornito dal docente
13Reti neurali (Feed-Forward, Convolutional, Recurrent, Long-Short Term Memory)Leskovec Capitolo 13

Verifica dell'apprendimento

Modalità di verifica dell'apprendimento

L'esame finale consiste in una prova scritta, seguita da una prova orale.

La prova scritta è costituita da tre domande di teoria a risposta aperta su argomenti presentati a lezione.

Il voto ottenuto con la prova scritta è il voto di base dell'esame, che può essere incrementato di 2 o 4 punti con la prova orale, a seconda del tipo di esame orale scelto dallo studente.

La prova orale può essere, a scelta:

Le due parti dell'esame (prova scritta e prova orale) possono essere sostenute in qualsiasi ordine e anche in sessioni d'esame diverse.

Il progetto, una volta assegnato, dovrà essere completato entro 3 mesi.

Salvo diversa comunicazione, la prova scritta si svolgerà alle ore 11:00 e avrà durata di 1 ora.

Note:

Esempi di domande e/o esercizi frequenti

Esempi di domande per l'esame scritto, progetti o seminari saranno illustrati a lezione.

English version