Limites du clustering hiérarchique

Analyse de clusters en Python

Shaumik Daityari

Business Analyst

Mesurer la vitesse en clustering hiérarchique

  • Module timeit
  • Mesurer la vitesse de .linkage()
  • Utiliser des points aléatoires
  • Lancer plusieurs itérations pour extrapoler
Analyse de clusters en Python

Utilisation du module timeit

from scipy.cluster.hierarchy import linkage
import pandas as pd
import random, timeit

points = 100 df = pd.DataFrame({'x': random.sample(range(0, points), points), 'y': random.sample(range(0, points), points)})
%timeit linkage(df[['x', 'y']], method = 'ward', metric = 'euclidean')
1.02 ms ± 133 µs par boucle (moyenne ± éc. type de 7 exécutions, 1000 boucles chacune)
Analyse de clusters en Python

Comparaison des temps d’exécution de linkage

  • Temps d’exécution croît avec le nombre de points
  • Croissance quadratique du temps
  • Peu adapté aux grands jeux de données

Analyse de clusters en Python

À suivre : exercices

Analyse de clusters en Python

Preparing Video For Download...