La primera vez que me adentré en el mundo de las redes neuronales, me obsesioné con la arquitectura: cuántas capas, cuántas neuronas. Las funciones de activación eran, para mí, ese detalle que uno copia de los ejemplos en Keras: relu aquí, softmax al final, y a correr. Ingenuo de mí. No fue hasta que mis modelos empezaron a estancarse sin razón aparente, o a aprender de forma extraña, cuando me di cuenta de que esas pequeñas funciones son, en realidad, el motor silencioso que decide si tu red entiende o no lo que le estás pidiendo.
No son solo un interruptor on/off
Mira, una red neuronal sin funciones de activación no es más que una serie de operaciones lineales. Y si todo es lineal, no importa cuántas capas pongas, el resultado final siempre podrá representarse como una sola operación lineal gigante. ¿Qué significa esto? Que tu red solo podría aprender relaciones lineales, y el mundo real está lejos de ser lineal. Piensa en clasificar imágenes: un gato no es una suma ponderada de píxeles; hay texturas, formas, oclusiones. Aquí es donde entra la magia de estas funciones.
En su esencia, una función de activación toma la salida de una neurona (después de la suma ponderada de las entradas más el bias) y la transforma, introduciendo no linealidad. Es como si cada neurona tuviera su propio filtro para decidir qué tan