Introduzione al KDD Il processo KDD I metodi di DM Introduzione al KDD z Knowledge Discovery in Databases (KDD): processo automatico di esplorazione dei dati allo scopo di identificare pattern validi, utili, ignoti z z Data Mining (DM): cuore del processo KDD z z processo effettuato su grandi e complessi set di dati sviluppo ed utilizzo di diversi algoritmi per l’esplorazione dei dati Le ragioni del DM e del KDD: accessibilità ed abbondanza dei dati in formato elettronico z la capacità di utilizzo delle informazioni cresce più lentamente rispetto all’accumulo di dati (internet) Caratteristiche del processo KDD z Il processo KDD è iterativo e interattivo z iterativo perché composto di passi successivi z z interattivo perché è necessario comprendere il processo e le possibilità di sviluppo ad ogni passo z z iterazione ogni passo (può essere necessario ripetere alcuni passi prima di completare l’intero processo) non è possibile definire un meccanismo od una formula che sia sempre valida in ogni situazione Il processo KDD comprende nove passi z si comincia con la comprensione del dominio e si termina con l’acquisizione di nuova conoscenza I passi del processo KDD (1/3) Comprensione del dominio applicativo 1. z passo introduttivo per definire obiettivi e scelte successive Selezione dei dati 2. z z dati disponibili, dati addizionali, dati da integrare trade-off tra gestione di più informazioni possibili e organizzazione di un dataset semplice da gestire Pre-processing 3. z gestione di missing values, rumore, outliers, … Trasformazione dei dati 4. z feature selection, discretizzazione, … DATA PREPROCESSING I passi del processo KDD (2/3) Selezione del compito di DM 5. z classificazione, regressione, clustering Selezione dell’algoritmo di DM 6. z z 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 Impiego dell’algoritmo di DM 7. z implementazione dell’algoritmo (da iterare più volte se necessario) DATA MINING I passi del processo KDD (3/3) Valutazione 8. z valutazione ed interpretazione dei risultati rispetto agli obiettivi definiti al passo 1 Utilizzo della conoscenza scoperta 9. z incorporare la conoscenza in un altro sistema per ulteriori operazioni Tassonomia dei metodi DM z z Molti metodi di Data Mining possono essere utilizzati Due categorie fondamentali di metodi DM z z 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 Metodi verification-oriented z I metodi verification-oriented valutano le ipotesi generate da una sorgente esterna z z I metodi v-o comprendono tecniche statistiche z z z es: un esperto umano test delle ipotesi, analisi della varianza I metodi v-o hanno rilevanza minore nell’ambito del Data Mining Metodi discovery-oriented z z I metodi discovery-oriented sono in grado di identificare automaticamente pattern nei dati Si suddividono in: z z z 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 z il modello è costruito generalizzando da esempi di training ed è applicato su nuove istanze sconosciute Unsupervised e supervised learning z I metodi di learning unsupervised raggruppano gli esempi senza uno schema pre-specificato z z 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 z la relazione input/output è alla base di un fenomeno descritto dal dataset ed è rappresentata nel modello finale Modelli di classificazione e di regressione z z z 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 I Dati Dati Dati strutturati Feature I dati (1/2) z I dati alla base di un processo di data mining si classificano in: z z z dati strutturati dati semi-strutturati dati non strutturati DATI TRADIZIONALI DATI non TRADIZIONALI (o MULTIMEDIALI) I dati (2/2) z La maggior parte dei database scientifici contengono dati strutturati z z z Esempi di dati non strutturati: z z z immagini elettroniche di documenti medici la maggior parte dei documenti web Esempio di dati non strutturati: z z 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) z Rappresentati in forma di tabella (singola relazione) z z 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 I dati strutturati (2/2) z Ai dati è associato il problema della loro qualità z z I dati devono essere z z z z z pre-processing accurati immagazzinati in accordo al “tipo di dato” (dati numerici, dati character, dati interi, dati reali, …) non ridondanti (dati ridondanti vanno eliminati) completi (trattamento dei missing value) (Analizzeremo alcune tecniche di pre-processing dei dati) Feature dei dati z Esistono diversi tipi di feature z z Possono esistere anche variabili non osservate z z influenzano il modello, ma per ridurre la complessità non sono raccolte Tipi di feature più comuni: z z z caratterizzano le variabili o attributi associati ai dati feature numeriche feature categoriche (o simboliche) Altre tipi di feature: z z feature discrete feature continue Feature numeriche z Le feature numeriche includono valori reali o interi z z es: età, lunghezza, velocità, … Importanti proprietà delle feature numeriche: z z relazione d’ordine (2 < 5) relazione di distanza ( d(2.3,4.2)=1.9 ) Feature categoriche z Le feature categoriche (o simboliche) non hanno caratteristiche numeriche (non sono misurabili) z z z es: colore degli occhi, nazionalità, sesso, … Le feature categoriche non soddisfano relazioni di ordine o di distanza Fra feature categoriche esiste solo la relazione di uguaglianza z i valori di una feature categorica possono essere uguali oppure no (blu=blu, rosso≠nero) Trattamento delle feature categoriche z Una feature categorica a due valori può essere convertita in una variabile numerica binaria z z Una feature categorica a N valori può essere convertita in N variabili numeriche binarie z z valori consentiti: 0, 1 una variabile binaria per ogni valore nella categoria Le feature categoriche così trattate si dicono “Dummy variables” z es: colore degli occhi z blu Æ 1000; nero Æ 0100; verde: 0010; marrone Æ 0001 Feature continue e feature discrete z z Feature continue: sono anche dette variabili quantitative (o metriche) Sono misurate utilizzando: z z z z scala di intervallo (interval scale) scala di rapporto (ratio scale) Feature discrete: sono anche dette variabili qualitative Sono misurate utilizzando: z z scala nominale scala ordinale Feature continue – scala di intervallo e scala di rapporto z z 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 z Interval scale: zero posizionato arbitrariamente (non indica assenza di ciò che è misurato) z z Ratio scale: zero posizionato in modo assoluto z z es: temp. Fahrenheit Æ 0°F non è assenza di calore es: peso, altezza, salario, … La relazione di rapporto non è valida nella “interval scale”, è valida nella “ratio scale” Feature discrete – scala nominale z z 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 z es: codice identificativo di utente z z residenziale Æ A (oppure 1), commerciale Æ B (oppure 2) I numeri indicano solo diversi valori dell’attributo e non hanno ordine Feature discrete – scala ordinale z z 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 z z Le relazioni ordinali non sono lineari z z 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: z z es: votazione studenti maggiore/uguale; uguale; minore/uguale Le variabili ordinali sono strettamente legate alle cosiddette variabili linguistiche (fuzzy) z es: ETA’ (giovane, mezza età, vecchio) Casi speciali di feature z Le feature periodiche sono variabili discrete per le quali esiste una relazione di distanza, ma non d’ordine z z Dati classificati rispetto al tempo z z z 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 Trasformazioni di dati z z La trasformazione dei dati può migliorare i risultati delle tecniche di DM La trasformazione da applicare dipende dal tipo di dati, dal loro numero, dalle caratteristiche del problema Trasformazioni di dati Normalizzazione Smoothing Differenze e rapporti Missing values Outliers Normalizzazione z z La normalizzazione dei dati è utile quando è necessario calcolare le distanze tra punti in uno spazio n dimensionale I valori possono essere scalati in uno specifico intervallo z z z es: [-1,1] o [0,1] La normalizzazione serve ad evitare che le misure basate su distanze diano troppo peso alle feature che in media hanno valori più elevati Quando si applicano tecniche di normalizzazione ai dati, esse vanno applicate in tutte le fasi del processo di DM e su tutti i nuovi dati z i parametri di normalizzazione vanno salvati Esempi di normalizzazione z Scaling decimale: sposta il punto decimale z z valori tipicamente 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 ) = K , 10 z K = arg min(max v (i ) < 1) i Come si procede: z z z z 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) Esempi di normalizzazione z Normalizzazione min-max: per ottenere una migliore distribuzione di dati si possono normalizzare nell’intervallo [0,1] utilizzando la formula v (i ) = v (i ) − min v (i ) i max v (i ) − min v (i ) i i Esempi di normalizzazione z z Normalizzazione della standard deviation: funziona bene con le misure di distanza, ma trasforma i dati in modo da renderli non riconoscibili Siano v il vettore delle feature, mean(v) e sd(v) la media e la deviazione standard, le componenti sono scalate: v (i ) − mean( v ) v (i ) = sd ( v ) Smoothing z Molte tecniche di DM sono insensibili a piccole differenze (non significative) nei valori di una feature z z z 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 z Per migliorare le performance (e per diminuire il numero delle feature) si possono applicare semplici trasformazioni delle variabili z es: dati medici Æ al posto di peso (p) e altezza (h) si considera BMI (indice di massa corporea) z z BMI = rapporto pesato tra p e h di un paziente Le trasformazioni di questo tipo sono utilizzate per comporre nuove feature Missing data z z z Esistono diverse cause che producono dataset non completi, ovvero dataset in cui sono presenti valori mancanti (missing value) Alcuni valori di una feature non sono registrati perché irrilevanti Æ “do not care” value Alcuni valori di una feature non sono registrati perché sono stati dimenticati o sono stati erroneamente cancellati Æ “lost ” value Missing data z z Come trattare i missing value? In generale, i metodi per il trattamento dei dati mancanti si possono suddividere in: z metodi sequenziali (o metodi di preprocessing) z z 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) z modificare l’algoritmo di DM per permettergli di gestire tali dati Missing data: metodi sequenziali z Riduzione del dataset (soluzione più semplice) z z eliminazione degli esempi con valori mancanti (listwise o casewise deletion) z (utile quando la dimensione del dataset è grande e/o la percentuale dei missing value è piccola) z perdita di informazioni Sostituzione dei missing value con valori costanti z z z 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 z Global closest fit: sostituire il valore mancante con il valore dell’attributo più somigliante z z z 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 z z z il vettore con la minima distanza viene usato per determinare il valore mancante la distanza usata è NB: sostituire i dati mancanti introduce un bias Missing data: metodi sequenziali z La distanza usata nel metodo Global Closest Fit è: dist ( x , y ) = n ∑ dist ( x , y ) i i =1 ⎧ ⎪ ⎪⎪ dist ( x i , y i ) = ⎨ ⎪ ⎪ | xi ⎪⎩ 0 1 − yi | r i se x i = y i se x , y sono simboliche e x i ≠ y i o xi = ? o y i = ? 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 z Nei problemi di classificazione si utilizza Class closest Fit Analisi degli outlier z z z 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: z 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 z z z 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 z individuazione di transazioni economiche fraudolente con carte di credito, intrusioni non autorizzate in reti private, ecc. Analisi degli outlier z Molti metodi di DM cercano di minimizzare l’influenza degli outlier o di eliminarli durante la fase di pre-processing z z l’eliminazione di outlier è un processo delicato (può far perdere informazioni) Formalmente: z 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 z I metodi per l’identificazione degli outlier possono essere suddivisi in: z z z z metodi univariati (assumono che i dati siano iid) metodi multivariati metodi parametrici (o statistici) z assumono che sia nota una distribuzione delle osservazioni o una stima statistica di essa z etichettano come outlier quelle osservazioni che si discostano dalle assunzioni sul modello z inadatti per dataset di dimensione elevata e/o dataset privi di conoscenza a priori sulla distribuzione dei dati metodi non parametrici (metodi model-free) z metodi basati sulla distanza z tecniche di clustering (cluster di piccole dimensioni considerati come cluster di outlier) Analisi degli outlier – Caso monodimensionale z z Analisi statistica di media e varianza (metodo più semplice) Calcolando media e varianza è possibile stabilire un valore di soglia che sia funzione della varianza z z 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) z z z z z 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 z Individuazione degli outlier in base alle distanze z z Formalmente: z z z 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 Analisi degli outlier – Caso multidimensionale z Diversi tipi di distanze possono essere adottate z Distanza di Mahalanobis z Calcolo della matrice di covarianza associata al dataset 1 n T Vn = ( x − x ) ( x − x ) ∑ i n i n n − 1 i=1 z La distanza di Mahalanobis per ciascun dato multivariato (viene calcolata per tutti gli n campioni) è: 1/ 2 ⎛ ⎞ T −1 Mi = ⎜ ∑( xi − xn ) Vn ( xi − xn ) ⎟ ⎝ i=1 ⎠ n z i = 1,...,n outlier Æ osservazione con valore Mi grande Analisi degli outlier – Tecniche basate sulla deviazione z z 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): z z z Esempio di funzione di dissimilarità per un insieme di n dati: z z 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 Esplorazione grafica di dati multivariati N. Del Buono Scatterplot z Scatterplot permette di individuare graficamente le possibili associazioni tra due variabili z z z z z Variabile descrittiva (explanatory variable) Variabile suscettibile (response variable) Associazione positivaÆ trend in salita Associazione negativa Æ trend in discesa Nessun trend Æ mancanza di associazione Scatterplot z z Un insieme di dati multivariati con più di due variabili gli scatter plot possono essere ottenuti da ciascuna coppia di variabili Si ottiene cosi la matrice degli scatterplot z matrice simmetrica p×p (le p righe e p colonne corrispondono a ciascuna variabile) di scatterplot bivariati posizione ij Æ grafico della variabile j rispetto la variabile i z la stessa variabile compare nella posizione ji in cui gli assi x ed y sono scambiati z nella Scatterplot: IRIS data z Classificazione di tre tipi di fiori iris: Setosa, Versicolor, Virginica. Iris Setosa Iris Versicolor Iris Virginica Scatterplot: IRIS data z Il dataset IRIS è costituito da 150 esempi di fiori iris catalogati in base ad una analisi di 4 attributi (variabili di input): z z z 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 Scatterplot: IRIS data z Esempio di scatterplot bivariato z (lungh. Sepali, lungh. Petali) Scatterplot matrix: IRIS data Box-and-Whisker Plots (boxplot) z z z Un metodo per rappresentare un insieme di dati multivariati è quello di utilizzare un box-and-whisker plot. Box-and-whisker plots sono utili per interpretare la possibile distribuzione dei dati I grafici Box-and-whisker utilizzano: z z Mediana : separa i dati in due parti uguali Quartili: separano i dati in 4 parti uguali z primo quartile Æ la mediana della parte inferiore dei dati z Secondo quartile Æ equivalente alla mediana z Terzo quartile Æ la mediana della parte superiore dei dati Costruire un box-and-whisker plot z Variabile: punteggi studenti z z z dati: 80, 75, 90, 95, 65, 65, 80, 85, 70, 100 Ordinare i dati in ordine crescente Determinare il primo quartile, la mediana, il terzo quartile, il più grande ed il più piccolo valore: z z z z z mediana = 80 primo quartile = 70 terzo quartile = 90 Valore minimo = 65 Valore massimo = 100 Costruire un box-and-whisker plot 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 Casi Speciali z Outlier: Box-and-whisker plot: IRIS data Co-plot z z z Grafico di tipo “conditioning” (coplot) Metodo di visualizzazione che permette di evidenziare come una variabile di output dipende da una variabile di input date altre variabili descrittive Un coplot è formato da un insieme di scatter plot z z Ciascun scatterplot corrisponde ad un particolare range di valori di una seconda variabile descrittiva Diverse modalità di rappresentazione z z Given panels: intervalli di variabilità della variabile “condizionata” Dependence panels: scatterplot bivariati della variabile “suscettibile” rispetto le restanti variabili descrittive Co-plot e diagrammi di Trellis z z z 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 larghi dataset distinguendo diversi gruppi Diagrammi di Trellis z Multipanel conditioning z z 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. Diagramma di Trellis: Iris Data z Esempio di diagramma di Trellis z Grafico 3D lunghezza dei sepali (asse x), z larghezza dei sepali (asse y) z larghezza dei petali (asse z) z z Condizionato alla: Lunghezza dei petali z Specie di fiore z 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] Analisi delle componenti principali (Applicazione al dataset degli Iris) Analisi delle componenti Principali z L’idea: rappresentare un insieme di dati multivariati con un numero inferiore di variabili non correlate z z z La riduzione di dimensionalità genera inevitabilmente una perdita di informazioni z z z ottenute da una particolare combinazione lineare delle variabili originali che riassumano le caratteristiche dei dati perdita associata con il “rumore” racchiuso nei dati il cui contenuto informativo del rumore è trascurabile PCA: proiezione di dati multidimensionali in uno spazio di dimensione minore conservando al massimo la variazione dei dati originali Quando utilizzare la PCA z z PCA: tecnica per ridurre la dimensionalità dei dati Utilizzata in più modi in un processo di data mining: z z z una tecnica di data-mining; metodo di interpretazione e visualizzazione grafica (specialmente se si riduce la dimensionalità a 2 o 3) per scoprire ed evidenziare strutture nei dati; metodo di pre-processing per trasformare i dati originali in nuovi dati di input per altre tecniche di data-mining z numero di feature elevato rispetto ai campioni. z feature altamente correlate Matrici di Covarianza e Correlazione z Sia X la matrice dei dati strutturati di dimensione nxp ⎛ x11 ... x1 p ⎞ ⎜ ⎟ X = ⎜ ... ... ... ⎟ ⎜x ⎟ ... x np ⎠ ⎝ n1 z La matrice di Covarianza è data da: ⎛ n ⎜ ∑ x i1 x i1 ⎜ i =1 1 T S = X X = ⎜ .... n −1 ⎜ n ⎜ ∑ x ip x i 1 ⎝ i =1 ⎞ x x ∑ i 1 ip ⎟ ⎛ s11 i =1 ⎟ ⎜ ... ⎟ = ⎜ ... n ⎟ ⎜s x x ∑ ⎝ p1 ip ip ⎟ i =1 ⎠ n ... .... ... ... ... ... s1 p ⎞ ⎟ ... ⎟ s pp ⎟⎠ Matrici di Covarianza e Correlazione z La matrice di Correlazione: ⎛ ⎜ 1 ⎜ R = ⎜ ... ⎜ s p1 ⎜ ⎜ s11 s pp ⎝ z z ... s1 p ... s11 s pp ... ... 1 ⎞ ⎟ ⎟ ⎟ = ( diag ( S ))1 / 2 S ( diag ( S ))1 / 2 ⎟ ⎟ ⎟ ⎠ La matrice di correlazione si ottiene dalla matrice di covarianza normalizzata tramite I sui elementi diagonali Le matrici S ed R sono simmetriche definite nonnegative PCA: Iris dataset z z cov (X) = [ 0.6818 -0.0050 1.3060 0.5121 -0.0050 0.1774 -0.1008 -0.0497 1.3060 -0.1008 3.2252 1.3023 0.5121 -0.0497 1.3023 0.5788] corrcoeff (X) = [ 1.0000 -0.0144 0.8808 0.8153 -0.0144 1.0000 -0.1332 -0.1549 0.8808 -0.1332 1.0000 0.9532 0.8153 -0.1549 0.9532 1.0000] PCA: Iris dataset z z z z [PC, LATENT, EXPLAINED] = pcacov (S) PCÆ componenti principali (autovettori di S) LATENTÆ autovalori di S EXPLAINEDÆ percentuale della varianza totale -0.3610 0.0257 -0.8633 -0.3517 4.3048 -0.5060 0.7614 0.1842 -0.8376 -0.5457 0.0055 0.1176 -0.2257 -0.4357 0.1692 -0.2674 0.8810 0.1986 0.1184 0.0414 92.3146% 4.2581% 2.5386% 0.8888% Matrice di covarinza dei dati autovalori percentuale della varianza PCA: Iris dataset scree plot