Como otros caballeros señalaron que una pregunta para competir entre ReLU y la función softmax no es una buena pregunta. una mejor es pedir competir con ReLU con sigomid porque el sigomid es una versión especial de la función softmax que tiene una salida de 2 estados. produce 0 en infinito negativo y 1 en infinito positivo, lo que nos permite identificar 2 estados con una neurona como el opuesto de un estado para cada neurona de la capa softmax (una capa con n neurona softmax obtendrá n estado en la salida pero con n sigmoide obtendrá 2 a la potencia de n estado, que es mucho más capacidad para la red neuronal).
Ahora hablemos de la deferencia entre sigmoid y ReLU:
ReLU tiene las siguientes propiedades:
- ¿Qué consejo daría Yoshua Bengio a los jóvenes investigadores que ingresan al campo del aprendizaje automático?
- ¿Cuáles son los principales puntos de regresión?
- ¿Cómo se compara XGBoost (aumento de gradiente) con Random Forest?
- ¿Cuál es el beneficio de utilizar la agrupación promedio en lugar de la agrupación máxima?
- ¿Qué tan popular y extendido es el aprendizaje automático en África?
- Tiene derivada constante. Esa marca es muy buena para la red neuronal profunda que sufre un gradiente de desaparición y explosión cuando el gradiente de la función de activación no es constante porque el gradiente de una capa se multiplica por el gradiente de la siguiente capa cuando se propaga hacia atrás para que se hace exponencialmente más grande, por lo que lo llamamos gradiente explosivo si el gradiente es mayor que uno (por lo tanto, no es constante) o se hace más pequeño exponencialmente, por lo que lo llamamos desaparecer cuando el gradiente es menor que uno.
- No es diferenciable en cero, lo que no es una muy buena opción cuando desea generar funciones continuas. Pero es mucho más poderoso cuando solo se extrae características de reconocimiento de patrones como en ConvNets, por ejemplo.
- Tiene menos capacidad que la función sigmoidea. La función ReLu es solo una función de aproximación para la función softplus , que es la integral de la función sigmoidea, de modo que el primer punto es que es la función de aproximación la que tiene menos capacidad que la original:
- El segundo punto es que si desea obtener la salida de la función sigmoidea de esa función, debe diferenciarla, por lo que para aproximar esta diferenciación, puede combinar dos funciones ReLU por sustracción de esta manera:
f (x) = ReLU (x + 1) – ReLU (x – 1)
esta función generará 0 en valores inferiores a -1 y 1 en valores superiores a +1 y será lineal entre -1 y 1, lo cual es una buena aproximación para sigmid. Puede ver que tiene que obtener 2 ReLU para aproximar un sigmoide y eso hace que el sigmoide tenga más capacidad.
También puede considerar la baja capacidad como una ventaja en lugar de una desventaja, ya que reducirá la capacidad de su red para ajustar el ruido en los datos de entrenamiento. - ReLU es mucho más rápido de calcular. Es solo una declaración if que es mucho más rápida que la exponencial sigmoidea. Eso te da el poder de construir y entrenar redes más profundas con él.
- Un punto importante es que la neurona ReLU puede morir cuando recibe un gran gradiente negativo que le permite aprender más porque su derivada es cero cuando su entrada es menor que cero, por lo que el gradiente será cero. Puede evitar esto inicializando cuidadosamente los pesos o usando ReLU filtrado, que es como ReLU pero su salida es lineal multiplicada por un valor pequeño (0.001 más o menos) cuando la entrada es negativa (consulte Wikipedia para más detalles).
Espero que esto tenga sentido para ti. Vea estos recursos para más información:
Rectificador (redes neuronales) – Wikipedia
¿Qué tienen de especial las unidades neuronales rectificadoras utilizadas en el aprendizaje NN?
¿Cuáles son los beneficios de usar unidades lineales rectificadas frente a la función de activación sigmoidea típica?
Redes neuronales profundas, ¿RELU está eliminando la no linealidad?
Esta es una buena explicación para el gradiente de desaparición y explosión, se trata del gradiente de desaparición y explosión en RNN que utiliza funciones sigmoideas y cómo el LSTM resuelve este problema:
¿Cómo evita LSTM el problema del gradiente de fuga?