Lucidi modulo Data Mining

annuncio pubblicitario
Introduzione al KDD
Il processo KDD
I metodi di DM
Introduzione al KDD
Knowledge Discovery in Databases (KDD): processo automatico di
esplorazione dei dati allo scopo di identificare pattern validi, utili,
ignoti
Data Mining (DM): cuore del processo KDD
processo effettuato su insiemi di dati di grandi dimensioni e elevata
complessità
Data mining: insieme di meccanismi automatici progettati per
consentire l’esplorazione di grandi moli di dati alla ricerca di tendenze
consistenti e/o relazioni sistematiche tra variabili, e successivamente
per validare le scoperte attraverso l’applicazione di comportamenti
rilevati su nuovi sottoinsiemi di dati
sviluppo e utilizzo di diversi algoritmi per l’esplorazione dei dati
Le ragioni del DM e del KDD:
accessibilità e abbondanza dei dati in formato elettronico
problematiche: lenta capacità di utilizzo delle informazioni rispetto la
crescitadella capacità di accumulo di dati (i.e., internet)
1
Caratteristiche del processo
KDD
Il processo KDD è iterativo e interattivo
iterativo perché composto di passi successivi
interattivo perché è necessario comprendere il
processo e le possibilità di sviluppo a ogni passo
iterazione a ogni passo (può essere necessario ripetere
alcuni passi prima di completare l’intero processo)
non è possibile definire un meccanismo o una formula che
sia sempre valida in ogni situazione
Nel processo KDD si possono generalmente
individuare diversi passi distinti
si comincia con la comprensione del dominio e si
termina con l’acquisizione di nuova conoscenza
I passi del processo KDD
Comprensione del dominio applicativo
1.
passo introduttivo per definire obiettivi e scelte successive
formulazione precisa del problema che si sta provando a
risolvere per evitare spreco tempo e denaro
Esplorazione iniziale dei dati :
2.
Fase che include diversi meccanismi di preparazione dei dati
“pulitura” dei dati (per esempio per identificare e rimuovere dati
codificati in modo errato),
trasformazione dei dati, la selezione di sottoinsiemi di record,
preliminare selezione delle caratteristiche
descrizione e visualizzazione dei dati (per esempio utilizzando
statistiche descrittive, correlazioni, scatterplot, box plot, ecc.).
La descrizione dei dati consente di ottenere una fotografia delle
caratteristiche importanti dei dati (come ad esempio la tendenza
centrale e le misure di dispersione). Le tendenze sono spesso più facili
da individuare visivamente che attraverso liste e tabelle numeriche.
2
I passi del processo KDD
Nell’esplorazione iniziale dei dati è possibile
individuare fasi distinte:
2.a Selezione dei dati
dati disponibili, dati addizionali, dati da integrare
trade-off tra gestione di più informazioni possibili e
organizzazione di un dataset semplice da gestire
2.b Pre-processing
gestione di missing values, rumore, outliers, 7
DATA
PREPROCESSING
2.c Trasformazione dei dati
feature selection, discretizzazione, 7
I passi del processo KDD
3. Selezione del compito di DM
classificazione, regressione, clustering
4. Selezione dell’algoritmo di DM
scelta fra metodi precisi (es. reti neurali)
o interpretabili (es. alberi di decisione)
utilizzo di tecniche di meta-learning per
selezionare il modello (l’algoritmo)
DATA
MINING
5. Impiego dell’algoritmo di DM
implementazione dell’algoritmo (da
iterare più volte se necessario)
3
I passi del processo KDD
6. Valutazione
valutazione e interpretazione dei risultati rispetto agli
obiettivi definiti al passo 1
generalmente la valutazione del modello decisionale
ottenuto avviene utilizzando due criteri (talvolta in conflitto
tra loro)
Accuratezza
Diversi metodi di valutazione
Suddivisione dei dati in sottoinsiemi di addestramento/test (75%
vs 25%)
validazione incrociata v-fold (se non si hanno dati sufficienti)
Comprensibilità
Es. alberi decisionali e modelli di regressione lineare sono meno
complicati e più semplici di modelli quali le reti neurali più semplici da
interpretare anche se si potrebbe dover essere costretti a rinunciare
ad una maggiore accuratezza predittiva
7. Utilizzo della conoscenza scoperta
incorporare la conoscenza in un altro sistema per ulteriori
operazioni
KDD e DM
Gli stadi che caratterizzano un processo KDD sono stati
identificati nel 1996 da Fayyad, Piatetsky-Shapiro e Smyth
Nell’elencare e descrivere le diverse fasi di un processo KDD
particolare attenzione è stata posta allo stadio del DM, cioè a tutti
quegli algoritmi per l’esplorazione e lo studio dei dati.
Il DM è ritenuta la fase più importante dell’intero processo KDD e
questa sua enorme importanza rende sempre più difficile,
soprattutto in termini pratici, distinguere il processo KDD dal DM.
Alcuni ricercatori usano i termini DM e KDD come sinonimi noi
cercheremo di separare i due aspetti e di considerare il DM la
fase più significativa del processo KDD, ma non perfettamente
coincidente con esso.
4
DM: alcune definizioni
Il DM è la non banale estrazione di informazione implicita,
precedentemente sconosciuta e potenzialmente utile
attraverso l’utilizzo di differenti approccci tecnici (Frawley,
Piatetsky-Shapiro e Matheus, 1991).
ll DM è una combinazione di potenti tecniche che aiutano a
ridurre i costi e i rischi come anche ad aumentare le entrate
estraendo informazione dai dati disponibili (T.Fahmy).
Il DM consiste nell’uso di tecniche statistiche da utilizzare con
i databases aziendali per scoprire modelli e relazioni che
possono essere impiegati in un contesto di business (Trajecta
lexicon).
Il DM è l’esplorazione e l’analisi, attraverso mezzi automatici e
semiautomatici, di grosse quantità di dati allo scopo di
scoprire modelli e regole significative (Berry, Linoff, 1997).
DM: alcune definizioni
Il DM si riferisce all’uso di una varietà di tecniche per
identificare “pepite” di informazione e di conoscenza per il
supporto alle decisioni e alle previsioni.
I dati sono spesso voluminosi ma, così come sono, hanno un
basso valore e nessun uso diretto può esserne fatto; è
l’informazione nascosta nei dati che è utile (Clementine user
guide).
Il DM è la ricerca di relazioni e modelli globali che sono
presenti in grandi database, ma che sono nascosti
nell’immenso ammontare di dati, come le relazioni tra i dati dei
pazienti e le loro diagnosi mediche. Queste relazioni
rappresentano una preziosa conoscenza del database e, se il
database `e uno specchio fedele, del mondo reale contenuto
nel database. (Holshemier e Siebes, 1994).
5
Il modello CRISP-DM
Un modello alternativo è rappresentato dal
Cross Industry Standard Process for Data
Mining (CRISP-DM)
Tale modello di data mining è stato
sviluppato da un consorzio di numerose
società
Il modello CRISP-DM è costituito da sei fasi,
Fasi del modello CRISP-DM
1. Comprensione di business
attenzione è posta principalmente sugli obiettivi e le
richieste del progetto da una prospettiva prettamente di
business
viene fornita una definizione del problema di DM
2. Comprensione dei dati
obiettivo principale è collezionare dati e formulare ipotesi
3. Preparazione dei dati
obiettivo: individuazione di tabelle, record, variabili
pulitura dei dati in funzione degli strumenti prescelti per la
modellizzazione (punto 4)
6
Fasi del modello CRISP-DM
4. Modellizzazione
Obiettivo: selezione e applicazione di una o più
tecniche di data mining
5. Valutazione
Tramite l’analisi dei risultati si valuta se sono stati
raggiunti gli obiettivi iniziali prefissati
Si ipotizza anche una futura applicazione del modello
6. Implementazione
Se il modello raggiunge gli obiettivi, si crea un piano
di azione per implementarlo
CRISP-DM vs KDD-DM
Le fasi 1 e 2 del CRISP-DM rappresentano
l’identificazione delle finalità di un processo
KDD-DM
La fase 3 combina le fasi di pre-processing
del modello KDD-DM
Le fasi finali di entrambi I modelli
corrispondono
Approfondimenti sul CRISP-DM: www.crispdm.org
7
Tassonomia dei metodi DM
Molti metodi di Data Mining possono essere
utilizzati in un processo KDD
Due categorie fondamentali di metodi DM
verification-oriented (il sistema verifica l’ipotesi
dell’utente)
discovery-oriented (il sistema scopre nuovi
pattern autonomamente)
Tassonomia dei metodi DM
PARADIGMI DI DATA MINING
VERIFICATION
DISCOVERY
PREDIZIONE
CLASSIFICAZIONE
RETI
NEURALI
RETI
BAYESIANE
REGRESSIONE
ALBERI
DECISIONALI
DESCRIZIONE
CLUSTERING
SUPPORT
VECTOR
MACHINE
VISUALIZZAZIONE
INSTANCE
BASED
8
Metodi verification-oriented
I metodi verification-oriented valutano le ipotesi
generate da una sorgente esterna
I metodi v-o comprendono tecniche statistiche
es: un esperto umano
test delle ipotesi,
analisi della varianza
ecc.
I metodi v-o hanno rilevanza minore nell’ambito del
Data Mining
Metodi discovery-oriented
I metodi discovery-oriented sono in grado di
identificare automaticamente pattern nei dati
Si suddividono in:
metodi descrittivi: orientati all’interpretazione dei dati
(clustering, visualizzazione)
metodi predittivi: costruiscono modelli di
comportamento per previsioni su nuovi esempi
I metodi d-o si basano sul learning induttivo
il modello è costruito generalizzando da esempi di
training ed è applicato su nuove istanze sconosciute
9
Unsupervised e supervised
learning
I metodi di learning unsupervised raggruppano
gli esempi senza uno schema pre-specificato
sono unsupervised una parte dei metodi d-o
descrittivi (es: clustering)
I metodi di learning supervised scoprono la
relazione fra attributi di input e di output dei dati
la relazione input/output è alla base di un fenomeno
descritto dal dataset ed è rappresentata nel modello
finale
Modelli di classificazione e di
regressione
I metodi di learning supervised costruiscono
modelli di due categorie: classificazione e
regressione
Un regressore pone lo spazio di input in
corrispondenza con un dominio a valori reali
Un classificatore pone lo spazio di input in
corrispondenza con un insieme pre-definito di
classi
10
I Dati
Dati
Dati strutturati
Feature
I dati (1/2)
I dati alla base di un processo di data mining
si classificano in:
dati strutturati
dati semi-strutturati
dati non strutturati
DATI TRADIZIONALI
DATI non TRADIZIONALI
(o MULTIMEDIALI)
11
I dati (2/2)
La maggior parte dei database scientifici
contengono dati strutturati
Esempi di dati semi-strutturati:
immagini elettroniche di documenti medici
la maggior parte dei documenti web
Esempio di dati non strutturati:
formati da campi ben definiti
rappresentati da valori numerici o alfanumerici
registrazioni video e multimediali di eventi e processi
Questi dati richiedono trattamenti per estrarre e
strutturare le informazioni in essi contenute
I dati strutturati (1/2)
Rappresentati in forma di tabella (singola
relazione)
le colonne sono le feature (caratteristiche) degli oggetti
le righe sono i valori delle feature per una entità
(esempio)
FEATURE
ESEMPI
FEATURE
VALUE PER
UN DATO
ESEMPIO
12
I dati strutturati (2/2)
Ai dati è associato il problema della loro qualità
I dati devono essere
pre-processing
accurati
immagazzinati in accordo al “tipo di dato” (dati
numerici, dati character, dati interi, dati reali, 7)
non ridondanti (dati ridondanti vanno eliminati)
completi (trattamento dei missing value)
(Analizzeremo alcune tecniche di pre-processing dei
dati)
Feature dei dati
Esistono diversi tipi di feature
Possono esistere anche variabili non osservate
influenzano il modello, ma per ridurre la complessità
non sono raccolte
Tipi di feature più comuni:
caratterizzano le variabili o attributi associati ai dati
feature numeriche
feature categoriche (o simboliche)
Altre tipi di feature:
feature discrete
feature continue
13
Feature numeriche
Le feature numeriche includono valori reali o
interi
es: età, lunghezza, velocità, 7
Importanti proprietà delle feature numeriche:
relazione d’ordine (2 < 5)
relazione di distanza ( d(2.3,4.2)=1.9 )
Feature categoriche
Le feature categoriche (o simboliche) non hanno
caratteristiche numeriche (non sono misurabili)
es: colore degli occhi, nazionalità, sesso, 7
Le feature categoriche non soddisfano relazioni
di ordine o di distanza
Fra feature categoriche esiste solo la relazione
di uguaglianza
i valori di una feature categorica possono essere
uguali oppure no (blu=blu, rosso≠nero)
14
Trattamento delle feature
categoriche
Una feature categorica a due valori può essere
convertita in una variabile numerica binaria
Una feature categorica a valori può essere
convertita in variabili numeriche binarie
valori consentiti: 0, 1
una variabile binaria per ogni valore nella categoria
Le feature categoriche così trattate si dicono
“Dummy variables”
es: colore degli occhi
blu 1000; nero 0100; verde: 0010; marrone 0001
Feature continue e feature
discrete
Feature continue: sono anche dette variabili
quantitative (o metriche)
Sono misurate utilizzando:
scala di intervallo (interval scale)
scala di rapporto (ratio scale)
Feature discrete: sono anche dette variabili
qualitative
Sono misurate utilizzando:
scala nominale
scala ordinale
15
Feature continue – scala di
intervallo e scala di rapporto
Le feature continue sono rappresente con numeri
reali o interi
La scala di intervallo e la scala di rapporto si
differenziano per la definizione dello zero
Interval scale: zero posizionato arbitrariamente (non
indica assenza di ciò che è misurato)
Ratio scale: zero posizionato in modo assoluto
es: temp. Fahrenheit 0°F non è assenza di calore
es: peso, altezza, salario, 7
La relazione di rapporto non è valida nella “interval
scale”, è valida nella “ratio scale”
Feature discrete – scala
nominale
Le feature discrete sono rappresentate
utilizzando simboli o numeri
La scala nominale è una scala senza relazione
d’ordine (order-less scale) che usa simboli o
numeri
es: codice identificativo di utente
residenziale A (oppure 1), commerciale B (oppure 2)
I numeri indicano solo diversi valori dell’attributo e
non hanno ordine
16
Feature discrete – scala
ordinale
La scala ordinale consiste in un ordinamento (elenco) ordinato
(ordered ranking)
Una feature discreta in scala ordinale è una variabile categorica per
cui vale la relazione d’ordine, ma non di distanza
es: d(studente classificato 4°, studente classificato 5°) ≠ d(studente
classificato 15°, studente classificato 16°)
Le relazioni tra attributi che possono essere stabilite in scala
ordinale:
es: votazione studenti
Le relazioni ordinali non sono lineari
maggiore/uguale; uguale; minore/uguale
Le variabili ordinali sono strettamente legate alle cosiddette variabili
linguistiche (fuzzy)
es: ETA’ (giovane, mezza età, vecchio)
Casi speciali di feature
Le feature periodiche sono variabili discrete per le
quali esiste una relazione di distanza, ma non
d’ordine
Dati classificati rispetto al tempo
es: giorni della settimana, giorni del mese, mesi
dell’anno
dati statici: dati che non cambiano con il tempo
dati dinamici (o temporali): dati che cambiano con il
tempo
La maggior parte delle tecniche di DM hanno a che
fare con dati statici
17
Trasformazioni di dati
Trasformazioni
Normalizzazione
Smoothing
Differenze e rapporti
Missing values
Outliers
Trasformazione dei dati
Molte metodi verification-oriented richiedono
l’informazione a priori dell’esistenza di una qualche
correlazione tra i dati (es. correlazione lineare), di
specifiche tipologie di distribuzioni (es. normali),
l’assenza di outliers
Molti algoritmi discovery-oriented hanno la capacità
di trattare automaticamente la presenza di nonlinearità e non-normalità dei dati
Gli algoritmi lavorano comunque meglio se tali problemi
sono trattati in fase di pre-processing
18
Trasformazioni di dati
La trasformazione dei dati può migliorare i risultati
delle tecniche di DM e alleviare alcune
problematiche quali
Dati con errori o incompleti
Dati mal distribuiti
Forte asimmetria nei dati
Presenza di molti picchi di valori
La trasformazione da applicare dipende dal tipo di
dati, dal loro numero, dalle caratteristiche del
problema, 7
Trasformazione dei dati:
obiettivi
Definire una trasformazione T sull’attributo X, Y= T(X) tale che:
Scopi principali:
Y preserva l’informazione “rilevante”di X
Y elimina almeno una o più delle problematiche presenti in X
Y è più “utile” di X
Ustabilizzare le varianze
Unormalizzare le distribuzioni
Ulinearizzare le relazioni tra variabili
Scopi secondari:
semplificare l'elaborazione di dati che presentano caratteristiche
non gradite
rappresentare i dati in una scala ritenuta più adatta
19
Trasformazioni
Trasformazioni esponenziali
 ax p + b (p ≠ 0)
Tp ( x ) = 
c log x + d (p = 0)
esponenziali con a,b,c,d e p valori reali
preservano l’ordine
preservano alcune statistiche di base
sono funzioni continue
ammettono derivate
sono specificate tramite funzioni semplici
Trasformazioni
Trasformazioni lineari
Tp ( x ) = ax p + b
1€= 1936.27 Lit.
ºC= 5/9(ºF -32)
p=1, a= 1936.27 ,b =0
p = 1, a = 5/9, b = -160/9
Obiettivo: migliorare l’interpretabilità
20
Trasformazioni
Trasformazione logaritmica
U
Tp ( x ) = c log x + d
Si applica a valori positivi
omogeneizza varianze di distribuzioni lognormali
Esempio: normalizza picchi stagionali
Obiettivo: stabilizzare le varienze
Trasformazioni
Altre trasformazioni che stabilizzano le varianze
Tp ( x ) = ax p + b
Trasformazione in radice
p = 1/c, c numero intero
per omogeneizzare varianze di distribuzioni particolari,
e.g., di Poisson
Trasformazione reciproca
p<0
per l’analisi di serie temporali, quando la varianza aumenta
in modo molto pronunciato rispetto alla media
21
Normalizzazione
La normalizzazione dei dati è utile quando è necessario calcolare le
distanze tra punti in uno spazio n dimensionale
Una tecnica largamente utilizzata consiste nel cambiamento dei valori
numerici in modo che essi siano scalati in uno specifico intervallo
La normalizzazione è particolarmente utile quando si utilizzano
tecniche di DM basate sulle distanze
es: [-1,1] o [0,1]
Si evitare che le variabili che assumono un range di valori più ampio
non siano pesate più di quelle feature che in media presentano un
range di valori più piccolo
L’applicazione di una tecnica di normalizzazione va considarata in tutte
le fasi del processo di DM e su tutti i nuovi dati
i parametri di normalizzazione devono essere conservati
Esempi di normalizzazione
Normalizzazione tramite scaling decimale
sposta il punto decimale dividendo ogni valore numerico per la
stessa potenza di 10
valori scalati nell’intervallo [-1,1]
Siano v il vettore delle feature, v(i) la i.sima componente, il
vettore scalato si ottiene:
v (i ) =
v (i )
,
10K
K = arg min(max v (i ) < 1)
i
Come si procede:
assegnata la feature v
si cerca il max di v(i)
si scala il punto decimale fino a che max v (i ) < 1
i
si applica il divisore a tutti gli altri elementi di v(i)
22
Esempi di normalizzazione
Normalizzazione min-max
tecnica appropriata quando sono noti i valori minimo e
massimo di una variabile
La formula da applicare è la seguente:
v (i ) − min v (i )( new max − new min) + new min
v (i ) =
max v (i ) − min v (i )
newmax e newmin specificano i nuovi valori di minimo e
massimo per la variabile in questione
Se il range in cui si desidera scalare la variabile è costituito
dall’intervallo [0,1] la formula si semplifica come segue:
v (i ) =
v (i ) − min v (i )
i
max v (i ) − min v (i )
i
i
Esempi di normalizzazione
Normalizzazione della standard deviation (z-score
normalization):
Trasformazione appropriata per essere utilizzata con algoritmi di
DM dasati su misure di distanza
Svantaggio:trasforma i dati in modo da renderli non riconoscibili
Particolarmente utile quando il massimo e il minimo non sono noti
Siano v il vettore delle feature, mean(v) e sd(v) la media e la
deviazione standard. La normalizzazione z-score converte il
valore in un punteggio standard attraverso la seguente
formula:
v (i ) =
v(i ) − mean( v )
sd ( v )
23
Data Smoothing
Molte tecniche di DM sono insensibili a piccole
differenze (non significative) nei valori di una feature
in molte applicazioni le differenze tra i valori di una variabile
non sono significative e possono spesso essere
considerate come variazioni random di uno stesso valore
può essere vantaggioso in alcuni casi regolarizzare i
valori di una variabile
Ridurre il numero di valori distinti di una feature può
ridurre la dimensionalità dello spazio dei dati
Smoothers possono essere utilizzati per
discretizzare delle feature continue (trasformandole
in feature discrete)
Differenze e rapporti
Per migliorare le performance (e per diminuire il
numero delle feature) si possono applicare semplici
trasformazioni delle variabili
es: dati medici al posto di peso (p) e altezza (h) si
considera BMI (indice di massa corporea)
BMI = rapporto pesato tra p e h di un paziente
Le trasformazioni di questo tipo sono utilizzate per
comporre nuove feature
24
Missing data
Esistono diverse cause che producono dataset non
completi, ovvero dataset in cui sono presenti valori
mancanti (missing value)
“difficoltà” (temporali/fisiche ecc) nel calcolare il valore
per uno specifico campione
Mancanza di conoscenza
Diversi fattori che spingono gli intervistati a non
risposndenre a questionari e/o interviste
Missing data
I dati mancanti si possono classificare in
“do not care” value : valori di una feature non registrati
perché considerati irrilevanti
“lost ” value: valori di una feature non registrati perché
sono stati dimenticati o sono stati erroneamente
cancellati
25
Missing data
Missing completely at random (MCAR)
I dati mancanti sono distribuiti random su tutte le
features
La presenza di MCAR può essere confermata
suddividendo i campioni in due gruppi (con e
senza dati mancanti) e effettuando un t-tests sulle
differenze medie tra le features per evidenziare se
i due gruppi di campioni presentano (o meno)
differenze significative
Missing data
Missing at random (MAR)
I dati mancanti non sono distribuiti random su tutte le
feature ma solo in alcune
MAR sono più comuni dei MCAR.
Non-ignorable missingness (Missing Not at random)
Esempi di dati mancanti più probelmatici da trattare
I missing values non sono distribuiti random su tutte le
osservazioni, ma la probabilità di trovare un dato mancante
non può essere stimata utilizzando le variabili nel modello
Trattamento: sostituire il dato mancante in base a altri dati
esterni al compito di DM
26
Missing data
Come trattare i missing value?
Non esiste una soluzione semplice e “safe” per
risolvere i casi in cui alcuni attributi presentano un
numero significativo di valori mancanti
Se possibile, si dovrebbe cercare di valutare
l’importanza dei dati mancanti sperimentando la/e
tecniche di DM con e senza gli attributi che
presentano tali dati
Missing data
In generale, i metodi per il trattamento dei dati
mancanti si possono suddividere in:
metodi sequenziali (o metodi di pre-processing)
il dataset incompleto è convertito in un dataset completo e
successivamente si applica una tecnica di DM
metodi paralleli (metodi in cui i valori mancanti sono
considerati all’interno del processo di acquisizione di
conoscenza)
modificare l’algoritmo di DM per permettergli di gestire tali
dati
27
Missing data: metodi sequenziali
Riduzione del dataset (soluzione più semplice)
eliminazione degli esempi con valori mancanti (listwise o
casewise deletion)
metodo utilizzabile quando la dimensione del dataset è
grande e/o la percentuale dei missing value è bassa
produce una perdita (a volte significativa) di informazioni
Sostituzione dei missing value con valori costanti
un valore globale (il valore più comune della feature)
media della corrispondente feature (per attributi di tipo
numerico)
media della feature della classe (nei problemi di classificazione)
Missing data: metodi sequenziali
Global closest fit: sostituire il valore mancante
con il valore dell’attributo più somigliante
si confrontano due vettori di feature (quello contente il
missing value, ed il candidato ad essere il closest fit)
ricerca effettuata su tutte le feature
si calcola una distanza tra i due vettori
il vettore con la minima distanza viene usato per
determinare il valore mancante
la distanza usata è
NB: sostituire i dati mancanti introduce un bias
28
Missing data: metodi sequenziali
La distanza usata nel metodo Global Closest Fit è:
dist ( x , y ) =
n
∑ dist ( x , y )
i
i
i =1



dist ( x i , y i ) = 

 | xi

0
1
− yi |
r
se x i = y i
se x , y sono simboliche e x i ≠ y i
o xi = ? o yi = ?
se x i e y i sono numeri e x i ≠ y i
r = differenza tra il massimo ed il minimo valore della feature
contenente il missing value
Nei problemi di classificazione si utilizza Class closest Fit
Missing data
Soluzioni più sofisticate per il trattamento dei
missing values si basano sulla predizione dei
valori mediante un algoritmo di data mining.
In questo caso predire i valori mancanti
diviene un particolare problema di DM di tipo
predittivo
29
Analisi degli outlier
Outlier: valori dei dati inusuali (non consistenti o
significativamente diversi dal resto degli esempi)
Una definizione esatta di un outlier dipende dalle
assunzioni relative alla struttura dei dati e
all’applicazione della tecnica di DM
Definizioni generali:
Hawkins (Identification of Outlier. Chapman and Hall.
1980) “Osservazione che devia così tanto dalle altre
osservazioni da suscitare il sospetto che sia stata generata
da un meccanismo diverso ”
Analisi degli outlier
Barnett e Lewis (Outlier in Statistical Data. John Wiley
1994) “un outlier è una osservazione che sembra deviare
notevolmente dalle altri componenti dell’esempio in cui
esso occorre”
Johnson (Applied Multivariate Statistical Analysis. Prentice
Hall, 1992) “osservazione in un dataset che sembra essere
inconsistente con il rimanente insieme dei dati”
La scoperta degli outlier può rappresentare un vero e
proprio processo di DM
individuazione di transazioni economiche fraudolente con carte
di credito, intrusioni non autorizzate in reti private, ecc.
30
Analisi degli outlier
Molti metodi di DM cercano di minimizzare
l’influenza degli outlier o di eliminarli durante la fase
di pre-processing
l’eliminazione di outlier è un processo delicato (può far
perdere informazioni)
Formalmente:
il processo di individuazione ed eliminazione degli
outlier può essere descritto come il processo di
selezione di K degli n esempi che sono dissimili,
eccezionali o inconsistenti con il resto del dataset
Analisi degli outlier:
tassonomia dei metodi
I metodi per l’identificazione degli outlier possono essere
suddivisi in:
metodi univariati (assumono che i dati siano iid)
metodi multivariati
metodi parametrici (o statistici)
assumono che sia nota una distribuzione delle osservazioni o una
stima statistica di essa
etichettano come outlier quelle osservazioni che si discostano
dalle assunzioni sul modello
inadatti per dataset di dimensione elevata e/o dataset privi di
conoscenza a priori sulla distribuzione dei dati
metodi non parametrici (metodi model-free)
metodi basati sulla distanza
tecniche di clustering (cluster di piccole dimensioni considerati
come cluster di outlier)
31
Analisi degli outlier – Caso
monodimensionale
Analisi statistica di media e varianza (metodo più
semplice)
Calcolando media e varianza è possibile stabilire un
valore di soglia che sia funzione della varianza
tutti i valori che superano la soglia sono potenziali outlier
Problema: assunzione a priori di una distribuzione dei
dati (nei casi reali la distribuzione è incognita)
es: ETA’={3,56,23,39,156,52,41,22,9,28,139,55,20,
-67,37,11,55,45,37}
media: 39.9, standard deviation: 45.65
soglia: threshold = media ± 2×standard deviation [-54.1, 131.2]
età numero positivo [0, 131.2]
I valori 156, -67, 139 sono outlier (presumibilmente typo-error)
Analisi degli outlier – Caso
multidimensionale
Individuazione degli outlier in base alle distanze
Formalmente:
gli outlier sono gli esempi che non hanno abbastanza esempi
vicini
un esempio si è un outlier se almeno un sottoinsieme (frazione)
di p esempi nel dataset si trova ad una distanza da si maggiore
di una prefissata quantità d
Il metodo si basa sull’assegnazione a-priori dei parametri
ped
La complessità computazionale del metodo è data dal
calcolo di una misura di distanza tra tutti gli esempi di un
dataset n-dimensionale
32
Analisi degli outlier – Caso
multidimensionale
Diversi tipi di distanze possono essere adottate
Distanza di Mahalanobis
Calcolo della matrice di covarianza associata al dataset
Vn =
1 n
( xi − xn )( xi − xn )T
∑
n − 1 i =1
La distanza di Mahalanobis per ciascun dato multivariato (viene
calcolata per tutti gli n campioni) è:
1/ 2
 n

Mi =  ∑( xi − xn )T Vn−1( xi − xn ) 
 i=1

i = 1,...,n
outlier osservazione con valore Mi grande
Analisi degli outlier – Tecniche
basate sulla deviazione
Le tecniche basate sulla deviazione simulano il modo umano
di riconoscere gli esempi inusuali
Questa classe di metodi si basa su funzioni di dissimilarità
(sequential-exception technique):
Esempio di funzione di dissimilarità per un insieme di n dati:
si stabiliscono le caratteristiche di base per un insieme di esempi
si riconoscono gli outlier tra gli elementi i cui valori deviano da tali
caratteristiche
varianza totale dell’insieme di dati
Occorre inoltre definire un sottoinsieme di esempi da
rimuovere dal dataset per determinare la massima riduzione
del valore della funzione di dissimilarità quando questa è
calcolata sull’insieme residuo
33
Esplorazione grafica di
dati multivariati
N. Del Buono
Introduzione
I metodi di esplorazione grafica (o visuale) permettono
l’identificazione di strutture nei dati
I metodi visuali rivestono un ruolo primario nell’esplorazione dei
dati in virtù della capacità (acquisita in millenni di evoluzione) del
sistema occhi-cervello di individuare strutture che presentano
delle similarità
I metodi visuali rivestono un ruolo importante nel processo di
KDD-DM, sebbene presentino numerose limitazioni soprattutto
nel trattamento di dataset molto grandi
I metodi visuali sono noti anche come metodi “data-driven
hypothesis generation” e si contrappongono ai metodi di verifica
“hypothesis testing”
34
Introduzione
Esamineremo alcuni metodi di esplorazione grafica
cosiddetti “informali”, che sono stati largamente
utilizzati in diversi contesti per l’analisi dei dati
semplici statistiche
meccanismi per la visualizzazione di singole variabili
meccanismi per il rilevamento di relazioni tra due variabili
meccanismi per il rilevamento di relazioni tra più di due
variabili
Riassumere i dati mediante
semplici statistiche
La media aritmetica dei dati (“sample mean” )
rappresenta una semplice informazione sul valore medio
dei dati (stima del valore medio reale della variabile
aleatoria di cui i dati rappresentano una campionatura)
v (i )
⌢
µ=∑
n
i
û è il valore “centrale” nel senso che minimizza la
somma delle differenze al quadrato tra esso e i dati
û è una misura del “posizionamento” (o misura di
posizione) dei dati
35
Riassumere i dati mediante
semplici statistiche
Una ulteriore misura del “posizionamento” dei dati è
fornita dalla mediana
La mediana è definita come quel valore che divide
a metà l’insieme dei dati, pertanto l'insieme dei
valori è per metà minore e per metà maggiore
della mediana
valore che possiede uno stesso numero di punti al di sotto
e al di sopra di essi
è il dato centrale della distribuzione
è meno sensibile della media aritmetica ai valori estremi
Riassumere i dati mediante
semplici statistiche
Fasi operative per il calcolo della mediana
1.
2.
3.
ordinamento crescente dei dati
se il numero di dati n è dispari, la mediana
corrisponde al dato che occupa la (n+1)/2-ima
posizione
se il numero di dati n è pari, la mediana è data
dalla media aritmetica dei due dati che occupano
la posizione n/2 e quella n/2+1
36
Riassumere i dati mediante
semplici statistiche
Esempio di calcolo della mediana
dati : {8, 5, 7, 6, 35, 5, 4}
ridisposizione in ordine crescente: {4, 5, 5, 6, 7, 8, 35}
Calcolo della posizione centrale (n+1)/2 = 4, la mediana è 6
Valore tipico nel senso che si avvicina ad una buona parte dei valori
del campione.
dati : {8, 5, 7, 6, 5, 4}
ridisposizione in ordine crescente: {4, 5, 5, 6, 7, 8},
n è pari, la mediana è la media dei valori che occupano le posizioni
(n/2) ed [(n/2)+1] nell'insieme ordinato dei numeri
elemento di posizione (n/2) = 3 è elemento di posizione
[(n/2)+1]= 4 la mediana vale (5+6)/2=5.5
Riassumere i dati mediante
semplici statistiche
Quando una variabile è di tipo quantitativo
discreto (o continua categorizzata), l’indice di
tendenza centrale adeguato a rappresentare
la distribuzione è la moda
La moda è l’osservazione che si riscontra con
maggiore frequenza in una data distribuzione
Si possono avere anche più valori modali
(distribuzione bimodale, multimodale)
La moda è molto sensibile alla grandezza e
al numero delle classe
37
Riassumere i dati mediante
semplici statistiche
Confronto tra diversi indici di tendenza centrale
la moda è l’indice meno informativo in quanto, essendo
calcolato sulle frequenze, prescinde totalmente dalla
natura numerica dalle osservazioni,
fornisce conoscenza sul dato che ha la maggiore
probabilità di presentarsi
la mediana è più informativa della moda e considera anche
l’ordine tra le osservazioni
utilizzata per suddividere la distribuzione in parti uguali
vantaggio di non essere influenzata da grandi differenze
quantitative tra i dati, ma solo dalla posizione
la media è l’indice più informativo in quanto considera
anche la distanza tra le osservazioni
si utilizza per esprimere un concetto di equidistribuzione
Riassumere i dati mediante
semplici statistiche
Altre misure di posizione dei dati individuano diverse
regioni dalla distribuzione dei valori dei dati
percentili o centili: valori al di sotto dei quali si trova una
determinata percentuale della distribuzione dei dati
i quartili separano i dati in 4 parti uguali
25° percentile o primo quartile (la mediana della parte
inferiore dei dati)
50° percentile mediana
75° percentile o terzo quartile (la mediana della parte
superiore dei dati)
38
Riassumere i dati mediante
semplici statistiche
Misure di dispersione o di variabilità
La media è la misura della localizzazione centrale
della distribuzione di una serie di dati
Dati con la stessa media possono avere un grado molto
diverso di variazione
Per esprimere tali variazioni si utilizza la media come punto
di riferimento di ciascun valore e si calcola la deviazione di
ciascun valore dalla media
deviazione standard (radice quadrata della varianza)
( v ( i ) − µˆ ) 2
2
σ
=
varianza
∑i
n
più σ2 e σ sono piccoli più i dati sono concentrati
più σ2 e σ sono grandi più i dati sono dispersi
Riassumere i dati mediante
semplici statistiche
Un ulteriore modo di esprimere la variabilità di un
insieme di dati è quello di utilizzare il range o
campo di variazione
range: differenza tra il più grande e il più piccolo valore
presente nei dati
rappresenta l’ampiezza dell’intervallo dei dati
tiene conto solo dei valori estremi trascurando tutti gli altri
nel caso in cui i dati siano pochi si ottiene una stima
erronea del range di popolazione
tende ad aumentare con l’aumento del numero delle
osservazioni
39
Riassumere i dati mediante
semplici statistiche
Range o differenza interqualile: differenza tra
il terzo ed il primo quartile
elimina l’influenza dei valori estremi
relativamente indipendente dalla numerosità del
campione
Visualizzazione grafica di
singole variabili: istogramma
Un istogramma è un grafico compatto per
rappresentare una serie di dati
(generalmente continui)
Costruire un istogramma per dati continui
dividere il range dei dati in intervalli (detti classi
di intervallo, celle, o semplicemente colonne)
se possibile, le colonne dovrebbero essere di uguale
“larghezza”, per aumentare l’informazione visiva
40
Visualizzazione grafica di
singole variabili: Pareto chart
Una significativa variazione dell’istogramma è il
diagramma di Pareto (Pareto Chart)
in economia “principio di Pareto” : modo di
rappresentare in forma grafica gli aspetti prioritari da
affrontare per risolvere un problema
usato nei processi di miglioramento della qualità, dove
i dati di solito presentano diversi tipi di difetti, errori e
non conformità, o altre categorie di interesse per
l’analisi
Visualizzazione grafica di
singole variabili: Pareto chart
Diagramma di Pareto è un istogramma con
celle ordinate in senso decrescente affiancato
dal grafico delle frequenze cumulate (detto
curva di Lorenz)
le categorie sono ordinate in modo tale che quella con
maggior frequenza si trovi sulla sinistra del grafico,
seguita da quelle di frequenza minore
permette di stabilire quali sono i maggiori fattori che
hanno influenza su un dato fenomeno
41
Visualizzazione grafica di
singole variabili: box-plot
Un buon sistema per rappresentare
graficamente i dati è la cosiddetta
"Tecnica dei 5 numeri" o "Box and wiskers plot"
(letteralmente: diagramma a scatola e baffi)
la "scatola" comprende la mediana ed è delimitata
dal 25° e dal 75° percentile
i "baffi" limitano i valori minimo e massimo
Visualizzazione grafica di singole
variabili: box-plot
Box-and-whisker plots sono utili per interpretare la
possibile distribuzione dei dati
Rappresentano il grado di dispersione o
variabilità dei dati (rispetto mediana e/o
media)
evidenziano le eventuali simmetrie
evidenziano la presenza di valori anomali
evidenziano il range inter-quartile ovvero la
dispersione dei dati
42
Visualizzazione grafica di singole
variabili: box-plot (esempio)
Esempio di costruzione di un box-plot
Dati relativi ai punteggi acquisiti da un insieme di
studenti
dati: 80, 75, 90, 95, 65, 65, 80, 85, 70, 100
Si ordinano i dati in ordine crescente
si determina il primo quartile, la mediana, il terzo
quartile, il più grande ed il più piccolo valore:
mediana = 80
primo quartile = 70
terzo quartile = 90
Valore minimo = 65
Valore massimo = 100
Visualizzazione grafica di singole
variabili: box-plot (esempio)
65, 65, 70, 75,80, 80, 85, 90, 95 ,100
Primo quartile
Terzo quartile
Mediana
(secondo quartile)
65
70
75
80
85
90
95
100
43
Visualizzazione grafica di
coppie di variabili: Scatterplot
Scatter plot o diagramma di dispersione
(scatter plot) è un grafico cartesiano formato
dai punti ottenuti rilevazione di due variabili
numeriche
Variabile descrittiva (explanatory variable)
Variabile suscettibile (response variable)
Visualizzazione grafica di
coppie di variabili: Scatterplot
Alcune proprietà statistiche della distribuzione
(posizione, dispersione, correlazione, dati
anomali) possono essere dedotte dalla nuvola
di punti
posizione, coesione interna, orientamento,
presenza di punti isolati
possibili associazioni tra due variabili
Associazione positiva trend in salita
Associazione negativa trend in discesa
Nessun trend mancanza di associazione
44
Visualizzazione grafica di dati
multivariabili: Scatter-matrix
Un insieme di dati multivariati (più di due
variabili) permette di ottenere diversi scatter
plot per ciascuna coppia di variabili
Si ottiene cosi la matrice degli scatterplot
matrice simmetrica p×p (le p righe e p
colonne corrispondono a ciascuna
variabile) di scatterplot bivariati
nella
posizione ij grafico della variabile j
rispetto la variabile i
la stessa variabile compare nella posizione ji
in cui gli assi x ed y sono scambiati
Visualizzazione grafica di dati
multivariabili: Co-plot
Un grafico coplot è una successione di scatter-plot
di tipo “conditionato”
ciascun diagramma corrisponde a un particolare intervallo
di valori di una terza variabile o fattore di condizionamento
Metodo di visualizzazione che permette di
evidenziare come una variabile di output dipende da
una variabile di input date altre variabili descrittive
Diverse modalità di rappresentazione
Given panels: intervalli di variabilità della variabile
“condizionata”
Dependence panels: scatterplot bivariati della variabile
“suscettibile” rispetto le restanti variabili descrittive
45
Visualizzazione grafica di dati
multivariabili: diagrammi di Trellis
I coplot sono esempi di metodi di visualizzazione
più generali noti come diagrammi di Trellis.
I diagrammi (o grafici) di Trellis permettono di
visualizzare l’esistenza di strutture nei dati
mediante l’utilizzo di grafici 1D,2D o 3D.
Visualizzazione le relazioni all’interno di grandi
dataset distinguendo diversi gruppi di variabili
Visualizzazione grafica di dati
multivariabili: diagrammi di Trellis
Multipanel conditioning
Visualizzazione del cambiamento delle relazioni
tra due variabili in funzione di una o più variabili
condizionate
Rappresentazione di diversi tipi di grafici in un
range di valori relativo alle variabili selezionate.
46
Esempio: IRIS data
Classificazione di tre tipi di fiori iris: Setosa,
Versicolor, Virginica.
Iris Setosa
Iris Versicolor
Iris Virginica
Esempio: IRIS data
Il dataset IRIS è costituito da 150 esempi di fiori
iris catalogati in base ad una analisi di 4 attributi
(variabili di input):
Lunghezza e larghezza dei sepali (elementi
costitutivi del calice del fiore)
Lunghezza e larghezza dei petali (elemento
costitutivo della corolla del fiore)
Ogni campione del data set è un vettore di 5
dimensioni (4 variabili continue, 1 categorica)
attributi dei fiori (input)
5.4 3.9 1.7 0.4
classe (output)
Iris-virginica
47
Esempio: IRIS data
Esempio di scatterplot bivariato
(lungh. Sepali, lungh. Petali)
Scatterplot matrix: IRIS data
48
Box-and-whisker plot: IRIS data
Diagramma di Trellis: Iris Data
Esempio di diagramma di Trellis
Grafico 3D
lunghezza dei sepali (asse x),
larghezza dei sepali (asse y)
larghezza dei petali (asse z)
Condizionato alla:
Lunghezza dei petali
Specie di fiore
49
Diagramma di Trellis: Iris Data
setosa
Petal L.: [1.0 4.4]
setosa
Petal L.: [4.4 7.1]
versicolor
versicolor
Petal L.: [1.0 4.4]
Petal L.: [4.4 7.1]
WEKA
Che cosa è WEKA?
WEKA acronomo di “Waikato Environment for Knowledge
Analysis”
sviluppato dall’Università di Waikato (Nuova Zelanda) a
partire dal 1993
collezione di algoritmi di machine learning per il Data
Mining
contiene algoritmi per il pre-processing, la classificazione,
la regressione, il clustering, la visualizazione grafiac, ecc.
scritto in Java, open source, rilasciato con licenza GNU
50
WEKA
L'interfaccia grafica di Weka è composta da:
Simple CLI: l'interfaccia dalla linea di comando;
Explorer: consente di esplorare i dati attraverso i
comandi WEKA
Experimenter: permette di testare diversi algoritmi
di data mining
Sito Ufficiale:
http://www.cs.waikato.ac.nz/ml/weka/
51
Scarica