Entendiendo el Within Cluster Sum of Squares (WCSS)
Introducción
En el mundo del Machine Learning y el análisis de clusters, uno de los conceptos más importantes que uno debe comprender es el del Within Cluster Sum of Squares (WCSS). Este concepto es clave cuando trabajamos con el algoritmo k-means, una de las técnicas más populares para agrupar datos en conjuntos o clusters. Pero, ¿Qué significa realmente el WCSS y por qué es tan crucial para la agrupación efectiva de datos? En este artículo, pretendo explicaros el WCSS de manera sencilla, mostrando su importancia y cómo calcularlo con un ejemplo muy sencillo.
¿Qué es el WCSS?
El WCSS es básicamente una medida o métrica que nos ayuda a entender cuán similares son los datos dentro de un mismo cluster. Imagina que tienes un grupo de puntos en un espacio y quieres agruparlos en diferentes círculos o clusters. El WCSS te dice cuán cerca están los puntos dentro de cada círculo respecto a su centro. Un WCSS bajo significa que los puntos están muy juntos, lo cual es bueno porque queremos que los puntos en el mismo cluster sean similares entre sí.
Fórmula del WCSS
La fórmula para calcular el WCSS es la siguiente:
Donde:
- k es el número de clusters.
- Si representa el conjunto de puntos en el cluster i.
- x es un punto dentro del cluster Si.
- μi es el centroide del cluster i, es decir, el punto que representa el centro del cluster.
- ∣∣x−μi∣∣^2 es la distancia al cuadrado entre el punto x y el centroide μi, lo que nos da una idea de cuán lejos está cada punto de su centro.
Ejemplo Práctico
Nuestro conjunto de datos consiste en tres puntos específicos: 1, 2 y 6. La finalidad es explorar cómo la variabilidad interna de los clusters (WCSS), varía en función de diferentes configuraciones de agrupación.
Para lograrlo, planeamos realizar dos iteraciones distintas del algoritmo k-means, formando en cada caso dos clusters. Cada iteración se caracterizará por diferentes asignaciones de los puntos mencionados a los clusters. Este enfoque nos permitirá examinar cómo la selección y distribución de puntos afectan al WCSS, proporcionando así insights sobre la cohesión interna de los clusters generados.
Iteración 1
- Cluster 1 : (1, 2)
- Cluster 2: (6)
Lo primero que debemos hacer es calcular los centroides:
- Cluster 1. El centroide del primer cluster es (1 + 2)/2 = 1.5.
- Cluster 2: El centroide del segundo cluster es simplemente 6, ya que no hay otros puntos en el cluster.
Ahora, calculemos el WCSS:
Para el Cluster 1:
Para el Cluster 2 (ya que solo tiene un punto, su WCSS es 0):
El WCSS total es la suma de los WCSS de ambos clusters:
Este cálculo muestra que, bajo esta agrupación, el WCSS total es 0.5. Este resultado nos indica que los puntos dentro de cada cluster están relativamente cerca de sus centroides, lo que nos sugiere una agrupación efectiva para este conjunto de datos simple.
Iteración 2
- Cluster 1 : (1)
- Cluster 2: (2, 6)
Calculamos los centroides
- Cluster 1: (1 + 1)/2 = 1.
- Cluster 2: (6+2)/2 = 4.
Como antes, calculemos los WCSS correspondientes:
Con esta nueva clusterización el WCSS total es 8. Esto es significativamente más alto que el WCSS calculado para la agrupación anterior, lo que indica que esta nueva agrupación tiene una mayor variabilidad interna, y los puntos dentro de los clusters están, en promedio, más lejos de sus centroides.
Esto sugiere que, según el criterio del WCSS, la primera agrupación (donde 1 y 2 están juntos, y 6 está solo) es más compacta y preferible desde el punto de vista de la cohesión del cluster. o.
Consideraciones
Si WCSS = 0. Si cada cluster fuera un punto, es decir, si el número de clusters es igual al número de puntos en el conjunto de datos, entonces cada punto se consideraría su propio cluster. En este escenario, el centroide de cada cluster sería el punto mismo, y la distancia de cada punto a su centroide sería cero, lo que resultaría en un Within Cluster Sum of Squares (WCSS) de cero. Aunque intuitivamente podría parecer que un WCSS de 0 es el resultado óptimo, ya que indica la mínima variabilidad interna dentro de los clusters, en realidad no es el resultado más deseable para la mayoría de los análisis de clustering.
Un WCSS de 0, obtenido al asignar cada punto a su propio cluster, indica que no hemos logrado ninguna agrupación significativa. En contraste, un WCSS de 0.5, aunque más alto, sugiere que hemos logrado agrupar los puntos de manera que reflejan alguna estructura subyacente en los datos, sin caer en el extremo de sobreajuste. Aquí es donde entra la Regla del Codo, una técnica utilizada para determinar el número óptimo de clusters. Básicamente esta regla busca el punto en el que aumentar el número de clusters deja de resultar en una disminución significativa del WCSS, indicando un balance entre la cohesión de los clusters y la cantidad de los mismos.
Para más información sobre cómo aplicar la Regla del Codo y sus implicaciones en la selección del número de clusters, os animo a visitar mi post en medium: Análisis de Segmentación de Clientes Usando K-Means: Una Guía Práctica.
Este enfoque nos ayuda a evitar el sobreajuste y a encontrar una solución que no solo minimice el WCSS, sino que también conserve una interpretación útil y significativa de los datos, lo cual es esencial para cualquier análisis de clustering efectivo.
Conclusión
El WCSS es una herramienta tremendamente efectiva en el análisis de clusters, especialmente cuando usamos el algoritmo k-means. Esta ayuda a los analistas a entender y mejorar la calidad de sus agrupaciones, asegurando que los puntos dentro de cada cluster sean tan similares como sea posible.
Con este conocimiento y un ejemplo práctico, esperamos haber aclarado el concepto de WCSS, facilitando tu camino en el aprendizaje del análisis de clusters y el machine learning.