Budowanie pętli treningowej z Accelerator
Czas zaimplementować pętlę treningową dla usługi tłumaczenia języków. Wiesz już, jak Accelerator modyfikuje pętlę PyTorch na potrzeby treningu rozproszonego – możesz teraz wykorzystać klasę Accelerator we własnej pętli treningowej!
Niektóre dane zostały wcześniej załadowane:
acceleratorto instancja klasyAcceleratortrain_dataloader,optimizer,modelilr_schedulerzostały zdefiniowane i przygotowane za pomocąAccelerator
To ćwiczenie jest częścią kursu
Efektywne trenowanie modeli AI z PyTorch
Instrukcje do ćwiczenia
- Wywołaj metodę
optimizer, aby wyzerować gradienty. - Zaktualizuj parametry modelu.
- Zaktualizuj współczynnik uczenia obiektu
optimizer.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
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
____.____()