CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering...

59
A.A. 2009-2010 Tesi di Laurea Triennale in Informatica e Tecnologie per la Produzione del Software CRADLE: Clustering by RAndom minimum Dispersion based LEarning Un algoritmo di clustering basato su minimizzazione random della dispersione Relatore: Laureando: Prof.ssa CASTELLANO GIOVANNA DI DONATO LEONARDO

Transcript of CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering...

Page 1: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

A.A. 2009-2010

Tesi di Laurea Triennale inInformatica e Tecnologie per la Produzione del Software

CRADLE:Clustering by RAndom minimum Dispersion based LEarning

Un algoritmo di clustering basato suminimizzazione random della dispersione

Relatore: Laureando:Prof.ssa CASTELLANO

GIOVANNADI DONATOLEONARDO

Page 2: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Il clustering 2

Page 3: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Il clustering 2

� E il processo di raggruppamento auto-matico di dati non etichettati in gruppiomogenei e significativi

Page 4: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Il clustering 2

� E il processo di raggruppamento auto-matico di dati non etichettati in gruppiomogenei e significativi.

Page 5: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Il clustering 3

�La crescita esponenziale dell’informa-zione rende necessario analizzare l’e-norme mole di dati:

Page 6: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Il clustering 3

�La crescita esponenziale dell’informa-zione rende necessario analizzare l’e-norme mole di dati:� il clustering trova applicazione in tutti quei contesti

in cui occorre ricercare schemi e/o strutture intrinse-che nei dati•data mining, pattern recognition, machine lear-

ning, image analysis

Page 7: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Approcci di clustering 4

Page 8: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Approcci di clustering 4

Page 9: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Approcci di clustering 4

Page 10: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Shape clustering 5

Page 11: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Shape clustering 5

�La caratterizzazione delle immagini tra-mite le forme di oggetti in esse conte-nuti rappresenta uno dei maggiori stru-menti utilizzati per la comprensione au-tomatica delle immagini

Page 12: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Shape clustering 5

�La caratterizzazione delle immagini tra-mite le forme di oggetti in esse conte-nuti rappresenta uno dei maggiori stru-menti utilizzati per la comprensione au-tomatica delle immagini� Studi di psicologia-congnitiva dimostrano che il con-

cetto di forma, in quanto invariante e generico, e unaspetto chiave e basilare dei processi di riconoscimen-to delle immagini

�Possibili campi applicativi:•medico, militare, sicurezza, computer vision, ac-

tion recognition, human detection, image retrie-val

Page 13: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Min.Variance Clustering 6

Page 14: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Min.Variance Clustering 6

Srivastava et.al, A geometric approach to shape clustering and learning.

IEEE Trans. on Pattern Analysis and Machine Intelligence, 27(4):590-

602, April 2005.

� idea di base� ricerca casuale, tramite l’algoritmo Markov Chain Monte Carlo (MCMC), di una

configurazione di cluster che rende minima la varianza

Page 15: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Min.Variance Clustering 6

Srivastava et.al, A geometric approach to shape clustering and learning.

IEEE Trans. on Pattern Analysis and Machine Intelligence, 27(4):590-

602, April 2005.

� idea di base� ricerca casuale, tramite l’algoritmo Markov Chain Monte Carlo (MCMC), di una

configurazione di cluster che rende minima la varianza

� rappresentazione dei pattern� basata sulle geodetiche

Page 16: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Min.Variance Clustering 6

Srivastava et.al, A geometric approach to shape clustering and learning.

IEEE Trans. on Pattern Analysis and Machine Intelligence, 27(4):590-

602, April 2005.

� idea di base� ricerca casuale, tramite l’algoritmo Markov Chain Monte Carlo (MCMC), di una

configurazione di cluster che rende minima la varianza

� rappresentazione dei pattern� basata sulle geodetiche

� similarita fra pattern� basata sulla distanza geodetica

Page 17: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Min.Variance Clustering 6

Srivastava et.al, A geometric approach to shape clustering and learning.

IEEE Trans. on Pattern Analysis and Machine Intelligence, 27(4):590-

602, April 2005.

� idea di base� ricerca casuale, tramite l’algoritmo Markov Chain Monte Carlo (MCMC), di una

configurazione di cluster che rende minima la varianza

� rappresentazione dei pattern� basata sulle geodetiche

� similarita fra pattern� basata sulla distanza geodetica

� funzione di costo� varianza totale delle distanze fra i pattern appartenenti ad un cluster

Page 18: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Min.Variance Clustering 6

Srivastava et.al, A geometric approach to shape clustering and learning.

IEEE Trans. on Pattern Analysis and Machine Intelligence, 27(4):590-

602, April 2005.

� idea di base� ricerca casuale, tramite l’algoritmo Markov Chain Monte Carlo (MCMC), di una

configurazione di cluster che rende minima la varianza

