Fonction SciPy Cluster Hierarchy Dendrogram

Lakshay Kapoor 30 janvier 2023
  1. Syntaxe de scipy.cluster.hierarchy.dendrogram
  2. Exemple de dendrogramme de regroupement hiérarchique
Fonction SciPy Cluster Hierarchy Dendrogram

Le clustering hiérarchique, également connu sous le nom d’analyse de clustering hiérarchique, suit une approche de haut en bas pour regrouper des objets du même type dans des groupes appelés clusters. Il s’agit d’un algorithme d’apprentissage automatique non supervisé dans lequel tous les groupes ou clusters sont différents les uns des autres.

Il existe 2 types de clustering hiérarchique :

  • Clustering par division - Dans cette méthode, tous les objets sont d’abord regroupés en un seul cluster, puis tous les objets sont divisés en deux clusters qui ont très peu de similitudes. Cette méthode suit une approche de haut en bas.
  • Clustering agglomératif - Dans cette méthode, les objets sont regroupés dans un cluster qui leur est propre. Cette méthode suit une approche de bas en haut.

Un dendrogramme est un diagramme de visualisation qui ressemble davantage à un diagramme arborescent qui aide à décrire la relation entre tous les clusters prédéfinis. La méthodologie la plus basique d’un dendrogramme est que, plus la distance entre les lignes du dendrogramme est grande, plus la distance entre tous les clusters est grande.

Syntaxe de scipy.cluster.hierarchy.dendrogram

scipy.cluster.hierarchy.dendrogram(Z, p=30, truncate_mode=None, orientation="top")

Paramètres

Z Il représente la matrice de liaison qui est utilisée pour coder l’ensemble du clustering hiérarchique pour le définir comme un dendrogramme.
p C’est le paramètre défini pour truncate_mode
truncate_mode En raison de la grande matrice d’observation originale à partir de laquelle le lien entre les clusters est défini, le dendrogramme peut être difficile à étudier. Ce paramètre permet de rendre le dendrogramme compact.
orientation Il décide dans quelle direction le dendrogramme est tracé. Par exemple, top. L’orientation top signifie que la base du dendrogramme est en haut et que les liens vont vers le bas. De même, les autres orientations sont bottom, left et right.

Tous ces paramètres sont optionnels sauf le paramètre Z. De plus, il y a beaucoup plus de paramètres optionnels dans cette fonction comme color_threshold, get_leaves, distance_sort, etc.

Exemple de dendrogramme de regroupement hiérarchique

import numpy as np
from scipy.cluster import hierarchy
import matplotlib.pyplot as plt

array = np.array([30, 60, 90, 120, 150, 180, 210, 240, 270, 300])

clus = hierarchy.linkage(array, "complete")
plt.figure()

den = hierarchy.dendrogram(
    clus, above_threshold_color="black", color_threshold=0.8, orientation="right"
)

Production :

dendrogramme de la hiérarchie des clusters scipy

Ici, notez que nous avons utilisé l’algorithme complete linkage pour faire le clustering hiérarchique. De plus, la base du dendrogramme est à droite et les liens descendent vers la gauche car le paramètre orientation est défini comme right.

Lakshay Kapoor avatar Lakshay Kapoor avatar

Lakshay Kapoor is a final year B.Tech Computer Science student at Amity University Noida. He is familiar with programming languages and their real-world applications (Python/R/C++). Deeply interested in the area of Data Sciences and Machine Learning.

LinkedIn