Algoritmos de agrupación en clústeres: descripción general

Introducción a la agrupación en clústeres

Los métodos de agrupación en clústeres son uno de los métodos de AA sin supervisión más útiles. Estos métodos se utilizan para encontrar similitudes, así como los patrones de relación entre muestras de datos y luego agrupar esas muestras en grupos que tienen similitudes basadas en características.

La agrupación es importante porque determina la agrupación intrínseca entre los datos presentes sin etiquetar. Básicamente, hacen algunas suposiciones sobre puntos de datos para constituir su similitud. Cada suposición construirá conglomerados diferentes pero igualmente válidos.

Por ejemplo, a continuación se muestra el diagrama que muestra el sistema de agrupación agrupado el tipo similar de datos en diferentes agrupaciones:

Métodos de formación de conglomerados

No es necesario que los racimos se formen en forma esférica. Los siguientes son algunos otros métodos de formación de conglomerados:

Basado en densidad

En estos métodos, los grupos se forman como la región densa. La ventaja de estos métodos es que tienen una buena precisión y una buena capacidad para fusionar dos grupos. Ex. Agrupación espacial basada en densidad de aplicaciones con ruido (DBSCAN), puntos de ordenación para identificar la estructura de agrupación (OPTICS), etc.

De base jerárquica

En estos métodos, los clústeres se forman como una estructura de tipo de árbol basada en la jerarquía. Tienen dos categorías, a saber, aglomerativo (enfoque de abajo hacia arriba) y divisivo (enfoque de arriba hacia abajo). Ex. Agrupación mediante Representantes (CURE), Agrupación de reducción iterativa equilibrada mediante jerarquías (BIRCH), etc.

Fraccionamiento

En estos métodos, los grupos se forman dividiendo los objetos en k grupos. El número de clústeres será igual al número de particiones. Ex. K-means, agrupación de aplicaciones grandes basadas en búsquedas aleatorias (CLARANS).

Cuadrícula

En estos métodos, los grupos se forman como una estructura en forma de cuadrícula. La ventaja de estos métodos es que todas las operaciones de agrupamiento realizadas en estas cuadrículas son rápidas e independientes del número de objetos de datos. Ex. Cuadrícula de información estadística (STING), Agrupación en Quest (CLIQUE).

Medir el rendimiento de la agrupación en clústeres

Una de las consideraciones más importantes con respecto al modelo ML es evaluar su rendimiento o se puede decir la calidad del modelo. En el caso de los algoritmos de aprendizaje supervisado, evaluar la calidad de nuestro modelo es fácil porque ya tenemos etiquetas para cada ejemplo.

Por otro lado, en el caso de los algoritmos de aprendizaje no supervisados, no somos tan bendecidos porque tratamos con datos sin etiquetar. Pero todavía tenemos algunas métricas que le dan al practicante una idea sobre la ocurrencia del cambio en los clústeres según el algoritmo.

Antes de profundizar en dichas métricas, debemos comprender que estas métricas solo evalúan el rendimiento comparativo de los modelos entre sí en lugar de medir la validez de la predicción del modelo. Las siguientes son algunas de las métricas que podemos implementar en algoritmos de agrupación en clústeres para medir la calidad del modelo:

Análisis de silueta

Análisis de silueta utilizado para verificar la calidad del modelo de agrupamiento midiendo la distancia entre los grupos. Básicamente, nos proporciona una forma de evaluar los parámetros como el número de clústeres con la ayuda deSilhouette score. Esta puntuación mide qué tan cerca está cada punto en un grupo de puntos en los grupos vecinos.

Análisis de la puntuación de silueta

El rango de la puntuación de silueta es [-1, 1]. Su análisis es el siguiente:

  • +1 Score - Cerca de +1 Silhouette score indica que la muestra está lejos de su grupo vecino.

  • 0 Score - 0 Silhouette score indica que la muestra está en o muy cerca del límite de decisión que separa dos grupos vecinos.

  • -1 Score & menos -1 Silhouette score indica que las muestras se han asignado a grupos incorrectos.

El cálculo de la puntuación de Silhouette se puede realizar mediante la siguiente fórmula:

= (-) / (,)