� rappresentazione dei pattern� basata sulle geodetiche

� similarita fra pattern� basata sulla distanza geodetica

� funzione di costo� varianza totale delle distanze fra i pattern appartenenti ad un cluster

� criterio di convergenza� basato sul valore della temperatura (Simulated Annealing)

Page 19: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

L’algoritmo proposto 7

Page 20: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

L’algoritmo proposto 7

�CRADLE�Clustering by RAndom minimum Dispersion based

LEarning

Page 21: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

L’algoritmo proposto 7

�CRADLE�Clustering by RAndom minimum Dispersion based

LEarning

�Progettato per superare le limitazionidell’algoritmo MVC� complessita• il calcolo della distanza geodetica e molto costoso

� lenta convergenza

Page 22: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

CRADLE 8

Page 23: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

CRADLE 8

� idea di base� ricerca casuale, tramite distribuzione normale dei pattern, di una configurazione

di cluster che rende minima la dispersione

Page 24: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

CRADLE 8

� idea di base� ricerca casuale, tramite distribuzione normale dei pattern, di una configurazione

di cluster che rende minima la dispersione

�rappresentazione dei pattern� basata sui descrittori di Fourier

Page 25: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

CRADLE 8

� idea di base� ricerca casuale, tramite distribuzione normale dei pattern, di una configurazione

di cluster che rende minima la dispersione

�rappresentazione dei pattern� basata sui descrittori di Fourier

� similarita fra pattern� basata sulla distanza euclidea

Page 26: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

CRADLE 8

� idea di base� ricerca casuale, tramite distribuzione normale dei pattern, di una configurazione

di cluster che rende minima la dispersione

�rappresentazione dei pattern� basata sui descrittori di Fourier

� similarita fra pattern� basata sulla distanza euclidea

� funzione di costo� dispersione totale

Q(C) =k∑

i=1

2ni

∑va∈Ci

∑vb∈Ci, b<c

d (va, vb)2

Page 27: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

CRADLE 9

�Fasi dell’algoritmo

Page 28: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

CRADLE 9

�Fasi dell’algoritmo� 1 – Configurazione iniziale• si crea una configurazione iniziale di cluster assegnando i pattern

in base ad una distribuzione normale

Page 29: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

CRADLE 9

�Fasi dell’algoritmo� 1 – Configurazione iniziale• si crea una configurazione iniziale di cluster assegnando i pattern

in base ad una distribuzione normale

� 2 – Raggruppamento• procedura iterativa basata su un approccio di clustering divisivo

Page 30: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

CRADLE 9

�Fasi dell’algoritmo� 1 – Configurazione iniziale• si crea una configurazione iniziale di cluster assegnando i pattern

in base ad una distribuzione normale

� 2 – Raggruppamento• procedura iterativa basata su un approccio di clustering divisivo

� 3 – Selezione (non prevista in MVC)•mediante valutazioni statistiche si seleziona un insieme di pattern

da sottoporre nuovamente alla fase di raggruppamento

Page 31: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

CRADLE 9

�Fasi dell’algoritmo� 1 – Configurazione iniziale• si crea una configurazione iniziale di cluster assegnando i pattern

in base ad una distribuzione normale

� 2 – Raggruppamento• procedura iterativa basata su un approccio di clustering divisivo

� 3 – Selezione (non prevista in MVC)•mediante valutazioni statistiche si seleziona un insieme di pattern

da sottoporre nuovamente alla fase di raggruppamento

� 4 – Calcolo prototipi• per ogni cluster si prende come prototipo il pattern che minimizza

la distanza intracluster

Page 32: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

CRADLE 10

�Punti di forza

Page 33: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

CRADLE 10

�Punti di forza�Ridotto costo computazionale• Il calcolo della distanza euclidea e poco costoso• La costruzione della matrice delle distanze avviene solo in fase di

configurazione

Page 34: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

CRADLE 10

�Punti di forza�Ridotto costo computazionale• Il calcolo della distanza euclidea e poco costoso• La costruzione della matrice delle distanze avviene solo in fase di

configurazione

�Rapida convergenza• La fase di selezione accelera notevolmente il processo di minimiz-

zazione

Page 35: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

CRADLE 10

�Punti di forza�Ridotto costo computazionale• Il calcolo della distanza euclidea e poco costoso• La costruzione della matrice delle distanze avviene solo in fase di

configurazione

�Rapida convergenza• La fase di selezione accelera notevolmente il processo di minimiz-

zazione

Page 36: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Setup sperimentale 11

Page 37: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Setup sperimentale 11

� Indici di validita utilizzati:

Page 38: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Setup sperimentale 11

� Indici di validita utilizzati:� Dunn’s Index

DI = mini 6=j, i,j⊂{1,...,k}

min1≤j≤k ∧ i 6=j

inter(Ci, Cj)

max1≤z≤k {intra(Cz)}

Page 39: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Setup sperimentale 11

