Kom igångKom igång gratis

Träningsloopar före och efter Accelerator

Du vill anpassa en PyTorch-träningsloop till att använda Accelerator för din språkmodell, som förenklar översättningar med hjälp av MPRC-datamängden med meningsparafraser. Uppdatera träningsloopen så att modellen förbereds för distribuerad träning.

En del data har förinsatts:

  • accelerator är en instans av Accelerator
  • train_dataloader, optimizer, model och lr_scheduler har definierats och förberetts med Accelerator

Den här övningen är en del av kursen

Effektiv AI-modellträning med PyTorch

Visa kurs

Övningsinstruktioner

  • Uppdatera .to(device)-raderna så att Accelerator hanterar enhetsplaceringen.
  • Ändra gradientberäkningen så att den använder Accelerator.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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()
Redigera och kör kod