Implementación en un Conjunto de Datos Ficticio
Ahora se presentará un ejemplo práctico de aplicación de agrupamiento K-means. Para ello, se utilizará un conjunto de datos ficticio. Los conjuntos de datos ficticios son conjuntos de datos generados artificialmente que suelen emplearse con fines demostrativos y de 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, 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 y controlable. Se generarán datos con las siguientes características:
-
Número de muestras: se creará un conjunto de datos con
300puntos 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 grupos: se controlará la dispersión de los puntos dentro de cada grupo, fijándola en
0.60para obtener agrupaciones relativamente compactas; -
Estado aleatorio: se utilizará un
random_statefijo para garantizar la reproducibilidad, asegurando que la generación de datos sea consistente en cada ejecución del 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 agrupaciones 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 agrupaciones 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 grupo (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 del coeficiente de silueta: se calculará el coeficiente de silueta para distintos valores de K y se examinarán el gráfico de silueta y los promedios de silueta para encontrar el K que maximice la calidad de los grupos.
Finalmente, las visualizaciones desempeñarán un papel fundamental en la implementación. Se visualizará:
-
El propio conjunto de datos ficticio, para observar la estructura inherente de los grupos;
-
El gráfico WSS, para identificar el punto de codo;
-
El gráfico de silueta, 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 valor óptimo de K seleccionado.
¡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
Genial!
Completion tasa mejorada a 2.94
Implementación en un Conjunto de Datos Ficticio
Desliza para mostrar el menú
Ahora se presentará un ejemplo práctico de aplicación de agrupamiento K-means. Para ello, se utilizará un conjunto de datos ficticio. Los conjuntos de datos ficticios son conjuntos de datos generados artificialmente que suelen emplearse con fines demostrativos y de 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, 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 y controlable. Se generarán datos con las siguientes características:
-
Número de muestras: se creará un conjunto de datos con
300puntos 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 grupos: se controlará la dispersión de los puntos dentro de cada grupo, fijándola en
0.60para obtener agrupaciones relativamente compactas; -
Estado aleatorio: se utilizará un
random_statefijo para garantizar la reproducibilidad, asegurando que la generación de datos sea consistente en cada ejecución del 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 agrupaciones 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 agrupaciones 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 grupo (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 del coeficiente de silueta: se calculará el coeficiente de silueta para distintos valores de K y se examinarán el gráfico de silueta y los promedios de silueta para encontrar el K que maximice la calidad de los grupos.
Finalmente, las visualizaciones desempeñarán un papel fundamental en la implementación. Se visualizará:
-
El propio conjunto de datos ficticio, para observar la estructura inherente de los grupos;
-
El gráfico WSS, para identificar el punto de codo;
-
El gráfico de silueta, 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 valor óptimo de K seleccionado.
¡Gracias por tus comentarios!