La fonction mathématique softmax peut être utilisée en machine learning pour convertir un score en probabilité dans un contexte de classification multi-classe.
Ainsi, si dans un contexte de classification d’objets nous obtenons :
- Un score de 1200 pour la probabilité que l’objet soit une pomme.
- Un score de 600 pour la probabilité que l’objet soit une orange.
- Un score de 200 pour la probabilité que l’objet soit une poire.
- Un score nul pour les autres probabilités.
L’application de la fonction softmax permettra de générer un score de probabilité normalisé, dont la somme totale des probabilités sera égale à 100%, soit 1.
Les résultats de la fonction softmax nous donneront :
- pomme: 0.6
- orange : 0.3
- poire : 0.1
D’un point de vue mathématique, voici l’équation de la fonction softmax :
pour tout :.
La fonction d’activation softmax est un élément important dans la conception d’un réseau de neurones. A l’origine, la fonction d’activation a pour rôle de casser la linéarité entre deux couches successives et de remettre les valeurs d’une couche dans un intervalle donné. Le second cas d’usage concerne davantage la fonction softmax, car le cadre d’utilisation de cette fonction est celui du problème de classification multi-classe.
Nous pouvons également revenir aux origines du nom de softmax. Il s’agit en réalité d’une approximation de la fonction Argmax en une fonction lisse. Plus précisément, softmax est une approximation dérivable de la version One-Hot-Encoded de Argmax, autrement dit, la fonction softmax permet de calculer Argmax de manière “soft”.