Las funciones de activación para redes neuronales son una parte esencial del aprendizaje profundo, ya que deciden la precisión y la eficiencia del modelo de entrenamiento utilizado para crear o dividir una red neuronal a gran escala y el resultado de los modelos de aprendizaje profundo. La función de activación es una herramienta valiosa para las redes neuronales, ya que les permite centrarse en los datos relevantes y descartar el resto. Como con cualquier otra función, la función de activación (la función de transferencia) toma una entrada y devuelve una salida proporcional a esa entrada. La función de activación de un nodo en una red neuronal especifica la salida del nodo en respuesta a una entrada particular o grupo de entradas.
Ellos eligen efectivamente qué neuronas activar o desactivar para lograr el resultado deseado. La entrada también se transforma de forma no lineal para mejorar el rendimiento en una red neuronal sofisticada. Cualquier información en el 1 a -1 puede tener su salida normalizada con la función de activación. Dado que las redes neuronales a menudo se entrenan en millones de puntos de datos, es esencial que la función de activación sea rápida y que minimice la cantidad de tiempo necesario para calcular los resultados.
Echemos un vistazo a la estructura de las redes neuronales ahora y veamos cómo se arma la arquitectura de redes neuronales y qué elementos están presentes en las redes neuronales.
Una red neuronal artificial contiene una gran cantidad de neuronas individuales vinculadas. Se especifican la función de activación, el sesgo y el peso de cada uno.
- Capa de entrada: los datos sin procesar del dominio se envían a la capa de entrada. Esta capa es el nivel más bajo donde se lleva a cabo cualquier cálculo. Lo único que hacen estos nodos es transmitir datos a la siguiente capa secreta.
- Capa oculta: al recibir entidades de la capa de entrada, la capa oculta realiza varios cálculos antes de pasar el resultado a la capa de salida. Los nodos de la capa 2 están ocultos a la vista, lo que proporciona una capa de abstracción para la red neuronal subyacente.
- Capa de salida: la salida de la capa oculta de la red se reúne en esta capa, que proporciona el valor final de la red.
Importancia de las funciones de activación
Dado que una ecuación lineal es un polinomio de solo un grado, una red neuronal sin una función de activación es simplemente un modelo de regresión lineal. Es fácil de resolver pero restringida en su capacidad para abordar problemas complicados o polinomios de mayor grado.
Una función de activación se utiliza en una red neuronal para proporcionar no linealidad. Aunque el cálculo de la función de activación agrega un paso adicional en cada capa durante la propagación directa, vale la pena el esfuerzo.
En ausencia, cada neurona realizará una transformación lineal en las entradas utilizando los pesos y sesgos. El compuesto de dos funciones lineales es una función lineal en sí misma; por lo tanto, el número total de capas ocultas en la red neuronal no afecta su comportamiento.
Tipos de función de activación
La red neuronal se clasifica principalmente en tres partes en las que se utilizan diferentes funciones de activación.
- función de paso binario
- Función lineal
- Función de activación no lineal
Función de activación de red neuronal de paso binario
- Función de paso binario
Esta función de activación es bastante simple y sirve principalmente como un clasificador basado en un umbral en el que establecemos un valor de umbral para determinar si se activa la salida de una neurona en particular. Si el valor de la entrada a la función de activación es más significativo que cierto umbral, la neurona se activa y su salida pasa a la siguiente capa oculta; de lo contrario, la neurona se desactiva.
Limitaciones:
- No es adecuado para problemas que requieren varios valores, como la clasificación de varias clases, porque solo proporciona resultados de un solo valor.
- Dado que la función de paso no tiene gradiente, la retropropagación encuentra dificultades.
Función de acción de red neuronal lineal
- Función lineal
Una función de activación donde la salida es igual a la entrada se llama función de activación lineal. Esta función también se denomina “sin activación” o “función de identidad” (x1.0). La función toma la suma ponderada de la entrada y escupe el valor sin cambiarlo. En otras palabras, nuestra función es proporcional al total de neuronas o entrada. Por lo tanto, tenemos una función de activación en línea recta. La generación de una amplia gama de activaciones es más eficiente utilizando funciones de activación lineales. Una línea con una pendiente positiva puede aumentar la tasa de disparo en respuesta a un aumento en la tasa de entrada.
Limitaciones:
- No se puede usar la retropropagación ya que la derivada de la función es una constante que no tiene relación con la entrada x.
- La última capa de la red neuronal siempre es una función lineal de la primera capa. Una función de activación lineal elimina todas sus capas para reducir la red neuronal a su forma más simple. Cuando se aplica una función de activación lineal a una red neuronal, todas las capas se fusionarán efectivamente en una sola supercapa.
Función de activación de red neuronal no lineal
- Función de activación sigmoidea
Esta función acepta números reales como entrada y devuelve números enteros entre 0 y 1. El valor de salida estará más cerca de 1,0 cuanto más grande (más positiva) sea la entrada y estará más cerca de 0,0 cuanto más pequeña (más negativa) sea la entrada. Como resultado, encuentra su aplicación más común en modelos cuya salida requiere predicción de probabilidad. Una distribución sigmoidea es apropiada ya que todas las probabilidades se encuentran entre 0 y 1. También se denomina función logística.
Limitaciones:
- Las funciones logísticas no producen resultados simétricos cercanos a cero. Esto asegura que todas las salidas de las neuronas compartan el mismo signo. Esto complica el entrenamiento inherentemente inestable de la red neuronal.
2. Función Activación ReLU (Unidad Lineal Rectificada)
Hoy en día, ReLU es la función de activación más popular. Dado que este es un componente crucial de cualquier sistema de red neuronal convolucional o de aprendizaje profundo. Si bien el rango de 0 a infinito de la función presenta algunos desafíos, el hecho de que los valores negativos se conviertan en cero a una tasa tan alta significa que no se mapea ni se ajusta correctamente a los datos. El problema crítico es que la función ReLU no activa todas las neuronas simultáneamente. Las neuronas se apagan cuando la transformación lineal arroja un valor inferior a 0. Dado que ReLU es lineal y no saturante, acelera la aproximación del descenso del gradiente al mínimo global de la función de pérdida.
Limitaciones:
- Debido a la posibilidad de que los pesos se vuelvan negativos a una tasa de aprendizaje alta, el término de salida también podría ser perjudicial. Reducir la tasa de aprendizaje es una posible solución para el mismo.
- La capacidad del modelo para adaptarse adecuadamente o aprender de los datos se ve afectada ya que todos los valores de entrada negativos se establecen instantáneamente en cero.
3. Función Tanh
La función Tanh también se denomina función hiperbólica. El tanh es una versión mejorada del sigmoide logístico. La función tanh tiene el rango de (-1 a 1). Tanh también es sigmoidal (en forma de s). Las entradas negativas se asignan fuertemente negativamente, mientras que las entradas cero se asignan cerca de cero, lo que es una ventaja cuando se traza un gráfico tanh. Podemos diferenciar la función. Mientras que la función en sí es monótona, su derivada no lo es.
Limitaciones:
- Similar a la función de activación sigmoidea, sufre el problema de la desaparición de los gradientes. Y el gradiente de la función tanh es mucho más pronunciado que el de Sigmoid.
4. Función ReLU con fugas
Debido a su ligera pendiente positiva en el área negativa, Leaky ReLU es una variante mejorada de la función ReLU que se puede utilizar para sortear el problema de Dying ReLU. En consecuencia, los nodos no se apagan y se evita el problema de ReLU de morir nodos, ya que los valores negativos no se convierten en 0.
Limitaciones:
- Los parámetros del modelo de aprendizaje pueden ser tediosos cuando el gradiente es mínimo para valores negativos.
5. Función ReLU paramétrica
El P-ReLU o Paramétrico Dado que los valores negativos no llegan a 0, los nodos no se apagan y no surge el problema de morir ReLU, ReLU es una variante de la variante Leaky ReLU que busca reemplazar la mitad negativa de ReLU con un línea de una pendiente.
Limitaciones:
- Dependiendo del valor del parámetro de pendiente, puede producir resultados variables para varios problemas.
6. Función de unidades lineales exponenciales
La función de activación ELU es otra opción, y es conocida por su rápida convergencia y salida de alta calidad. Una función exponencial modificada se sustituye por el terminal negativo. Desafortunadamente, hay una sobrecarga computacional creciente, pero al menos el problema de ReLU ya no es terminal. Reduce la probabilidad del problema de ReLU “muerto” al proporcionar una curva de “registro” para valores de entrada negativos. Ayuda a la red a ajustar adecuadamente sus sesgos y ponderaciones.
Limitaciones:
- La inclusión de una operación exponencial provoca un aumento en el tiempo de procesamiento.
- El valor de ‘a’ no se adquiere de ninguna manera, y el problema de la explosión de gradiente es una de las principales limitaciones.
7. Función de unidades lineales exponenciales escaladas
La normalización interna está a cargo de SELU, que se desarrolló para redes de autonormalización y garantiza que se mantengan la media y la varianza de cada capa. Al modificar la media y la varianza, SELU hace posible esta normalización. Debido a que la función de activación de ReLU no puede producir valores negativos, SELU puede mover la media de formas que antes eran imposibles. La varianza puede modificarse con el uso de gradientes.
Para ser amplificada, la función de activación SELU requiere un área con un gradiente mayor que uno. La convergencia de la red ocurre más rápidamente cuando se usa más la normalización interna que la externa.
8. Función de unidad lineal de error gaussiano
Muchos de los modelos de PNL más populares, incluidos BERT, ROBERTa y ALBERT, son compatibles con la función de activación GELU. Las cualidades de abandono, zoneout y ReLU se combinan para inspirar esta función de activación. En todas las tareas de visión artificial, NLP y reconocimiento de voz, la no linealidad de GELU mejora el rendimiento más que las activaciones de ReLU y ELU.
9. Función de activación Softmax
De la misma manera que la activación sigmoidea asigna un valor a cada variable de entrada en función de su peso, softmax asigna un valor a cada variable de entrada en función de la suma de estos pesos, que en última instancia es uno. Esta es la razón por la que softmax se usa típicamente en la capa de salida, la capa final que se usa para la toma de decisiones.
Conclusión
Para comprender mejor y llevar a cabo tareas cada vez más complicadas, la entrada a menudo se somete a una transformación no lineal, y funciones de activación como estas juegan un papel crucial en este proceso. Las capas ocultas de una red neuronal normalmente tendrán la misma función de activación. Como los parámetros de la red pueden ser aprendidos por retropropagación, esta función de activación tiene que ser diferenciable. Hemos cubierto las funciones de activación más comunes, sus limitaciones (si las hay) y cómo se emplean.
A pesar de la familiaridad generalizada con la “Función de activación”, a pocos les gusta contemplar sus efectos. Por qué se utilizan, cómo contribuyen, qué hay que decir, etc. Aunque los problemas pueden parecer sencillos, la dinámica subyacente puede ser bastante complicada.
Referencias:
- https://www.analyticssteps.com/blogs/7-types-activation-functions-neural-network
- https://towardsdatascience.com/activation-functions-neural-networks-1cbd9f8d91d6
- https://thehackweekly.com/8-most-popular-types-of-activation-functions-in-neural-networks/
- https://www.v7labs.com/blog/neural-networks-activation-functions
Dhanshree Shenwai es ingeniera informática y tiene una buena experiencia en empresas FinTech que cubren el dominio financiero, de tarjetas y pagos y bancario con un gran interés en las aplicaciones de IA. Está entusiasmada con la exploración de nuevas tecnologías y avances en el mundo cambiante de hoy en día, haciendo que la vida de todos sea más fácil.