Ultralytics YOLO27: Únete a la lista de espera.
Licencia YOLO
Volver al glosario de Ultralytics

Activation Function

Una función de activación es la función no lineal que una neurona aplica a su entrada ponderada, lo que permite a las redes aprender patrones curvos. Compara las opciones más habituales.

Una función de activación es la función que una neurona de una red neuronal (NN) aplica a la suma ponderada de sus entradas para producir su salida. Su función esencial es añadir no linealidad: sin ella, cualquier pila de capas se reduce a una única transformación lineal y la profundidad no aporta nada. Con ella, una red puede representar fronteras de decisión curvas, desde los trazos de los dígitos manuscritos hasta el contorno de un peatón en la imagen de una cámara. Las funciones de activación cumplen dos funciones. En las capas ocultas, funciones como ReLU, SiLU y GELU permiten que la red aprenda características. En la capa de salida, funciones como sigmoid y softmax convierten las puntuaciones sin procesar en probabilidades.

Por qué las redes necesitan no linealidad#

Una capa sin función de activación calcula Wx + b. Dos capas de este tipo producen W₂(W₁x + b₁) + b₂, que equivale a (W₂W₁)x + (W₂b₁ + b₂), es decir, otra única capa lineal. Una función de activación entre las capas evita esta reducción, y el teorema de aproximación universal demuestra que una capa oculta con suficientes unidades no lineales puede aproximar cualquier función continua en un dominio acotado.

La derivada de la función de activación es tan importante como su forma, porque la retropropagación multiplica estas derivadas capa a capa. La derivada de sigmoid nunca supera 0,25 y la de tanh se aproxima a cero para entradas grandes, por lo que los gradientes se reducen al pasar por muchas capas saturantes: es el problema del desvanecimiento del gradiente. La derivada de ReLU es exactamente 1 para cada entrada positiva, una de las principales razones por las que se volvió práctico entrenar redes muy profundas.

Funciones de activación habituales#

  • ReLU: max(0, x). Es barata, tiene un gradiente de 1 para las entradas positivas y devuelve exactamente cero para las negativas. Desde AlexNet, en 2012, ha sido la función de activación oculta predeterminada de las CNN, pero las unidades que solo reciben entradas negativas dejan de aprender.
  • Leaky ReLU: Multiplica las entradas negativas por una pendiente pequeña, como 0,01 o 0,1, para que todas las unidades mantengan un gradiente.
  • SiLU (Swish): x · σ(x), una curva suave que desciende ligeramente por debajo de cero con las entradas negativas. Es habitual en CNN eficientes y detectores en tiempo real.
  • GELU: x · Φ(x), donde Φ es la función de distribución acumulada normal estándar. Es la función de activación habitual en BERT, GPT-2 y los transformers de visión.
  • Tanh: Comprime las entradas en el intervalo de −1 a 1 en torno a cero. Da forma al estado oculto de redes recurrentes como GRU.
  • Sigmoid: Comprime las entradas en el intervalo de 0 a 1, lo que resulta adecuado para salidas binarias y multietiqueta, así como para las puertas de las células recurrentes.
  • Softmax: Convierte un vector completo de puntuaciones en una distribución de probabilidad cuya suma es 1, para la clasificación de una sola etiqueta y los pesos de atención.
  • SwiGLU: Capa con compuerta que multiplica una proyección activada con SiLU por una segunda proyección aprendida. Ha sustituido a la función de activación simple en las capas de propagación hacia delante de muchos modelos de lenguaje grandes (LLM) recientes.

PyTorch ofrece cada función elemento a elemento como un módulo en torch.nn, así que es fácil compararlas con las mismas entradas:

import torch
from torch import nn

x = torch.tensor([-3.0, -1.0, 0.0, 1.0, 3.0])

# Common activations, each applied element-wise to the same inputs
activations = {
    "ReLU": nn.ReLU(),
    "Leaky ReLU": nn.LeakyReLU(0.1),
    "SiLU": nn.SiLU(),
    "GELU": nn.GELU(),
    "Tanh": nn.Tanh(),
    "Sigmoid": nn.Sigmoid(),
}
for name, act in activations.items():
    print(f"{name:>10}: {[round(v, 3) for v in act(x).tolist()]}")

Para las entradas −3, −1, 0, 1 y 3, ReLU imprime [0.0, 0.0, 0.0, 1.0, 3.0] y Leaky ReLU, [-0.3, -0.1, 0.0, 1.0, 3.0]. SiLU produce [-0.142, -0.269, 0.0, 0.731, 2.858] y GELU, [-0.004, -0.159, 0.0, 0.841, 2.996]: ambas dejan pasar los valores negativos pequeños y se acercan a ReLU con entradas grandes. Tanh produce [-0.995, -0.762, 0.0, 0.762, 0.995] y sigmoid, [0.047, 0.269, 0.5, 0.731, 0.953]; ambas se aplanan en ±3, donde sus gradientes ya son pequeños.

Cómo elegir una función de activación#

