Construirea unei bucle de antrenament cu Accelerator
Ești pregătit să implementezi o buclă de antrenament pentru serviciul tău de traducere. Acum că ai văzut cum Accelerator modifică o buclă PyTorch pentru antrenamentul distribuit, poți folosi clasa Accelerator în propria buclă de antrenament!
Unele date au fost preîncărcate:
acceleratoreste o instanță a claseiAcceleratortrain_dataloader,optimizer,modelșilr_schedulerau fost definite și pregătite cuAccelerator
Acest exercițiu face parte din cursul
Antrenament eficient al modelelor AI cu PyTorch
Instrucțiuni pentru exercițiu
- Apelează
optimizerpentru a reseta gradienții. - Actualizează parametrii modelului.
- Actualizează rata de învățare a obiectului
optimizer.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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
____.____()