CommencerCommencer gratuitement

Construire une boucle d'entraînement avec Accelerator

Vous êtes prêt à mettre en place une boucle de formation pour votre service de traduction. Maintenant que vous avez vu comment Accelerator modifie une boucle PyTorch pour l'entraînement distribué, vous pouvez utiliser la classe Accelerator dans votre boucle d'entraînement !

Certaines données ont été préchargées :

  • accelerator est une instance de Accelerator
  • train_dataloader, optimizer, model, et lr_scheduler ont été définis et préparés à l'aide de Accelerator

Cet exercice fait partie du cours

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

Afficher le cours

Instructions

  • Appelez le site optimizer pour mettre à zéro les gradients.
  • Mettez à jour les paramètres du modèle.
  • Mettez à jour le taux d'apprentissage du site optimizer.

Exercice interactif pratique

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

for batch in train_dataloader:
    # Call the optimizer to zero the gradients
    ____.____()
    inputs, targets = batch["input_ids"], batch["labels"]
    outputs = model(inputs, labels=targets)
    loss = outputs.loss
    accelerator.backward(loss)
    # Update the model's parameters
    ____.____()
    # Update the learning rate of the optimizer
    ____.____()
Modifier et exécuter le code