Implementación en un Conjunto de Datos Ficticio
Desliza para mostrar el menú
Ahora recorrerás un ejemplo práctico de aplicación de agrupamiento K-means. Para ello, utilizarás un conjunto de datos ficticio. Los conjuntos de datos ficticios son conjuntos de datos generados artificialmente que se emplean frecuentemente con fines de demostración y aprendizaje. Permiten controlar las características de los datos y observar claramente cómo funcionan algoritmos como K-means.
Conjunto de datos ficticio
Para esta demostración, crearemos un conjunto de datos ficticio utilizando la función make_blobs(). Esta función es excelente para generar agrupaciones de puntos de datos de manera visual clara y controlable. Generaremos datos con las siguientes características:
-
Número de muestras: crearemos un conjunto de datos con
300puntos de datos; -
Número de centros: estableceremos el número de agrupaciones reales en
4. Esto significa que los datos ficticios están diseñados para tener cuatro grupos distintos; -
Desviación estándar de los grupos: controlaremos la dispersión de los puntos dentro de cada grupo, estableciéndola en
0.60para obtener grupos relativamente compactos; -
Estado aleatorio: utilizaremos un
random_statefijo para garantizar la reproducibilidad, asegurando que la generación de datos sea consistente cada vez que ejecutes el código.
X, y_true = make_blobs(n_samples=300,
centers=4,
cluster_std=0.60,
random_state=0)
Implementación de K-Means
Con estos datos ficticios creados, aplicaremos el algoritmo K-means. Exploraremos cómo K-means intenta dividir estos datos en grupos según los principios aprendidos en capítulos anteriores.
K-means puede inicializarse y entrenarse de la siguiente manera en Python:
kmeans = KMeans(n_clusters=k, random_state=42)
kmeans.fit(X)
Para determinar el número óptimo de grupos para estos datos, emplearemos los métodos discutidos en los capítulos anteriores:
-
Método WSS: calcularemos la suma de cuadrados dentro del grupo (Within-Sum-of-Squares) para diferentes valores de K y analizaremos el gráfico del codo para identificar un posible K óptimo;
-
Método de la puntuación Silhouette: calcularemos la puntuación Silhouette para diferentes valores de K y examinaremos el gráfico Silhouette y las puntuaciones promedio para encontrar el K que maximice la calidad de los grupos.
Finalmente, las visualizaciones desempeñarán un papel fundamental en nuestra implementación. Visualizaremos:
-
Los propios datos ficticios, para observar la estructura inherente de los grupos;
-
El gráfico WSS, para identificar el punto de codo;
-
El gráfico Silhouette, para evaluar la calidad de los grupos para diferentes valores de K;
-
Los grupos finales de K-means superpuestos sobre los datos ficticios, para verificar visualmente los resultados del agrupamiento y el K óptimo elegido.
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla