Clustering K-means: Le guide ultime de l’apprentissage non supervisé🌟🚀 | par Lomash Bhuva | Mars 2025

Implémentons le clustering k-means à l’aide de Python et du Scikit-apprend bibliothèque.
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
from sklearn.datasets import make_blobs
# Generating synthetic data with 3 clusters
data, _ = make_blobs(n_samples=300, centers=3, cluster_std=1.0, random_state=42)
wcss = ()
k_values = range(1, 11)
for k in k_values:
kmeans = KMeans(n_clusters=k, init='k-means++', max_iter=300, n_init=10, random_state=42)
kmeans.fit(data)
wcss.append(kmeans.inertia_)# Plotting the Elbow Method graph
plt.plot(k_values, wcss, marker='o')
plt.title('Elbow Method')
plt.xlabel('Number of Clusters')
plt.ylabel('WCSS')
plt.show()
optimal_k = 3 # Assume 3 is the best choice based on the Elbow Method
kmeans = KMeans(n_clusters=optimal_k, init='k-means++', max_iter=300, n_init=10, random_state=42)
clusters = kmeans.fit_predict(data)
plt.scatter(data(:, 0), data(:, 1), c=clusters, cmap='viridis', marker='o', edgecolors='k')
plt.scatter(kmeans.cluster_centers_(:, 0), kmeans.cluster_centers_(:, 1), s=300, c='red', label='Centroids')
plt.title('K-Means Clustering')
plt.legend()
plt.show()