Implémentation sur un Jeu de Données Fictif
Vous allez maintenant parcourir un exemple pratique d'application du clustering K-means. Pour cela, vous utiliserez un jeu de données factice. Les jeux de données factices sont des ensembles de données générés artificiellement, souvent utilisés à des fins de démonstration et d'apprentissage. Ils permettent de contrôler les caractéristiques des données et d'observer clairement comment des algorithmes comme K-means fonctionnent.
Jeu de données factice
Pour cette démonstration, nous allons créer un jeu de données factice à l'aide de la fonction make_blobs(). Cette fonction est idéale pour générer des groupes de points de données de manière visuellement claire et contrôlable. Nous allons générer des données avec les caractéristiques suivantes :
-
Nombre d'échantillons : nous allons créer un jeu de données avec
300points de données ; -
Nombre de centres : nous fixerons le nombre de vrais clusters à
4. Cela signifie que les données factices sont conçues pour comporter quatre groupes distincts ; -
Écart-type des clusters : nous contrôlerons la dispersion des points de données au sein de chaque cluster, en la fixant à
0.60pour des clusters relativement compacts ; -
État aléatoire : nous utiliserons un
random_statefixe pour la reproductibilité, garantissant que la génération des données soit cohérente à chaque exécution du code.
X, y_true = make_blobs(n_samples=300,
centers=4,
cluster_std=0.60,
random_state=0)
Implémentation de K-Means
Avec ces données factices créées, nous appliquerons ensuite l'algorithme K-means. Nous examinerons comment K-means tente de partitionner ces données en clusters selon les principes abordés dans les chapitres précédents.
K-means peut être initialisé et entraîné comme suit en Python :
kmeans = KMeans(n_clusters=k, random_state=42)
kmeans.fit(X)
Pour déterminer le nombre optimal de clusters pour ces données, nous utiliserons les méthodes discutées dans les chapitres précédents :
-
Méthode WSS : nous calculerons la somme des carrés intra-cluster (Within-Sum-of-Squares) pour différentes valeurs de K et analyserons le graphique du coude pour identifier un K optimal potentiel ;
-
Méthode du score de silhouette : nous calculerons le score de silhouette pour différentes valeurs de K et examinerons le graphique de silhouette ainsi que les scores moyens pour trouver le K qui maximise la qualité des clusters.
Enfin, les visualisations joueront un rôle crucial dans notre implémentation. Nous visualiserons :
-
Les données factices elles-mêmes, pour observer la structure intrinsèque des clusters ;
-
Le graphique WSS, pour identifier le point de coude ;
-
Le graphique de silhouette, pour évaluer la qualité des clusters pour différentes valeurs de K ;
-
Les clusters finaux de K-means superposés aux données factices, afin de vérifier visuellement les résultats du clustering et le K optimal choisi.
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Génial!
Completion taux amélioré à 2.94
Implémentation sur un Jeu de Données Fictif
Glissez pour afficher le menu
Vous allez maintenant parcourir un exemple pratique d'application du clustering K-means. Pour cela, vous utiliserez un jeu de données factice. Les jeux de données factices sont des ensembles de données générés artificiellement, souvent utilisés à des fins de démonstration et d'apprentissage. Ils permettent de contrôler les caractéristiques des données et d'observer clairement comment des algorithmes comme K-means fonctionnent.
Jeu de données factice
Pour cette démonstration, nous allons créer un jeu de données factice à l'aide de la fonction make_blobs(). Cette fonction est idéale pour générer des groupes de points de données de manière visuellement claire et contrôlable. Nous allons générer des données avec les caractéristiques suivantes :
-
Nombre d'échantillons : nous allons créer un jeu de données avec
300points de données ; -
Nombre de centres : nous fixerons le nombre de vrais clusters à
4. Cela signifie que les données factices sont conçues pour comporter quatre groupes distincts ; -
Écart-type des clusters : nous contrôlerons la dispersion des points de données au sein de chaque cluster, en la fixant à
0.60pour des clusters relativement compacts ; -
État aléatoire : nous utiliserons un
random_statefixe pour la reproductibilité, garantissant que la génération des données soit cohérente à chaque exécution du code.
X, y_true = make_blobs(n_samples=300,
centers=4,
cluster_std=0.60,
random_state=0)
Implémentation de K-Means
Avec ces données factices créées, nous appliquerons ensuite l'algorithme K-means. Nous examinerons comment K-means tente de partitionner ces données en clusters selon les principes abordés dans les chapitres précédents.
K-means peut être initialisé et entraîné comme suit en Python :
kmeans = KMeans(n_clusters=k, random_state=42)
kmeans.fit(X)
Pour déterminer le nombre optimal de clusters pour ces données, nous utiliserons les méthodes discutées dans les chapitres précédents :
-
Méthode WSS : nous calculerons la somme des carrés intra-cluster (Within-Sum-of-Squares) pour différentes valeurs de K et analyserons le graphique du coude pour identifier un K optimal potentiel ;
-
Méthode du score de silhouette : nous calculerons le score de silhouette pour différentes valeurs de K et examinerons le graphique de silhouette ainsi que les scores moyens pour trouver le K qui maximise la qualité des clusters.
Enfin, les visualisations joueront un rôle crucial dans notre implémentation. Nous visualiserons :
-
Les données factices elles-mêmes, pour observer la structure intrinsèque des clusters ;
-
Le graphique WSS, pour identifier le point de coude ;
-
Le graphique de silhouette, pour évaluer la qualité des clusters pour différentes valeurs de K ;
-
Les clusters finaux de K-means superposés aux données factices, afin de vérifier visuellement les résultats du clustering et le K optimal choisi.
Merci pour vos commentaires !