ÎncepețiÎncepe gratuit

Bucle de antrenament înainte și după Accelerator

Vrei să modifici o buclă de antrenament PyTorch pentru a folosi Accelerator cu modelul tău de limbaj, care simplifică traducerile folosind setul de date MPRC de parafraze de propoziții. Actualizează bucla de antrenament pentru a pregăti modelul în vederea antrenamentului distribuit.

Unele date au fost preîncărcate:

  • accelerator este o instanță a clasei Accelerator
  • train_dataloader, optimizer, model și lr_scheduler au fost definite și pregătite cu Accelerator

Acest exercițiu face parte din cursul

Antrenament eficient al modelelor AI cu PyTorch

Vezi cursul

Instrucțiuni pentru exercițiu

  • Actualizează liniile .to(device) astfel încât Accelerator să gestioneze plasarea pe dispozitiv.
  • Modifică calculul gradienților pentru a utiliza Accelerator.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

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()
Editează și rulează codul