Aquí, = distancia media a los puntos en el grupo más cercano

Y, = distancia media dentro del grupo a todos los puntos.

Índice Davis-Bouldin

El índice DB es otra buena métrica para realizar el análisis de algoritmos de agrupamiento. Con la ayuda del índice de base de datos, podemos comprender los siguientes puntos sobre el modelo de agrupación en clústeres:

  • ¿Si los grupos están bien espaciados entre sí o no?

  • ¿Qué tan densos son los racimos?

Podemos calcular el índice DB con la ayuda de la siguiente fórmula:

$$ DB = \ frac {1} {n} \ Displaystyle \ sum \ limits_ {i = 1} ^ n max_ {j \ neq {i}} \ left (\ frac {\ sigma_ {i} + \ sigma_ {j }} {d (c_ {i}, c_ {j})} \ derecha) $$

Aquí, = número de grupos

σ i = distancia promedio de todos los puntos en el grupo desde el centroide del grupo.

Cuanto menor sea el índice de base de datos, mejor será el modelo de agrupamiento.

Índice de Dunn

Funciona igual que el índice DB, pero hay puntos siguientes en los que ambos difieren:

  • El índice de Dunn considera solo el peor de los casos, es decir, los conglomerados que están muy juntos, mientras que el índice DB considera la dispersión y separación de todos los conglomerados en el modelo de conglomerado.

  • El índice Dunn aumenta a medida que aumenta el rendimiento, mientras que el índice DB mejora cuando los clústeres están bien espaciados y son densos.

Podemos calcular el índice de Dunn con la ayuda de la siguiente fórmula:

$$ D = \ frac {min_ {1 \ leq i <{j} \ leq {n}} P (i, j)} {mix_ {1 \ leq i <k \ leq n} q (k)} $$

Aquí, ,, = cada índice para conglomerados

= distancia entre grupos

q = distancia intra-grupo

Tipos de algoritmos de agrupación en clústeres de ML

Los siguientes son los algoritmos de agrupación en clústeres de ML más importantes y útiles:

Agrupación de K-means

Este algoritmo de agrupación calcula los centroides e itera hasta encontrar el centroide óptimo. Supone que ya se conoce el número de agrupaciones. También se le llama algoritmo de agrupamiento plano. El número de conglomerados identificados a partir de datos por algoritmo está representado por 'K' en K-medias.

Algoritmo de cambio medio

Es otro poderoso algoritmo de agrupamiento que se usa en el aprendizaje no supervisado. A diferencia de la agrupación de K-means, no hace ninguna suposición, por lo que es un algoritmo no paramétrico.

Agrupación jerárquica

Es otro algoritmo de aprendizaje no supervisado que se utiliza para agrupar los puntos de datos no etiquetados que tienen características similares.

Discutiremos todos estos algoritmos en detalle en los próximos capítulos.

Aplicaciones de la agrupación en clústeres

Podemos encontrar la agrupación en clústeres útil en las siguientes áreas:

Data summarization and compression- La agrupación en clústeres se usa ampliamente en las áreas en las que también requerimos resumen, compresión y reducción de datos. Los ejemplos son el procesamiento de imágenes y la cuantificación de vectores.

Collaborative systems and customer segmentation - Dado que la agrupación en clústeres se puede utilizar para encontrar productos similares o el mismo tipo de usuarios, se puede utilizar en el área de sistemas colaborativos y segmentación de clientes.

Serve as a key intermediate step for other data mining tasks- El análisis de conglomerados puede generar un resumen compacto de datos para clasificación, prueba, generación de hipótesis; por lo tanto, también sirve como un paso intermedio clave para otras tareas de minería de datos.

Trend detection in dynamic data - La agrupación en clústeres también se puede utilizar para la detección de tendencias en datos dinámicos creando varios clústeres de tendencias similares.

Social network analysis- La agrupación en clústeres se puede utilizar en el análisis de redes sociales. Los ejemplos van generando secuencias en imágenes, videos o audios.

Biological data analysis - La agrupación en clústeres también se puede utilizar para hacer grupos de imágenes, videos, por lo que se puede utilizar con éxito en el análisis de datos biológicos.