L'application de la fonction softmax sur un vecteur produira des "probabilités" et des valeurs comprises entre et .
Mais nous pouvons également diviser chaque valeur par la somme du vecteur et cela produira des probabilités et des valeurs comprises entre et .
J'ai lu la réponse ici mais il dit que la raison est parce que c'est différentiable, bien que les deux fonctions soient différenciables.
Réponses:
La fonction que vous proposez a une singularité chaque fois que la somme des éléments est nulle.
Supposons que votre vecteur soit . Ce vecteur a une somme de 0, donc la division n'est pas définie. La fonction n'est pas différenciable ici.[ -1 , 13, 23]
De plus, si un ou plusieurs des éléments du vecteur sont négatifs mais que la somme est non nulle, votre résultat n'est pas une probabilité.
Supposons que votre vecteur soit . Cela a une somme de 1, donc l'application de votre fonction donne , qui n'est pas un vecteur de probabilité car il a des éléments négatifs et des éléments dépassant 1.[ - 1 , 0 , 2 ] [ - 1 , 0 , 2 ]
En adoptant une vue plus large, nous pouvons motiver la forme spécifique de la fonction softmax dans la perspective d'étendre la régression logistique binaire au cas de trois résultats catégoriels ou plus.
Faire des choses comme prendre des valeurs absolues ou des carrés, comme suggéré dans les commentaires, signifie que et ont la même probabilité prédite; cela signifie que le modèle n'est pas identifié . En revanche,- x X exp ( x ) xexp( x ) est monotone et positif pour tout réel , donc le résultat softmax est (1) un vecteur de probabilité et (2) le modèle logistique multinomial est identifié.X
la source
Softmax a deux composantes:
Transformez les composants en e ^ x. Cela permet au réseau neuronal de fonctionner avec des probabilités logarithmiques, au lieu de probabilités ordinaires. Cela transforme l'opération courante de multiplication des probabilités en addition, ce qui est beaucoup plus naturel pour la structure basée sur l'algèbre linéaire des réseaux de neurones.
Normalisez leur somme à 1, car c'est la probabilité totale dont nous avons besoin.
Une conséquence importante de cela est que le théorème de bayes est très naturel pour un tel réseau, car il s'agit simplement d'une multiplication de probabilités normalisées par le dénominateur.
Le cas trivial d'un réseau monocouche avec activation softmax équivaut à une régression logistique.
Le cas particulier du softmax à deux composants équivaut à l'activation sigmoïde, qui est donc populaire lorsqu'il n'y a que deux classes. Dans la classification multi-classes, softmax est utilisé si les classes sont mutuellement exclusives et sigmoïde par composant est utilisé si elles sont indépendantes.
la source