Las capas ocultas suelen seguir las convenciones de la familia de arquitecturas, mientras que la capa de salida depende de la tarea. Softmax es adecuada para tareas en las que cada entrada pertenece exactamente a una clase, sigmoid es adecuada para etiquetas que pueden darse a la vez, y las salidas de regresión no utilizan ninguna función de activación, para que puedan tomar cualquier valor. El hardware también puede limitar la elección: algunos aceleradores de borde solo ejecutan de forma nativa funciones sencillas, como ReLU, Leaky ReLU y Hard-Swish. YOLO26 aplica SiLU después de la convolución y la normalización por lotes de cada bloque Conv, puntúa cada clase de detección con una función sigmoid independiente para que las puntuaciones de clase de una caja no tengan que sumar 1 y aplica softmax a las 1.000 clases de ImageNet en sus modelos de clasificación.

  • Función de pérdida: La función de activación determina la salida de cada neurona durante la pasada hacia delante, y la función de pérdida compara la predicción final de la red con la etiqueta. Las bibliotecas suelen integrar la última función de activación en la función de pérdida, como hace CrossEntropyLoss con softmax, para mejorar la estabilidad numérica.
  • Normalización por lotes: La normalización por lotes o por capas reescala las activaciones a un intervalo estable mediante estadísticas y parámetros aprendidos. Se sitúa junto a la función de activación, normalmente justo antes, y no añade no linealidad por sí misma.
  • Activaciones: Como sustantivo plural, las activaciones son los valores de salida que produce una capa. «No linealidad» y el término más antiguo «función de transferencia» son sinónimos de función de activación. Durante el entrenamiento, los frameworks guardan en memoria las activaciones de todas las capas para la pasada hacia atrás; por eso, la recomputación de gradientes ahorra memoria descartando algunas activaciones y volviendo a calcularlas durante la retropropagación.

Explora las soluciones

Visión artificial en el deporte

Visión artificial en el deporte

Descubre cómo Ultralytics YOLO impulsa la visión artificial en el deporte con el seguimiento de jugadores y balones, analíticas de rendimiento, información útil para entrenadores y rehabilitación de deportistas.
Más información
Visión artificial para imágenes aéreas

Visión artificial para imágenes aéreas

Convierte imágenes aéreas y de drones en información útil en tiempo real para la agricultura, la acuicultura, la conservación y el análisis geoespacial con Ultralytics YOLO.
Más información
Visión artificial en el sector aeroespacial

Visión artificial en el sector aeroespacial

Aplica la visión artificial en el sector aeroespacial con Ultralytics YOLO para inspeccionar aeronaves, detectar objetos extraños en pistas, gestionar operaciones en tierra y detectar defectos en materiales compuestos.
Más información
Visión artificial en seguridad

Visión artificial en seguridad

Protege todas tus instalaciones con los modelos Ultralytics YOLO. La IA visual permite supervisar perímetros, detectar amenazas, reconocer matrículas y mejorar la seguridad laboral.
Más información
Visión artificial en robótica

Visión artificial en robótica

Potencia máquinas más inteligentes con los modelos Ultralytics YOLO. La IA visual en robótica impulsa la navegación autónoma, la percepción, el seguimiento de objetos y el control en tiempo real.
Más información
Visión artificial en logística

Visión artificial en logística

Agiliza la logística con modelos Ultralytics YOLO. La IA visual permite inspeccionar paquetes, clasificarlos, realizar el seguimiento de vehículos y supervisar la seguridad del almacén en tiempo real.
Más información
Visión artificial en el comercio minorista

Visión artificial en el comercio minorista

Reinventa el comercio minorista con modelos Ultralytics YOLO. La IA visual permite realizar el seguimiento del inventario, supervisar estanterías, gestionar colas y obtener información más útil sobre los clientes.
Más información
Visión artificial en el sector sanitario

Visión artificial en el sector sanitario

Desarrolla soluciones sanitarias con modelos Ultralytics YOLO. La IA visual en el sector sanitario permite acelerar el diagnóstico por imagen, mejorar los diagnósticos y supervisar a los pacientes.
Más información
Visión artificial en la fabricación

Visión artificial en la fabricación

Optimiza la fabricación con modelos Ultralytics YOLO. La IA visual mejora el control de calidad, la detección de defectos, el cumplimiento de las normas de uso de EPI y la automatización de las líneas de montaje.
Más información
Visión artificial en la automoción

Visión artificial en la automoción

Aplica la visión artificial al sector de la automoción con modelos Ultralytics YOLO. La IA visual mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para lograr carreteras más inteligentes.
Más información
Visión artificial en la agricultura

Visión artificial en la agricultura

Incorpora la IA de visión a la agricultura inteligente con modelos Ultralytics YOLO. Impulsa la monitorización de cultivos, el seguimiento del ganado y la agricultura de precisión para obtener cosechas más abundantes e inteligentes.
Más información

¡Construyamos juntos el futuro de la IA!

Inicia tu recorrido hacia el futuro del aprendizaje automático