Resultados adversos de los criterios de agrupamiento


8

He llevado a cabo una agrupación de puntos de coordenadas (longitud, latitud) y he encontrado resultados sorprendentes y adversos de los criterios de agrupación para el número óptimo de agrupaciones. Los criterios se toman del clusterCrit()paquete. Los puntos que estoy tratando de agrupar en una parcela (las características geográficas del conjunto de datos son claramente visibles):

Gráfico de todas las observaciones

El procedimiento completo fue el siguiente:

  1. Realizó agrupación jerárquica en 10k puntos y guardó medoides para 2: 150 agrupaciones.
  2. Tomó los medoides de (1) como semillas para agrupar kmeans de 163k observaciones.
  3. Se verificaron 6 criterios de agrupación diferentes para obtener el número óptimo de agrupaciones.

Solo 2 criterios de agrupamiento dieron resultados que tienen sentido para mí: los criterios de Silhouette y Davies-Bouldin. Para ambos, uno debe buscar el máximo en la trama. Parece que ambos dan la respuesta "22 Clusters es un buen número". Para los gráficos a continuación: en el eje x es el número de grupos y en el eje y el valor del criterio, perdón por las descripciones incorrectas en la imagen. Silhouette y Davies-Bouldin respectivamente:

Parcela de criterio de Silhoette Parcela de criterio de Davies-Bouldin

Ahora veamos los valores de Calinski-Harabasz y Log_SS. El máximo se encuentra en la trama. El gráfico indica que cuanto mayor sea el valor, mejor será la agrupación. Un crecimiento tan constante es bastante sorprendente, creo que 150 grupos ya es un número bastante alto. Debajo de las parcelas para los valores de Calinski-Harabasz y Log_SS respectivamente.

Parcela de criterio de Calinski-Harabasz Gráfico de criterios Log_SS

Ahora, para la parte más sorprendente, los dos últimos criterios. Para el Ball-Hall se desea la mayor diferencia entre dos agrupaciones y para Ratkowsky-Lance el máximo. Tramas de Ball-Hall y Ratkowsky-Lance respectivamente:

Trama de criterio de Ball-Hall Trama de criterio de Ratkowsky-Lance

Los dos últimos criterios dan respuestas completamente adversas (cuanto menor sea el número de grupos, mejor) que los criterios tercero y cuarto. ¿Cómo es eso posible? Para mí, parece que solo los dos primeros criterios fueron capaces de dar sentido a la agrupación. Un ancho de silueta de alrededor de 0.6 no es tan malo. ¿Debería saltear los indicadores que dan respuestas extrañas y creer en los que dan respuestas razonables?

Editar: Parcela para 22 grupos22 solución de clúster


Editar

Puede ver que los datos están bastante bien agrupados en 22 grupos, por lo que los criterios que indican que debe elegir 2 grupos parecen tener debilidades, la heurística no funciona correctamente. Está bien cuando puedo trazar los datos o cuando los datos se pueden empaquetar en menos de 4 componentes principales y luego se trazan. ¿Pero si no? ¿Cómo debo elegir el número de clústeres que no sea mediante el uso de un criterio? He visto pruebas que indican que Calinski y Ratkowsky son criterios muy buenos y aún así dan resultados adversos para un conjunto de datos aparentemente fácil. Entonces, tal vez la pregunta no debería ser "¿por qué los resultados son diferentes" sino "cuánto podemos confiar en esos criterios?".

¿Por qué una métrica euclidiana no es buena? No estoy realmente interesado en la distancia real, exacta entre ellos. Entiendo que la distancia real es esférica, pero para todos los puntos A, B, C, D si es esférica (A, B)> esférica (C, D) que también euclidiana (A, B)> euclidiana (C, D) que debería ser suficiente para una métrica de agrupamiento.

¿Por qué quiero agrupar esos puntos? Quiero construir un modelo predictivo y hay mucha información contenida en la ubicación de cada observación. Para cada observación también tengo ciudades y regiones. Pero hay demasiadas ciudades diferentes y no quiero hacer, por ejemplo, 5000 variables de factores; Por lo tanto, pensé en agruparlos por coordenadas. Funcionó bastante bien ya que las densidades en diferentes regiones son diferentes y el algoritmo lo encontró, 22 variables de factores estarían bien. También podría juzgar la bondad de la agrupación por los resultados del modelo predictivo, pero no estoy seguro de si esto sería sabio computacionalmente. Gracias por los nuevos algoritmos, definitivamente los probaré si funcionan rápidamente en grandes conjuntos de datos.


