¿Por qué usamos ReLU en redes neuronales y cómo lo usamos?


31

¿Por qué utilizamos unidades lineales rectificadas (ReLU) con redes neuronales? ¿Cómo mejora eso la red neuronal?

¿Por qué decimos que ReLU es una función de activación? ¿No es la función de activación de softmax para redes neuronales? Supongo que usamos ambos, ReLU y softmax, así:

neurona 1 con salida softmax ----> ReLU en la salida de la neurona 1, que es la
entrada de la neurona 2 ---> neurona 2 con salida softmax -> ...

para que la entrada de la neurona 2 sea básicamente ReLU (softmax (x1)). ¿Es esto correcto?

Respuestas:


36

F(X)=max(0 0,X).

Una forma en que las ReLU mejoran las redes neuronales es al acelerar el entrenamiento. El cálculo del gradiente es muy simple (0 o 1 dependiendo del signo de ). Además, el paso computacional de un ReLU es fácil: cualquier elemento negativo se establece en 0.0, sin exponenciales, sin operaciones de multiplicación o división.X

Los gradientes de las redes tangentes logísticas e hiperbólicas son más pequeñas que la parte positiva de la ReLU. Esto significa que la parte positiva se actualiza más rápidamente a medida que avanza la capacitación. Sin embargo, esto tiene un costo. El gradiente 0 en el lado izquierdo tiene su propio problema, llamado "neuronas muertas", en el que una actualización de gradiente establece los valores entrantes en una ReLU de modo que la salida sea siempre cero; Las unidades ReLU modificadas como ELU (o Leaky ReLU, o PReLU, etc.) pueden mejorar esto.

rereXReLU(X)=1X>0 0 . Por el contrario, el gradiente de una unidad sigmoidea es como máximo ; por otro lado, mejores resultados para las entradas en una región cercana a 0, ya que (aproximadamente).0.25tanh0.25<rereXtanh(X)1X[-1,31,1,31]


@aginensky Puede hacer preguntas haciendo clic en el botón Hacer preguntas en la parte superior de la página.
Sycorax dice Reinstate Monica el

No veo evidencia de que quisiera hacer una pregunta o de haber participado en esta página. Francamente, estoy sorprendido de lo bien que funciona ReLU, pero he dejado de cuestionarlo :).
Aginensky

@aginensky Parece que el comentario fue eliminado mientras tanto.
Sycorax dice Reinstate Monica el

El comentario no fue eliminado por mí ni fui informado. He dejado de responder preguntas y supongo que esto significa que también he terminado de comentar.
Aginensky

@aginensky No sé por qué esto haría que dejaras de comentar. Si tiene alguna pregunta sobre comentarios y moderación, puede hacer una pregunta en meta.stats.SE.
Sycorax dice Reinstate Monica el

4

Una cosa importante a señalar es que ReLU es idempotente. Dado que ReLU es , es fácil ver que es cierto para cualquier composición finita . Esta propiedad es muy importante para las redes neuronales profundas, porque cada capa de la red aplica una no linealidad. Ahora, apliquemos dos funciones de la familia sigmoidea a la misma entrada repetidamente 1-3 veces:ρ(X)=max(0 0,X)ρρρρ=ρ

ingrese la descripción de la imagen aquí

Puede ver de inmediato que las funciones sigmoideas "aplastan" sus entradas, lo que resulta en un problema de gradiente que desaparece: las derivadas se acercan a cero cuando (el número de aplicaciones repetidas) se aproxima al infinito.norte


0

ReLU es la función máxima (x, 0) con entrada x, por ejemplo, matriz de una imagen enrevesada. ReLU establece todos los valores negativos en la matriz x a cero y todos los demás valores se mantienen constantes.

ReLU se calcula después de la convolución y, por lo tanto, una función de activación no lineal como tanh o sigmoide.

Softmax es un clasificador al final de la red neuronal. Esa es la regresión logística para regularizar salidas a valores entre 0 y 1. (La alternativa aquí es un clasificador SVM).

CNN Forward Pass, por ejemplo: input-> conv-> ReLU-> Pool-> conv-> ReLU-> Pool-> FC-> softmax


8
Votación a favor. Esta es una muy mala respuesta! ¡Softmax no es un clasificador! Es una función que normaliza (escala) las salidas al rango [0,1] y asegura que sumen 1. La regresión logística no "regulariza" nada. La oración "ReLU se calcula después de la convolución y, por lo tanto, una función de activación no lineal como tanh o sigmoide". carece de un verbo o sentido.
Jan Kukacka

1
La respuesta no es tan mala. La oración sin el verbo debe ser "ReLU se calcula después de la convolución y, por lo tanto, ES una función de activación no lineal como tanh o sigmoide". Pensar en softmax como un clasificador también tiene sentido. Se puede ver como un clasificador probabilístico que asigna una probabilidad a cada clase. "Regulariza" / "normaliza" las salidas al intervalo [0,1].
user118967

0

ReLU es un interruptor literal. Con un interruptor eléctrico, 1 voltio da 1 voltio de salida, n voltios adentro da n voltios de salida cuando está encendido. On / Off cuando decide cambiar a cero da exactamente el mismo gráfico que ReLU. La suma ponderada (producto de puntos) de varias sumas ponderadas sigue siendo un sistema lineal. Para una entrada particular, los interruptores ReLU se activan o desactivan individualmente. Eso da como resultado una proyección lineal particular de la entrada a la salida, ya que varias sumas ponderadas de suma ponderada de ... están conectadas entre sí por los interruptores. Para una neurona de entrada y salida particular, hay un sistema compuesto de sumas ponderadas que en realidad se puede resumir en una sola suma ponderada efectiva. Como ReLU cambia el estado a cero, no hay discontinuidades repentinas en la salida para cambios graduales en la entrada.

Existen otros algoritmos de suma ponderada numéricamente eficientes (producto de puntos), como la transformación FFT y Walsh Hadamard. No hay ninguna razón por la que no pueda incorporarlos en una red neuronal basada en ReLU y beneficiarse de las ganancias computacionales. (p. ej., redes neuronales de bancos de filtros fijos).

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.