Bygg en träningsloop med Accelerator
Nu är du redo att implementera en träningsloop för din språköversättningstjänst. Nu när du har sett hur Accelerator anpassar en PyTorch-loop för distribuerad träning kan du använda klassen Accelerator i din träningsloop!
En del data har förhandsladdats:
acceleratorär en instans avAcceleratortrain_dataloader,optimizer,modelochlr_schedulerhar definierats och förberetts medAccelerator
Den här övningen är en del av kursen
Effektiv AI-modellträning med PyTorch
Övningsinstruktioner
- Anropa
optimizerför att nollställa gradienterna. - Uppdatera modellens parametrar.
- Uppdatera inlärningshastigheten för
optimizer.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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
____.____()