AdamW med Accelerator
Du vill anpassa din träningsloop med hjälp av Accelerator och använda AdamW som referensoptimierare för din språköversättningsmodell. Bygg träningsloopen så att den använder AdamW.
En del träningsobjekt har redan laddats in och definierats, däribland model, train_dataloader och accelerator.
Den här övningen är en del av kursen
Effektiv AI-modellträning med PyTorch
Övningsinstruktioner
- Förbered träningsobjekten för distribuerad träning innan loopen startar.
- Uppdatera modellens parametrar inuti träningsloopen.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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}")