AdamW avec Accelerator
Vous souhaitez personnaliser votre boucle d'apprentissage à l'aide de Accelerator
et utiliser AdamW comme optimiseur de référence pour votre modèle de traduction linguistique. Créez la boucle de formation pour utiliser AdamW.
Certains objets de formation ont été préchargés et définis, notamment model
, train_dataloader
et accelerator
.
Cet exercice fait partie du cours
Entraînement efficace de modèles d'IA avec PyTorch
Instructions
- Préparez les objets de formation pour la formation distribuée avant la boucle.
- Mettez à jour les paramètres du modèle dans la boucle d'apprentissage.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
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}")