� Indici di validita utilizzati:� Dunn’s Index

DI = mini 6=j, i,j⊂{1,...,k}

min1≤j≤k ∧ i 6=j

inter(Ci, Cj)

max1≤z≤k {intra(Cz)}

� Davies-Bouldin Index

DB = 1n

n∑i=1

maxSn(Ci) + Sn(Cj)

S(Ci, Cj)

i 6=j

Page 40: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Setup sperimentale 11

� Indici di validita utilizzati:� Dunn’s Index

DI = mini 6=j, i,j⊂{1,...,k}

min1≤j≤k ∧ i 6=j

inter(Ci, Cj)

max1≤z≤k {intra(Cz)}

� Davies-Bouldin Index

DB = 1n

n∑i=1

maxSn(Ci) + Sn(Cj)

S(Ci, Cj)

i 6=j

�Dataset utilizzato:� surrey fish database (www.surrey.ac.uk): 1100 shape di animali marini� selezione di 225 shape appartenti a 10 categorie diverse� creazione di 10 pattern set

Page 41: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Setup sperimentale 11

� Indici di validita utilizzati:� Dunn’s Index

DI = mini 6=j, i,j⊂{1,...,k}

min1≤j≤k ∧ i 6=j

inter(Ci, Cj)

max1≤z≤k {intra(Cz)}

� Davies-Bouldin Index

DB = 1n

n∑i=1

maxSn(Ci) + Sn(Cj)

S(Ci, Cj)

i 6=j

�Dataset utilizzato:� surrey fish database (www.surrey.ac.uk): 1100 shape di animali marini� selezione di 225 shape appartenti a 10 categorie diverse� creazione di 10 pattern set

� run di CRADLE con diverso numero di cluster (k = 3, . . . , 14):

� 5 run per ogni valore di k

� calcolo dei valori medi degli indici di validita

Page 42: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Sperimentazione 12

Page 43: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Sperimentazione 12

�Valore medio degli indici di validita

Page 44: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Sperimentazione 12

�Valore medio degli indici di validita

Page 45: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Sperimentazione 13

�Estratto del risultato di clustering delpattern set VI

Page 46: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Sperimentazione 13

�Estratto del risultato di clustering delpattern set VI

Page 47: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Sperimentazione 14

�Valutazione della fase di selezione

Page 48: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Sperimentazione 14

�Valutazione della fase di selezione

Page 49: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Sperimentazione 14

�Valutazione della fase di selezione

Page 50: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Conclusioni 15

Page 51: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Conclusioni 15

Rispetto a MVC, l’algoritmo CRADLE proposto presenta diversi van-

taggi.

� Efficienza� ridotto costo computazionale� rapida convergenza

Page 52: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Conclusioni 15

Rispetto a MVC, l’algoritmo CRADLE proposto presenta diversi van-

taggi.

� Efficienza� ridotto costo computazionale� rapida convergenza

�Robustezza� bassissima sensibilita alla configurazione iniziale

Page 53: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Conclusioni 15

Rispetto a MVC, l’algoritmo CRADLE proposto presenta diversi van-

taggi.

� Efficienza� ridotto costo computazionale� rapida convergenza

�Robustezza� bassissima sensibilita alla configurazione iniziale

�Generalita� possibilita di fare clustering su qualunque tipologia di pattern

Page 54: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Conclusioni 15

Rispetto a MVC, l’algoritmo CRADLE proposto presenta diversi van-

taggi.

� Efficienza� ridotto costo computazionale� rapida convergenza

�Robustezza� bassissima sensibilita alla configurazione iniziale

�Generalita� possibilita di fare clustering su qualunque tipologia di pattern

� Scalabilita� l’approccio incrementale permette il clustering di data set di grandi dimensioni

Page 55: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Conclusioni 15

Rispetto a MVC, l’algoritmo CRADLE proposto presenta diversi van-

taggi.

� Efficienza� ridotto costo computazionale� rapida convergenza

�Robustezza� bassissima sensibilita alla configurazione iniziale

�Generalita� possibilita di fare clustering su qualunque tipologia di pattern

� Scalabilita� l’approccio incrementale permette il clustering di data set di grandi dimensioni

� Flessibilita� e possibile parametrizzare la fase di selezione� supporto per 32 diversi indici di validita

Page 56: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Sviluppi futuri 16

Page 57: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Sviluppi futuri 16

�Approccio gerarchico� possibilita di analizzare meglio i risultati di clustering

su data set di grandi dimensioni

Page 58: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Sviluppi futuri 16

�Approccio gerarchico� possibilita di analizzare meglio i risultati di clustering

su data set di grandi dimensioni

� Introduzione di meccanismi piu sofisti-cati per� creare la configurazione iniziale random� spostare i pattern durante la fase di raggruppamento

Page 59: CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algortimo di clustering basato su minimizzazione random della dispersione

Fine