L'entropie croisée est un concept fondamental en théorie de l'information et en apprentissage automatique, servant de fonction de perte pour les problèmes de classification. Elle quantifie la dissimilarité entre deux distributions de probabilité : la distribution réelle (souvent les étiquettes de vérité terrain) et la distribution prédite (sortie d'un modèle). Dans le contexte des réseaux de neurones, l'entropie croisée est largement utilisée pour entraîner des modèles à des tâches telles que la classification d'images, le traitement du langage naturel et la reconnaissance vocale.
Définition
Pour deux distributions de probabilité \(p\) (réelle) et \(q\) (prédite) sur un ensemble discret d'événements, l'entropie croisée est définie comme :
\[ H(p, q) = -\sum_{x} p(x) \log q(x) \]
En classification, \(p\) est typiquement un vecteur encodé one-hot où la classe réelle a une probabilité de 1 et les autres de 0, et \(q\) est la sortie de probabilités du modèle (par exemple, à partir d'une couche softmax). L'entropie croisée se simplifie alors en la log-vraisemblance négative de la classe réelle, souvent écrite comme :
\[ L = -\log q(y_{\text{true}}) \]
où \(y_{\text{true}}\) est l'index de la classe correcte.
Rôle dans l'apprentissage automatique
L'entropie croisée est la fonction de perte standard pour la classification multi-classes. Elle pénalise les prédictions incorrectes avec une haute confiance, encourageant le modèle à attribuer une probabilité élevée à la classe correcte. Contrairement à l'erreur quadratique moyenne, l'entropie croisée fonctionne bien avec les sorties softmax car elle fournit des gradients plus forts lorsque les prédictions sont fausses, conduisant à une convergence plus rapide. Elle est étroitement liée à la divergence de Kullback-Leibler, qui mesure l'entropie relative entre deux distributions ; minimiser l'entropie croisée équivaut à minimiser la divergence KL lorsque la distribution réelle est fixe.
Applications
L'entropie croisée est utilisée dans divers domaines de l'apprentissage automatique. En apprentissage profond, c'est la perte par défaut pour les réseaux de classification, y compris les réseaux de neurones convolutifs (CNN) pour la reconnaissance d'images et les réseaux récurrents pour les tâches séquentielles. En traitement du langage naturel, elle est employée dans la modélisation du langage, où le modèle prédit le jeton suivant dans une séquence, et dans les architectures basées sur les transformeurs comme celles utilisées dans les grands modèles de langage. De plus, l'entropie croisée est utilisée en apprentissage par renforcement pour les méthodes de gradient de politique et en apprentissage non supervisé pour les autoencodeurs variationnels.
Variations et extensions
Plusieurs variations de l'entropie croisée existent pour répondre à des défis spécifiques. L'entropie croisée catégorique gère la classification multi-classes, tandis que l'entropie croisée binaire est utilisée pour les tâches de classification binaire. L'entropie croisée pondérée attribue différents poids aux classes pour gérer les ensembles de données déséquilibrés. La perte focale, une modification de l'entropie croisée, réduit le poids des exemples faciles pour se concentrer sur les difficiles, améliorant les performances en détection d'objets. Dans la distillation de connaissances, une version adoucie de l'entropie croisée (utilisant un réglage de température) transfère les connaissances d'un grand modèle enseignant à un plus petit modèle étudiant.
Relation avec d'autres concepts
L'entropie croisée est profondément liée à la théorie de l'information, où elle représente le nombre moyen de bits nécessaires pour encoder des événements de la distribution \(p\) en utilisant un code optimisé pour \(q\). En apprentissage automatique, elle est souvent associée à la fonction d'activation softmax, qui convertit les logits bruts en probabilités. La combinaison de softmax et d'entropie croisée est numériquement stable et efficace, car le gradient se simplifie en la différence entre la probabilité prédite et l'étiquette réelle. Cette propriété en fait un choix privilégié dans la plupart des frameworks modernes de réseaux de neurones.
Contexte historique
Le concept d'entropie croisée provient des travaux de Claude Shannon sur la théorie de l'information dans les années 1940. Il a ensuite été adopté en mécanique statistique puis en apprentissage automatique. L'utilisation de l'entropie croisée comme fonction de perte est devenue importante avec l'essor des réseaux de neurones dans les années 1980 et 1990, notamment grâce à l'algorithme de rétropropagation. Aujourd'hui, c'est une pierre angulaire de l'apprentissage supervisé, implémentée dans toutes les principales bibliothèques d'apprentissage profond telles que TensorFlow et PyTorch.
Voir aussi
- fonctions de perte
- Softmax Function
- réseau de neurones
- classification
- théorie de l'information
- apprentissage profond
- apprentissage automatique
- divergence de Kullback-Leibler
- perte focale
- distillation de connaissances
- rétropropagation
- TensorFlow
- PyTorch