CommencerCommencez gratuitement

AdamW avec Accelerator

Vous souhaitez personnaliser votre boucle d’entraînement avec Accelerator et utiliser AdamW comme optimiseur de référence pour votre modèle de traduction automatique. Construisez la boucle d’entraînement pour utiliser AdamW.

Certains objets d’entraînement ont été préchargés et définis, notamment model, train_dataloader et accelerator.

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

  • Préparez les objets d’entraînement pour l’entraînement distribué avant la boucle.
  • Mettez à jour les paramètres du modèle dans la boucle d’entraînement.

Exercice interactif pratique

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

optimizer = AdamW(params=model.parameters())

# Prepare training objects for distributed training
model, optimizer, train_dataloader = ____.____(model, optimizer, train_dataloader)

for batch in train_dataloader:
    inputs, targets = batch["input_ids"], batch["labels"]
    outputs = model(inputs, labels=targets)
    loss = outputs.loss
    accelerator.backward(loss)
    # Update the model parameters
    ____.____()
    optimizer.zero_grad()
    print(f"Loss = {loss}")
Modifier et exécuter le code