Función SoftMax: Activación para la clasificación
Actualizado: 2026-05-03
La función Softmax es la función de activación estándar para la capa de salida en problemas de clasificación multiclase. Transforma un vector de valores arbitrarios — llamados logits — en una distribución de probabilidad donde todos los valores son positivos y suman exactamente 1. Es la base matemática de todo modelo que emite distribuciones sobre categorías discretas, desde clasificadores de imágenes hasta modelos de lenguaje.
Puntos clave
- Softmax convierte un vector de K logits en K probabilidades que suman 1.
- La función amplifica las diferencias: el logit más alto recibe desproporcionadamente más probabilidad.
- Se empareja siempre con la función de pérdida de entropía cruzada (cross-entropy loss) durante el entrenamiento.
- No es adecuada para clasificación binaria (usa sigmoide) ni para regresión (usa función lineal).
- En modelos de lenguaje, Softmax sobre el vocabulario es la operación final que produce la distribución de probabilidad sobre el siguiente token.
La fórmula y su interpretación
Para un vector de entrada z = (z₁, z₂, …, z_K) de K logits, la función Softmax produce el vector de probabilidades σ donde:
$$sigma(z_j) = frac{e^{z_j}}{sum_{k=1}^{K} e^{z_k}}, quad j = 1, ldots, K$$
Propiedades inmediatas:
- Positividad: exponenciar siempre produce valores positivos, independientemente del signo del logit.
- Normalización: la división por la suma garantiza que el vector resultante sea una distribución de probabilidad válida.
- Monotonía relativa: si zᵢ > zⱼ, entonces σ(zᵢ) > σ(zⱼ) — el orden de preferencia se preserva.
- Amplificación de diferencias: pequeñas diferencias en los logits se amplifican en la distribución de probabilidad, especialmente cuando los logits tienen magnitudes grandes.
La función no es lineal: la probabilidad de cada clase depende de todos los logits simultáneamente a través de la suma del denominador.

Softmax y entropía cruzada: el par inseparable
En la práctica, Softmax nunca se usa sola durante el entrenamiento — siempre va acompañada de la función de pérdida de entropía cruzada:
$$L = -sum_{k=1}^{K} y_k log(sigma(z_k))$$
Donde y es el vector one-hot de la etiqueta real (un 1 en la clase correcta, 0 en el resto). Esta pérdida penaliza el modelo cuando asigna baja probabilidad a la clase correcta. La combinación Softmax + entropía cruzada tiene una propiedad matemática elegante: su gradiente respecto a los logits es simplemente σ(z) – y, lo que hace la retropropagación numéricamente estable y eficiente.
En la mayoría de frameworks de deep learning (PyTorch, TensorFlow/Keras), existe una función CrossEntropyLoss que combina internamente LogSoftmax con NLLLoss para mayor estabilidad numérica — evita el underflow que puede ocurrir al exponenciar logits muy negativos.
Aplicaciones en clasificación de imágenes, texto y voz
Clasificación de imágenes. La última capa de una CNN de clasificación (ResNet, EfficientNet, ViT) aplica Softmax sobre los K logits de salida, donde K es el número de clases. Un clasificador de ImageNet produce 1000 probabilidades con Softmax.
Modelos de lenguaje. GPT, BERT, y cualquier modelo autoregresivo aplica Softmax sobre un vocabulario de 30.000-100.000 tokens para producir la distribución sobre el siguiente token. La escala del denominador en estos modelos hace que la implementación eficiente (con técnicas como FlashAttention) sea crítica. Ver avances en NLP.
Clasificación de texto y voz. Análisis de sentimiento (positivo/negativo/neutro), clasificación de intención en sistemas de diálogo, identificación de idioma — todos usan Softmax en la capa de salida.
Ventajas y limitaciones
Ventajas:
- Produce probabilidades directamente interpretables, no solo scores arbitrarios.
- Su derivada combinada con entropía cruzada es numéricamente estable y computacionalmente simple.
- Compatible con calibración probabilística: un modelo bien entrenado puede producir probabilidades que se corresponden con frecuencias reales.
Limitaciones:
- No apta para clasificación binaria: para dos clases, la sigmoide es más eficiente (Softmax sobre dos logits es matemáticamente equivalente pero redundante).
- Exageración de diferencias: si los logits tienen magnitudes muy grandes, Softmax puede asignar casi toda la probabilidad a una clase, lo que genera predicciones de alta confianza que no siempre se corresponden con la realidad. Se mitiga con temperature scaling.
- No diseñada para clases múltiples simultáneas (multilabel): si una instancia puede pertenecer a varias clases a la vez, la función sigmoide por clase es la elección correcta, no Softmax.
Temperature scaling. Dividir los logits por una temperatura T antes de aplicar Softmax controla la “confianza” de las predicciones: T > 1 suaviza la distribución (más incertidumbre); T < 1 la agudiza. Esta técnica es fundamental en los modelos de lenguaje generativo para controlar la creatividad vs. la coherencia del texto generado.
Para ver el rol de Softmax en el contexto más amplio de funciones de activación, ver formulación matemática de redes neuronales artificiales y función lineal como función de activación. Para aplicaciones prácticas en clasificación de imágenes y visión, ver análisis de imágenes y visión computarizada.
Conclusión
La función Softmax es el puente entre la lógica interna de una red neuronal y la toma de decisiones interpretable: convierte números arbitrarios en probabilidades que suman exactamente 1. Su omnipresencia en clasificación multiclase y modelos de lenguaje la convierte en una función que cualquier practicante de deep learning debe entender a fondo. Conocer sus limitaciones — especialmente la sobreconfianza con logits grandes y la incompatibilidad con etiquetado múltiple — es tan importante como saber aplicarla correctamente.