¿Puede visualizar el resultado de agrupación en 22 agrupaciones, por favor?
HA SALIDO - Anony-Mousse

¿Qué método usaste para la agrupación jerárquica? ¿Eso puede afectar sustancialmente los resultados que obtienes?
Hong Ooi

Helo Hong, he usado el método "diana" con la distancia euclidiana, que debería ser una distancia razonable para las coordenadas. Además, la solución de 22 clústeres trazada me parece bastante razonable.
Karol Przybylak

Gracias por su respuesta y su consejo Anony-Mousse. Mira mi edición.
Karol Przybylak

Bueno, podrías actualizar tu pregunta. compare el resultado para decir agnes con 15 grupos y agnes con 30 grupos. Si bien los grupos son convexos, no estoy convencido de que esto sea todo lo que necesita para tener grupos "agradables". ¿Cuándo es bueno un resultado de agrupamiento? Hay millones de resultados convexos posibles.
HA SALIDO - Anony-Mousse

Respuestas:


6

La pregunta que debes hacerte es esta: ¿qué quieres lograr ?

Todos estos criterios no son más que heurísticas . Usted juzga el resultado de una técnica de optimización matemática por otra función matemática. En realidad, esto no mide si el resultado es bueno , sino solo si los datos se ajustan a ciertos supuestos.

Ahora, dado que tiene un conjunto de datos global en latitud y longitud, la distancia euclidiana ya no es una buena opción. Sin embargo, algunos de estos criterios y algoritmos (k-significa ...) necesitan esta función de distancia inapropiada.

Algunas cosas que debes probar:

  • Mejores algoritmos. ¡Pruebe DBSCAN y OPTICS , que no requieren que especifique el número de clústeres! Tienen otros parámetros, pero, por ejemplo, la distancia y el número mínimo de puntos deberían ser mucho más fáciles de configurar para este conjunto de datos.
  • Visualización. En lugar de mirar estadísticas de alguna medida matemática, ¡elija el mejor resultado mediante inspección visual ! En primer lugar, visualice los grupos para ver si el resultado tiene algún sentido.
  • Considera lo que quieres encontrar. Un criterio matemático será feliz si separas los continentes. Pero no necesita un algoritmo para hacer esto, ¡los continentes ya son bastante conocidos! Entonces, ¿ qué quieres descubrir?
  • Eliminar los valores atípicos. Ambos k-medias y agrupamiento jerárquico no les gusta mucho que los valores extremos, y es posible que tenga que aumentar el número de grupos para encontrar por el número de valores atípicos en los datos (DBSCAN y Óptica mencionados anteriormente son mucho más robusto hacia valores atípicos).
  • Función de distancia más apropiada. La tierra es aproximadamente esférica, use la distancia del gran círculo en lugar de la distancia euclidiana.
  • Intente convertir los datos en un sistema de coordenadas ECEF 3D , si necesita utilizar la distancia euclidiana. Esto generará centros de conglomerados que están debajo de la superficie terrestre, pero permitirá agrupar Alaska, y la distancia euclidiana es al menos un límite inferior de la verdadera distancia de superficie.

Eche un vistazo, por ejemplo, a esta pregunta / respuesta relacionada en stackoverflow .


0

La longitud y la latitud son ángulos que definen puntos en una esfera, por lo que probablemente debería mirar la Gran Distancia del Círculo u otras distancias geodésicas entre puntos en lugar de la distancia Euclidiana.

Además, como se ha mencionado, ciertos algoritmos de agrupación explícitamente basados ​​en modelos, como los modelos de mezcla, y los basados ​​implícitamente en modelos, como K-means, hacen suposiciones sobre la forma y el tamaño de los grupos. En esta situación, ¿espera que sus datos se ajusten a un modelo subyacente? Si no, entonces los métodos basados ​​en la densidad que no hacen suposiciones sobre la forma / tamaño de los grupos podrían ser más apropiados.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.