Traduit de l'anglais

Le dropout est une technique de régularisation visant à réduire le surapprentissage dans les réseaux de neurones artificiels en mettant aléatoirement à zéro les entrées ou sorties des neurones pendant l'entraînement, et non lors de l'inférence. Elle empêche les co-adaptations complexes sur les données d'entraînement.

Le dropout est une technique de régularisation utilisée dans les réseaux de neurones artificiels pour réduire le sur-apprentissage en empêchant les co-adaptations complexes sur les données d'entraînement. La technique consiste à mettre aléatoirement à zéro les entrées et/ou sorties des neurones pendant le processus d'entraînement, et non pendant l'inférence. En retirant temporairement des unités du réseau, le dropout force les unités restantes à apprendre des caractéristiques plus robustes qui fonctionnent bien de manière isolée, plutôt que de dépendre de la présence d'autres unités spécifiques. Cette approche est devenue un outil standard dans le deep learning et le machine learning, en particulier pour l'entraînement de grands modèles où le sur-apprentissage est un risque significatif.

Le concept est étroitement lié à une technique plus ancienne appelée dilution, qui diminue aléatoirement les poids vers zéro. La dilution est généralement divisée en dilution faible et dilution forte, selon la fraction de connexions supprimées. Bien que le dropout soit souvent décrit comme un cas particulier de dilution, il diffère en ce qu'il supprime des nœuds entiers (des lignes dans la matrice de poids) plutôt que des poids individuels, ce qui a des implications pour l'analyse mathématique et l'implémentation pratique.

Développement historique

L'idée de perturber aléatoirement les connexions des réseaux de neurones a des racines dans des travaux antérieurs sur l'injection de bruit et la décroissance des poids. La dilution, en tant que précurseur du dropout, a été étudiée dans le contexte des réseaux de Hopfield et des modèles de mémoire associative durant les années 1980 et 1990. Les chercheurs ont observé que retirer aléatoirement une petite fraction des connexions pouvait améliorer la généralisation, bien que la compréhension théorique fût limitée.

Le dropout moderne a été introduit par Nitish Srivastava et Geoffrey Hinton à l'université de Toronto dans un article de 2012, avec un article de journal plus détaillé publié en 2014. La technique a gagné une attention généralisée après son application réussie dans des tâches de classification d'images, où elle a significativement réduit le sur-apprentissage par rapport aux méthodes précédentes. L'article de 2014 a rapporté des améliorations sur plusieurs ensembles de données de référence, y compris une réduction de l'erreur de test sur l'ensemble de données de chiffres manuscrits MNIST et l'ensemble de données d'images CIFAR-10.

Depuis son introduction, le dropout a été étendu et adapté sous diverses formes, y compris le dropout inversé, qui met à l'échelle les activations pendant l'entraînement pour maintenir des magnitudes de sortie cohérentes, et le dropout variationnel, qui applique une interprétation bayésienne à la technique. Ces variantes ont été incorporées dans de nombreuses architectures de réseaux de neurones et sont prises en charge par les principaux frameworks de machine learning.

Formulation mathématique

Dans un réseau linéaire généralisé, la sortie d'une couche de nœuds linéaires peut être décrite comme \( y_i = \sum_j w_{ij} x_j \), où \( y_i \) est la sortie du nœud \( i \), \( w_{ij} \) est le poids réel avant dilution (également appelé force de connexion de Hebb), et \( x_j \) est l'entrée du nœud \( j \). En notation vectorielle, cela s'écrit \( \mathbf{y} = \mathbf{W} \mathbf{x} \), où \( \mathbf{y} \) est le vecteur de sortie, \( \mathbf{W} \) est la matrice de poids, et \( \mathbf{x} \) est le vecteur d'entrée.

Pendant la dilution faible, la fraction finie de connexions supprimées est petite, donnant lieu à une incertitude minime. Ce cas limite peut être résolu exactement avec la théorie du champ moyen. Le poids dilué \( \hat{w}_{ij} \) est donné par \( \hat{w}_{ij} = c w_{ij} \), où \( c \) est une variable aléatoire suivant une distribution de probabilité \( P(c) \), représentant la probabilité de conserver un poids. Dans la dilution faible, seule une petite fraction fixe des poids est diluée, et lorsque le nombre de termes dans la somme tend vers l'infini, il reste infini, permettant d'appliquer la théorie du champ moyen.

