ML Playground
ClusteringIntermedioAprendizaje no supervisado

K-Means

Disponible

Ejecuta iteración a iteración un algoritmo de clustering y observa cómo se mueven los centroides.

Descripción

Qué haceReparte un conjunto de puntos en k grupos, buscando que los puntos de cada grupo queden lo más cerca posible entre sí.

Para qué sirveDescubrir estructura o segmentos en datos sin etiquetas (clientes, documentos, imágenes) cuando no se sabe de antemano a qué grupo pertenece cada elemento.

Agrupa puntos en k clusters alternando asignación y actualización de centroides. Dataset sintético; el algoritmo solo ve coordenadas, nunca las etiquetas originales.

Asignación, actualización e inercia

Asignación

Cada punto se une al centroide más cercano por distancia euclídea.

Actualización

Cada centroide se mueve al promedio de los puntos que le tocaron. Esto es Lloyd's algorithm.

Inercia

Σ ‖punto − su centroide‖²

Mide qué tan compactos son los clusters. Nunca sube de una asignación a la siguiente.

Elegir k

Es una decisión externa: el «Método del codo» barre k comparando inercia.

Qué muestra el gráfico

Fase / iteración

En qué punto de la alternancia asignación-actualización está la ejecución, y cuántas ya ocurrieron.

Centroides

Marcados más grandes, con anillo y número (C0, C1...). La línea discontinua muestra su último desplazamiento.

Ventajas y límites

Simple y rápido

O(k · n) por iteración

Cada punto pertenece a un solo cluster. Funciona bien con grupos esféricos de tamaño similar.

Solo regiones convexas

No separa estructuras como anillos concéntricos — ver caso «Mala correspondencia».

Sensible a outliers

La media se ve arrastrada por valores extremos — ver caso «Sensibilidad a outliers».

Sensible a la inicialización

El mismo dataset puede converger distinto según la seed. k-means++ reduce el riesgo, sin eliminarlo.

Playground

Entrenamiento

Puntos, asignación de cluster y centroides-6.3-3.00.33.77.0-7.2-3.8-0.33.16.5xyC0C1C2
120 puntos sin asignar todavía. Los 3 centroides iniciales se muestran antes de la primera asignación.
  • Punto sin asignar
  • Cluster 0 (centroide C0)
  • Cluster 1 (centroide C1)
  • Cluster 2 (centroide C2)

Cada punto toma el color y la forma del cluster de su centroide más cercano (distancia euclídea). La línea discontinua de acento muestra cuánto se movió cada centroide en la última actualización.

Estado de la ejecución

Fase
Listo

Centroides iniciales calculados. Avanza para empezar a asignar puntos.

Iteración
0 / 100
Inercia actual

Generación del dataset

Cambiar estos controles genera un dataset sintético nuevo y reinicia la ejecución.

Semilla del generador determinista.

40
5120
1.2

Desviación estándar del ruido gaussiano de cada grupo.

0.24.0

K-Means

3

Cantidad de clusters. Limitado a las combinaciones de color y forma de la paleta.

16
Inicialización de centroides
1

Cuántas inicializaciones distintas probar, quedándose con la de menor inercia final. n_init=1 es el comportamiento original: una sola corrida, sin comparar.

110

Casos educativos

Inercia

Evolución de la inercia por asignación0.00.30.50.81.00.00.30.50.81.0AsignaciónInercia
Todavía no hay asignaciones registradas.

Ejecución

Estado: Listo. Centroides iniciales calculados. Avanza para empezar a asignar puntos.

Los controles de ejecución están disponibles. Atajo: barra espaciadora inicia o pausa (si el foco no está en un campo o control de texto).

Elección de k

Método del codo: inercia final vs. k0.31.93.55.16.8-67.1557.11181.31805.52429.7kInercia final
Inercia final por k: k=1 → 2141.63, k=2 → 1139.24, k=3 → 341.50, k=4 → 306.88, k=5 → 263.13, k=6 → 220.96. La mayor caída de inercia ocurre justo antes de k=2, lo que lo hace un candidato razonable.

Conceptos relacionados

Referencias