El objetivo principal de la mayoría de las funciones de activación es introducir la no linealidad en la red para que pueda aprender patrones más complejos. Es, de hecho, la forma correcta de ver el problema de elección, porque las buenas matemáticas son la única forma conocida de prevenir errores.
Para fines educativos, es muy útil observar estas funciones en términos de lo que realmente hacen. De su clase de física, puede recordar los experimentos de óptica en los que la luz atraviesa un sistema de lentes diferentes; esta es una analogía perfecta. Sus datos de entrada son la luz, pueden estar en todo el espectro, lo que puede o no ser lo que desea. Entonces, si sabe exactamente lo que hace cada una de sus lentes, puede predecir cómo se vería su salida en principio.
En esta publicación, describiré la intuición detrás de las opciones de funciones, si realmente desea saber cómo funcionan las cosas, consulte Goodfellow et al. (2016) [1]
- ¿Cuáles son los populares paquetes ML de adopción (Machine wise)?
- ¿Será factible dentro de los próximos 5 años que una API de aprendizaje automático maneje la construcción de representaciones significativas a partir de datos sin procesar?
- Regularización: ¿Por qué se llaman así los SVM L1 y L2 cuando ambos miden la distancia a un hiperplano a lo largo de la proyección ortogonal?
- Will Naive Bayes dará un buen resultado si el conjunto de entrenamiento es mucho más pequeño que el no. de características en un clasificador de aprendizaje automático?
- ¿Qué significa la implementación del algoritmo de aprendizaje automático distribuido?
- Lineal
El caso más simple, sin activación, la señal pasa sin cambios. Esta es una buena opción para problemas de regresión.
- ReLU / ELU
[matemáticas] máx. (0, x) [/ matemáticas]
Básicamente, “Quiero ver solo lo que estoy buscando”. Esta es mi función favorita, porque proviene simultáneamente de la ingeniería eléctrica y la biología. Para dar una analogía biológica, cuando la señal entrante golpea la neurona, puede reconocerse como “menos relevante” o “más relevante”. Al poner a cero las señales “menos relevantes”, ReLU actúa como una neurona excitadora que reacciona a las señales relevantes y transmite más información sobre ellas. Esa es una de las razones por las que son muy útiles en la visión por computadora. Una regla general es usarlos después de capas convolucionales, pero a veces se pueden usar después de capas densas si desea activaciones más dispersas.
Recomiendo leer más al respecto, tanto en la literatura de CS como en la literatura científica general, Nature [2] tiene un artículo increíblemente emocionante que introdujo toda la idea. - Softmax
[matemáticas] \ frac {e ^ {x_i}} {\ sum \ limits_ie ^ {x_i}} [/ matemáticas]
También conocida como función “distribución de probabilidad de darme”. Si sabe que todo lo que sale de la capa debe ser una distribución, esto es lo que desea usar.
Otro ejemplo famoso es el uso de softmax como puerta. Si tiene una señal [matemática] x [/ matemática], una capa [matemática] L_1 [/ matemática] y desea decidir qué partes de [matemática] L_1 (x) [/ matemática] desea pasar más, usted puede introducir una puerta [matemática] L_2 (x) [/ matemática] con activación softmax que tiene la misma dimensionalidad. Un producto elemwise [matemática] L_1 (x) \ cdot L_2 (x) [/ matemática] después del entrenamiento contendrá la versión “filtrada” de [matemática] L_1 (x) [/ matemática], posiblemente ayudando a reducir el ruido en las siguientes capas . - Tanh
[matemáticas] \ frac {e ^ z – 1} {e ^ z + 1} [/ matemáticas]
En algunos casos, el signo de la salida es relevante, pero la magnitud puede alterar los cálculos posteriores. Tanh es una forma elegante de “aplastar” la salida en [matemática] [- 1, 1] [/ matemática], preservando el signo y conforme a las condiciones de contorno [matemática] f (0) = 0, f ‘(\ infty) = 0 [/ math]. Es útil cuando después de que la magnitud de la producción no procesada crece significativamente, el crecimiento adicional no es tan importante, y viceversa, cuando las fluctuaciones alrededor de cero hacen una diferencia significativa.
En aplicaciones prácticas, cuando las arquitecturas se vuelven más complejas y probablemente usará diferentes activaciones en diferentes partes de la red, la única forma de mejorar es obtener una exposición más amplia a las prácticas existentes, muchos buenos documentos contienen discusiones detalladas de tales opciones.
Notas al pie
[1] Aprendizaje profundo (serie de computación adaptativa y aprendizaje automático): Ian Goodfellow, Yoshua Bengio, Aaron Courville: 9780262035613: Amazon.com: Libros
[2] https://www.nature.com/nature/jo…