¿Cuáles son los algoritmos de agrupamiento más populares?

Aquí hay una lista:

La familia K-Means:

  • K-medias
  • K-Means ++ (solo cambia cómo inicializar los centroides)
  • K-medias en línea
  • K-medias esféricas
  • K-medoides
  • Kernel K-Means
  • Modos K
  • Bisección de K-medias
  • Fuzzy C-Means

K-Means es el rey de los algoritmos de agrupamiento y tiene un millón de variantes. La versión en línea puede ejecutarse para Big Data y transmisiones, la versión esférica es buena para el texto ya que se basa en la distancia angular en lugar de la distancia euclidiana. Fuzzy C-Means es la versión suave de K-Means. Finalmente, Kernel K-Means se puede usar cuando los grupos tienen formas que no son hiperelípticas (en otras palabras, formas extrañas).

Agrupación jerárquica:

  • Agrupación jerárquica
  • CURA

HC es un algoritmo de agrupación muy importante porque produce resultados excelentes para conjuntos de datos pequeños, ya que el rendimiento de conjuntos de datos muy grandes puede ser problemático y luego puede usar CURE o una aproximación para calcular distancias entre grupos como LSH.

Agrupación espectral:

Esto es lo mismo que Kernel K-Means. Funciona creando un gráfico a partir de datos y luego agrupando el espectro propio del gráfico laplaciano usando K-Means. Esto funciona cuando las formas del clúster son extrañas.

Methotds basados ​​en densidad:

  • DBScan
  • HDBscan

Estos algoritmos crean grupos que identifican áreas del espacio donde la densidad de puntos es alta. Pueden determinar automáticamente el número de clústeres y también pueden detectar valores atípicos, puntos que no pertenecen a ningún clúster. DBScan solo funciona cuando todos los clústeres tienen aproximadamente la misma densidad, HDBscan corrige este problema. ¡Realmente me gusta HDBScan!

Agrupación media de turnos:

  • Agrupación media de turnos

El cambio medio es un algoritmo hermoso, pero puede tener problemas de rendimiento para datos masivos, hace que cada punto converja a un centroide para que pueda detectar automáticamente el número de grupos en el conjunto de datos.

Biclustering:

  • Co-agrupamiento espectral

Bi-clustering significa agrupar las filas y columnas de la matriz al mismo tiempo, por lo que agrupa los puntos y atributos juntos. Esto es útil para el texto cuando tiene filas como documentos y columnas como términos o viceversa. Los grupos resultantes contienen un grupo de documentos y un grupo de términos, el último puede usarse para comprender los criterios que hicieron que los documentos se agrupen.

NMF:

  • Zillion NMF variantes

Se puede usar una factorización de matriz no negativa para agrupar puntos, simplemente factorizamos la matriz usando una aproximación de rango-k donde k es el número de grupos. Como resultado, obtenemos una matriz que relaciona puntos con clústeres y otra que relaciona clústeres con entidades.

MCL:

  • MCL

Un algoritmo popular para agrupar nodos en gráficos, utiliza una matriz de Markov y un proceso simple para identificar automáticamente los grupos, no necesita saber de antemano el número de grupos. Se puede adaptar fácilmente a cualquier conjunto de datos creando la matriz basada en la similitud de datos

Agrupación en subespacio:

  • SSC y otros

La idea aquí es que nuestros datos son la intersección de varios subespacios, por lo que debemos agruparlos en función de estos diferentes subespacios, incluso si no los conocemos.

tl; dr: K-Means 🙂

Para agregar más:

More Interesting

¿Qué debo hacer para que los cursos de aprendizaje automático sean más divertidos y pospongan las cosas?

Cómo visualizar Kernel CNN con una profundidad mayor de 3

¿Es el número de nodos en una capa oculta más que la capa de entrada? ¿Es esto un problema? ¿Qué se puede aprender en tales redes neuronales?

¿Por qué el embolsado es más preciso que solo mirar todo el conjunto de datos y tomar el promedio?

¿Cómo se puede aplicar el aprendizaje automático en los campos de la ingeniería química y de procesos?

¿Qué es más exigente, desarrollo de aplicaciones, aprendizaje automático, aprendizaje profundo, inteligencia artificial o IOT?

¿Cuál es su proceso para diseñar funciones de pérdida para problemas de Machine Learning?

¿Cuáles son los métodos de implementación con calidad de producción para los modelos de aprendizaje automático?

¿Cuál ha sido la experiencia de la gente con RapidMiner?

¿Qué significa el término 'soft-max' en el contexto del aprendizaje automático?

Si la tasa de predicción de un algoritmo de aprendizaje automático mantiene porcentajes bajos (50% a 60%) en un conjunto de datos, ¿cómo puedo mejorar?

¿Cuáles son los pensamientos de Yoshua Bengio sobre los modelos gráficos probabilísticos?

¿Es C ++ un buen lenguaje para el aprendizaje automático?

Cómo saber si una startup tecnológica que ofrece soluciones empresariales que utilizan el aprendizaje exclusivo en profundidad está tratando de estafar a mi empresa

¿Cuáles son las ventajas y desventajas de las API de servicios cognitivos de Microsoft?