Clustering: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Ho corretto lo spelling di "k-medoids" e aggiunto un link alla pagina Wikipedia di riferimento. |
|||
(22 versioni intermedie di 16 utenti non mostrate) | |||
Riga 1:
In [[statistica]], il '''clustering''' o '''analisi dei gruppi''' (dal termine [[lingua inglese|inglese]] ''cluster analysis'', introdotto da [[Robert Tryon]] nel [[1939]]) è un insieme di tecniche di [[statistica multivariata|analisi multivariata dei dati]] volte alla selezione e raggruppamento di elementi omogenei in un insieme di dati
Le tecniche di ''clustering'' si basano su misure relative alla somiglianza tra gli elementi. In molti approcci questa similarità, o meglio, dissimilarità, è concepita in termini di distanza in uno spazio multidimensionale. La bontà delle analisi ottenute dagli algoritmi di ''clustering'' dipende molto dalla scelta della [[Distanza (matematica)|metrica]], e quindi da come è calcolata la distanza. Gli [[algoritmo|algoritmi]] di ''clustering'' raggruppano gli elementi sulla base della loro distanza reciproca, e quindi l'appartenenza o meno a un [[insieme]] dipende da quanto l'elemento preso in esame è distante dall'insieme stesso.
Le tecniche di ''clustering'' si possono basare principalmente su due "filosofie":
Line 8 ⟶ 11:
:All'inizio tutti gli elementi sono un unico ''cluster'', e poi l'algoritmo inizia a dividere il ''cluster'' in tanti ''cluster'' di dimensioni inferiori. Il criterio che guida la divisione è naturalmente quello di ottenere gruppi sempre più omogenei. L'algoritmo procede fino a che non viene soddisfatta una regola di arresto generalmente legata al raggiungimento di un numero prefissato di ''cluster''.
▲== Tecniche di clustering ==
Esistono varie classificazioni delle tecniche di clustering comunemente utilizzate. Una prima categorizzazione dipende dalla possibilità che un elemento possa o meno essere assegnato a più cluster:
* ''clustering esclusivo'': ogni elemento può essere assegnato ad uno e ad un solo gruppo. Quindi i cluster risultanti non possono avere elementi in comune. Questo approccio è detto anche ''hard clustering''.
Line 14 ⟶ 16:
Un'altra suddivisione delle tecniche di clustering tiene conto del tipo di algoritmo utilizzato per dividere lo spazio:
* ''clustering partizionale (detto anche non gerarchico, o k-clustering)'', in cui per definire l'appartenenza ad un gruppo viene utilizzata una distanza da un punto rappresentativo del cluster (centroide, medioide, ecc
* ''Clustering gerarchico'', in cui viene costruita una gerarchia di partizioni caratterizzate da un numero (de)crescente di gruppi, visualizzabile mediante una rappresentazione ad albero (dendrogramma), in cui sono rappresentati i passi di accorpamento/divisione dei gruppi.
Line 22 ⟶ 24:
Gli algoritmi di clustering di questa famiglia creano una [[Partizione (teoria degli insiemi)|partizione]] delle osservazioni minimizzando una certa funzione di costo:
:<math>\sum_{j=1}^k E( C_j ),</math>
dove <math>k</math> è il numero dei cluster, <math>C_j</math> è il <math>j</math>-esimo cluster e <math>E\colon C \rightarrow \R^{+}</math> è la funzione di costo associata al singolo cluster. L'algoritmo più famoso appartenente a questa famiglia è il [[k-means]], proposto da MacQueen nel [[1967]]. Un altro algoritmo abbastanza conosciuto appartenente a questa classe è il [[K-medoids|Partitioning Around
=== Clustering gerarchico ===
Line 34 ⟶ 36:
==== Misure utilizzate nel clustering gerarchico ====
In
Nel primo caso, sono necessarie funzioni che misurino la ''similarità'' (o, indistintamente, la ''distanza'') tra due cluster, in modo da fondere quelli più simili. Le funzioni utilizzate nel caso agglomerativo sono:
Line 50 ⟶ 52:
:<math> D(C_i,C_j)=d(\hat{c_i},\hat{c_j})</math>.
* ''Dunn Index''
Nei 4 casi precedenti, <math> d(x,y) </math> indica una qualsiasi funzione distanza su uno spazio metrico.▼
:L'indice di Dunn mira a identificare cluster densi e ben separati. È definito come il rapporto tra la minima distanza inter-cluster e la massima distanza intra-cluster. Per ogni partizione del cluster, l'indice di Dunn può essere calcolato con la seguente formula:<ref>{{Cita pubblicazione|cognome= Dunn |nome=J.|titolo=Well separated clusters and optimal fuzzy partitions|rivista=Journal of Cybernetics|anno=1974| volume = 4|pp=95-104| doi = 10.1080/01969727408546059}}</ref>
::<math>
D(C_i,C_j) = \frac{\min_{1 \leq i < j \leq n} d(i,j)}{\max_{1 \leq k \leq n} d^{\prime}(k)} \,,
</math>
:dove ''d''(''i'',''j'') rappresenta la distanza tra i cluster ''i'' e ''j'' e ''d'' '(''k'') misura la distanza intra-cluster del cluster ''k''. La distanza inter-cluster ''d''(''i'',''j'') tra due cluster può essere una qualsiasi misura di distanza, come la distanza tra i centroidi dei cluster. Allo stesso modo, la distanza intra-cluster 'd'' '(''k'') può essere misurata in vari modi, come la distanza massima tra qualsiasi coppia di elementi nel cluster ''k''. Poiché il criterio interno cerca cluster con un'alta somiglianza intra-cluster e una bassa somiglianza inter-cluster, gli algoritmi che producono cluster con un alto indice di Dunn sono più desiderabili<ref>{{cita web|titolo=Dunn index in Python|url=https://python.engineering/dunn-index-and-db-index-cluster-validity-indices-set/|sito=Python.Engineering|lingua=en|data=13 dicembre 2022}}</ref>.
▲Nei
Invece nel clustering divisivo è necessario individuare il cluster da suddividere in due sottogruppi. Per questa ragione sono necessarie funzioni che misurino la compattezza del cluster, la densità o la sparsità dei punti assegnati ad un cluster. Le funzioni normalmente utilizzate nel caso divisivo sono:
Line 83 ⟶ 94:
La distanza tra un punto ed un gruppo di punti è calcolata usando il concatenamento completo, cioè come la massima distanza dal punto di ciascun membro del gruppo (vedi il "Clustering gerarchico agglomerativo" sulla distanza tra i cluster nella sezione [[#Clustering_gerarchico|clustering gerarchico]]).
==Note==
<references/>
== Bibliografia ==
Line 89 ⟶ 103:
== Voci correlate ==
* [[Mean shift]]
* [[Region growing]]
== Altri progetti ==
{{interprogetto|
== Collegamenti esterni ==
* {{
* [http://www.matematicamente.it/rivista-il-magazine/numero-9-aprile-2009/112-data-mining-esplorando-le-miniere-alla-ricerca-della-conoscenza-nascosta-clustering/ (IT) Articolo divulgativo su Clustering e Data Mining.]
* Gaetano Zazzaro, Angelo Martone, "ECF-means – Ensemble Clustering Fuzzification Means. A novel algorithm for clustering aggregation, fuzzification, and optimization" [https://www.thinkmind.org/index.php?view=article&articleid=immm_2018_2_10_50010], Eighth International Conferenceon Advances in Information Mining and Management, IMMM 2018, Barcelona, Spain, July 22 - 26, 2018.
{{Apprendimento automatico}}
{{Controllo di autorità}}
{{Portale|matematica|informatica}}
Line 104 ⟶ 121:
[[Categoria:Algoritmi]]
[[Categoria:Apprendimento automatico]]
[[Categoria:Analisi dei cluster| ]]
[[Categoria:Geostatistica]]
[[Categoria:Statistica]]
|