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. Construisez la nouvelle boucle d’entraînement pour tirer parti d’Accelerator !
Certains objets ont été préchargés : dataset, model, dataloader et optimizer.
Cette activité fait partie du cours
Entraînement efficace de modèles d’IA avec PyTorch
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 l’entraînement en 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()