¿Por qué se usa ReLU como función de activación?

19

Las funciones de activación se utilizan para introducir no linealidades en la salida lineal del tipo w * x + b en una red neuronal.

Lo que puedo entender intuitivamente para las funciones de activación como sigmoide.

Entiendo las ventajas de ReLU, que evita las neuronas muertas durante la propagación hacia atrás. Sin embargo, no puedo entender por qué se usa ReLU como una función de activación si su salida es lineal.

¿No se vence todo el punto de ser la función de activación si no introduce no linealidad?

Conejo conejo
fuente

Respuestas:

19

En matemáticas, una función se considera lineal siempre que una función si para cada x e y en el dominio A tiene la siguiente propiedad: f ( x ) + f ( y ) = f ( x + y ) . Por definición, la ReLU es m a x ( 0 , x ) . Por lo tanto, si dividimos el dominio de ( - , 0 ] o [F:UNsiXyUNF(X)+F(y)=F(X+y)metrounX(0 0,X)(-,0 0]. Por lo tanto, por definición, ReLU no es lineal. entonces la función es lineal. Sin embargo, es fácil ver que f ( - 1 ) + f ( 1 ) f ( 0 )[0 0,)F(-1)+F(1)F(0 0)

Sin embargo, ReLU está tan cerca de ser lineal que a menudo confunde a las personas y se pregunta cómo puede usarse como un aproximador universal. En mi experiencia, la mejor manera de pensar en ellas es como las sumas de Riemann. Puede aproximar cualquier función continua con muchos rectángulos pequeños. Las activaciones de ReLU pueden producir muchos rectángulos pequeños. De hecho, en la práctica, ReLU puede crear formas bastante complicadas y aproximarse a muchos dominios complicados.

También tengo ganas de aclarar otro punto. Como se señaló en una respuesta anterior, las neuronas no mueren en Sigmoid, sino que desaparecen. La razón de esto es porque, como máximo, la derivada de la función sigmoidea es .25. Por lo tanto, después de tantas capas, terminas multiplicando estos gradientes y el producto de números muy pequeños menores que 1 tiende a llegar a cero muy rápidamente.

Por lo tanto, si está construyendo una red de aprendizaje profundo con muchas capas, sus funciones sigmoideas se estancarán bastante rápido y se volverán más o menos inútiles.

La clave es que la desaparición proviene de multiplicar los gradientes, no los gradientes mismos.

Sombrero de copa
fuente
6

Entiendo las ventajas de ReLU, que evita las neuronas muertas durante la propagación hacia atrás.

Esto no es del todo cierto. Las neuronas no están muertas. Si usa activaciones de tipo sigmoide, después de algunas iteraciones, el valor de los gradientes se satura para la mayoría de las neuronas. El valor del gradiente será muy pequeño y el proceso de aprendizaje ocurre muy lentamente. Esto está desapareciendo y explotando los gradientes que han estado en funciones de activación de tipo sigmoide. Por el contrario, las neuronas muertas pueden suceder si usas la ReLUno linaridad, que se llama morir ReLU .

No puedo entender por qué se usa ReLU como una función de activación si su salida es lineal

Definitivamente no es lineal. Como definición simple, la función lineal es una función que tiene la misma derivada para las entradas en su dominio.

La función lineal es popular en economía. Es atractivo porque es simple y fácil de manejar matemáticamente. Tiene muchas aplicaciones importantes. Las funciones lineales son aquellas cuyo gráfico es una línea recta. Una función lineal tiene la siguiente forma:

y = f (x) = a + bx

Una función lineal tiene una variable independiente y una variable dependiente. La variable independiente es xy la variable dependiente es y.

a es el término constante o la intersección y. Es el valor de la variable dependiente cuando x = 0.

b es el coeficiente de la variable independiente. También se conoce como la pendiente y da la tasa de cambio de la variable dependiente.

ReLUNo es lineal . La respuesta simple es que la ReLUsalida no es una línea recta, se dobla en el eje x. El punto más interesante es cuál es la consecuencia de esta no linealidad. En términos simples, las funciones lineales le permiten diseccionar el plano de entidad utilizando una línea recta. Pero con la no linealidad de ReLUs, puede construir curvas con formas arbitrarias en el plano de entidades.

ReLUpuede tener una desventaja, que es su valor esperado. No hay limitación para la salida del Reluy su valor esperado no es cero. Tanhfue más popular que sigmoidporque su valor esperado es igual a cero y el aprendizaje en capas más profundas ocurre más rápidamente. Aunque ReLUno tiene esta ventaja batch normalizationresuelve este problema .

También puede consultar aquí y aquí para obtener más información.

Medios de comunicación
fuente