Fonction softmax

En mathématiques, la fonction softmax, ou fonction exponentielle normalisée, est une généralisation de la fonction logistique qui prend en entrée un vecteur de K nombres réels et qui en sort un vecteur de K nombres réels strictement positifs et de somme 1.

La fonction est définie par :

pour tout .

C'est-à-dire que la composante j du vecteur est égale à l'exponentielle de la composante j du vecteur z divisée par la somme des exponentielles de toutes les composantes de z.

En théorie des probabilités, la sortie de la fonction softmax peut être utilisée pour représenter une loi catégorielle – c’est-à-dire une loi de probabilité sur K différents résultats possibles.

La fonction softmax est également connue pour être utilisée dans diverses méthodes de classification en classes multiples, par exemple dans le cas de réseaux de neurones artificiels.

Exemple

Considérons un vecteur

de six nombres réels. La fonction softmax donne en sortie (tronquée à 10-2) :

.

Régression logistique

Une utilisation courante de la fonction softmax apparaît dans le champ de l'apprentissage automatique, en particulier dans la régression logistique : on associe à chaque possibilité de sortie un score, que l'on transforme en probabilité avec la fonction softmax. L'intérêt de cette fonction est qu'elle est différentiable, et s'avère donc compatible avec l'algorithme du gradient.

Concrètement, on a en entrée un vecteur, qui est donc une matrice colonne, notée x, de N lignes. On va la multiplier par une matrice dite « de poids » W de T lignes et de N colonnes, afin de transformer x en un vecteur de T éléments (appelés logits). La fonction softmax est utilisée pour transformer les logits dans un vecteur de probabilités, indiquant la probabilité que x appartienne à chacune des classes de sortie T.

Par exemple, si on donne en entrée la couleur des pixels d'une image de chat, on aura pour chaque ligne de W des nombres, des « poids », propres à chaque animal, et ainsi chaque logit sera le score d'un animal. Si le score du chat est le plus important, alors la probabilité donnée par la fonction softmax que l'image est un chat sera la plus importante, d'après l'étude de la couleur des pixels. Mais on peut travailler sur d'autres caractéristiques, et ainsi obtenir d'autres probabilités, afin de déterminer l'animal sur la photo. Au fur et à mesure que l'intelligence artificielle aura d'exemples, plus la matrice de poids s'affinera, et plus le système sera performant : on parle d'apprentissage automatique.

Lien avec la physique statistique

En physique statistique, la distribution de Maxwell est essentiellement une application de la fonction softmax aux niveaux d'énergie Ei possibles :

En substance, l'idée est qu'un système en équilibre thermodynamique avec un environnement avec lequel il échange constamment de l'énergie, tendra à occuper les états d'énergie les plus bas, mais que cette tendance sera tout de même contrariée par le facteur β, dit de température inverse. Le choix d'une température inverse revient en fait à choisir une base d'exponentielle pour la fonction softmax, qui garde néanmoins sa propriété de construction fondamentale.

Ceci est la raison pour laquelle en apprentissage automatique, un paramètre de température est introduit pour choisir le niveau d'uniformité de la distribution : plus la température sera élevée, plus les possibilités seront équiprobables, tandis qu'avec une température faible, les valeurs d'énergie faibles seront considérablement plus probables que toutes les autres.

Voir aussi

Notes et références

(en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Softmax function » (voir la liste des auteurs).
    • Portail des mathématiques
    • Portail des neurosciences
    • Portail de l’informatique
    Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.