Cómo implementar Kmeans
Hay tres criterios para acabar el algoritmo:
- Los centroides dejan de mudar. O sea, tras múltiples iteraciones, los centros de cada conjunto no cambian. Por ende, se piensa que el algoritmo ha convergido.
- Puntos de parada que cambian de clúster. Como el previo, pero en esta ocasión no nos fijamos en los centroides, sino más bien en los puntos socios a cada clúster. En el momento en que no se aprecia trueque de clústeres, se piensa que el modelo está entrenado.
- Límite de iteraciones. Tenemos la posibilidad de detallar un número máximo de iteraciones que deseamos que nuestro algoritmo ejecute antes de detenerse. En el momento en que consigue ese número, se piensa que el modelo no va a mejorar relevantemente y se detiene el entrenamiento.
Implementación de métodos k de Python
La búsqueda de centroides en métodos k usa una técnica de refinamiento iterativo. Primero, empieza con un grupo de centroides al azar, con lo que el algoritmo no en todos los casos confluye a exactamente los mismos desenlaces, y la localización de estos elementos se refina por medio de un desarrollo iterativo.
El algoritmo k-means se puede sintetizar en los próximos pasos:
Ejemplo de K-Means en Python con Sklearn
Por poner un ejemplo vamos a usar un dataset como entradas I recibido de mi emprendimiento, en el que se examinaron las peculiaridades de personalidad de los clientes de Twitter. He filtrado 140 «conocidos» de todo el planeta en distintas campos: deportes, vocalistas, actores, etcétera. Con base en una metodología sicológica llamada «Ocean: The Big Five», en general atribuimos entrada:
- usuario (el nombre en Twitter)
- «op» = Apertura a la experiencia – nivel de apertura mental a novedosas vivencias, curiosidad, arte
- «co» = Escrupulosidad – nivel de orden, pulcritud, organización
- «ex-» = Extraversión – nivel de timidez, aislamiento o implicación frente a lo popular conjunto
- “ag” = Unidad – nivel de empatía con el resto, temperamento
- “ne” = Neuroticismo, – nivel de neuroticismo, nerviosismo, irritabilidad, seguridad en sí.
- Número de expresiones – Promedio de expresiones usadas en sus publicaciones de Twitter
- Categoría – Actividad laboral del usuario (actor, artista, etcétera.)
Compresión de datos
tixag_7) Asimismo tenemos la posibilidad de emplear clustering para comprimir imágenes con pérdida de información. La compresión, en este caso de ejemplo, se efectúa sobre la proporción de colores distintas usados.
Imaginemos que la imagen original emplea una paleta de 255 colores. Para comprimir la imagen, tenemos la posibilidad de elegir emplear menos bits por pixel, o sea, utilizar menos colores.
El algoritmo k-means es un procedimiento de agrupamiento muy empleado que toma cada punto de nuestro grupo de datos y también procura asignarle un conjunto o un clúster de manera iterativa. La meta es conceder cada punto a un conjunto dependiendo de la similitud de sus especificaciones.
Así, los pasos que prosigue el algoritmo k-means para hallar los conjuntos desde nuestros apuntes son: