AdamW cu Accelerator
Vrei să personalizezi bucla de antrenament folosind Accelerator și să utilizezi AdamW ca optimizer de referință pentru modelul tău de traducere a limbajului. Construiește bucla de antrenament astfel încât să folosească AdamW.
Câteva obiecte de antrenament au fost preîncărcate și definite în prealabil, inclusiv model, train_dataloader și accelerator.
Acest exercițiu face parte din cursul
Antrenament eficient al modelelor AI cu PyTorch
Instrucțiuni pentru exercițiu
- Pregătește obiectele de antrenament pentru antrenamentul distribuit înainte de buclă.
- Actualizează parametrii modelului în cadrul buclei de antrenament.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
optimizer = AdamW(params=model.parameters())
# Prepare training objects for distributed training
model, optimizer, train_dataloader = ____.____(model, optimizer, train_dataloader)
for batch in train_dataloader:
inputs, targets = batch["input_ids"], batch["labels"]
outputs = model(inputs, labels=targets)
loss = outputs.loss
accelerator.backward(loss)
# Update the model parameters
____.____()
optimizer.zero_grad()
print(f"Loss = {loss}")