Aller au contenu principal

Chargement du lab visuel…

#clustering-hierarchiqueApprentissage non supervisé

Fusionner les points deux à deux jusqu'à n'en faire qu'un : le dendrogramme, les critères de lien, et la hauteur de coupe qui décide du nombre de clusters.

Ce que tu vas manipuler

  1. Bienvenue dans #clustering-hierarchique. À gauche, 30 points gris posés sur un plan : on devine trois taches, mais la machine ne le sait pas encore — chaque point est son propre cluster. À droite, un dendrogramme vide : 30 feuilles alignées, un axe des hauteurs et, tout en haut, un plan jaune de coupe. L'idée tient en une phrase : fusionner les deux clusters les plus proches, encore et encore, jusqu'à n'en faire qu'un. Chaque fusion dessine un « U » dont la hauteur est la distance à laquelle elle s'est faite.
  2. Lance la première fusion : /fusionner. L'algorithme cherche dans la matrice des distances la paire la plus proche et la soude.
  3. Encore une : /fusionner. Compare la hauteur du nouveau U à celle du premier.
  4. Laisse tourner jusqu'au bout : /tout. Les 29 fusions s'enchaînent, des paires aux groupes, jusqu'à la racine unique.
  5. Le plan jaune est au-dessus de tout : un seul cluster. Descends-le : /couper 1.5, puis compte les branches qu'il traverse.
  6. À 1,5 ça marche, mais c'est un peu de la chance. Fais l'inverse : demande directement trois groupes avec /clusters 3. Le plan se place tout seul au milieu du plus grand vide entre deux fusions.
  7. Changeons de terrain : /dataset chaine. Une file de points à intervalles réguliers, et un petit groupe compact à côté. Regarde comment le lien moyen découpe ça à la hauteur de coupe actuelle.
  8. Passe au lien simple : /lien simple. La distance entre deux groupes devient celle de leurs deux points les plus proches.
  9. À toi de jouer : /lien ward puis /clusters 2 sur la file ; /dataset anneaux puis /lien simple et /clusters 2 (les deux anneaux retrouvés) contre /lien complet (échec) ; /n 60 pour densifier ; /graine 12 pour d'autres points ; /annuler pour défaire une fusion ; /reinit pour repartir. Prochaine étape : #dbscan, qui trouve les groupes par densité sans fixer leur nombre, et #k-means, le concurrent qui doit connaître k à l'avance.

Commandes du canal

  • /fusionnerFait la prochaine fusion : les deux clusters les plus proches se soudent.
  • /toutFait toutes les fusions restantes : l'arbre complet, jusqu'à la racine.
  • /annulerDéfait la dernière fusion visible.
  • /lien <simple|complet|moyen|ward>Change le critère de lien et recalcule tout l’arbre (même nombre de fusions visibles).
  • /couper <hauteur=0..4>Place le plan de coupe à cette hauteur : autant de clusters que de branches traversées.
  • /clusters <m=1..10>Choisit le nombre de clusters : le plan se place au milieu du bon intervalle de hauteurs.
  • /dataset <blobs|chaine|anneaux>Change le jeu de points (même n, même graine) et recalcule l’arbre.
  • /n <10..60>Change le nombre de points et recalcule l’arbre.
  • /graine <1..99>Retire les points avec une autre graine (même jeu, même n).
  • /reinitRevient au départ : blobs, 30 points, lien moyen, aucune fusion, coupe tout en haut.

Glossaire

Clustering hiérarchique agglomératif
Méthode de regroupement non supervisée qui part de n clusters d'un point et fusionne à chaque étape les deux clusters les plus proches, jusqu'à n'en garder qu'un. On obtient toute une hiérarchie de partitions au lieu d'une seule.
Dendrogramme
Arbre qui résume toutes les fusions : les feuilles sont les points, chaque « U » relie deux clusters à la hauteur de leur fusion. Le couper à une hauteur donnée fournit une partition en clusters.
Critère de lien
Règle qui définit la distance entre deux clusters à partir des distances entre leurs points : lien simple, complet, moyen, Ward… Elle décide de l'ordre des fusions et donc de la forme de l'arbre.
Lien simple
Distance entre deux clusters = distance entre leurs deux points les plus proches. Suit les formes allongées et les anneaux, mais souffre de l'effet de chaîne.
Lien complet
Distance entre deux clusters = distance entre leurs deux points les plus éloignés, c'est-à-dire le diamètre du cluster fusionné. Produit des clusters compacts et ronds, découpe les formes allongées.
Lien moyen
Distance entre deux clusters = moyenne de toutes les distances point à point entre les deux groupes. Compromis entre simple et complet, peu sensible aux points aberrants.
Méthode de Ward
Critère qui fusionne les deux clusters dont la réunion augmente le moins l'inertie intra-cluster (somme des carrés des distances aux centroïdes). Favorise des clusters compacts de tailles comparables ; c'est le critère par défaut de scikit-learn.
Hauteur de coupe
Seuil de distance auquel on tranche le dendrogramme : les branches traversées deviennent les clusters. Couper au milieu du plus grand saut de hauteur donne la partition la plus robuste ; on peut aussi viser directement un nombre de clusters.
Effet de chaîne
Défaut du lien simple : une file de points proches sert de pont et fait fusionner, de proche en proche, des groupes qui n'ont rien à voir. Le dendrogramme s'écrase en bas et ne montre plus de saut net où couper.
Matrice des distances
Tableau n × n des distances entre toutes les paires de points, point de départ de l’algorithme. Après chaque fusion, la ligne du nouveau cluster se déduit des anciennes par la formule de Lance-Williams.

Autres canaux du thème Apprentissage non supervisé

  • #k-meansRegrouper sans étiquettes : des centroïdes qui se déplacent, l'inertie qui baisse, le choix de k — et les formes où k-means échoue.
  • #pcaAnalyse en composantes principales : trouver les axes où les données varient le plus, projeter, compresser — et mesurer ce qu'on perd.
  • #clustering-hierarchiqueFusionner les points deux à deux jusqu'à n'en faire qu'un : le dendrogramme, les critères de lien, et la hauteur de coupe qui décide du nombre de clusters.
  • #dbscanRegrouper par densité : epsilon, MinPts, points cœur, bordure et bruit — l'algorithme qui trouve des formes quelconques et ignore les intrus.
  • #detection-anomaliesRepérer ce qui ne ressemble à rien : score z / Mahalanobis, Isolation Forest, LOF — trois façons de dire « ce point est bizarre ».
  • #t-sne-umapCartographier la haute dimension : t-SNE et UMAP déplient des données à 10 dimensions en une carte 2D lisible — perplexité, voisins, et pièges de lecture.