La politique One-Cycle est une technique de planification du taux d'apprentissage utilisée dans l'entraînement des réseaux de neurones. Elle a été introduite par Leslie N. Smith en 2018 comme un raffinement de ses travaux antérieurs sur les taux d'apprentissage cycliques. La politique prescrit un cycle unique de variation du taux d'apprentissage : le taux d'apprentissage augmente linéairement depuis une valeur de base faible jusqu'à une valeur maximale au cours de la première partie de l'entraînement, puis diminue linéairement (ou via un recuit cosinusoïdal) jusqu'à une valeur bien inférieure à la base. Ce calendrier est généralement associé à un ajustement inverse correspondant de l'élan, où l'élan diminue pendant la phase d'échauffement et augmente pendant la phase de recuit. La politique One-Cycle est conçue pour permettre une convergence plus rapide de l'entraînement et donne souvent une meilleure précision finale par rapport aux calendriers de taux d'apprentissage constants ou à décroissance par paliers, tout en utilisant un seul cycle plutôt que plusieurs cycles.
La politique repose sur des observations empiriques concernant la relation entre le taux d'apprentissage, la taille de lot et la généralisation. Les travaux antérieurs de Smith sur les taux d'apprentissage cycliques (2015-2017) ont montré que varier le taux d'apprentissage de manière cyclique pouvait aider l'optimiseur à échapper aux points de selle et aux minima prononcés, conduisant à une meilleure généralisation. La politique One-Cycle distille cette idée en un calendrier unique et bien défini, facile à implémenter et à régler. Elle est devenue un outil standard dans la boîte à outils des praticiens du deep learning, en particulier pour l'entraînement de modèles de vision par ordinateur et, plus récemment, pour le fine-tuning de grands modèles de langage.
Motivation et contexte
Le choix du taux d'apprentissage est l'un des hyperparamètres les plus critiques lors de l'entraînement des réseaux de neurones profonds. Un taux d'apprentissage trop élevé peut provoquer une divergence, tandis qu'un taux trop faible entraîne une convergence lente et peut conduire à des minima locaux médiocres. Les schémas traditionnels, tels que la décroissance par paliers ou exponentielle, nécessitent un réglage minutieux des facteurs de décroissance et des intervalles entre les étapes. Les taux d'apprentissage cycliques, introduits par Smith en 2015, ont offert une alternative plus robuste en oscillant le taux d'apprentissage entre une valeur minimale et une valeur maximale, permettant à l'optimiseur de sortir périodiquement des minima aigus et d'explorer des régions plus plates du paysage de la fonction de perte.
La politique One-Cycle étend cette idée en utilisant un cycle unique avec une forme spécifique. La raison en est que la phase de préchauffage permet au réseau de démarrer avec un taux d'apprentissage faible, évitant une divergence précoce et permettant à l'optimiseur de se stabiliser. L'augmentation subséquente vers un taux élevé permet au modèle de traverser le paysage de la fonction de perte de manière plus audacieuse, potentiellement en trouvant de meilleurs minima. La phase finale d'annealing, avec un taux d'apprentissage très faible, permet au modèle de se stabiliser dans un minimum plat, associé à une meilleure généralisation. Cette approche à cycle unique est efficace car elle ne nécessite pas plusieurs cycles, et elle atteint souvent une précision finale supérieure avec moins d'époques.
Motivation et Contexte
Le choix du taux d'apprentissage est l'un des hyperparamètres les plus critiques dans l'entraînement des réseaux de neurones profonds. Un taux d'apprentissage trop élevé peut causer une divergence, tandis qu'un taux trop faible entraîne une convergence lente et peut rester bloqué dans de mauvais minima locaux. Les calendriers traditionnels, tels que la décroissance par paliers ou la décroissance exponentielle, nécessitent un réglage minutieux des facteurs de décroissance et des intervalles d'étapes. Les taux d'apprentissage cycliques, introduits par Smith en 2015, ont offert une alternative plus robuste en oscillant le taux d'apprentissage entre une borne minimale et maximale, permettant à l'optimiseur de sortir périodiquement des minima abrupts et d'explorer des régions plus plates du paysage de perte.
La politique One-Cycle étend cette idée en utilisant un seul cycle avec une forme spécifique. La raison est que la phase de préchauffage initiale permet au réseau de commencer l'entraînement avec un taux d'apprentissage faible, évitant une divergence précoce et permettant à l'optimiseur de se stabiliser. L'augmentation ultérieure vers un taux élevé permet au modèle de traverser le paysage de perte plus audacieusement, potentiellement en trouvant de meilleurs minima. La phase finale d'annealing, avec un taux d'apprentissage très faible, permet au modèle de converger vers un minimum plat, bien généralisant. Cette approche à cycle unique est efficace car elle ne nécessite pas plusieurs cycles, et elle atteint souvent des résultats de pointe en moins d'époques.
Le calendrier
Dans la politique One-Cycle standard, le processus d'entraînement est divisé en deux phases. La première phase, souvent appelée phase de préchauffage, occupe une fraction du nombre total d'étapes d'entraînement, généralement 20 % à 30 %. Pendant cette phase, le taux d'apprentissage augmente linéairement à partir d'une valeur de base faible (souvent proche de zéro) jusqu'à une valeur maximale. Le taux d'apprentissage maximal est généralement déterminé à l'aide d'un localisateur de taux d'apprentissage, une technique également popularisée par Smith, qui consiste à augmenter progressivement le taux d'apprentissage sur quelques lots et à tracer la perte pour identifier la région de descente la plus raide.
La deuxième phase, la phase de recuit, occupe les 70 % à 80 % restants de l'entraînement. Pendant cette phase, le taux d'apprentissage diminue linéairement depuis le maximum jusqu'à une valeur généralement égale à 1/10 ou 1/100 de la valeur de base. Certaines implémentations utilisent un recuit cosinusoïdal au lieu d'un recuit linéaire, ce qui s'est avéré efficace en pratique. Le taux d'apprentissage final est souvent fixé à une valeur très faible, comme 1e-5 ou moins, pour permettre un réglage fin des poids.
L'élan est ajusté de manière inverse. Pendant la phase de préchauffage, l'élan est diminué d'une valeur élevée (par exemple 0,95) à une valeur faible (par exemple 0,85). Pendant la phase de recuit, l'élan est augmenté pour revenir à une valeur élevée. Cette relation inverse aide à stabiliser l'entraînement : un élan plus faible pendant le préchauffage évite tout dépassement, et un élan plus élevé pendant le recuit permet une convergence plus douce.
Détails d'implémentation
L'implémentation de la politique One-Cycle nécessite un accès aux paramètres du taux d'apprentissage et de l'élan à chaque étape. La plupart des frameworks de deep learning, comme TensorFlow et PyTorch, permettent de modifier ces paramètres via des callbacks ou des boucles d'entraînement personnalisées. Le taux d'apprentissage est généralement mis à jour par lot ou par époque, bien que la mise à jour par lot offre un contrôle plus fin et soit recommandée pour des résultats optimaux.
Le taux d'apprentissage maximal est un hyperparamètre clé. Smith recommande d'utiliser un « chercheur de taux d'apprentissage » (learning rate finder) pour le déterminer. Cette technique consiste à augmenter progressivement le taux d'apprentissage sur quelques lots et à enregistrer la perte, puis à choisir le taux juste avant que la perte ne commence à augmenter fortement. Ce taux maximal est souvent proche de la région de descente la plus raide du paysage de perte.
Le nombre total d'époques est également important. La politique One-Cycle est conçue pour un nombre fixe d'époques, et le calendrier doit être calculé en conséquence. Si le nombre d'époques est modifié, le calendrier doit être recalculé. En pratique, la politique fonctionne bien avec un nombre modéré d'époques (par exemple, 10 à 50) et peut atteindre des résultats comparables à ceux des calendriers traditionnels.
Relation avec d'autres calendriers
La politique One-Cycle fait partie d'une famille plus large de calendriers de taux d'apprentissage. Elle est étroitement liée aux taux d'apprentissage cycliques, mais utilise un seul cycle. Elle partage également des similitudes avec les phases de préchauffage utilisées dans l'entraînement de grands modèles comme les transformers. Par exemple, le calendrier taux d apprentissage utilisé dans le transformer original inclut un préchauffage linéaire suivi d'une décroissance proportionnelle à l'inverse de la racine carrée du nombre d'étapes. La politique One-Cycle, quant à elle, utilise une décroissance linéaire ou cosinusoïdale et ajuste l'élan de manière inverse.
Par rapport aux calendriers de taux d'apprentissage constants, la politique One-Cycle permet souvent d'atteindre de meilleurs minima et une convergence plus rapide. Par rapport aux décroissances par paliers, elle élimine le besoin de choisir manuellement les étapes de décroissance. La politique est également compatible avec d'autres techniques telles que la Batch Normalization, le Dropout et le Gradient Clipping, et peut être utilisée comme remplacement direct du calendrier de taux d'apprentissage existant.
Applications et impact
La politique One-Cycle a été largement adoptée dans les tâches de vision par ordinateur, telles que la classification d'images sur CIFAR-10 et ImageNet. Dans la communauté fast.ai, elle est devenue une recommandation standard pour l'entraînement des modèles de vision par convolution, et elle est intégrée dans la bibliothèque fastai. De nombreux praticiens ont signalé qu'elle permet d'atteindre une précision de pointe en moins d'époques, réduisant parfois le temps d'entraînement de moitié.
La politique a également été appliquée dans d'autres domaines, notamment le traitement du langage naturel et la génération d'images. Par exemple, lors du fine-tuning de modèles de langage de grande taille, une phase de préchauffage est souvent utilisée pour stabiliser l'entraînement, et la politique One-Cycle fournit une méthode structurée pour planifier l'ensemble du processus. Cependant, pour de très grands modèles, le coût de calcul d'un chercheur de taux d'apprentissage peut être prohibitif, et des calendriers plus simples sont parfois préférés.
Aperçus théoriques
Le succès de la politique One-Cycle est attribué à sa capacité à naviguer dans le paysage de la fonction de perte. Pendant la phase de préchauffage, le modèle est stabilisé avec un taux faible, puis le taux élevé permet de prendre de grandes étapes, potentiellement en sortant des minima abrupts. La phase de recuit final, avec un taux très faible, permet un réglage fin et une meilleure généralisation. Cette approche repose sur des observations empiriques concernant la géométrie du paysage de perte, où les minima plats sont associés à une meilleure généralisation que les minima abrupts.
Des études ont montré que la politique One-Cycle peut améliorer la précision finale et accélérer la convergence, en particulier pour les petits modèles et les jeux de données de taille modérée. Cependant, pour les très grands modèles, les avantages peuvent être moins prononcés, et des calendriers plus simples comme le warmup linéaire peuvent être préférés.
Applications et impact
La politique One-Cycle a été largement adoptée dans la communauté du deep learning. Elle est intégrée dans plusieurs bibliothèques populaires, notamment fast.ai, qui la recommande par défaut pour l'entraînement des modèles de vision par ordinateur. De nombreux praticiens ont rapporté des améliorations significatives en termes de précision et de vitesse de convergence, parfois avec une réduction de moitié du temps d'entraînement.
Dans le domaine du traitement du langage naturel, la politique One-Cycle est parfois utilisée pour le fine-tuning des modèles pré-entraînés, bien que des calendriers plus simples comme le warmup linéaire soient souvent préférés pour les très grands modèles. Des recherches supplémentaires ont exploré des variations de la politique, comme l'utilisation de fractions de préchauffage différentes ou l'interaction avec la taille de lot. Certaines études suggèrent que la politique fonctionne mieux avec de grandes tailles de lot, ce qui la rend adaptée à l'entraînement distribué.
Recommandations pratiques
Pour adopter la politique One-Cycle, plusieurs étapes sont recommandées. Tout d'abord, déterminer le taux d'apprentissage maximal à l'aide d'un chercheur de taux. Ensuite, fixer le taux de base à environ 1/10 de ce maximum. La fraction de préchauffage est généralement comprise entre 20 % et 30 % du nombre total d'étapes. Enfin, choisir la forme de décroissance (linéaire ou cosinusoïdale) et le taux final, souvent fixé à une valeur très faible comme 1e-5 ou 0.
Il est important de surveiller l'entraînement. Si la perte diverge pendant la phase de taux élevé, il peut être nécessaire de réduire le taux maximal. L'ajustement inverse de l'élan est également crucial, avec une diminution pendant le préchauffage et une augmentation pendant le recuit. La politique est généralement utilisée avec un optimiseur SGD avec élan, mais elle peut également fonctionner avec d'autres optimiseurs comme Adam, bien que les résultats puissent varier.
Conclusion
La politique One-Cycle est une technique de planification du taux d'apprentissage simple mais efficace, qui a démontré son utilité dans de nombreuses applications d'apprentissage profond. En combinant une augmentation linéaire, un taux maximal élevé et un recuit final, elle permet une convergence rapide et une meilleure généralisation. Bien que ses fondements théoriques restent partiellement incompris, son succès empirique en fait un outil précieux pour les praticiens. À mesure que le domaine évolue, elle demeure une option pertinente pour l'entraînement de modèles de vision, de langage et autres, et elle est susceptible de continuer à inspirer des recherches futures sur la planification des hyperparamètres.