Trainingslussen vóór en na Accelerator
Je wilt een PyTorch-trainingslus aanpassen om Accelerator te gebruiken voor je taalmodel, zodat je vertalingen kunt vereenvoudigen met de MPRC-gegevensset met zinsparafrases. Werk de trainingslus bij om je model voor te bereiden op distributed training.
Een deel van de data is al geladen:
acceleratoris een instantie vanAcceleratortrain_dataloader,optimizer,modelenlr_schedulerzijn gedefinieerd en voorbereid metAccelerator
Deze oefening maakt deel uit van de cursus
Efficiënt AI-modellen trainen met PyTorch
Oefeninstructies
- Werk de
.to(device)-regels bij zodat Accelerator de plaatsing op het apparaat regelt. - Pas de gradiëntberekening aan om
Acceleratorte gebruiken.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
for batch in train_dataloader:
optimizer.zero_grad()
inputs, targets = batch["input_ids"], batch["labels"]
# Update the lines so Accelerator handles device placement
inputs = inputs.to(device)
targets = targets.to(device)
outputs = model(inputs, labels=targets)
loss = outputs.loss
# Modify the gradient computation to use Accelerator
____.backward(____)
optimizer.step()
lr_scheduler.step()