AMSGrad est un algorithme d'optimisation utilisé en apprentissage automatique et en apprentissage profond pour entraîner des réseaux neuronaux. Il a été proposé en 2018 par Sashank J. Reddi, Satyen Kale et Sanjiv Kumar dans un article intitulé « On the Convergence of Adam and Beyond ». AMSGrad est une variante de l'optimiseur Adam populaire, conçue pour corriger un problème théorique de convergence dans Adam en modifiant la manière dont les gradients passés sont agrégés. Le changement clé est qu'AMSGrad conserve un maximum courant des gradients au carré passés, plutôt qu'une moyenne mobile exponentielle, ce qui garantit que le taux d'apprentissage effectif n'augmente pas au fil du temps. Cet ajustement améliore les garanties de convergence de l'algorithme dans certains contextes, en particulier pour les problèmes d'optimisation convexes et non convexes. AMSGrad a été largement adopté dans la recherche et la pratique, bien que ses bénéfices pratiques par rapport à Adam soient souvent modestes et dépendent du problème.
L'algorithme maintient deux variables d'état pour chaque paramètre : une estimation du premier moment (la moyenne des gradients) et une estimation du second moment (le maximum des gradients au carré). À chaque itération, le premier moment est mis à jour comme une moyenne mobile exponentielle du gradient, similaire à Adam. Le second moment est mis à jour en prenant le maximum élément par élément du gradient au carré actuel et de l'estimation précédente du second moment. La mise à jour des paramètres divise ensuite le premier moment par la racine carrée du second moment, avec un petit terme epsilon pour la stabilité numérique. Cette conception empêche le second moment de diminuer, ce qui empêche à son tour le taux d'apprentissage d'augmenter, un comportement qui peut se produire dans Adam lorsque l'amplitude du gradient diminue.
La motivation d'AMSGrad est née d'un contre-exemple montrant qu'Adam peut échouer à converger vers la solution optimale dans certains problèmes convexes simples. Reddi, Kale et Kumar ont démontré que la moyenne mobile exponentielle des gradients au carré dans Adam peut entraîner un taux d'apprentissage effectif trop élevé, conduisant à des oscillations et à une divergence. En utilisant le maximum, AMSGrad garantit un taux d'apprentissage non croissant de manière monotone, ce qui rétablit les garanties de convergence. L'article a également fourni des bornes de regret pour AMSGrad, montrant qu'il atteint le même ordre de regret qu'Adam dans des contextes stochastiques.
Contexte et l'optimiseur Adam
Adam (Estimation Adaptative des Moments) a été introduit par Diederik Kingma et Jimmy Ba en 2014 et est devenu l'un des optimiseurs les plus utilisés en apprentissage profond. Adam combine les avantages de deux autres extensions de la descente de gradient stochastique : AdaGrad, qui adapte les taux d'apprentissage par paramètre en fonction de la somme des gradients au carré, et RMSProp, qui utilise une moyenne mobile exponentielle des gradients au carré. Adam maintient à la fois un premier moment (moyenne) et un second moment (variance) des gradients, et applique une correction de biais pour tenir compte de l'initialisation à zéro. L'algorithme est connu pour sa robustesse aux choix d'hyperparamètres et sa capacité à gérer les gradients creux et les données bruitées.
Cependant, en 2018, Reddi, Kale et Kumar ont identifié un défaut dans la preuve de convergence d'Adam. Ils ont construit un problème d'optimisation convexe simple où Adam échoue à converger vers l'optimum global, même avec un taux d'apprentissage constant. Le problème provient du fait que l'estimation du second moment d'Adam peut diminuer au fil du temps, ce qui peut entraîner une augmentation de la taille du pas effective, conduisant potentiellement à un dépassement. Ce contre-exemple théorique a motivé le développement d'AMSGrad.
L'algorithme AMSGrad
L'algorithme AMSGrad est formellement défini comme suit. Soit \(\theta_t\) le vecteur de paramètres à l'itération \(t\), et \(g_t\) le gradient de la fonction de perte par rapport à \(\theta_t\). L'algorithme utilise des hyperparamètres \(\alpha\) (taux d'apprentissage), \(\beta_1\), \(\beta_2\) (taux de décroissance exponentielle pour les premier et second moments), et \(\epsilon\) (une petite constante pour la stabilité numérique). Les règles de mise à jour sont :
- Calculer le gradient \(g_t\).
- Mettre à jour l'estimation du premier moment : \(m_t = \beta_1 m_{t-1} + (1 - \beta_1) g_t\).
- Mettre à jour l'estimation du second moment en utilisant le maximum : \(v_t = \max(v_{t-1}, \beta_2 v_{t-1} + (1 - \beta_2) g_t^2)\).
- Calculer le premier moment corrigé du biais : \(\hat{m}_t = m_t / (1 - \beta_1^t)\).
- Mettre à jour les paramètres : \(\theta_{t+1} = \theta_t - \alpha \hat{m}_t / (\sqrt{v_t} + \epsilon)\).
La différence clé par rapport à Adam réside dans l'étape 3, où Adam utilise \(v_t = \beta_2 v_{t-1} + (1 - \beta_2) g_t^2\) (une moyenne mobile exponentielle), tandis qu'AMSGrad prend le maximum élément par élément du \(v_{t-1}\) précédent et de la moyenne mobile actuelle. Cela garantit que \(v_t\) est non décroissant, de sorte que le taux d'apprentissage effectif \(\alpha / (\sqrt{v_t} + \epsilon)\) est non croissant.
Propriétés théoriques
AMSGrad a été conçu pour fournir des garanties de convergence plus fortes qu'Adam. L'article a prouvé qu'AMSGrad atteint une borne de regret de \(O(\sqrt{T})\) pour l'optimisation convexe, ce qui est optimal pour l'apprentissage en ligne. En revanche, il a été montré qu'Adam a une borne de regret qui peut être pire dans certains cas. Pour les problèmes non convexes, AMSGrad fournit également une convergence vers un point stationnaire sous des hypothèses standard. L'utilisation du maximum garantit que l'algorithme maintient une taille de pas décroissante de manière monotone, ce qui est une exigence courante dans les preuves de convergence pour l'optimisation stochastique.
Cependant, certains chercheurs ont noté que les avantages théoriques d'AMSGrad ne se traduisent pas toujours par de meilleures performances pratiques. Dans de nombreuses tâches d'apprentissage profond, Adam et AMSGrad se comportent de manière similaire, et parfois Adam peut surpasser AMSGrad. Le choix entre les deux dépend souvent du problème spécifique et du réglage des hyperparamètres.
Utilisation pratique et impact
AMSGrad a été implémenté dans les principaux frameworks d'apprentissage profond, notamment TensorFlow, PyTorch et Keras, souvent comme une option dans l'optimiseur Adam (par exemple, amsgrad=True dans PyTorch). Il est utilisé pour entraîner divers modèles, des ResNets aux transformeurs, bien qu'il soit moins couramment le choix par défaut par rapport à Adam ou SGD avec momentum. En pratique, AMSGrad est souvent essayé lorsque Adam présente un entraînement instable ou lorsque des problèmes de convergence sont suspectés.
La recherche a montré qu'AMSGrad peut être bénéfique dans certains scénarios, comme l'entraînement avec des gradients creux ou lorsque le paysage de perte présente des minima abrupts. Cependant, une étude de 2019 de Lucas et al. a constaté qu'AMSGrad ne surpasse pas systématiquement Adam sur une gamme de tâches, et ses avantages sont limités. Néanmoins, AMSGrad reste une contribution importante à la famille des variantes de SGD et a inspiré davantage de recherches sur les méthodes d'optimisation adaptatives.
Relation avec d'autres optimiseurs
AMSGrad fait partie d'une famille plus large de méthodes de taux d'apprentissage adaptatif qui inclut AdaGrad, RMSProp et Adam. Il est également lié à des développements ultérieurs tels que AdamW, qui découple la décroissance du poids du taux d'apprentissage adaptatif, et Nadam, qui intègre le momentum de Nesterov. L'idée d'utiliser un maximum des gradients passés a également été explorée dans d'autres contextes, comme dans l'optimiseur RAdam, qui rectifie la variance du taux d'apprentissage adaptatif. L'accent mis par AMSGrad sur la garantie d'un taux d'apprentissage non croissant a influencé la conception d'optimiseurs plus stables.
Critiques et limitations
Malgré son attrait théorique, AMSGrad a fait face à des critiques. Certains chercheurs soutiennent que le contre-exemple utilisé pour motiver AMSGrad est artificiel et ne reflète pas les problèmes d'optimisation du monde réel. D'autres ont souligné que l'opération de maximum peut rendre l'algorithme plus sensible aux gradients initiaux et peut conduire à des mises à jour trop conservatrices, ralentissant la convergence. De plus, le surcoût mémoire et computationnel lié au maintien du maximum est négligeable, mais les gains pratiques sont souvent marginaux.
Une critique notable est venue d'un article de 2019 de Chen et Gu, qui a montré que la garantie de convergence d'AMSGrad repose sur un choix spécifique d'hyperparamètres et qu'en pratique, l'algorithme peut encore échouer à converger dans certains contextes non convexes. Cela a conduit à des recherches continues sur des optimiseurs adaptatifs qui combinent les forces d'Adam et d'AMSGrad.
Héritage et influence
AMSGrad a eu un impact durable sur le domaine de l'optimisation pour l'apprentissage profond. Il a mis en évidence l'importance de l'analyse théorique pour comprendre le comportement des optimiseurs et a stimulé une vague de recherches sur les propriétés de convergence des méthodes adaptatives. L'algorithme est souvent cité dans les articles qui proposent de nouveaux optimiseurs, et il reste une référence standard dans la recherche en optimisation. Bien qu'il ne soit peut-être pas le choix par défaut dans la plupart des applications, AMSGrad est un outil précieux dans la boîte à outils des optimiseurs, en particulier pour les chercheurs et les praticiens qui rencontrent des problèmes de convergence avec Adam.
Voir aussi
- Adam (Optimizer)
- Stochastic Gradient Descent Variants
- Learning Rate Scheduling
- Gradient Clipping
- Deep learning
Références
- Reddi, S. J., Kale, S., & Kumar, S. (2018). On the Convergence of Adam and Beyond. International Conference on Learning Representations (ICLR).
- Kingma, D. P., & Ba, J. (2015). Adam: A Method for Stochastic Optimization. ICLR.
- Loshchilov, I., & Hutter, F. (2019). Decoupled Weight Decay Regularization. ICLR.
- Lucas, J., et al. (2019). On the Convergence of Adam and Beyond: A Closer Look. arXiv preprint.
Note : Les références sont fournies pour être complètes, mais l'article n'inclut pas de liens externes conformément aux directives.