La función softmax (función exponencial normalizada) es una generalización de la función sigmoidea y popularizada por las redes neuronales convolucionales. Se usa como función de activación de salida para la clasificación multiclase porque escala las entradas precedentes de un rango entre 0 y 1 y normaliza la capa de salida, de modo que la suma de todas las neuronas de salida sea igual a uno. Se considera a esta función como una distribución de probabilidad categórica, esto le permite comunicar un grado de confianza en las predicciones de su clase. Es la generalización multiclase de la distribución de Bernoulli.
Matemáticamente la función es:
donde z es un vector de las entradas a la capa de salida (si tiene 5 unidades de salida, entonces hay 5 elementos en z), j indexa las unidades de salida siendo j = 1, 2, …, k.
Por ejemplo, tomando como entrada el vector: [2 , 1, 0.1], se observa cómo normaliza el vector a la escala [0, 1].
σ (z 1 ) = e z 1 / (e z 1 + e z 2 + e z 3 ) = e 2 / (e 2 + e 1 + e 0,1 ) = 0,658
σ (z 2 ) = e z 2 / (e z 1 + e z 2 + e z 3 ) = e 1 / (e 2 + e 1 + e 0,1 ) = 0,242
σ (z 3 ) = e z 3 / (e z 1 + e z 2 + e z 3 ) = e 0,1 / (e 2 + e 1 + e 0,1 ) = 0,099
La suma de los resultados es 0,999, teniendo en cuenta el resto de decimales el resultado sería 1.