CommencerCommencez gratuitement

Entraînement en précision mixte avec Accelerator

Vous souhaitez simplifier votre boucle PyTorch pour l’entraînement en précision mixte de votre modèle de traduction automatique en utilisant Accelerator. Créez la nouvelle boucle d’entraînement pour tirer parti d’Accelerator !

Certains objets ont été préchargés : dataset, model, dataloader et optimizer.

Cet exercice fait partie du cours

<cours>Entraîner efficacement des modèles d’IA avec PyTorch</cours>
Voir le cours

Instructions de l’exercice

  • Activez l’entraînement en précision mixte en FP16 dans Accelerator.
  • Préparez les objets d’entraînement pour la précision mixte avant la boucle.
  • Calculez les gradients de la perte pour la précision mixte.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Enable mixed precision training using FP16
accelerator = Accelerator(____="____")

# Prepare training objects for mixed precision training
model, optimizer, train_dataloader, lr_scheduler = ____.____(____, ____, ____, ____)

for batch in train_dataloader:
    inputs, targets = batch["input_ids"], batch["labels"]
    outputs = model(inputs, labels=targets)
    loss = outputs.loss
    # Compute the gradients of the loss
    ____.____(loss)
    optimizer.step()
    optimizer.zero_grad()
Modifier et exécuter le code