Clustering
Il clustering è un tipo di apprendimento automatico non supervisionato in cui le osservazioni vengono raggruppate in cluster in base ad analogie nei valori dei dati, ovvero in base alle caratteristiche. Questo tipo di apprendimento automatico è considerato non supervisionato perché non usa valori di etichetta precedentemente noti per il training di un modello. In un modello di clustering, l'etichetta può essere considerata come il cluster a cui viene assegnata l'osservazione, esclusivamente in base alle sue caratteristiche.
Esempio: clustering
Si supponga ad esempio che un botanico osservi un campione di fiori e registri il numero di petali e di foglie di ognuno:
Nel set di dati non sono presenti etichette note, ma solo due funzionalità. L'obiettivo non è quello di identificare i diversi tipi (specie) di fiori, ma solo di raggruppare fiori simili in base al numero di foglie e petali.
Foglie (x1) | Petali (x2) |
---|---|
0 | 5 |
0 | 6 |
1 | 3 |
1 | 3 |
1 | 6 |
1 | 8 |
2 | 3 |
2 | 7 |
2 | 8 |
Training di un modello di clustering
Per il clustering è possibile usare numerosi algoritmi. Uno dei più comuni è il clustering K-Means, costituito dai passaggi seguenti:
- I valori delle caratteristiche (x) vengono vettorializzati per definire coordinate n-dimensionali, in cui n corrisponde al numero di caratteristiche. Nell'esempio di fiore sono disponibili due caratteristiche: numero di foglie (x1) e numero di petali (x2). Il vettore delle caratteristiche ha quindi due coordinate che è possibile usare per tracciare concettualmente i punti dei dati nello spazio bidimensionale ([x1,x2])
- Decidere quanti cluster si vogliono usare per raggruppare i fiori e chiamare questo valore k. Ad esempio, per creare tre cluster, si userà un valore 3 di k. I punti k vengono quindi tracciati in coordinate casuali. Questi punti diventano i punti centrali di ogni cluster e vengono chiamati centroidi.
- Ogni punto dati (in questo caso un fiore) viene assegnato al centroide più vicino.
- Ogni centroide viene spostato al centro dei punti dati assegnati in base alla distanza media tra i punti.
- Dopo aver spostato il centroide, è possibile che i punti dati risultino più vicini a un centroide diverso, quindi vengono riassegnati ai cluster in base a tale centroide.
- I passaggi di spostamento dei centroidi e di riposizionamento dei cluster vengono ripetuti finché tutti i cluster diventano stabili o viene raggiunto un numero massimo predeterminato di iterazioni.
L'animazione seguente mostra questo processo:
Valutazione di un modello di clustering
Poiché non esiste un'etichetta nota con cui confrontare le assegnazioni di cluster stimate, la valutazione di un modello di clustering si basa sul modo in cui i cluster risultanti sono separati l'uno dall'altro.
Esistono più metriche che è possibile usare per valutare la separazione dei cluster, tra cui:
- Distanza media dal centro del cluster: indica quanto è vicino, in media, ogni punto del cluster al centroide del cluster.
- Distanza media da altri centri: indica quanto è vicino, in media, ogni punto del cluster al centroide di tutti gli altri cluster.
- Distanza massima dal centro del cluster: indica la distanza maggiore tra un punto del cluster e il relativo centroide.
- Silhouette: valore compreso tra -1 e 1 che descrive il rapporto di distanza tra i punti dello stesso cluster e i punti di cluster diversi (più è vicino a 1, migliore è la separazione dei cluster).