Si tiene media página para explicar el abandono , ¿cómo procedería? ¿Cuál es la razón detrás de esta técnica?
Si tiene media página para explicar el abandono , ¿cómo procedería? ¿Cuál es la razón detrás de esta técnica?
El resumen del artículo abandonado parece perfectamente útil.
Nitish Srivastava, Geoffrey Hinton, Alex Krizhevsky, Ilya Sutskever, Ruslan Salakhutdinov, "Abandono : una forma simple de prevenir el sobreajuste de las redes neuronales ", Journal of Machine Learning Research , 2014.
Las redes neuronales profundas con una gran cantidad de parámetros son sistemas de aprendizaje automático muy potentes. Sin embargo, el sobreajuste es un problema grave en tales redes. Las redes grandes también son lentas de usar, lo que hace difícil lidiar con el sobreajuste combinando las predicciones de muchas redes neuronales grandes diferentes en el momento de la prueba. La deserción es una técnica para abordar este problema. La idea clave es soltar unidades al azar (junto con sus conexiones) de la red neuronal durante el entrenamiento. Esto evita que las unidades se adapten demasiado. Durante el entrenamiento, abandone las muestras de un número exponencial de diferentes redes "diluidas". En el momento de la prueba, es fácil aproximar el efecto de promediar las predicciones de todas estas redes diluidas simplemente usando una única red no delgada que tiene pesos más pequeños. Esto reduce significativamente el sobreajuste y proporciona mejoras importantes sobre otros métodos de regularización. Mostramos que la deserción mejora el rendimiento de las redes neuronales en tareas de aprendizaje supervisado en visión, reconocimiento de voz, clasificación de documentos y biología computacional, obteniendo resultados de vanguardia en muchos conjuntos de datos de referencia.
Si lee el documento, encontrará una descripción de lo que significa el comportamiento de coadaptación en el contexto del abandono.
En una red neuronal estándar, la derivada recibida por cada parámetro le dice cómo debería cambiar para que la función de pérdida final se reduzca, dado lo que están haciendo todas las demás unidades. Por lo tanto, las unidades pueden cambiar de manera que corrijan los errores de las otras unidades. Esto puede conducir a complejas adaptaciones. Esto a su vez conduce a un sobreajuste porque estas co-adaptaciones no se generalizan a datos invisibles. Presumimos que para cada unidad oculta, la deserción evita la coadaptación al hacer que la presencia de otras unidades ocultas no sea confiable. Por lo tanto, una unidad oculta no puede confiar en otras unidades específicas para corregir sus errores. Debe funcionar bien en una amplia variedad de contextos diferentes proporcionados por las otras unidades ocultas. Para observar este efecto directamente,
Esta respuesta es un seguimiento de la gran respuesta de Sycorax , para los lectores que deseen ver cómo se implementa la deserción.
Cuando se aplica el abandono en las redes neuronales artificiales, hay que compensar el hecho de que en el momento del entrenamiento una parte de las neuronas se desactivaron. Para hacerlo, existen dos estrategias comunes:
El /p
se mueve del entrenamiento al código de predicción, donde se convierte en *p
:
Estas tres diapositivas provienen de la clase 6 de Standford CS231n: Redes neuronales convolucionales para el reconocimiento visual .
El abandono momentáneo (en un lote de datos de entrada) apaga algunas neuronas en una capa para que no aporten ninguna información ni aprendan ninguna información durante esas actualizaciones, y la responsabilidad recae en otras neuronas activas para aprender más y reducir el error.
Si tengo que explicar la deserción a un niño de 6 años, así es como: imagínese un escenario, en un salón de clases, un maestro hace algunas preguntas pero siempre los mismos dos niños responden, de inmediato. Ahora, la maestra les pide que permanezcan callados por un tiempo y que dejen participar a otros alumnos. De esta manera, otros estudiantes pueden aprender mejor. Tal vez responden mal, pero el maestro puede corregirlos (actualizaciones de peso). De esta manera, toda la clase (capa) aprende mejor sobre un tema.
Puede ver el abandono como una probabilidad previa de si una entidad (o entidad latente en alguna capa intermedia) no importa, es decir, una espiga (la masa del punto en cero = la entidad no importa) y la losa (plana = no reglarizada) prior en todo el espacio de parámetros) prior.
Es importante destacar que esto le permite no solo regularizar el ajuste del modelo, sino también obtener incertidumbre sobre la inferencia. Esto se discute en la disertación y documentos (también esto ) de Yarin Gal.