Mario Alexander Vargas Celis
El algoritmo de K-Means es uno de los algoritmos de clustering más populares en machine learning no supervisado. Su objetivo es dividir un conjunto de datos en K grupos (clústers), donde cada grupo contiene puntos que son similares entre sí y diferentes de los de otros grupos.
🧠 ¿Qué hace K-Means?
Dado un número K (el número de clústers deseado), el algoritmo agrupa los datos de forma que se minimice la distancia de cada punto a su centroide (el "centro" del clúster).
⚙️ ¿Cómo funciona K-Means? (Pasos)
- Inicialización:
- Escoge K puntos aleatorios como centroides iniciales (uno por clúster).
- Asignación de clústers:
- Cada punto se asigna al clúster más cercano (usando, por ejemplo, distancia euclidiana).
- Actualización de centroides:
- Se recalcula el centroide de cada clúster como el promedio de los puntos asignados a él.
- Repetir:
- Repite los pasos 2 y 3 hasta que:
- Los centroides ya no cambian significativamente, o
- Se alcanza un número máximo de iteraciones.
- Repite los pasos 2 y 3 hasta que:
📈 Ejemplo visual
Imagina un conjunto de puntos dispersos. K-Means:
- Coloca 3 puntos aleatorios como centroides (si K = 3).
- Agrupa los puntos según cercanía a esos centroides.
- Recalcula los centroides.
- Repite hasta que las posiciones de los centroides se estabilicen.
✅ Ventajas
- Fácil de entender e implementar.
- Funciona bien con clústers esféricos y separados.
- Rápido incluso con grandes conjuntos de datos.
⚠️ Limitaciones
- Tienes que definir K previamente.
- Es sensible a:
- Outliers
- Inicialización aleatoria (puede converger a soluciones subóptimas).
- Asume que los clústers son de forma redonda y de tamaño similar.
🔍 ¿Cuándo usarlo?
- Segmentación de clientes.
- Agrupamiento de imágenes.
- Análisis exploratorio de datos.
