Podstawy klastrowania hierarchicznego

Analiza skupień w Pythonie

Shaumik Daityari

Business Analyst

Tworzenie macierzy odległości za pomocą linkage

scipy.cluster.hierarchy.linkage(observations, 
                                method='single', 
                                metric='euclidean', 
                                optimal_ordering=False
)
  • method: sposób obliczania bliskości klastrów
  • metric: miara odległości
  • optimal_ordering: kolejność punktów danych
Analiza skupień w Pythonie

Którą metodę wybrać?

  • 'single': dwa najbliższe obiekty
  • 'complete': dwa najdalsze obiekty
  • 'average': średnia arytmetyczna wszystkich obiektów
  • 'centroid': średnia geometryczna wszystkich obiektów
  • 'median': mediana wszystkich obiektów
  • 'ward': suma kwadratów
Analiza skupień w Pythonie

Tworzenie etykiet klastrów za pomocą fcluster

scipy.cluster.hierarchy.fcluster(distance_matrix, 
                                 num_clusters,
                                 criterion
)
  • distance_matrix: wynik metody linkage()
  • num_clusters: liczba klastrów
  • criterion: sposób wyznaczania progów tworzenia klastrów
Analiza skupień w Pythonie

Klastrowanie hierarchiczne – metoda ward

Analiza skupień w Pythonie

Klastrowanie hierarchiczne – metoda single

Analiza skupień w Pythonie

Klastrowanie hierarchiczne – metoda complete

Analiza skupień w Pythonie

Uwagi końcowe dotyczące wyboru metody

  • Nie istnieje jedna uniwersalna metoda
  • Należy dokładnie przeanalizować rozkład danych
Analiza skupień w Pythonie

Czas na ćwiczenia

Analiza skupień w Pythonie

Preparing Video For Download...