1 votos

Especificación de valores/modos de partida para K-modes Clustering

Tengo un conjunto de datos muy grande con 9000 observaciones y 25 variables categóricas, que he transformado en datos binarios y he preformado clustering jerárquico y clustering K-modes en R.

library(klaR)
cluster <- list()
for(k in 1:8) 
{
cluster[[paste0("k.", k)]] <- kmodes(data, k,iter.max=100)
}

Me gustaría saber

1) si es mejor especificar el número de modos k (donde el algoritmo elige un conjunto aleatorio de filas distintas de los datos como modos iniciales) o especificar yo mismo los valores/modos iniciales de partida (darle un conjunto de modos de conglomerados distintos iniciales en sustitución de k ). Si es lo segundo, ¿cómo se deciden los modos iniciales significativos? Por ejemplo, para k=4 ¿puedo especificar que los modos iniciales sean 4 filas de la salida de la agrupación jerárquica binaria donde corto el árbol en k=4 ?

2) cuántas veces debo ejecutar el algoritmo y

3) si 100 iteraciones son suficientes.

2voto

Amadiere Puntos 5606

Visite no transformar los datos en binarios para los modos k.

Considere un atributo categorial que tiene 40% A, 30% B, 30% C.

El modo de ese atributo es A.

Si se transforma a binario, se tiene un modo que no es ni A, ni B, ni C: el 60% son 0 en A, el 70% son 0 en B y C cada uno.

Si no tiene una buena razón para empezar con centros concretos, utilice el predeterminado.

Elegir k es difícil. ¡Suerte! Inténtalo y estudia el resultado. Luego repite.

0voto

Annath Puntos 1038

K-means asume que los conglomerados tienen un tamaño aproximadamente igual, y deben ser aproximadamente esféricos sin agujeros para obtener resultados ideales (por lo tanto, los anillos concéntricos no funcionarán bien con k-means).

El valor de $k$ dependerá de los datos (es decir, ¡mire sus resultados!). Existen técnicas que buscan automáticamente los mejores $k$ por ejemplo, x-means clustering.

En términos de inicialización, considere k-means++ ya que en realidad tiene una garantía teórica en cuanto a la calidad del resultado desde la primera iteración.

En general, el número de iteraciones debe ser suficiente para la convergencia, es decir, que los centros se muevan muy poco de una iteración a otra, lo que puede determinarse dinámicamente.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X