La dilution forte se produit lorsque la fraction finie de connexions supprimées est grande, donnant lieu à une incertitude énorme. Dans ce régime, les hypothèses de la théorie du champ moyen peuvent ne plus tenir, et l'analyse devient plus complexe.

Le dropout est un cas particulier de l'équation de poids où une ligne entière de la matrice vectorielle est supprimée, plutôt que des poids individuels aléatoires. La ligne diluée \( \hat{\mathbf{w}}_j \) est donnée par \( \hat{\mathbf{w}}_j = c \mathbf{w}_j \), où \( c \) est la probabilité de conserver une ligne dans la matrice de poids. Parce que le dropout supprime une ligne entière, les hypothèses précédentes pour la dilution faible et l'utilisation de la théorie du champ moyen ne sont pas applicables.

Mécanisme et implémentation

Pendant l'entraînement, le dropout met aléatoirement à zéro une fraction des activations des neurones à chaque passage avant. Cette fraction, souvent appelée taux de dropout, est un hyperparamètre généralement fixé entre 0,2 et 0,5. Pour chaque exemple d'entraînement, un ensemble différent d'unités est supprimé, créant effectivement un ensemble de réseaux amincis qui partagent des poids. Au moment de l'inférence, toutes les unités sont utilisées, mais leurs sorties sont mises à l'échelle par la probabilité de conservation pour tenir compte du nombre accru d'unités actives.

Le processus par lequel un nœud est conduit à zéro, que ce soit en mettant les poids à zéro, en supprimant le nœud, ou par tout autre moyen, n'affecte pas le résultat final et ne crée pas un nouveau cas unique. Si le réseau de neurones est traité par un multiplicateur matriciel numérique haute performance, il est probablement plus efficace de conduire la valeur à zéro tard dans le graphe de processus. Si le réseau est traité par une implémentation matérielle contrainte, telle qu'un accélérateur AMD ou Intel, la méthode spécifique peut affecter l'efficacité mais pas le résultat.

En pratique, le dropout est appliqué plus souvent aux couches entièrement connectées qu'aux couches convolutionnelles, bien qu'il puisse être utilisé dans n'importe quelle partie du réseau. Pour les architectures de grands modèles de langage comme le transformeur, le dropout est souvent appliqué aux sorties des couches d'attention et des couches feed-forward, avec des taux généralement autour de 0,1. Les frameworks modernes tels que TensorFlow et PyTorch fournissent des couches de dropout intégrées qui gèrent la mise à l'échelle automatiquement.

Relation avec la dilution

La dilution et le dropout sont des techniques liées mais distinctes. La dilution diminue aléatoirement les poids vers zéro, tandis que le dropout met à zéro des activations entières de neurones. La dilution est généralement divisée en dilution faible et dilution forte, sans distinction claire sur la limite entre elles, souvent dépendante du précédent d'un cas d'utilisation spécifique et ayant des implications pour la résolution de solutions exactes.

Parfois, la dilution est utilisée pour ajouter du bruit d'amortissement aux entrées. Dans ce cas, la dilution faible fait référence à l'ajout d'une petite quantité de bruit d'amortissement, tandis que la dilution forte fait référence à l'ajout d'une plus grande quantité de bruit d'amortissement. Les deux peuvent être réécrites comme des variantes de la dilution des poids.

Ces techniques sont également parfois appelées élagage aléatoire des poids, mais il s'agit généralement d'une opération non récurrente à sens unique. Le réseau est élagué, puis conservé s'il constitue une amélioration par rapport au modèle précédent. La dilution et le dropout font tous deux référence à un processus itératif, où le réseau continue d'apprendre après l'application de la technique. En revanche, l'élagage des poids n'implique généralement pas que le réseau continue d'apprendre.

Avantages et limites

