Gradient Checkpointing mit Trainer
Du möchtest Gradient Checkpointing verwenden, um den Speicherbedarf deines Modells zu reduzieren. Du hast gesehen, wie man die explizite Trainingsschleife mit Accelerator schreibt, und möchtest jetzt eine vereinfachte Oberfläche ohne Trainingsschleifen mit Trainer nutzen. Die Übung benötigt wegen des Aufrufs trainer.train() etwas Zeit.
Richte die Argumente für Trainer so ein, dass Gradient Checkpointing verwendet wird.
Diese Übung ist Teil des Kurses
<Kurs>Effizientes KI-Modelltraining mit PyTorch</Kurs>Übungsanweisungen
- Verwende vier Gradient-Accumulation-Schritte in
TrainingArguments. - Aktiviere Gradient Checkpointing in
TrainingArguments. - Übergib die Trainingsargumente an
Trainer.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
training_args = TrainingArguments(output_dir="./results",
evaluation_strategy="epoch",
# Use four gradient accumulation steps
gradient_accumulation_steps=____,
# Enable gradient checkpointing
gradient_checkpointing=____)
trainer = Trainer(model=model,
# Pass in the training arguments
args=____,
train_dataset=dataset["train"],
eval_dataset=dataset["validation"],
compute_metrics=compute_metrics)
trainer.train()