Documentos de Académico
Documentos de Profesional
Documentos de Cultura
K-MEANS
clustering
ORIGEN
K-means es un algoritmo de aprendizaje no supervisado
ya que no requiere la presencia de etiquetas o respuestas
predefinidas para realizar la agrupación de datos en
clusters. En cambio, el algoritmo busca estructurar los
datos de manera que los elementos de un mismo cluster
sean similares entre sí y diferentes de los elementos de
otros clusters. Utilizado para clasificar y agrupar datos
en conjuntos o clusters.
K-means fue propuesto originalmente por Stuart Lloyd en
1957 como una técnica de cuantización vectorial en el
contexto de la transmisión de señales de voz. Sin embargo,
su uso en el ámbito de la agrupación de datos y análisis de
datos se popularizó en la década de 1960 gracias a las
contribuciones de otros investigadores, como Thomas
Cover y Peter Hart.
1/20
ORIGEN
2/20
K-MEANS CLUSTERING
3/20
Ventajas:
● K-means es un algoritmo rápido y escalable, lo que lo hace adecuado para grandes conjuntos de
datos.
4/20
Limitaciones
● Sensibilidad a la inicialización: El resultado del K-means puede variar
significativamente dependiendo de la inicialización de los centroides. Si
los centroides iniciales se seleccionan de manera subóptima, el
algoritmo puede converger a un óptimo local en lugar del óptimo global.
5/20
● Sensibilidad a datos atípicos y ruido: El K-means puede ser
sensible a la presencia de datos atípicos o ruido en los datos, lo
que puede afectar la posición de los centroides y, por lo tanto,
la formación de los clústeres.
6/20
Escalabilidad
7/20
CASOS DE USO Segmentación por Comportamiento:
relacionar el carrito de compras de un
usuario, sus tiempos de acción e
información del perfil.
8/20
Funcionamiento del algoritmo
Es importante destacar que el algoritmo K-means busca minimizar la distancia entre cada punto de los datos y el centroide de su
cluster asignado, lo que se conoce como la suma de cuadrados dentro del cluster (SSW). El objetivo final del algoritmo es
encontrar los K centroides que minimicen la SSW total de todos los clusters.
9/20
FLUJO
¿Se mueve
algún objeto Fin
de grupo?
01 02 03 04
10/20
Fuente: https://repository.uaeh.edu.mx/scige/boletin/huejutla/n8/multimedia/p1/p1_1p.jpg
Ejemplos de clasificación
El algoritmo más común utiliza una técnica de
refinamiento iterativo. Debido a su ubicuidad, a
menudo se le llama "el algoritmo de k -medias";
también se le conoce como algoritmo de Lloyd ,
particularmente en la comunidad informática. A
veces también se lo denomina " k -means
ingenuo", porque existen alternativas mucho más
rápidas.
11/20
Demostración del algoritmo estándar
12/20
Demostración:
El algoritmo consta de tres pasos:
1. Inicialización: una vez escogido el número de grupos, k, se establecen k
centroides en el espacio de los datos, por ejemplo, escogiendo
aleatoriamente.
2. Asignación objetos a los centroides: cada objeto de los datos es asignado a
su centroide más cercano.
3. Actualización centroides: se actualiza la posición del centroide de cada
grupo tomando como nuevo centroide la posición del promedio de los
objetos pertenecientes a dicho grupo.
Se repiten los pasos 2 y 3 hasta que los centroides no se mueven, o se mueven por debajo de
una distancia umbral en cada paso.
El algoritmo k-means resuelve un problema de optimización, siendo la función a optimizar
(minimizar) la suma de las distancias cuadráticas de cada objeto al centroide de su cluster.
Los objetos se representan con vectores reales de d dimensiones
y el algoritmo k-means construye K grupos donde se minimiza la suma de distancias de los
objetos, dentro de cada grupo
13/20
Usos actuales del algoritmo
14/20
Facebook utiliza K-means para la segmentación de
audiencia en su plataforma de publicidad en línea.
Ayuda a agrupar a los usuarios en diferentes segmentos
basados en sus intereses, comportamientos y
características demográficas para entregar anuncios
personalizados.
15/20
Es importante tener en cuenta que muchas empresas utilizan técnicas de clustering como
parte de un conjunto más amplio de herramientas y algoritmos de análisis de datos, y la
implementación específica puede variar en función de las necesidades y objetivos de cada
empresa.
16/20
FUNCIONAMIENTO EN JAVA
17/20
FUNCIONAMIENTO EN PYTHON
18/20
CONCLUCIÓN
En resumen, el algoritmo K-means es una técnica simple pero efectiva para la agrupación de
datos en clusters. Es rápido y escalable, lo que lo hace adecuado para grandes conjuntos de
datos, y puede ser utilizado en diversos campos para la identificación de patrones y la
exploración de datos. Sin embargo, su rendimiento depende en gran medida de la elección
adecuada del número de clusters y de la inicialización aleatoria de los centroides, lo que
puede resultar en una solución subóptima en algunos casos.
19/20
IA
¡Gracias!
K-MEANS
Código en java
INTEGRANTES:
Bernardo Arturo Garcia Espinosa 211850715
Gustavo De Jesus Quintero Cerpa 219294307
Oscar Abraham Carrillo López 219294188
Jorge Ivan Nuñez Baez 217291866
Oscar Beltran Villegas 216794422
Miguel angel castro Castro 213543682