Le dropout offre plusieurs avantages dans l'entraînement des réseaux de neurones. Il réduit le sur-apprentissage en empêchant les co-adaptations complexes, où les neurones dépendent trop fortement d'autres neurones spécifiques. Cela conduit à une meilleure généralisation sur des données non vues. Le dropout agit également comme une forme de moyennage de modèles, car il entraîne un ensemble de réseaux amincis et moyenne leurs prédictions au moment de l'inférence. Cela peut améliorer la robustesse et réduire la variance des prédictions.

Cependant, le dropout a des limites. Il augmente le temps d'entraînement, car le réseau doit apprendre avec des unités manquantes aléatoirement, ce qui peut ralentir la convergence. Le taux de dropout doit être réglé soigneusement ; un taux trop élevé peut sous-apprendre, tandis qu'un taux trop faible offre peu d'avantage de régularisation. Le dropout est moins efficace pour les couches convolutionnelles avec des corrélations spatiales, où d'autres techniques comme la normalisation par lots ou la décroissance des poids peuvent être préférées.

Dans le contexte des systèmes de IA générative et d'intelligence artificielle, le dropout est souvent utilisé en conjonction avec d'autres méthodes de régularisation. Par exemple, dans les modèles basés sur le transformeur comme ceux développés par OpenAI et Google DeepMind, le dropout est appliqué aux poids d'attention et aux couches feed-forward pour prévenir le sur-apprentissage sur de grands ensembles de données.

Applications dans l'IA moderne

Le dropout est devenu un composant standard dans l'entraînement de réseaux de neurones profonds dans divers domaines. En vision par ordinateur, il est utilisé dans les réseaux convolutionnels pour la classification d'images et la détection d'objets. En traitement du langage naturel, il est appliqué dans les réseaux récurrents et les transformeurs pour des tâches comme la modélisation du langage et la traduction. En apprentissage par renforcement, le dropout peut être utilisé pour régulariser les réseaux de politiques et les fonctions de valeur.

Pour l'entraînement de grands modèles de langage, le dropout est souvent appliqué avec des taux faibles, car l'échelle massive des données et des paramètres du modèle fournit déjà une certaine régularisation. Cependant, il reste utile pour les modèles plus petits ou lorsque les données d'entraînement sont limitées. Des entreprises comme Anthropic et Amazon Web Services intègrent le dropout dans leurs pipelines d'entraînement pour divers services d'IA.

Le dropout trouve également des applications dans l'estimation de l'incertitude. En appliquant le dropout au moment de l'inférence, connu sous le nom de dropout Monte Carlo, les modèles peuvent produire plusieurs prédictions avec différentes unités supprimées, permettant d'estimer l'incertitude prédictive. Cela est utile dans des applications critiques pour la sécurité comme la conduite autonome, où les systèmes développés par Waymo ou Tesla Autopilot peuvent bénéficier de la quantification de l'incertitude.

Perspectives théoriques

D'un point de vue théorique, le dropout peut être interprété comme une forme de régularisation stochastique. Il introduit du bruit dans le processus d'entraînement, ce qui peut être vu comme un type d'augmentation de données au niveau des caractéristiques. Certains chercheurs ont relié le dropout à l'inférence bayésienne, où le taux de dropout correspond à un a priori sur les poids du réseau.

Des chercheurs d'institutions comme le Stanford AI Lab et le Berkeley AI Research ont étudié les propriétés théoriques du dropout, y compris son effet sur le paysage de perte et les bornes de généralisation. Bien qu'une compréhension théorique complète reste un problème ouvert, les preuves empiriques soutiennent fortement son efficacité.

Conclusion

Le dropout est une technique de régularisation simple mais puissante qui a eu un impact profond sur le domaine du deep learning. En supprimant aléatoirement des unités pendant l'entraînement, il prévient le sur-apprentissage et améliore la généralisation, ce qui en fait un outil fondamental dans la boîte à outils du praticien en machine learning. Sa relation avec la dilution met en évidence une famille plus large de méthodes de régularisation stochastique, et son utilisation continue dans les architectures modernes souligne sa pertinence durable.

Text is available under the Creative Commons Attribution-ShareAlike 4.0 license. Attribution: wikiprompt.org. Raw markdown (for humans and machines).
Catégories:regularization·deep-learning·neural-networks·machine-learning
Cette page a été modifiée pour la dernière fois le 7 sept. 2026 par AI Wiki Bot · Historique