¿Qué es el algoritmo de cambio medio?

El algoritmo de cambio medio es un algoritmo de agrupamiento basado en el núcleo no supervisado. Contrariamente a k-means, no requiere especificar el número de clases a priori. En cambio, el usuario especifica el núcleo y el tamaño del núcleo, que pueden ser parámetros más relevantes. Otra diferencia con k-means es que, de manera similar al agrupamiento espectral, el shift medio se preocupa más por la conectividad que por la proximidad geométrica.

La idea básica es, desde un punto de partida, calcular el promedio ponderado del núcleo de los puntos de datos vecinos e iterar con el promedio como el nuevo punto de partida, hasta la convergencia.

Ahora puede repetir el proceso comenzando con todos los puntos en su conjunto de datos. Los puntos que conducen al mismo punto de convergencia se agrupan.

El artículo original [1] es una buena lectura si estás interesado.

[1]: http://cyrille.nathalie.free.fr/…

El algoritmo de cambio medio es una forma de encontrar los modos de una función de distribución. Se puede usar para muchas cosas en la visión por computadora, pero como ha pedido específicamente similitud con k-means, hablaré sobre la agrupación.

Imagine que tiene un montón de puntos en algún espacio y desea agruparlos. Puede modelar esos puntos como los generados por una función de distribución de probabilidad (PDF): más puntos en una región significan picos más altos.

Quora User explica bien el algoritmo. Es esencialmente un algoritmo iterativo, donde comienzas desde un punto aleatorio y luego subes la pendiente del PDF hasta llegar al pico. Es por eso que también se le llama ‘algoritmo de escalada’.
La escalada de la pendiente se ilustra bien en el video. Básicamente, encuentra el punto ‘promedio’ en la ventana y mueve el centro geométrico hacia ese punto en la próxima iteración.

Lo importante a tener en cuenta aquí es que el tamaño de la ventana es un parámetro crítico para elegir, y el número de modos (o picos del PDF) o grupos, puede ser tan grande o pequeño como sea posible.
Tenga en cuenta que en k-significa que tuvimos que elegir k, y la ‘ventana’ podría ser lo más grande o pequeña posible.

Además, el cambio medio es mucho más lento que el medio k como era de esperar. Esto se debe a que las iteraciones deben ejecutarse para cada punto. Además, muchas veces, realmente no obtienes clústeres limpios, y tienes que hacer cosas heurísticas como modos de grupo que están muy cerca, etc.

Espero que ayude.

El desplazamiento medio considera el espacio de características como una función de densidad de probabilidad empírica. Si la entrada es un conjunto de puntos, la media de desplazamiento los considera muestreados de la función de densidad de probabilidad subyacente. Si hay regiones densas (o agrupaciones) en el espacio de características, corresponden al modo (o máximos locales) de la función de densidad de probabilidad. También podemos identificar clústeres asociados con el modo dado usando Mean Shift.

Para cada punto de datos, el desplazamiento medio lo asocia con el pico cercano de la función de densidad de probabilidad del conjunto de datos. Para cada punto de datos, el Desplazamiento medio define una ventana a su alrededor y calcula la media del punto de datos. Luego cambia el centro de la ventana a la media y repite el algoritmo hasta que converge. Después de cada iteración, podemos considerar que la ventana cambia a una región más densa del conjunto de datos.

En el nivel superior, podemos especificar el cambio medio de la siguiente manera:
1. Arregle una ventana alrededor de cada punto de datos.
2. Calcule la media de los datos dentro de la ventana.
3. Cambie la ventana a la media y repita hasta la convergencia.