k-significa vs k-mediana?


14

Sé que hay un algoritmo de agrupación k-means y una mediana k. Uno que usa la media como el centro del grupo y el otro usa la mediana. Mi pregunta es: ¿cuándo / dónde usar cuál?


Tendrá que definir medianas (y quizás calcularlas) si tiene más de una dimensión; si solo toma la mediana en cada valor, entonces pierde propiedades de rotación. Otra posibilidad es k- medoids
Henry

Respuestas:


14

k-means minimiza la varianza dentro del clúster, lo que equivale a distancias euclidianas al cuadrado.

En general, la media aritmética hace esto. Lo hace no distancias Optimizar, sino desviaciones al cuadrado de la media.

k-medians minimiza las desviaciones absolutas, lo que equivale a la distancia de Manhattan.

En general, la mediana por eje debería hacer esto. Es un buen estimador de la media, si desea minimizar la suma de las desviaciones absolutas (es decir, sum_i abs (x_i-y_i)), en lugar de las cuadradas.

No es una cuestión de precisión. Es una cuestión de corrección. ;-)

Así que aquí está tu árbol de decisión:

  • Si su distancia es al cuadrado Distancia euclidiana , use k-means
  • Si su distancia es métrica de taxi , use k-medians
  • Si tiene alguna otra distancia , use k-medoides

Algunas excepciones: por lo que puedo decir, maximizar la similitud del coseno está relacionado con minimizar la distancia al cuadrado euclidiana en datos normalizados L2. Entonces, si sus datos están normalizados en L2; y normalizas tus medios cada iteración, entonces puedes usar k-means nuevamente.


De alguna manera, estoy en desacuerdo con la afirmación de que la mediana minimiza la distancia de Manhattan, ya que no existe un concepto único acordado de una mediana para datos multidimensionales. No es falso, pero me parece una declaración engañosa para hacer en un contexto multidimensional. Existen múltiples generalizaciones multidimensionales de medianas, muchas de las cuales no tienen conexión para minimizar las distancias de Manhattan.
Tim Seguine

1
Lo cambio a una mediana por eje. Espero que estés más feliz ahora.
HA SALIDO - Anony-Mousse

2

Si desea hacer un análisis que no tenga en cuenta el posible efecto de los valores extremos, use k significa, pero si desea ser más preciso, use k mediana


55
¿Puede apoyar y / o explicar estas afirmaciones de alguna manera?
jona

Sí, ¿puedes elaborar más por favor? con ejemplos?
Jack Twain

2
Creo que es porque "Median" puede tolerar los valores atípicos, pero "Mean" está totalmente afectado por ellos. Por ejemplo: si tenemos los puntos de datos {1,2,3,5,78} es obvio que 78 es atípico. La mediana de estos datos es 3 y la media es 17.8. Entonces, la mediana es la mejor manera de resumir estos datos.
Fadwa
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.