AdamW mit Accelerator
Du möchtest deine Trainingsschleife mit Accelerator anpassen und AdamW als Referenz-Optimizer für dein Übersetzungsmodell verwenden. Baue die Trainingsschleife so auf, dass AdamW genutzt wird.
Einige Trainingsobjekte wurden bereits geladen und definiert, darunter model, train_dataloader und accelerator.
Diese Übung ist Teil des Kurses
<Kurs>Effizientes KI-Modelltraining mit PyTorch</Kurs>Übungsanweisungen
- Bereite die Trainingsobjekte vor der Schleife für verteiltes Training vor.
- Aktualisiere die Modellparameter in der Trainingsschleife.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
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}")