El criterio de convergencia para (por lotes) SOM (Self-Organizing Map, también conocido como “Mapa de Kohonen”)?

StackOverflow https://stackoverflow.com/questions/2557289

Pregunta

Me gusta para detener la ejecución cuando SOM lotes se convierte en convergente. ¿Qué función de error puedo utilizar para determinar la convergencia?

¿Fue útil?

Solución

Cuando se habla de la convergencia de SOM, para un determinado tamaño del mapa (n x m), desea saber si las iteraciones del algoritmo suficientes han dirigido a garantizar el mapa es "estable". Esto significa, hablando en términos generales, hacer nuevas entradas (observaciones) al mapa consiguen colocarse en las mismas neuronas / vectores del libro de códigos si el mapa es una nueva formación muchas veces? (Haciendo caso omiso de la cuestión del hecho de que la disposición del mapa puede cambiar todo cuando se es entrenado cada vez, lo cual está bien, siempre que los grupos todavía están dispuestos en una forma estable).

Para ayudar a responder a la pregunta de si suficientes iteraciones han corrido, consulte los documentos académicos que figuran a continuación. Ambos documentos también tocan el tema de qué tamaño es el mapa correspondiente (lo que n x m valores ayuda a asegurar la convergencia de la SOM?).

Uno de los enfoques tradicionales que ha sido popular en los documentos se da aquí:

estadísticos para evaluar la fiabilidad de los mapas auto-organizados (Bodt, Cottrell, Verleysen)

Más recientemente, este método se ha producido, lo que parece bastante prometedor:

una convergencia criterio para la auto-organización de MAPS , Tesis de maestría, Benjamin h. Ott (Universidad de Rhode Island)

Esta tesis, en mi opinión, estaba muy bien escrito y un placer de leer. Lo que también es interesante es que esta investigación ha sido escrito como una prueba de convergencia SOM en un paquete (en lugar desconocido) en R, llamada popsom. Compruébelo usted mismo:

popsom

Otros consejos

Estoy bastante seguro de que la función de coste medio en lugar de la función de error.

SOM no requiere una función de error (ni una función de coste).

En el nivel superior de la taxonomía Machine Learning, SOM es una técnica aprendizaje no supervisado -. Sin vector objetivo, y por lo tanto no "meta-vector" menos "value_at_the_current_iteration" para reducir al mínimo

Otra forma de pensar en ello: El papel de una función de costos es minimizar algún costo; en ML, es el delta entre el cálculo del modelo y los datos suministrados. En SOM, no hay datos se suministra con el algoritmo para este propósito.

(me di cuenta de que esto es confuso un poco debido a que los datos de entrada a partir del cual se crea la red se refiere a menudo como "datos de entrenamiento" - probablemente ese es el papel de los datos de entrada en las técnicas de ML supervisadas, que son mucho más comunes que . los sin supervisión es probablemente también confuso porque Teuvo Kohonen, la persona acreditada con 'inventar' SOM, originalmente se refería a ellos como un tipo de sistema cognitivo - y por supuesto NN es una técnica supervisada y no dependen de una función de coste (a menudo gradiente descenso.))

Por último, sólo para asegurarse, he comprobado mi propio código SOM, así como el código del libro de texto ML por Marsland, "Machine Learning: Una perspectiva algorítmico". Tanto en mi código y su, el criterio sólo se detuvo para cualquier valor máximo de iteraciones "" el Usuario aprobadas en cuando llamó a la función principal.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top