Posterior a buscar en diversos repositorios y sitios webs al final encontramos la resolución que te enseñamos ahora.
Solución:
1. K-medoid es más flexible
En primer lugar, puede utilizar k-medoids con ningún medida de similitud. Sin embargo, las K-medias pueden no converger; en realidad, solo debe usarse con distancias que sean consistentes con el significar. Por ejemplo, la correlación absoluta de Pearson no debe usarse con k-medias, pero funciona bien con k-medoides.
2. Robustez del medoide
En segundo lugar, el medoide utilizado por los k-medoides es aproximadamente comparable al mediana (de hecho, también hay k-medianas, que es como K-medias pero para la distancia de Manhattan). Si busca literatura sobre la mediana, verá muchas explicaciones y ejemplos de por qué la mediana es más robusta a valores atípicos que la media aritmética. Esencialmente, estas explicaciones y ejemplos también serán válidos para el medoide. Es un mas robusto estimación de un punto representativo que la media utilizada en k-medias.
Considere este ejemplo unidimensional:
[1, 2, 3, 4, 100000]
Tanto la mediana como el medoide de este conjunto son 3. La media es 20002.
¿Cuál crees que es más representativo del conjunto de datos? La media tiene el error al cuadrado más bajo, pero asumiendo que podría haber un error de medición en este conjunto de datos …
Técnicamente, la noción de punto de ruptura se utiliza en estadística. La mediana tiene un punto de ruptura del 50% (es decir, la mitad de los puntos de datos pueden ser incorrectos y el resultado aún no se ve afectado), mientras que la media tiene un punto de ruptura de 0 (es decir, una sola observación grande puede producir una mala estimación).
No tengo una prueba, pero supongo que el medoide tendrá un punto de ruptura similar al de la mediana.
3. Los k-medoides son mucho más caros
Ese es el principal inconveniente. Por lo general, PAM tarda mucho más en ejecutarse que k-means. Como implica calcular todas las distancias por pares, es O(n^2*k*i)
; mientras que k-means corre en O(n*k*i)
donde usualmente, k veces el número de iteraciones es k*i << n
.
Creo que esto tiene que ver con la selección del centro para el clúster. k-means seleccionará el "centro" del grupo, mientras que k-medoid seleccionará el miembro "más centrado" del grupo. En un grupo con valores atípicos (es decir, puntos alejados de los otros miembros del grupo), k-means colocará el centro del grupo hacia los valores atípicos, mientras que k-medoid seleccionará uno de los miembros más agrupados (el medoide) como el centrar.
Ahora depende de para qué uses la agrupación en clústeres. Si solo quisiera clasificar un montón de objetos, entonces realmente no le importa dónde está el centro; pero si la agrupación se usó para entrenar a un decisor que ahora clasificará nuevos objetos en función de esos puntos centrales, entonces k-medoid le dará un centro más cercano a donde un humano colocaría el centro.
En palabras de wikipedia:
"Eso [k-medoid] es más robusto al ruido y valores atípicos en comparación con k-medias porque minimiza una suma de disimilitudes por pares en lugar de una suma de distancias euclidianas al cuadrado ".
He aquí un ejemplo:
Suponga que desea agrupar en una dimensión con k = 2. Un grupo tiene la mayoría de sus miembros alrededor de 1000 y el otro alrededor de -1000; pero hay un valor atípico (o ruido) en 100000. Obviamente pertenece al grupo alrededor de 1000, pero k-means colocará el punto central lejos de 1000 y hacia 100000. Esto incluso puede hacer que algunos de los miembros del grupo 1000 (digamos un miembro con valor 500) que se asignará al grupo -1000. k-medoid seleccionará uno de los miembros alrededor de 1000 como medoid, probablemente seleccionará uno que sea mayor que 1000, pero no seleccionará un valor atípico.
Solo una pequeña nota agregada a la respuesta de @ Eli, K-medoid es más robusto al ruido y valores atípicos que k-means porque el último selecciona el centro del clúster, que es principalmente un "punto de virtud", por otro lado, el primero elige el "objeto real" del clúster.
Suponga que tiene cinco puntos 2D en un grupo con las coordenadas (1,1), (1,2), (2,1), (2,2) y (100,100). Si no consideramos los intercambios de objetos entre los grupos, con k-means obtendrá el centro del grupo (21.2,21.2) que está bastante distraído por el punto (100,100). Sin embargo, con k-medoid elegirá el centro entre (1,1), (1,2), (2,1) y (2,2) de acuerdo con su algoritmo.
Aquí hay un subprograma divertido (subprograma EM Mirkes, K-medias y K-medoides. Universidad de Leicester, 2011) que puede generar aleatoriamente un conjunto de datos en el plano 2D y comparar el proceso de aprendizaje k-medoide y k-medias.
Comentarios y calificaciones del tutorial
Si te gustó nuestro trabajo, puedes dejar un enunciado acerca de qué le añadirías a este escrito.