2010-10-27 9 views
16

¿Alguien ha intentado aplicar un suavizador a la métrica de evaluación antes de aplicar el método L para determinar el número de clústeres k-means en un conjunto de datos? Si es así, ¿mejoró los resultados? ¿O permitir un menor número de ensayos con k-medias y, por lo tanto, un aumento de la velocidad mucho mayor? ¿Qué algoritmo/método de suavizado usaste?Uso de un más suave con el Método L para determinar el número de clústeres de K-Means

El "L-Method" se detalla en: Determining the Number of Clusters/Segments in Hierarchical Clustering/Segmentation Algorithms, Salvador & Chan

Esto calcula la métrica de evaluación para una gama de diferentes recuentos de racimo juicio. Luego, para encontrar la rodilla (que se produce para un número óptimo de racimos), se ajustan dos líneas mediante regresión lineal. Se aplica un proceso iterativo simple para mejorar el ajuste de rodilla: esto usa los cálculos de métrica de evaluación existentes y no requiere ninguna repetición de los k-means.

Para la métrica de evaluación, estoy usando un recíproco de una versión simplificada del índice de Dunns. Simplificado para la velocidad (básicamente, mi diámetro y los cálculos entre clusters están simplificados). El recíproco es para que el índice funcione en la dirección correcta (es decir, más bajo generalmente es mejor).

K-means es un algoritmo estocástico, por lo que generalmente se ejecuta varias veces y con la mejor opción elegida. Esto funciona bastante bien, pero cuando haces esto para 1..N clusters, el tiempo se suma rápidamente. Por lo tanto, me interesa mantener el número de carreras bajo control. El tiempo total de procesamiento puede determinar si mi implementación es práctica o no: puedo abandonar esta funcionalidad si no puedo acelerarla.

+0

Pensamiento al respecto, no creo que un suavizado uniforme (es decir, promedio corriente) tenga ningún efecto notable, porque el Método L entonces se ajusta a líneas usando mínimos cuadrados. Sin embargo, un suavizador en forma como un gaussiano podría comportarse de manera diferente. Voy a intentar implementar un Gaussiano de tamaño moderado (la mitad del ancho de aproximadamente 6-10 me parece correcto). Va a ser una prueba cualitativa. – winwaed

+0

Creo que este será un buen proyecto de investigación de tamaño moderado. Si hay estudiantes universitarios que buscan un proyecto, me interesaría colaborar/asesorar/co-autor. Tal proyecto debería realizar comparaciones cuantitativas y ser más general que mi aplicación específica. Agregaré la etiqueta de ideas de proyecto a la pregunta. – winwaed

+0

Tengo algunos resultados muy difíciles, no científicos y cualitativos: probé filtros gaussianos de HalfWidthHalfHeight de 5 y 3. En ambos casos, aumentó la cantidad estimada de clusters, pero el error estimado disminuyó (ejecuté pruebas de alrededor de 8-10 ejecuciones con cada configuración). Esto es información del mundo real, y un aumento en la estimación es plausible. Así que creo que esto proporciona lo suficiente para garantizar un mini proyecto de investigación con datos controlados y en mejores condiciones. – winwaed

Respuesta

5

He pedido similar question en el pasado aquí en SO. Mi pregunta era acerca de encontrar una forma consistente de encontrar la rodilla en la forma de L que describiste. Las curvas en cuestión representaban el equilibrio entre la complejidad y una medida de ajuste del modelo.

El best solution era encontrar el punto con la distancia máxima d de acuerdo con la figura que se muestra:

alt text

Nota: No he leído el papel que aún no vinculado a ..

+0

Gracias por la respuesta. Parece que va a tener un enfoque más geométrico para el papel, pero no me sorprendería si se reduce a las mismas (o muy similares) matemáticas. Mi pregunta era si era mejor suavizar los datos primero, y para una aplicación muy específica (los puntos de datos son medidas adecuadas para grupos de conteos variables). – winwaed

+0

@Amro: ¿Encontraste que esta técnica funciona mejor que la prueba de la segunda derivada? ¿Hay algún nombre estándar para esta técnica por casualidad? – Legend

+0

El método L es lo que el documento llama. Creo que tengo demasiado ruido para una segunda derivada para encontrar la rodilla con precisión. – winwaed

Cuestiones relacionadas