Implementación en Conjunto de Datos Ficticio
Ahora se presentará un ejemplo práctico de aplicación del clustering K-means. Para ello, se utilizará un conjunto de datos ficticio. Los conjuntos de datos ficticios son conjuntos de datos generados artificialmente que se emplean frecuentemente con fines demostrativos y educativos. 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, se creará 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. Se generarán datos con las siguientes características:
-
Número de muestras: se creará un conjunto de datos con
300
puntos de datos; -
Número de centros: se establecerá 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 clústeres: se controlará la dispersión de los puntos de datos dentro de cada clúster, fijándola en
0.60
para obtener clústeres relativamente compactos; -
Estado aleatorio: se utilizará un
random_state
fijo para garantizar la reproducibilidad, asegurando que la generación de datos sea consistente cada vez que se ejecute 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, se aplicará el algoritmo K-means. Se explorará cómo K-means intenta dividir estos datos en clústeres según los principios estudiados 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 clústeres para estos datos, se emplearán los métodos discutidos en los capítulos previos:
-
Método WSS: se calculará la suma de cuadrados dentro del clúster (Within-Sum-of-Squares) para diferentes valores de K y se analizará el gráfico de codo para identificar un posible valor óptimo de K;
-
Método de la puntuación Silhouette: se calculará la puntuación Silhouette para diferentes valores de K y se examinarán el gráfico Silhouette y las puntuaciones promedio para encontrar el valor de K que maximice la calidad de los clústeres.
Finalmente, las visualizaciones desempeñarán un papel fundamental en nuestra implementación. Se visualizarán:
-
El propio conjunto de datos ficticio, para observar la estructura inherente de los clústeres;
-
El gráfico WSS, para identificar el punto de codo;
-
El gráfico Silhouette, para evaluar la calidad de los clústeres para diferentes valores de K;
-
Los clústeres finales de K-means superpuestos sobre los datos ficticios, para verificar visualmente los resultados del agrupamiento y el valor óptimo de K 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
Awesome!
Completion rate improved to 2.94
Implementación en Conjunto de Datos Ficticio
Desliza para mostrar el menú
Ahora se presentará un ejemplo práctico de aplicación del clustering K-means. Para ello, se utilizará un conjunto de datos ficticio. Los conjuntos de datos ficticios son conjuntos de datos generados artificialmente que se emplean frecuentemente con fines demostrativos y educativos. 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, se creará 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. Se generarán datos con las siguientes características:
-
Número de muestras: se creará un conjunto de datos con
300
puntos de datos; -
Número de centros: se establecerá 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 clústeres: se controlará la dispersión de los puntos de datos dentro de cada clúster, fijándola en
0.60
para obtener clústeres relativamente compactos; -
Estado aleatorio: se utilizará un
random_state
fijo para garantizar la reproducibilidad, asegurando que la generación de datos sea consistente cada vez que se ejecute 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, se aplicará el algoritmo K-means. Se explorará cómo K-means intenta dividir estos datos en clústeres según los principios estudiados 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 clústeres para estos datos, se emplearán los métodos discutidos en los capítulos previos:
-
Método WSS: se calculará la suma de cuadrados dentro del clúster (Within-Sum-of-Squares) para diferentes valores de K y se analizará el gráfico de codo para identificar un posible valor óptimo de K;
-
Método de la puntuación Silhouette: se calculará la puntuación Silhouette para diferentes valores de K y se examinarán el gráfico Silhouette y las puntuaciones promedio para encontrar el valor de K que maximice la calidad de los clústeres.
Finalmente, las visualizaciones desempeñarán un papel fundamental en nuestra implementación. Se visualizarán:
-
El propio conjunto de datos ficticio, para observar la estructura inherente de los clústeres;
-
El gráfico WSS, para identificar el punto de codo;
-
El gráfico Silhouette, para evaluar la calidad de los clústeres para diferentes valores de K;
-
Los clústeres finales de K-means superpuestos sobre los datos ficticios, para verificar visualmente los resultados del agrupamiento y el valor óptimo de K elegido.
¡Gracias por tus comentarios!