Gemischtes Präzisionstraining mit Accelerator
Du möchtest deine PyTorch-Schleife für das Training deines Sprachübersetzungsmodells mit gemischter Präzision vereinfachen, indem du Accelerator verwendest. Baue den neuen Trainingskreislauf auf, um Accelerator zu nutzen!
Einige Objekte wurden bereits vorgeladen: dataset, model, dataloader, und optimizer.
Diese Übung ist Teil des Kurses
Effizientes KI-Modelltraining mit PyTorch
Anleitung zur Übung
- Aktiviere das Training mit gemischter Genauigkeit mit FP16 in
Accelerator. - Bereite Trainingsobjekte für das Training mit gemischter Präzision vor der Schleife vor.
- Berechne die Gradienten der Verluste für das Training mit gemischter Genauigkeit.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Enable mixed precision training using FP16
accelerator = Accelerator(____="____")
# Prepare training objects for mixed precision training
model, optimizer, train_dataloader, lr_scheduler = ____.____(____, ____, ____, ____)
for batch in train_dataloader:
inputs, targets = batch["input_ids"], batch["labels"]
outputs = model(inputs, labels=targets)
loss = outputs.loss
# Compute the gradients of the loss
____.____(loss)
optimizer.step()
optimizer.zero_grad()