CommencerCommencer gratuitement

Entraînement de précision mixte avec Accelerator

Vous souhaitez simplifier votre boucle PyTorch pour l'apprentissage en précision mixte de votre modèle de traduction linguistique en utilisant Accelerator. Construisez la nouvelle boucle de formation pour tirer parti de l'Accélérateur !

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

Cet exercice fait partie du cours

Entraînement efficace de modèles d'IA avec PyTorch

Afficher le cours

Instructions

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

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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