Por qué ReLU es mejor que las otras funciones de activación

17

Aquí la respuesta se refiere a gradientes de desaparición y explosión que han estado en sigmoidfunciones de activación similares, pero supongo que Relutiene una desventaja y es su valor esperado. no hay limitación para la salida de Reluy, por lo tanto, su valor esperado no es cero. Recuerdo el tiempo antes de que la popularidad de Relueso tanhfuera la más popular entre los expertos en aprendizaje automático en lugar de sigmoid. La razón fue que el valor esperado de la tanhera igual a cero y ayudó a aprender en capas más profundas a ser más rápido en una red neuronal. Reluno tiene esta característica, pero por qué funciona tan bien si dejamos de lado su ventaja derivada. Además, supongo que la derivada también puede verse afectada. Porque las activaciones (salida deRelu) están involucrados para calcular las reglas de actualización.

Medios de comunicación
fuente
Es común tener algún tipo de normalización (por ejemplo, normalización por lotes, normalización de capa) junto con ReLU. Esto ajusta el rango de salida.
ncasas
@ncasas ¿Pero en la CNNnormalización típica la salida de la reluno es común? Al menos nunca he visto eso.
Medios
Tiene razón, en CNN no muy profundos es normal no tener normalización por lotes. ¿Has considerado el papel de los valores iniciales de peso? (p. ej., inicialización)
ncasas
sí, en realidad son para evitar de alguna manera la desaparición / explosión de gradientes, después de algunas iteraciones, las salidas se hacen más grandes, supongo.
Medios

Respuestas:

21

La mayor ventaja de ReLu es la no saturación de su gradiente, que acelera en gran medida la convergencia del descenso de gradiente estocástico en comparación con las funciones sigmoideas / tanh ( documento de Krizhevsky et al).

Pero no es la única ventaja. Aquí hay una discusión sobre los efectos de dispersión de las activaciones de ReLu y la regularización inducida. Otra buena propiedad es que, en comparación con las neuronas tanh / sigmoideas que implican operaciones costosas (exponenciales, etc.), la ReLU se puede implementar simplemente con un umbral de una matriz de activaciones en cero.

Pero no estoy convencido de que el gran éxito de las redes neuronales modernas se deba solo a ReLu . Las nuevas técnicas de inicialización, como la inicialización de Xavier, el abandono y (más tarde) batchnorm también jugaron un papel muy importante. Por ejemplo, el famoso AlexNet usaba ReLu y abandono.

Entonces, para responder a su pregunta: ReLu tiene propiedades muy bonitas, aunque no ideales . Pero realmente se demuestra cuando se combina con otras grandes técnicas, que por cierto resuelven el problema de centro distinto de cero que ha mencionado.

UPD: la salida ReLu no está centrada en cero y perjudica el rendimiento de NN. Pero este problema en particular puede abordarse mediante otras técnicas de regularización, por ejemplo, batchnorm, que normaliza la señal antes de la activación :

X=Wtu+si

Máxima
fuente
1
Debería haber enfatizado esta parte: estaba tratando de decir que ReLu solo no resuelve este problema. Tiene razón en que la salida ReLu no está centrada en cero y daña el rendimiento de NN, a menos que los pesos se regularicen. Pero los gradientes saturados perjudicaron aún más al NN, por lo que la adopción masiva de ReLu fue un paso adelante a pesar de sus desventajas.
Maxim
¿podría decir qué quiere decir que se regularizan los pesos? en la respuesta y también en lo que has enfatizado.
Medios
Actualicé mi respuesta con algunos detalles sobre este tema en particular
Maxim
Lo que encuentro un poco confuso, ¿por qué no usar la función de identidad? ¿Cuál es la ventaja de 0 para los valores neg?
Alex
@Alex id no es una no linealidad. Es equivalente a tener solo capas lineales en el NN. Vea esta pregunta: stackoverflow.com/q/46659525/712995
Maxim