Los algoritmos de aprendizaje automático, como los clasificadores, modelan estadísticamente los datos de entrada, aquí, determinando las probabilidades de que la entrada pertenezca a diferentes categorías. Para un número arbitrario de clases, normalmente se agrega una capa softmax al modelo para que las salidas tengan propiedades probabilísticas por diseño:
y⃗ = softmax ( a⃗ ) ≡ 1∑yomi- unyo× [ e- un1, e- un2, . . . , e- unnorte]
0 ≤ yyo≤ 1 para todo i
y1+ y2+ . . . + ynorte= 1
Aquí, es la activación de la capa antes de la capa softmax.una
Esto es perfectamente válido para dos clases, sin embargo, también se puede usar una neurona (en lugar de dos) dado que su salida satisface:
0 ≤ y≤ 1 para todas las entradas.
Esto se puede asegurar si se aplica una transformación (diferenciable / suave para fines de propagación hacia atrás) que mapea a modo que se cumpla la condición anterior. La función sigmoide cumple con nuestros criterios. No tiene nada de especial, aparte de una simple representación matemática,
unay
sigmoide ( a ) ≡ σ( a ) ≡ 11 + e- un
propiedades matemáticas útiles (diferenciación, estar limitado entre 0 y 1, etc.), eficiencia computacional y tener la pendiente correcta de modo que la actualización de los pesos de la red tenga un cambio pequeño pero medible en la salida para fines de optimización.
Conclusión
No estoy seguro de si el razonamiento de @ itdxer que muestra softmax y sigmoide es equivalente si es válido, pero tiene razón al elegir 1 neurona en contraste con 2 neuronas para los clasificadores binarios, ya que se necesitan menos parámetros y cálculos. También me han criticado por usar dos neuronas para un clasificador binario ya que "es superfluo".