¿Qué es el agrupamiento en clústeres?

Cuando intentes aprender algo, por ejemplo, música, un enfoque podría ser buscar grupos o colecciones significativos. Podrías organizar la música por género, mientras que tu amigo podría organizarla por década. La manera en que agrupas los elementos te ayuda a comprenderlos como piezas musicales individuales. Es posible que descubras que tienes una gran afinidad por el punk rock y lo desglose aún más en diferentes enfoques o música desde diferentes ubicaciones. Por otro lado, tu amigo podría observar la música de la década de los ochenta y comprender cómo la influencia de la climatología sociopolítica influía en los géneros de la época. En ambos casos, tú y tu amigo han aprendido algo interesante sobre música, a pesar de que hayas adoptado diferentes enfoques.

En el aprendizaje automático, a menudo también agrupamos ejemplos como primer paso para comprender un tema (conjunto de datos) en un sistema de aprendizaje automático. La agrupación de ejemplos sin etiqueta se denomina agrupamiento en clústeres.

Como los ejemplos no tienen etiquetas, el agrupamiento en clústeres se basa en el aprendizaje automático no supervisado. Si los ejemplos están etiquetados, el agrupamiento en clústeres se convierte en clasificación. Para obtener un análisis más detallado de los métodos supervisados y no supervisados, consulta Introducción al enmarcado de problemas de aprendizaje automático.

Un gráfico que muestra tres clústeres
Figura 1: Ejemplos sin etiqueta agrupados en tres clústeres.

Antes de agrupar ejemplos similares, debes encontrar ejemplos similares. Puedes medir la similitud entre ejemplos si combinas los datos de atributos de los ejemplos en una métrica, llamada medida de similitud. Cuando uno o dos atributos definen cada ejemplo, es fácil medir la similitud. Por ejemplo, puedes buscar libros similares de sus autores. A medida que aumenta la cantidad de atributos, la creación de una medida de similitud se vuelve más compleja. Más adelante veremos cómo crear una medida de similitud en diferentes situaciones.

¿Cuáles son los usos del agrupamiento en clústeres?

El agrupamiento en clústeres tiene innumerables usos en una variedad de industrias. Algunas aplicaciones comunes para el agrupamiento en clústeres son las siguientes:

  • segmentación de mercado
  • análisis de redes sociales
  • agrupación de resultados de la búsqueda
  • diagnóstico por imágenes
  • segmentación de imágenes
  • detección de anomalías

Después del agrupamiento en clústeres, se asigna un número llamado ID de clúster a cada clúster. Ahora puedes condensar todo el conjunto de atributos de un ejemplo en su ID de clúster. Representar un ejemplo complejo con un ID de clúster simple hace que la agrupación en clústeres sea potente. Si extiendes la idea, los datos del agrupamiento en clústeres pueden simplificar grandes conjuntos de datos.

Por ejemplo, puedes agrupar elementos según diferentes funciones, como se muestra en los siguientes ejemplos:

Ejemplos
  • Agrupar estrellas por brillo.
  • Agrupa organismos por información genética en una taxonomía.
  • Agrupa documentos por tema.

Los sistemas de aprendizaje automático pueden usar los ID de clúster para simplificar el procesamiento de grandes conjuntos de datos. Por lo tanto, el resultado del agrupamiento en clústeres sirve como datos de atributos para sistemas de AA descendentes.

En Google, el agrupamiento en clústeres se usa para la generalización, la compresión de datos y la preservación de la privacidad en productos como los videos de YouTube, las apps de Play y las pistas de música.

Generalización

Cuando a algunos ejemplos de un clúster les faltan datos de atributos, puedes inferir los datos que faltan de otros ejemplos del clúster.

Ejemplo
Los videos menos populares se pueden agrupar con otros más populares para mejorar las recomendaciones.

Compresión de datos

Como se analizó, los datos de atributos de todos los ejemplos en un clúster se pueden reemplazar por el ID del clúster relevante. Este reemplazo simplifica los datos de funciones y ahorra almacenamiento. Estos beneficios se vuelven importantes cuando se escalan a conjuntos de datos grandes. Además, los sistemas de aprendizaje automático pueden usar el ID del clúster como entrada en lugar de todo el conjunto de datos de atributos. Reducir la complejidad de los datos de entrada hace que el modelo de AA sea más simple y rápido de entrenar.

Ejemplo
Los datos de funciones de un solo video de YouTube pueden incluir lo siguiente:
  • datos sobre la ubicación, la hora y los datos demográficos
  • Datos de comentarios con marcas de tiempo, ID de usuario y texto
  • etiquetas de video
La agrupación en clústeres de videos de YouTube te permite reemplazar este conjunto de funciones por un solo ID de clúster, lo que comprime tus datos.

Preservación de la privacidad

Puedes conservar la privacidad si agrupas a los usuarios en clústeres y asocias los datos de los usuarios con ID de clústeres en lugar de usuarios específicos. Para garantizar que no puedas asociar los datos del usuario con un usuario específico, el clúster debe agrupar una cantidad suficiente de usuarios.

Ejemplo
Supongamos que deseas agregar a tu modelo el historial de video para los usuarios de YouTube. En lugar de depender del ID de usuario, puedes agrupar a los usuarios y usar el ID de clúster. Ahora, tu modelo no puede asociar el historial de video con un usuario específico, sino solo con un ID de clúster que representa un gran grupo de usuarios.