He estado leyendo mucho sobre redes neuronales convolucionales y me preguntaba cómo evitan el problema del gradiente de fuga. Sé que las redes de creencias profundas apilan codificadores automáticos de un solo nivel u otras redes poco profundas previamente entrenadas y, por lo tanto, puedo evitar este problema, pero no sé cómo se evita en las CNN.
De acuerdo con Wikipedia :
"a pesar del" problema de gradiente de fuga "mencionado anteriormente, la potencia de procesamiento superior de las GPU hace posible la propagación inversa simple para redes neuronales de alimentación profunda con muchas capas".
No entiendo por qué el procesamiento de GPU eliminaría este problema.
GPU's are fast correlated with vanishing gradients
, puedo entender la lógica rápida con gran ancho de banda de memoria para procesar múltiples multiplicaciones de matriz! pero, ¿podría explicar qué tiene que ver con los derivados? El problema del gradiente de fuga parece hacer más con la inicialización del peso , ¿no es así?Respuestas:
El problema del gradiente de desaparición requiere que usemos pequeñas tasas de aprendizaje con descenso de gradiente que luego necesita muchos pequeños pasos para converger. Este es un problema si tiene una computadora lenta que toma mucho tiempo para cada paso. Si tiene una GPU rápida que puede realizar muchos más pasos en un día, esto no es un problema.
Hay varias formas de abordar el problema del gradiente de fuga. Supongo que el mayor efecto para las CNN provino del cambio de unidades sigmoideas no lineales a unidades lineales rectificadas. Si considera una red neuronal simple cuyo error depende del peso w i j solo a través de y j , dondemi wyo j yj
su gradiente es
Si es la función sigmoidea logística, f ' estará cerca de cero para entradas grandes y entradas pequeñas. Si f es una unidad lineal rectificada,F F′ F
la derivada es cero solo para entradas negativas y 1 para entradas positivas. Otra contribución importante proviene de inicializar adecuadamente los pesos. Este documento parece una buena fuente para comprender los desafíos con más detalles (aunque todavía no lo he leído):
http://jmlr.org/proceedings/papers/v9/glorot10a/glorot10a.pdf
fuente