Analisi dei Dati ed Estrazione della Conoscenza
CLEI specialistica. 6 CFU.
A.A. 2006/2007
docente: Gianluca Amato
Descrizione: il corso inizierà con una parte preliminare in cui si introdurranno i concetti di data warehouse e di sistemi di analisi di dati multi-dimensionale (OLAP). Successivamente si introdurrano le tecniche di analisi dei dati più avanzate: regole associative, analisi di classificazione, analisi di raggruppamento. Sono previste esercitazioni pratiche con Weka e il sistema R.
Programma dettagliato: nel testo del programma, le sigle HK e PR si riferiscono ai libri di Han e Kimber, e Pacini e Raggi rispettivamente.
- Introduzione. Motivazioni alla base della nascita del Data Mining. Data Mining e Knowledge Discovery from Data. Origine dei dati: database relazionali, database transazionali, data warehouse, etc... Funzionalità del Data Mining: descrizione di concetti, regole associative, classificazione, predizione, raggruppamento, determinazione di outlier. Valutazione dell'interesse dei pattern e modelli. Data Mining e altre discipline: statistica, apprendimento automatico, database, etica. Esempi applicativi. (HK 1)
- Data Warehouse e OLAP. Cosa è un Data Warehouse. Modello multidimensionale dei dati. Diagrammi a stella, a fiocco di neve e a galassia. Classificazione delle misure: distributive, algebriche, olistiche. Gerarchie di concetti. Operazioni di un sistema OLAP: drill-down, roll-up, slice, dice, pivot, etc... (HK 3.1, 3.2)
- Analisi esplorativa dei dati. Indici di tendenza centrale: media, mediana. Indici di variabilità: entropia, indici di Gini, varianza, indici di concentrazione. Indicatori di forma: skewness e curtosi. Indicatori di associazione: χ² e covarianza. Visualizzazione grafica dei dati: scatter plot, boxplot, diagramma quantile-quantile, diagrammi areali, diagrammi a barre, istogrammi. (PR 3-9 escluso 8.4, 9.2, 9.6, HK 2.2)
- Preparazione dei dati. Pulizia dei dati: dati mancanti, dati rumorosi. Integrazione dei dati. Trasformazione dei dati: normalizzazione, costruzione di attributi, aggregazione. Riduzione della dimensionalità: selezione di attributi, compressione e cenni all'analisi delle componenti principali. Riduzione della numerosità: raggruppamento, campionamento. Discretizzazione: istogrammi, discretizzazione per partizionamento naturale, discretizzazione basata sull'entropia. Generazione di gerarchie di concetti per data categoriali (HK 2 tranne 2.2)
- Regole associative e itemset frequenti. L'algoritmo Apriori. Regole multilivello e multidimensionali. Regole associative quantitative. Lift di regole associative ed analisi di correlazione. Regole associative vincolate. (HK 5 escluso 5.2.4, 5.2.5, 5.2.6)
- Classificazione e predizione. Cosa sono classificazione e predizione? Problematiche riguardanti gli algoritmi di classificazione. Classificazione tramite alberi di decisione: algoritmi ID3 e C4.5. Classificazione bayesiana: teorema di Bayes, classificatore bayesinano naive, reti bayesiane. Classificazione basata su regole: estrazione di regole da un albero di decisione, algoritmi di copertura. Classificazione tramite regole associative: algoritmo CBA. Apprendimento basato su istanze. Predizione: regressione lineare, regressione locale pesata, alberi di regressione. (HK 6.1-6.5, 6.8, 6.9, 6.11)
- Validazione dei modelli di classificazione. Tasso di errore vero e campionario. Metodi di stima del tasso di errore: holdout, cross-validation, leave-one-out cross-validation, bootstrap. Altre misure di accuratezza: recall, precision, statistica K. Apprendimento basato sui costi: matrice dei costi, curva lift e curva ROC. Metodi basati sulla combinazione di classificatori: bagging e boosting. (HK 6.12, 6.13, 6.14)
- Analisi di raggruppamento. Cosa è l'analisi di raggruppamento. Tipi di dati per l'analisi di raggruppamento: matrice dei dati e matrice della distanza, dati di tipo categoriale, ordinale, binario, intervallo. Classificazione dei metodi di raggruppamento. Metodi di partizionamento: k-means e k-medoids. Metodi gerarchici: algoritmi divisivi e agglomerativi, algoritmo BIRCH. Metodi basati sulle densità: algoritmo DBSCAN. Brevi cenni su algoritmi basati su celle, su modelli, algoritmi per dati a molte dimensioni e algoritmi con vincoli. (HK 7.1-7.6 escluso 7.4.2, 7.5.3, 7.5.4, 7.6.2, 7.6.3)
- Analisi per la determinazione degli outlier. Definizione di outlier secondo criteri statistici. Outlier basati sulle distanze. (HK 7.11 fino a 7.11.2 compreso)
Prerequisiti:
-
Conoscenze di base di calcolo delle probabilità e statistica.
-
Conoscenza di un linguaggio di programmazione.
Esame:
Si divide in una parte progettuale e in una prova orale:
-
La parte progettuale consiste (a scelta) nell'analisi di un insieme di dati o nello studio e verifica di un algoritmo di analisi che non si è studiato a lezione. Vedere la sezione sui progetti d'esame per maggiori informazioni. È possibile lavorare in piccoli gruppi (massimo 3 persone). Al progetto viene assegnato un voto da 1 a 4 punti, che si sommeranno al voto della successiva prova orale.
-
La prova orale consiste nella discussione del progetto e in domande sul programma del corso. È una prova individuale.
Non sono previsti appelli a giorni prefissati. Quando il progetto è pronto, è sufficiente che me lo inviate per posta elettronica, dopo di che ci metteremo d'accordo su data e ora per la prova orale.
Software utilizzato durante il corso:
Materiale didattico:
I libri di testo:
Le slide sulla parte teorica:
Le lezioni su Weka:
Le lezioni su R:
Materiale di consultazione:
Libri:
Documentazione su R:
Documentazione su Weka: