Pętle treningowe przed użyciem Acceleratora i po nim
Chcesz zmodyfikować pętlę treningową PyTorch tak, aby korzystała z Accelerator – w celu uproszczenia tłumaczeń z wykorzystaniem zbioru danych MPRC zawierającego parafrazy zdań. Zaktualizuj pętlę treningową, aby przygotować model do treningu rozproszonego.
Niektóre dane zostały wstępnie załadowane:
acceleratorto instancja klasyAcceleratortrain_dataloader,optimizer,modelorazlr_schedulerzostały zdefiniowane i przygotowane za pomocąAccelerator
To ćwiczenie jest częścią kursu
Efektywne trenowanie modeli AI z PyTorch
Instrukcje do ćwiczenia
- Zaktualizuj linie
.to(device)tak, aby toAcceleratorzarządzał przypisaniem do urządzeń. - Zmodyfikuj obliczanie gradientów, aby korzystało z
Accelerator.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
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()