Your SlideShare is downloading. ×
Algoritmi di clustering e correlazione: una panoramica
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Algoritmi di clustering e correlazione: una panoramica

379
views

Published on

Le slide di una presentazione su alcuni concetti fondamentali relativi agli algoritmi di clustering e correlazione comunemente utilizzati nell'industria. Slide presentate internamente alla CODIN …

Le slide di una presentazione su alcuni concetti fondamentali relativi agli algoritmi di clustering e correlazione comunemente utilizzati nell'industria. Slide presentate internamente alla CODIN s.p.a. nel giugno 2012.

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
379
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Algoritmi di clustering e correlazione: una panoramica Paolo Caressa 20 giugno 2012 Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 1/ 16
  • 2. Sommario 1 Indipendenza 2 Correlazione lineare 3 PCA 4 Intraclass correlation 5 Clustering 6 k-means clustering 7 Density based clustering 8 Subspace clustering 9 Correlation clustering Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 2/ 16
  • 3. Indipendenza Abbiamo a che fare con concetti probabilistici. Indipendenza di eventi Se A e B sono due eventi qualsiasi, diciamo che sono indipendenti se la probabilit`a P(B) di verificarsi di B non dipende dal verificarsi o meno dell’evento A, e viceversa. In formule: P(A ∩ B) = P(A) · P(B). Utilizzando il concetto di probabilit`a condizionata P(A|B), la probabilit`a di A dato B, allora l’indipendenza equivale a P(A|B) = P(A). Indipendenza di variabili aleatorie Una variabile aleatoria X (in soldoni un insieme di numeri associati a eventi) `e indipendente da un’altra Y se sono indipendenti gli eventi {X ≤ a} e {Y ≤ b} per ogni a, b ∈ R. L’espressione matematica rigorosa `e in termini di distribuzioni, etc. Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 3/ 16
  • 4. Correlazione lineare Se X `e una variabile aleatoria, per esempio una serie storica di rilevazioni numeriche o da un dataset, possiamo calcolarne la media E(X), la varianza Var(X) = E(X2) − E(X), la deviazione standard σX = √ Var X. Correlazione di due variabili X, Y ρXY = E[X − E(X)]E[Y − E(Y )] σX σY La correlazione misura l’indipendenza lineare fra due variabili Indipendenza =⇒ ρXY = 0 ρXY = 0 =⇒ Indipendenza Nel caso di n variabili X1, ..., Xn le correlazioni ρXi Xj formano la matrice di correlazione Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 4/ 16
  • 5. PCA: Principal Component Analysis L’Analisi per Componenti Principali viene utilizzata per costruire, a partire da un insieme di variabili che possono essere correlate, un insieme di variabili linearmente scorrelate (cio`e la cui correlazione lineare sia nulla), chiamate componenti principali, ordinate secondo la varianza del dato. Si tratta di rappresentare le variabili come dimensioni di uno spazio cartesiano, e di trasformare lo spazio con una trasformazione ortogonale (cio`e che preserva le distanze) in modo che nel nuovo sistema di coordinate abbia le componenti principali come assi cartesiani. La PCA pu`o essere usata per scoprire correlazioni lineari, uniformi e globali in un insieme di dati. Come nel caso della correlazione, la PCA `e un metodo classico della statistica (inventato agli inizi del Novecento). Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 5/ 16
  • 6. ICC: Intraclass Correlation La intraclass correlation `e un metodo della statistica descrittiva che consente di misurare quanto sono correlati fra loro gli elementi di un singolo gruppo rispetto a una data categorizzazione di un dataset. Intraclass correlation ICC = σ2 e σ2 e + σ2 c dove σ2 e `e la varianza fra gli elementi di una stessa classe, e σ2 c `e la varianza fra tutti gli elementi. Il calcolo delle varianze in questa formula costituisce un problema non banale: un approccio utilizza la metodologia ANOVA (ANalysis Of VAriance). Approcci diversi possono condurre a risultati diversi!!! In questo caso la correlazione che viene analizzata `e fra eventi gi`a inclusi in una stessa classe: all’opposto abbiamo la scoperta di correlazioni fra eventi non categorizzati, ovvero la scoperta delle classi stesse. Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 6/ 16
  • 7. Clustering Un clustering di un insieme di eventi, oggetti, etc. `e la suddivisione in classi fra questi oggetti in base a un criterio di somiglianza: se non `e dato un criterio a priori, il clustering consiste nel determinare delle classi in base alle relazioni statistiche che possono esistere fra i dati, una volta che questi siano stati codificati numericamente. In data mining esistono moltissimi algoritmi di clustering, a seconda degli ambiti e degli scopi. Il clustering e la correlazione sono concetti distinti ma collegati: in particolare partizionare un insieme di eventi in base a classi di correlazione (per esempio se sono correlati per pi`u di un certo valore fissato) fornisce un criterio di clustering. All’opposto, il risultato di un clustering pu`o essere validato con una intraclass correlation. Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 7/ 16
  • 8. k-means clustering Un k-means clustering consiste nel determinare, per un insieme di dati, n osservazioni in k classi distinte, stimando che una osservazione appartiene a una classe in base a un criterio di similarit`a basato sulla vicinanza alla media. Lo spazio degli eventi risulta in questo modo partizionato da un diagramma di Voronoi. Definizione di k-mean cluster argmin s∈S k i=1 x∈s x − µi 2 dove S = {S1, ..., Sk} sono le classi e µi la media dei valori nella classe i-esima Si . Il problema `e NP-completo!!! Tuttavia esistono algoritmi euristici computazionalmente efficienti per stimare la k-mean. Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 8/ 16
  • 9. k-means clustering Una k-means clustering Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 9/ 16
  • 10. Density based clustering I metodi di clustering basati sulla densit`a non partizionano in modo esatto sulla base di una distanza (come nel caso k-means) ma si basano sulla densit`a di accumulazione dei punti nello spazio. DBSCAN (1996) Questo algoritmo considera come appartenenti a uno stesso cluster elementi la cui distanza differisca per meno di un fissato: in pratica se all’interno di un certo raggio sono racchiusi dei punti, si considerano parte di un medesimo cluster. I punti di forza di DBSCAN sono la sua riproducibilit`a (algoritmo non probabilistico) e la sua complessit`a O(n log n) che lo rende implementabile in modo efficiente. Le debolezze sono che dipende dalla distanza impiegata e quindi la stima dell’ non `e immediata. Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 10/ 16
  • 11. DBSCAN Una DBSCAN clustering Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 11/ 16
  • 12. OPTICS Una OPTICS clustering (1999), un miglioramento di DBSCAN Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 12/ 16
  • 13. Density based clustering I metodi di clustering basati sui sottospazi vanno a ricercare i cluster non solo nello spazio ma in tutti i suoi sottospazi: uno stesso punto pu`o quindi fare parte di pi`u cluster, che vivono in sottospazi diversi. CLIQUE (2005) Si tratta di un algoritmo che utilizza le tecniche dei density based clustering sui sottospazi di dimensione massimale rispetto a questa propriet`a. CLIQUE `e particolarmente adatto per dati di dimensione alta, dove i metodi di densit`a performano male. Un algoritmo dello stesso tipo `e SUBCLU (2004) che estende DBSCAN alla ricerca di cluster in sottospazi di dimensione distinta. Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 13/ 16
  • 14. Correlation Clustering Un correlation clustering si propone di raffinare il clustering utilizzando la correlazione come criterio guida invece che la distanza. 4C: Computing Correlation Connected Clusters: (2004) Si tratta di un algoritmo che combina PCA e DBSCAN per ottenere cluster di oggetti che sono fra loro correlati senza doversi limitare a considerare correlazioni globali. In soldoni, 4C correla localmente secondo le componenti principali, e determina il concetto di “localit`a” in base all’analisi di densit`a tipica di DBSCAN. Da non confondere con l’analogo concetto (correlation clustering) di teoria dei grafi, che consiste nel cercare il numero ottimale di cluster dando per note le relazioni di correlazione: c’`e un legame ma sono algoritmi diversi. Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 14/ 16
  • 15. 4C clustering Comparazione di DBSCAN e 4C Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 15/ 16
  • 16. Algoritmi di clustering e correlazione: una panoramica Domande/Suggerimenti??? Grazie per l’attenzione!!! Paolo Caressa Algoritmi di clustering e correlazione: una panoramica 16/ 16

×