Een trainingslus bouwen met Accelerator
Je bent klaar om een trainingslus te implementeren voor je vertaaldienst. Nu je hebt gezien hoe Accelerator een PyTorch-lus aanpast voor distributed training, kun je de Accelerator-klasse inzetten in je eigen trainingslus!
Er is alvast wat data geladen:
acceleratoris een instantie vanAcceleratortrain_dataloader,optimizer,modelenlr_schedulerzijn gedefinieerd en metAcceleratorvoorbereid
Deze oefening maakt deel uit van de cursus
Efficiënt AI-modellen trainen met PyTorch
Oefeninstructies
- Roep de
optimizeraan om de gradiënten op nul te zetten. - Werk de parameters van het model bij.
- Werk het leertempo van de
optimizerbij.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
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
____.____()