GUIDE Technique

Adam et les optimiseurs adaptatifs

Adam est l'optimiseur de référence derrière la plupart des réseaux de neurones modernes, réglant automatiquement un taux d'apprentissage distinct pour chaque paramètre.

2 minutes de lectureDernière mise à jour

Aperçu

It matters because it makes training deep models faster and far less finicky than plain gradient descent.

Plongée profonde

Adam (Adaptive Moment Estimation), introduit par Kingma et Ba en 2014, combine deux idées. Premièrement, l'élan : il conserve une moyenne en décroissance exponentielle des gradients passés (le premier instant), de sorte que les mises à jour augmentent la vitesse dans des directions cohérentes. Deuxièmement, la mise à l'échelle par paramètre : elle suit une moyenne des gradients carrés (le deuxième moment) et divise chaque pas par la racine carrée de cette valeur, de sorte que les paramètres avec des gradients importants et bruyants prennent des pas plus petits et ceux rarement mis à jour prennent des pas plus grands. Cette adaptabilité signifie que vous pouvez souvent utiliser un seul taux d'apprentissage sur l'ensemble d'un réseau. Une variante, AdamW, dissocie la dégradation du poids de la mise à jour du gradient et est devenue la valeur par défaut pour la formation de grands transformateurs et de modèles de langage.

Aperçu technique

Adam maintient deux moyennes glissantes par paramètre : m (gradients) et v (gradients carrés), mises à jour avec les taux de décroissance bêta1 (généralement 0,9) et bêta2 (généralement 0,999). Étant donné que les deux commencent à zéro, ils sont corrigés en divisant par (1 - bêta^t). La mise à jour est theta = theta - lr * m_hat / (sqrt(v_hat) + epsilon), où epsilon (environ 1e-8) empêche la division par zéro. C'est pourquoi Adam a besoin de peu de réglages du taux d'apprentissage par rapport au SGD simple.

Impact stratégique

Coût et budget

Les décisions en matière d'architecture déterminent les performances et les coûts d'exploitation pendant des années.

Décisions plus claires

La formation technique aide les équipes à choisir la bonne pile, pas seulement la plus récente.

Contrôle qualité

De meilleurs choix d’ingénierie réduisent les incidents de fiabilité en production.

L'avenir d'Adam et des optimiseurs adaptatifs

Adam et AdamW restent dominants, mais la recherche encourage l'efficacité des modèles comportant des milliards de paramètres, dans lesquels le stockage de deux valeurs supplémentaires par poids est coûteux. Des variantes légères en mémoire comme Adafactor, Adam 8 bits et des optimiseurs plus récents tels que Lion (qui utilise uniquement l'élan basé sur les signes) et Sophia visent à égaler la qualité d'Adam avec moins de mémoire ou une convergence plus rapide. Attendez-vous à ce que des optimiseurs adaptatifs spécialement conçus pour la formation distribuée et de faible précision continuent d'évoluer.

Mise en œuvre dans le monde réel

Formation de grands modèles de langage comme GPT et Llama, qui utilisent AdamW comme optimiseur standard.

Affiner un classificateur d'images pré-entraîné (par exemple, ResNet) sur un ensemble de données personnalisé avec juste un taux d'apprentissage Adam par défaut.

Entraîner les modèles de diffusion derrière des générateurs d'images tels que Stable Diffusion.

Exécution d'Adam 8 bits dans des bibliothèques telles que bitsandbytes pour adapter les états de l'optimiseur à la mémoire GPU limitée.

Risques et garde-fous

L’optimisation d’un benchmark peut masquer des faiblesses plus larges du système.

Les coûts d’infrastructure et de maintenance sont souvent sous-estimés.

Les lacunes en matière de sécurité et d’observabilité peuvent se creuser à mesure que les systèmes deviennent plus complexes.

Feuille de route de mise en œuvre

1

Définissez les objectifs de latence, de qualité et de coût avant la mise en œuvre.

2

Benchmark dans des conditions de charge et de données réalistes.

3

Surveillance des instruments pour détecter les erreurs, la dérive et l'impact sur l'utilisateur.

4

Préparez les chemins de restauration et de réponse aux incidents avant la mise à l’échelle.

Continuez à explorer

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the Adam and Adaptive Optimizers quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Démarrer le quiz

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Guide suivant

Optimiseurs ZeRO et Sharded

Questions fréquemment posées

What is Adam and Adaptive Optimizers?

Adam est l'optimiseur de référence derrière la plupart des réseaux de neurones modernes, réglant automatiquement un taux d'apprentissage distinct pour chaque paramètre. C'est important car cela rend l'entraînement des modèles profonds plus rapide et beaucoup moins capricieux qu'une simple descente de gradient.

Quelles sont les deux quantités qu'Adam suit pour chaque paramètre ?

Adam conserve une moyenne décroissante exponentielle des gradients (premier moment) et des gradients au carré (deuxième moment) pour chaque paramètre.

Pourquoi Adam applique-t-il une correction de biais à ses estimations de moment ?

m et v sont tous deux initialisés à zéro, de sorte que les premières estimations sont biaisées à un niveau bas ; la division par (1 - beta^t) corrige cela.

Quelle est la principale différence entre Adam et AdamW ?

AdamW applique la décroissance du poids directement aux poids plutôt que de la mélanger au terme de gradient adaptatif, ce qui améliore la généralisation dans les transformateurs.

Quel rôle le petit terme epsilon joue-t-il dans la règle de mise à jour d'Adam ?

Epsilon (environ 1e-8) est ajouté au dénominateur afin que les paramètres avec des moyennes de gradient carré proches de zéro ne provoquent pas d'explosion.

Pourquoi Adam est-il souvent décrit comme « adaptatif » ?

En divisant par la racine carrée de la moyenne du gradient carré de chaque paramètre, Adam met à l'échelle la taille du pas par paramètre plutôt que d'utiliser une valeur globale.