Resumen de funciones de activación
1. Función sigmoidea: a menudo se usa en LR y también se puede usar en la última capa de redes neuronales (un problema de clasificación, este tipo y otros). ). La fórmula y el gráfico de la función son los siguientes:
Como se muestra en la Figura 2, puede convertir el valor real continuo de entrada en una salida entre (0, 1). En particular, la salida es 0 para números negativos muy grandes y 1 para números positivos muy grandes. Sigmoide solía ser una función de activación convencional, pero debido a algunos defectos, ya no es convencional... Sus deficiencias son:
1) Debido a la naturaleza de la derivada sigmoidea (como se muestra en la Figura 3 ), cuando la red neuronal reacciona Al propagarse en una dirección, se producirá la desaparición del gradiente (el valor de peso inicial está dentro de [0, 1]) y la explosión del gradiente (el valor de peso inicial está dentro de [1, +∞]).
2) Su fórmula analítica contiene operaciones de potencia, cuya resolución mediante una computadora requiere relativamente tiempo. Para redes profundas a gran escala, el tiempo de entrenamiento aumentará considerablemente.
La salida de Sigmoide no es de media cero, lo que hará que las neuronas de la capa posterior obtengan como entrada la señal de salida media distinta de cero de la capa superior. Por tanto, si los datos son positivos al entrar en la neurona, el gradiente calculado siempre será positivo.
2. Función tangente hiperbólica: la función tangente hiperbólica es un sigmoide estirado, que compensa las deficiencias del sigmoide. 3. La fórmula y la curva de la función tangente hiperbólica son las siguientes:
Su rango se convierte en (-1, 1) y su valor promedio cambia de 0,5 de sigmoide a 0, lo que resuelve el problema de que la El valor promedio de la producción sigmoidea no es 0. Pregunta. Como puede verse en la Figura 4, la pendiente de la curva cerca de 0 es más pronunciada, por lo que la curva de su derivada es más alta y más fina que la curva de la Figura 3.
Su ventaja es que resuelve el problema de que la salida promedio de sigmoide no es 0 y converge más rápido que sigmoide.
Sus deficiencias son los mayores problemas del sigmoide, 1. La desaparición y explosión del gradiente, que no se han resuelto hasta ahora.
3. Función ReLU: la velocidad de entrenamiento de la función ReLU es 6 veces más rápida que tanh y actualmente es la función de activación más utilizada. Cuando el valor de entrada es menor que cero, el valor de salida es cero. Cuando el valor de entrada es mayor o igual a cero, el valor de salida es igual al valor de entrada. La fórmula y la curva son las siguientes:
Sus ventajas son un entrenamiento rápido (debido a la linealidad) y la ausencia de explosión de gradiente cuando la entrada es positiva.
La desventaja es que las neuronas donde se encuentra ReLU pueden desactivarse aleatoriamente durante el proceso de entrenamiento. Si la tasa de aprendizaje es alta, es probable que el 40% de las neuronas de la red estén "muertas" y su salida no sea 0.
4. Función LeakyReLU y ampPReLU: Estas dos funciones de activación son similares, ambas son versiones mejoradas de ReLU, para evitar el problema de la inactivación de las células nerviosas. La fórmula es la siguiente:
LeakyReLU establece el valor de α en 0,001, mientras que PReLU usa α como parámetro para participar en el entrenamiento del modelo, de modo que el límite inferior de salida de la función no es 0, por lo que No habrá desactivación de neuronas.
Función 5.ELU (unidad lineal exponencial): resuelve dos problemas de ReLU, uno es la inactivación y el otro es que la media no es cero.
6. Función Softmax: utilizada a menudo en la última capa de redes neuronales (clasificación múltiple), es una generalización de la función sigmoidea en problemas de clasificación múltiple. La fórmula es la siguiente:
Su rango de valores es [0, 1] y la salida es un valor de probabilidad, por lo que la suma es 1. La forma exponencial se utiliza para hacer que los valores grandes sean más grandes y derivados.
1. Intente no utilizar funciones sigmoideas y tanh (desaparición y explosión de gradiente), intente utilizar ReLU y sus variantes.
2. Cuando utilice ReLU, preste atención a establecer una tasa de aprendizaje pequeña.
3. Intente utilizar la función de activación con valor medio 0.