Régression softmax
La régression softmax est un modèle linéaire qui attribue des probabilités à classes mutuellement exclusives, couramment utilisé pour la classification à étiquette unique. Elle produit pour chaque classe un score non normalisé, appelé logit :
Suivons un exemple à trois classes, de logits . Leurs exponentielles sont , de somme . En divisant chaque terme par , on obtient les probabilités .
La fonction softmax transforme les logits en valeurs non négatives dont la somme vaut un :
Pour assurer la stabilité numérique, les implémentations soustraient le plus grand logit avant l’exponentiation. Cette opération ne change pas le résultat, car softmax est invariante lorsqu’on ajoute la même constante à tous les logits. À l’inférence, argmax peut s’appliquer directement aux logits, car softmax préserve leur ordre.
Entropie croisée
Pour une cible encodée one-hot , l’entropie croisée par exemple vaut (où désigne la probabilité attribuée à la classe observée)
Supposons que la deuxième classe soit correcte : la cible one-hot est . Seule sa probabilité entre dans la perte : . Le modèle favorise la première classe, mais augmenter la probabilité de la deuxième réduirait cette perte.
Minimiser cet objectif revient à maximiser la vraisemblance conditionnelle des étiquettes de classe observées sous le modèle.
L’entropie croisée en théorie de l’information compare une distribution cible à une distribution prédictive. Ici , one-hot, est la cible empirique d’une observation et la prédiction. Avec les logarithmes naturels, la perte est en nats. Cela ne signifie pas que la distribution conditionnelle réelle des classes dans la population soit elle-même one-hot.
Perte stable et gradient
Pour variables, est de forme , de longueur , et un lot de lignes produit logits. Notons l’indice de la classe correcte, distinct du vecteur one-hot . La dérivation du softmax donne
Calculer cette expression log-sum-exp ou utiliser une entropie croisée fusionnée recevant les logits. Prendre le logarithme de probabilités déjà arrondies peut produire un infini, même après un softmax stable.
Dans le même exemple, et : la perte stable vaut . Ajouter à tous les logits s’annule dans cette expression et laisse la perte et les probabilités inchangées.
Soustrayons la cible à la prédiction pour obtenir le sens de la correction :
La deuxième composante, négative, appelle une hausse du logit correct ; les composantes positives appellent une baisse des autres scores. Un pas de descente de gradient sur ces logits soustrait un multiple positif de ce vecteur.
Pour relier les logits aux paramètres entraînables, dérivez puis utilisez :
Il s’agit de la différentiation en mode inverse à travers les logits affines : le gradient de perte remonte et est multiplié par l’entrée correspondante. La formule matricielle rassemble ces dérivées coordonnées. La perte moyenne d’un lot a pour gradient la moyenne de ces gradients individuels.
Limites d’utilisation
- Multiclasse mutuellement exclusive : la régression softmax modélise couramment une seule étiquette de classe par exemple. La fonction softmax a aussi d’autres usages, comme le calcul des poids d’attention.
- Multilabel : utiliser des sorties indépendantes, généralement des probabilités sigmoïdes avec une perte binaire, lorsque plusieurs étiquettes peuvent être vraies simultanément.
- Règle de décision :
argmaxsélectionne une classe, mais des coûts asymétriques peuvent exiger une autre règle. - Qualité des probabilités : une bonne exactitude de classification n’implique pas que les probabilités soient calibrées.
- Frontière linéaire : les relations non linéaires entre variables exigent des transformations ou un modèle plus expressif.
Comparez les résultats aux fréquences des classes et à une référence simple, puis examinez une matrice de confusion et les erreurs par classe. L’exactitude agrégée peut masquer de mauvaises performances sur les classes rares ou importantes.
Poursuivez avec le perceptron multicouche pour introduire des représentations cachées non linéaires. Consultez Dive into Deep Learning: Linear Neural Networks for Classification pour les dérivations et les implémentations maintenues.