Základy hierarchického shlukování

Cluster Analysis in Python

Shaumik Daityari

Business Analyst

Vytvoření matice vzdáleností pomocí linkage

scipy.cluster.hierarchy.linkage(observations, 
                                method='single', 
                                metric='euclidean', 
                                optimal_ordering=False
)
  • method: způsob výpočtu blízkosti shluků
  • metric: metrika vzdálenosti
  • optimal_ordering: řazení datových bodů
Cluster Analysis in Python

Kterou metodu použít?

  • 'single': na základě dvou nejbližších objektů
  • 'complete': na základě dvou nejvzdálenějších objektů
  • 'average': na základě aritmetického průměru všech objektů
  • 'centroid': na základě geometrického průměru všech objektů
  • 'median': na základě mediánu všech objektů
  • 'ward': na základě součtu čtverců
Cluster Analysis in Python

Vytvoření štítků shluků pomocí fcluster

scipy.cluster.hierarchy.fcluster(distance_matrix, 
                                 num_clusters,
                                 criterion
)
  • distance_matrix: výstup metody linkage()
  • num_clusters: počet shluků
  • criterion: způsob určení prahů pro tvorbu shluků
Cluster Analysis in Python

Hierarchické shlukování metodou ward

Cluster Analysis in Python

Hierarchické shlukování metodou single

Cluster Analysis in Python

Hierarchické shlukování metodou complete

Cluster Analysis in Python

Závěrečné poznámky k výběru metody

  • Neexistuje univerzálně správná metoda
  • Je třeba pečlivě pochopit rozložení dat
Cluster Analysis in Python

Pojďme si procvičit

Cluster Analysis in Python

Preparing Video For Download...