Glosario

Softmax

Descubre cómo Softmax transforma las puntuaciones en probabilidades para las tareas de clasificación en IA, potenciando el reconocimiento de imágenes y el éxito en PNL.

Entrena los modelos YOLO simplemente
con Ultralytics HUB

Saber más

Softmax es una función de activación crucial que se suele utilizar en la capa de salida de las redes neuronales (RN), sobre todo para problemas de clasificación multiclase. Su función principal es convertir un vector de puntuaciones brutas (a menudo denominadas logits) generadas por la capa anterior en una distribución de probabilidad sobre múltiples clases potenciales. Cada valor de salida representa la probabilidad de que la entrada pertenezca a una clase específica y, lo que es más importante, estas probabilidades suman 1, lo que hace que la salida sea fácilmente interpretable como niveles de confianza para resultados mutuamente excluyentes.

Cómo funciona Softmax

Conceptualmente, la función Softmax toma las puntuaciones de salida brutas de una capa de la red neuronal y las transforma. Para ello, primero exponencia cada puntuación, lo que hace que todos los valores sean positivos y enfatiza más las puntuaciones más altas. A continuación, normaliza estas puntuaciones exponenciadas dividiendo cada una de ellas por la suma de todas las puntuaciones exponenciadas. Este paso de normalización garantiza que los valores resultantes se sitúen entre 0 y 1 y sumen colectivamente 1, creando así una distribución de probabilidad entre las distintas clases. La clase correspondiente al valor de probabilidad más alto suele elegirse como predicción final del modelo. Este proceso es fundamental en los modelos de aprendizaje profundo (AD) que se ocupan de tareas de clasificación.

Características principales

  • Distribución de probabilidad: Las salidas representan probabilidades para cada clase, que siempre suman 1.
  • Enfoque Multiclase: Diseñado específicamente para escenarios en los que una entrada sólo puede pertenecer a una de varias clases posibles (mutuamente excluyentes).
  • Interpretación de la salida: Hace que la salida del modelo sea intuitiva, representando el nivel de confianza de cada clase.
  • Diferenciabilidad: Suave y diferenciable, lo que permite utilizarla eficazmente con algoritmos de optimización basados en el gradiente, como el descenso de gradiente, durante el entrenamiento del modelo.

Softmax vs. Funciones de activación relacionadas

Es importante distinguir Softmax de otras funciones de activación:

  • Sigmoide: Aunque Sigmoide también da salida a valores entre 0 y 1, se suele utilizar para clasificación binaria (una neurona de salida) o clasificación multietiqueta (múltiples neuronas de salida en las que cada salida representa una probabilidad independiente, y la suma no es necesariamente igual a 1). Softmax se utiliza cuando las clases son mutuamente excluyentes. Puedes encontrar más detalles en recursos como los apuntes de Stanford CS231n.
  • ReLU (Unidad Lineal Rectificada): ReLU y sus variantes como Leaky ReLU o SiLU se utilizan principalmente en las capas ocultas de las redes neuronales para introducir no linealidad. No producen salidas de tipo probabilístico adecuadas para la capa de clasificación final. DeepLearning.AI ofrece cursos que explican las funciones de activación en las redes neuronales.

Aplicaciones en IA y Aprendizaje Automático

Softmax se emplea ampliamente en diversos ámbitos de la IA y el Aprendizaje Automático (AM ):

Consideraciones

Aunque potente, Softmax puede ser sensible a puntuaciones de entrada muy grandes, lo que puede provocar inestabilidad numérica (desbordamiento o subdesbordamiento). Los marcos modernos de aprendizaje profundo como PyTorch y TensorFlow implementan versiones numéricamente estables de Softmax para mitigar estos problemas. Comprender su comportamiento es crucial para un entrenamiento e interpretación eficaces de los modelos, a menudo facilitado por plataformas como Ultralytics HUB para gestionar experimentos y despliegues.

Leer todo