Comprensione del concetto di clustering gerarchico nell'analisi dei dati: funzioni, tipi e passaggi
Pubblicato: 2023-04-08Il clustering si riferisce al raggruppamento di dati simili in gruppi o cluster nell'analisi dei dati. Questi cluster aiutano gli analisti di dati a organizzare punti dati simili in un gruppo, differenziandoli anche da altri dati che non sono simili.
Il clustering gerarchico dei dati è uno dei metodi utilizzati per raggruppare i dati in un albero di cluster. È uno degli approcci più popolari e utili al raggruppamento dei dati. Se vuoi far parte del campo in crescita della scienza dei dati e dell'analisi dei dati , il clustering gerarchico è una delle cose più importanti da imparare.
Questo articolo ti aiuterà a comprendere la natura del clustering gerarchico, la sua funzione, i tipi e i vantaggi.
Sommario
Cos'è il clustering gerarchico?
Come suggerisce il nome, il clustering gerarchico raggruppa dati diversi in cluster in un formato gerarchico o ad albero. Ogni punto dati viene trattato come un cluster separato in questo metodo. L'analisi gerarchica dei cluster è molto popolare tra i data scientist e gli analisti di dati in quanto riassume i dati in una gerarchia gestibile di cluster che è più facile da analizzare.
Gli algoritmi di clustering gerarchico prendono più punti dati diversi e prendono il più vicino dei due per creare un cluster. Ripete questi passaggi finché tutti i punti dati non si trasformano in un cluster. Il processo può anche essere invertito per dividere un singolo cluster unito in diversi cluster più piccoli e infine in punti dati.
Il metodo gerarchico di clustering può essere rappresentato visivamente come un dendrogramma che è un diagramma ad albero. Un dendrogramma può essere interrotto in qualsiasi momento durante il processo di raggruppamento quando è stato creato il numero desiderato di cluster. Ciò semplifica anche il processo di analisi dei dati.
Come funziona il clustering gerarchico?
Il processo di clustering gerarchico è abbastanza semplice da capire. Un algoritmo di clustering gerarchico tratta tutti i set di dati disponibili come cluster diversi. Quindi, identifica i due set di dati più simili e li unisce in un cluster. Successivamente, il sistema continua a ripetere questi passaggi finché tutti i punti dati non si uniscono in un unico grande cluster. Il processo può anche essere interrotto una volta che il numero richiesto di cluster è disponibile per l'analisi.
L'avanzamento e l'output di un processo di clustering gerarchico possono essere visualizzati come un dendrogramma che può aiutarti a identificare la relazione tra cluster diversi e quanto sono simili o diversi in natura.
Tipi di clustering gerarchico
Un algoritmo di clustering gerarchico può essere utilizzato in due modi diversi. Di seguito sono riportate le caratteristiche di due tipi di clustering gerarchico che è possibile utilizzare.
1. Raggruppamento gerarchico agglomerativo
Il metodo agglomerativo è il modo più utilizzato per raggruppare gerarchicamente i dati. In questo metodo, l'algoritmo viene presentato con più set di dati diversi, ognuno dei quali viene trattato come un cluster a sé stante. Quindi l'algoritmo inizia a combinarsi in gruppi di due in base a quanto sono simili tra loro. Ripete questi passaggi finché non viene raggiunto il numero richiesto di cluster. Questo metodo è più comunemente utilizzato nell'analisi dei cluster gerarchici .
2. Raggruppamento gerarchico divisivo
Il metodo divisivo del raggruppamento gerarchico è il contrario del metodo agglomerativo. In questo metodo, l'algoritmo viene presentato con un unico grande cluster di numerosi punti dati che differenzia passo dopo passo in base alla loro disparità. Ciò si traduce in più set di dati con proprietà diverse. Il metodo divisivo non è usato spesso nella pratica.
Segui i corsi di scienza dei dati online dalle migliori università del mondo. Guadagna programmi Executive PG, programmi di certificazione avanzata o programmi master per accelerare la tua carriera.
Passaggi nel clustering gerarchico
Come accennato in precedenza, ci sono tre passaggi principali nel clustering gerarchico dei dati.
- L'identificazione di somiglianze tra due diversi punti dati.
- Unirli in un unico cluster.
- Ripetere questi passaggi per tutti i punti dati fino a quando non vengono uniti in un unico grande cluster di dati.
Tuttavia, è anche molto importante ricordare come identificare punti simili nel raggruppamento gerarchico. Se studi un dendrogramma prodotto da un algoritmo, puoi facilmente identificare i punti centrali di ogni diverso ammasso. I cluster che hanno la minima distanza l'uno dall'altro nel dendrogramma sono i più simili. Questo è il motivo per cui viene anche chiamato algoritmo basato sulla distanza. La somiglianza tra un cluster e tutti gli altri in un dendrogramma è chiamata matrice di prossimità.
Devi anche scegliere la misura della distanza corretta durante l'utilizzo del clustering gerarchico. Ad esempio, a seconda che tu scelga la misura della distanza in base al genere o al background educativo, un set di dati che include informazioni sulle stesse persone produrrà dendrogrammi diversi.
Leggi i nostri popolari articoli sulla scienza dei dati
Percorso di carriera nella scienza dei dati: una guida completa alla carriera | Crescita della carriera nella scienza dei dati: il futuro del lavoro è qui | Perché la scienza dei dati è importante? 8 modi in cui la scienza dei dati apporta valore al business |
Rilevanza della scienza dei dati per i manager | Il foglio informativo definitivo sulla scienza dei dati che ogni scienziato di dati dovrebbe avere | I 6 motivi principali per cui dovresti diventare un data scientist |
Un giorno nella vita dei data scientist: cosa fanno? | Mito sfatato: la scienza dei dati non ha bisogno di codifica | Business Intelligence vs Data Science: quali sono le differenze? |
Clustering gerarchico Python
Ora che hai una chiara comprensione del clustering gerarchico, diamo un'occhiata a come eseguire il clustering gerarchico Python . Ecco come sarebbe l'esecuzione del clustering gerarchico utilizzando la libreria"scikit-learn" di Python .
Supponiamo che ci siano due variabili ( x e y) in un insieme di dati con sei osservazioni:
Osservazioni | X | si |
1 | 1 | 1 |
2 | 2 | 1 |
3 | 4 | 3 |
4 | 5 | 4 |
5 | 6 | 5 |
6 | 7 | 5 |
Come grafico a dispersione, ecco come verranno visualizzate queste osservazioni:
Pitone
importa numpy come
np
importa matplotlib.pyplot come plt
# Definire il set di dati
X = np.array([[ 1,1], [2,1], [4,3], [5,4], [6,5], [7,5]])
# Traccia i dati
plt.scatter(X[:, 0], X[:,1])
plt.mostra()
Ci sono due gruppi di osservazioni in questo grafico: uno include valori più bassi di x e ye l'altro con valori più alti dixey.
È possibile utilizzare"scikit learn" per eseguire il clustering gerarchico su questo set di dati.
I due gruppi di osservazioni nel grafico hanno valori diversi. Uno è costituito da valori più alti di x e ye l'altro da valori più bassi.
Dai un'occhiata ai nostricorsi gratuiti di scienza dei dati per avere un vantaggio sulla concorrenza.
Dei due metodi principali di clustering gerarchico che abbiamo discusso in precedenza, utilizzeremo il metodo di clustering agglomerativo con il metodo di collegamento "ward ".Il metodo 'ward' minimizza le variazioni dei grappoli che vengono uniti insieme, producendo quindi grappoli simili per dimensioni e forma.
Esplora i nostri popolari corsi di scienza dei dati
Executive Post Graduate Program in Data Science presso IIITB | Programma di certificazione professionale in Data Science per il processo decisionale aziendale | Master of Science in Data Science presso l'Università dell'Arizona |
Programma di certificazione avanzata in Data Science da IIITB | Programma di certificazione professionale in scienza dei dati e analisi aziendale presso l'Università del Maryland | Corsi di scienza dei dati |
Pitone
da sklearn.clusterimportAgglomerativeClustering
# Eseguire il clustering gerarchico
clustering AgglomerativeClustering (n_clusters= 2, linkage='ward').fit(X)
Il parametro 'n-clusters ' è stato utilizzato qui per specificare che vogliamo due cluster.
Possiamo usare colori diversi per ogni cluster quando li tracciamo:
Pitone
# Traccia i cluster
colori= np.array([' r', 'b'])
plt.scatter (X[:, 0], X[:,1], c=colori [clustering.labels_])
plt.mostra()
I due cluster nei dati sono stati identificati correttamente dall'algoritmo di clustering. Puoi anche utilizzare quale etichetta l'algoritmo di clustering ha assegnato a ciascuna osservazione:
Pitone
stampa (clustering.labels_)
csharp
[ 0 0 1 1 1 1]
Le ultime quattro osservazioni sono state assegnate al cluster 1, mentre le prime due sono state assegnate al cluster 0.
Se vuoi visualizzare la struttura gerarchica di questi cluster, puoi generare un dendrogramma per farlo:
Pitone
da scipy.cluster.hierarchyimportadendrogramma, collegamento
# Calcola la matrice di collegamento
Z = collegamento(X, ' reparto')
# Traccia il dendrogramma
dendrogramma(Z)
plt.mostra()
Il dendrogramma può aiutarci a visualizzare la gerarchia dei cluster uniti.
Le migliori competenze di scienza dei dati da apprendere
Le migliori competenze di scienza dei dati da apprendere | ||
1 | Corso di analisi dei dati | Corsi di statistica inferenziale |
2 | Programmi di verifica delle ipotesi | Corsi di regressione logistica |
3 | Corsi di regressione lineare | Algebra lineare per l'analisi |
Conclusione
Il clustering dei dati è una parte molto importante della scienza dei dati e dell'analisi dei dati. Se vuoi imparare diversi metodi di clustering, allora upGrad può aiutarti a dare il via al tuo viaggio di apprendimento! Con l'aiuto di corsi di perfezionamento, sessioni di settore, sessioni di tutoraggio, Bootcamp di programmazione Python e sessioni di apprendimento dal vivo, il Master of Science in Data Science di upGrad è un corso progettato per i professionisti per ottenere un vantaggio rispetto ai concorrenti.
Offerto sotto la guida dell'Università dell'Arizona, questo corso potenzia la tua carriera nella scienza dei dati con un curriculum all'avanguardia, un'esperienza di apprendimento coinvolgente con esperti del settore e opportunità di lavoro.
D. Perché eseguiamo il clustering gerarchico nella scienza dei dati?
Il clustering gerarchico viene utilizzato per raggruppare i dati in base a vari attributi simili. La distribuzione degli aspetti dei dati in gruppi visivamente comprensibili semplifica la sua implementazione pratica osservando facilmente il dendrogramma.
D. In che cosa viene utilizzato il clustering gerarchico?
Il clustering gerarchico è una forma ampiamente utilizzata per raggruppare i dati generati attraverso i siti di social networking. Utilizzando questi dati, gli analisti possono raccogliere preziose informazioni rilevanti per migliorare i loro processi aziendali e generare entrate migliori.
D. Quali sono i limiti del clustering gerarchico?
Il clustering gerarchico non si adatta a tipi misti o dati mancanti. Un'altra limitazione del clustering gerarchico è che non funziona bene con un set di dati molto ampio.