0Pricing
Deep Learning Academy · Leçon

Précision mixte avec autocast et GradScaler

Des calculs en demi-précision pour de grands gains de vitesse.

Précision mixte avec autocast et GradScaler est une leçon Deep Learning Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Deep Learning Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Deep Learning Academy comprend 4 leçons au total.

Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.

What Mixed Precision Means

By default PyTorch does math in 32-bit floats. Mixed precision runs many operations in 16-bit instead, which is faster and uses far less memory.

Why Half Precision Is Faster

Modern GPUs have special tensor cores tuned for 16-bit math. Feeding them half-precision data can speed up training two or three times with little accuracy loss.

The Catch With 16-Bit

Half precision has a tiny range, so very small gradient values can round down to zero. That silent underflow stalls learning if you do nothing about it.

Meet autocast

Wrap your forward pass in autocast and PyTorch picks a safe precision per operation automatically. You never cast tensors by hand.

with torch.autocast(device_type='cuda'):
    out = model(x)

What autocast Wraps

Put only the forward pass and loss inside autocast. The backward call stays outside the block, where PyTorch handles precision for you.

with torch.autocast(device_type='cuda'):
    out = model(x)
    loss = loss_fn(out, y)

Meet GradScaler

A GradScaler fixes underflow by multiplying the loss by a large factor before backward, so small gradients stay big enough to survive in 16-bit.

scaler = torch.cuda.amp.GradScaler()

Scale the Loss

Instead of loss.backward(), call scaler.scale(loss).backward(). The scaler inflates the loss first so the resulting gradients do not vanish.

scaler.scale(loss).backward()

Step Through the Scaler

Run the optimizer with scaler.step, which quietly unscales the gradients back to normal size before applying the update.

scaler.step(optimizer)

Update the Scale Factor

Finish each step with scaler.update(). It grows the scale when things are stable and shrinks it if it ever spots an overflow.

scaler.update()

The Full AMP Step

Together these calls form one clean AMP iteration: zero grads, autocast forward, scaled backward, scaler step, then update.

optimizer.zero_grad()
with torch.autocast(device_type='cuda'):
    loss = loss_fn(model(x), y)
scaler.scale(loss).backward()
scaler.step(optimizer)
scaler.update()

When To Reach For It

Mixed precision shines on a recent NVIDIA GPU with large batches. On a plain CPU it gives little benefit, so save it for real training runs.

Quick Check

You enabled autocast but tiny gradients keep vanishing. What tool fixes that?

Recap

Wrap the forward in autocast for fast 16-bit math, then use a GradScaler to scale, step, and update so tiny gradients survive. ⚡

Questions Fréquemment Posées

La leçon « Précision mixte avec autocast et GradScaler » est-elle gratuite ?

Oui — le texte complet de « Précision mixte avec autocast et GradScaler » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Deep Learning Academy, passe à CoddyKit PRO. Le cours Deep Learning Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Précision mixte avec autocast et GradScaler » ?

Des calculs en demi-précision pour de grands gains de vitesse. Tu pratiques Deep Learning Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Deep Learning Academy ?

Aucune expérience préalable n'est requise. Deep Learning Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.

Combien de temps prend la leçon « Précision mixte avec autocast et GradScaler » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Deep Learning Academy ?

Oui. Chaque leçon Deep Learning Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Précision mixte avec autocast et GradScaler
  2. Accumulation des gradients pour les gros lots
  3. Analyser le goulet d’étranglement
  4. Réduire l’utilisation de la mémoire du GPU
← Retour à Deep Learning Academy