1. Gestión del
conocimiento
SESION 6 : Sociedad de la información, conocimiento e
Inteligencia Artificial
DOCENTE: ING. JULIO CÉSAR MORALES LEÓN
HUACHO - 2022
2. Conceptos
CLUSTERING
Método de aprendizaje no supervisado que permite agrupar objetos en
clústeres o agrupamientos, cuyos miembros son similares entre sí
entre sí y diferentes a los objetos que
CLÚSTER
Colección de objetos similares
pertenecen a otros clústeres
3. Conceptos
► Aplicaciones prácticas del clústering
– Agrupación de objetos homogéneos
– Detección de casos anómalos
Etiquetar
– Descubrimiento de grupos con el fin de clasificar
C1
C2
C3
CLASIFICACIÓN
ANÁLISIS
CONCLUSIONES SOBRE EL CLÚSTER,
OBJETOS REPRESENTATIVOS
OBJETOS ANÓMALOS
PREDICCIÓN
DETECCIÓN
4. Tipos de Algoritmos de Clustering
► Agrupamientos exclusivos: Métodos que particionan los datos creando un
número k determinado de clústeres. Los objetos únicamente pueden pertenecer a
un clúster
► Agrupamientos jerárquicos: Los clústeres se dividen/agrupan en clústeres
iterativamente formando una estructura jerárquica
► Agrupamientos probabilistas: Los clústeres se generan mediante un método
probabilístico
► Agrupamientos solapados: Los objetos se agrupan a través de conjuntos
difusos, pudiendo pertenecer a uno o más clústeres con diferentes grados de
pertenencia
5. Medidas de distancias entre objetos
► Permiten función de la «cercanía» incluir los objetos en el mismo
clúster o en clústeres separados. Ej. Distancia euclídea
6. Medidas de distancia entre objetos
► Linkage measures (medidas de conectividad):
– Enlace simple:
similitud de los dos puntos más cercanos
– Enlace completo:
similitud de los dos puntos más lejanos
– Enlace promedio:
distancia media entre cualquier punto de un clúster
con cualquier punto de otro clúster
7. Agrupamiento Exclusivo. El algoritmo K-means
► Algoritmos de agrupamiento exclusivo
– Dividen el conjunto de objetos en agrupaciones exclusivas de objetos en
base a una medida de distancia y teniendo el número de clústers que
se desea generar
► Algoritmo K-means
– PASO 1: Seleccionar (por ejemplo de forma aleatoria) k objetos
para representar los centroides de cada clúster
– PASO 2: Asignar el resto de objetos al clúster cuyo centroide es más similar
(el que está más cerca utilizando típicamente la medida de distancia Euclídea)
– PASO 3: Para cada clúster, recalcular la posición del centroide
– Repetir los pasos 2-3 hasta que las posiciones de los centroides no varíen
Fuente: Técnicas de Inteligencia Artificial – Óscar García 7
8. Agrupamiento Exclusivo: El algoritmo k-means
► Ejemplo K-means. Algoritmo de Lloyd
K=3
• INICIO: Elegimos 3
centroides del conjunto
de datos.
• Se asignan los puntos al
centroide más cercano,
formando tres clusters.
Recalculamos los
centroides, que pasan a
ser la media de los
puntos de su clúster
correspondiente.
Fuente: http://www.learnbymarketing.com/methods/k-means-clustering/
9. Agrupamiento Exclusivo: El algoritmo k-means
► Ejemplo K-means. Algoritmo de Lloyd
• Se realizan varias
iteraciones de la misma
forma hasta llegar a la
convergencia: momento
en el que entre dos
asignaciones ningún
punto cambia de
clúster.
Iteración #3
Fuente: http://www.learnbymarketing.com/methods/k-means-clustering/
Iteración #6
Iteración #9 Convergencia
10. Agrupamiento Exclusivo: El algoritmo k-means
► Ejemplo de K-means en weka
► Ventajas de K-means
– Simple
– Escalable
11. Agrupamiento Exclusivo: El algoritmo k-means
► Limitaciones y dificultades de K-means
– Selección del valor adecuado de k
– Sensibilidad al posicionamiento inicial de los centroides
ejecutar varias veces para diversos valores de k y diferentes
posicionamientos iniciales de los centroides
– Solo trabaja con datos de valores reales
mapear los valores nominales a valores numéricos
– Resultados mediocres si los clusters no presentan una forma esférica o
si el diámetro no es similar
► Sin embargo puede dar buenos resultados para algunos problemas
Fuente: https://en.wikipedia.org/wiki/
File:ClusterAnalysis_Mouse.svg
12. Agrupamiento Jerárquico: Algoritmo Aglomerativo
► Jerarquías de clústeres: facilitan el análisis y la visualización de
los datos
► Tipos de agrupamiento jerárquico:
– Aglomerativos: los
clústeres se van
agrupando entre sí,
generando cada vez
clústeres de un número
mayor de elementos
– Divisorios: los clústeres
se van particionando,
dando lugar cada vez a
clústeres con un menor
número de elementos
13. Agrupamiento Jerárquico: Algoritmo Aglomerativo
► Dendograma:
– Representación de la estructura jerárquica de los clústeres en
forma de árbol
– Conforme el clúster tiene un mayor número de objetos (al
subir de nivel), la similitud entre sus objetos disminuye
14. Agrupamiento Jerárquico: Algoritmo Aglomerativo
► Los algoritmos divisorios son menos frecuentes que los
aglomerativos
► Decisión crucial: en qué punto dividir o conglomerar
► Utilidad de la categoría: medida de la calidad de las particiones de
los objetos en clústeres que se utiliza para tomar la decisión de
dividir o conglomerar
► Limitaciones de los métodos de clustering jerárquico
– No escalan bien
– No dan marcha atrás con lo cual se podría no encontrar la
solución óptima
16. Agrupamiento Jerárquico: Algoritmo Aglomerativo
► Algoritmo jerárquico aglomerativo básico utilizando enlace-sencillo
– Matriz de similitud o matriz de distancias entre los clústeres
– Lógica del algoritmo
1. Generar a nivel 0 un clúster por cada uno de los Npuntos del
conjunto i n i c i a l de instancias
2. Buscar e l par de clústeres CA y CBmenos distantes
3. Unir los clústeres CA y CBen uno solo
4. Eliminar de l a matriz de proximidad las f i l a s y columnas
que corresponden a los clústeres CAy CB. Añadir una columna
y una f i l a para e l nuevo clúster generado. Recalcular las
distancias mediante l a medida de enlace sencillo.
5. Si todos los objetos están en un único clúster, f i n a l i z a r. En
caso contrario continuar en e l paso 2.
17. Agrupamiento Jerárquico: Algoritmo Aglomerativo
► Ejemplo: Algoritmo jerárquico aglomerativo
– Datos bidimensionales
– Medida de distancia: enlace sencillo
– Matriz de similitud (distancias entre los datos)
18. Agrupamiento Jerárquico: Algoritmo Aglomerativo
► Ejemplo: Algoritmo jerárquico aglomerativo
– 1. Generar a n ivel 0 un clúste r por cada uno de lo s
N puntos del conjunto i n i c i a l de instancias
– 2. Buscar e l par de clústeres CA y CB menos distantes
CA= u
CB= w
19. Agrupamiento Jerárquico: Algoritmo Aglomerativo
► Ejemplo: Algoritmo jerárquico aglomerativo
– 3. Unir los clústeres CA y CB en uno solo
CA = u
CB = w
Cu_w
20. Agrupamiento Jerárquico: Algoritmo Aglomerativo
► Ejemplo: Algoritmo jerárquico aglomerativo
• – 4. Eliminar de la matriz de proximidad las
f i l a s y columnas que corresponden a los
clústeres CA yCB. Añadir una columna yuna f i l a
para e l nuevo clúster generado. Recalcular las
distancias mediante l a medida de enlace sencillo.
21. Agrupamiento Jerárquico: Algoritmo Aglomerativo
► Ejemplo: Algoritmo jerárquico aglomerativo
– 5. Si todoslos objetos están en un único
clúster, f i n a li z a r. En casocontrar i o contin uar
en e l paso 2.
– 2. Buscar e l par de clústeres CA y CB menos distantes
CA= s
CB = Cu_w
22. Agrupamiento Jerárquico: Algoritmo Aglomerativo
CA= s
CB = Cu_w
► Ejemplo: Algoritmo jerárquico aglomerativo
– 3. Unir los clústeres CA y CB en uno solo
Cu_w_s
23. Agrupamiento Jerárquico: Algoritmo Aglomerativo
► Ejemplo: Algoritmo jerárquico aglomerativo
• – 4. Eliminar de la matriz de proximidad las
f i l a s y columnas que corresponden a los
clústeres CA yCB. Añadir una columna yuna f i l a
para e l nuevo clúster generado. Recalcular las
distancias mediante l a medida de enlace sen c illo.
24. Agrupamiento Jerárquico: Algoritmo Aglomerativo
► Ejemplo: Algoritmo jerárquico aglomerativo
– 5. Si todoslos objetos están en un único
clúster, f i n a li z a r. En casocontrar i o contin uar
en e l paso 2.
– 2. Buscar e l par de clústeres CA y CB menos distantes
CA= t
CB = Cu_w_s
25. Agrupamiento Jerárquico: Algoritmo Aglomerativo
CA= t
CB = Cu_w_s
► Ejemplo: Algoritmo jerárquico aglomerativo
– 3. Unir los clústeres CA y CB en uno solo
Cu_w_s_t
26. Agrupamiento Jerárquico: Algoritmo Aglomerativo
► Ejemplo: Algoritmo jerárquico aglomerativo
• – 4. Eliminar de la matriz de proximidad las
f i l a s y columnas que corresponden a los
clústeres CA yCB. Añadir una columna yuna f i l a
para e l nuevo clúster generado. Recalcular las
distancias mediante l a medida de enlace sen c illo.
– 5. Si todoslosobjetos estánen un único clúster,
f i n a li z a r. En caso contrar i o contin uar en e l paso 2.
FIN
27. Agrupamiento Probabilístico: Algoritmo EM
► Algoritmos basados en probabilidad
– Indican la probabilidad de que las instancias pertenezcan a cada
clúster
• Basados en el modelo estadístico de mezclas finitas
• Mezcla: conjunto de k distribuciones de probabilidad que
representan k clústeres.
• Las distribuciones indican la probabilidad de que una instancia en
el clúster tenga unos determinados valores de atributos
– Distribución de la población entre los clústeres: no todos los clústeres
son igual de probables, no tienen por qué tener el mismo número de
individuos por lo que habría que reflejar cómo de distribuye la
población entre los clústeres.
28. Agrupamiento Probabilístico: Algoritmo EM
► Caso sencillo de agrupamiento probabilista
– Un único atributo
– Tres clústeres
– Distribución probabilidad: probabilidad de que las instancias
pertenezcan a cada clúster modeladas como una distribución
normal
• Clúster A: μA y σA
• Clúster B: μB y σB
• Clúster C: μC y σC
– Distribución de la población: Las muestras se distribuyen en
los clústeres con las probabilidades pA, pB y pC. Probabilidad
para una muestra de pertenecer a un clúster.
– Objetivo: Modelar los clústeres determinando los valores de
μA, σA, μB, σB, μC, σC, pA, pB ypC.
Fuente: https://commons.wikimedia.org/
wiki/File:Gaussian_distribution.svg
29. Agrupamiento Probabilístico: Algoritmo EM
► Algoritmo EM (Expectation Maximization)
– Esperanza (expectation): Probabilidad de pertenencia de las
instancias a los clústeres de acuerdo a los parámetros de los
clústeres probabilísticos
– Maximización (maximization): determinar los nuevos parámetros
que maximizan la verosimilitud esperada (expected likelihood)
► Etapas del algoritmo:
– Etapa 0: Seleccionar valores posibles de los parámetros que
modelan los clústeres
– Etapa 1: Calcular las probabilidades de que cada instancia esté en
un clúster (utilizando los valores hipotéticos de los parámetros de
los clústeres)
– Etapa 2: Reestimar los parámetros que modelan los clústeres
utilizando las probabilidades de pertenencia. Se determinan los
nuevos parámetros que maximizan la verosimilitud esperada
– Repetir las etapas 1 y 2.
30. Agrupamiento Probabilístico: Algoritmo EM
► Ventajas del clústering probabilístico
– Efectivo ya que es más general que otros métodos
– El algoritmo EM es simple
► Limitaciones del clústering probabilístico
– Puede converger a un óptimo local y no global
– Podría llegar a tener alto coste computacional si el número de
distribuciones probabilísticas que hay que modelar es alto
Fuente: https://en.wikipedia.org/wiki/
File:ClusterAnalysis_Mouse.svg