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. Créez la boucle d’entraînement pour utiliser AdamW.
Certains objets d’entraînement ont déjà été chargés et définis, notamment model, train_dataloader et accelerator.
Cette activité fait partie du cours
Entraînement efficace de modèles d’IA avec PyTorch
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}")