Adafactor mit Trainer
Du trainierst ein Transformer-Modell mit Milliarden von Parametern für deinen Übersetzungsdienst. Das belastet deine Rechenressourcen stark, daher willst du den Optimierer Adafactor ausprobieren, um den Speicherbedarf im Vergleich zu AdamW zu senken. Richte den Trainer für Adafactor ein!
Einige Trainingsobjekte wurden bereits geladen, darunter model, train_dataset, validation_dataset und compute_metrics.
Diese Übung ist Teil des Kurses
<Kurs>Effizientes KI-Modelltraining mit PyTorch</Kurs>Übungsanweisungen
- Gib
Adafactorals Optimierer inTrainingArgumentsan. - Übergib den Optimizer-Status, um die Größe auszugeben.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Specify Adafactor as an optimizer
training_args = TrainingArguments(output_dir="./results",
evaluation_strategy="epoch",
optim="____")
trainer = Trainer(model=model,
args=training_args,
train_dataset=train_dataset,
eval_dataset=validation_dataset,
compute_metrics=compute_metrics)
trainer.train()
# Pass in the optimizer state
total_size_megabytes, total_num_elements = compute_optimizer_size(trainer.optimizer.state.____())
print(f"\nNumber of optimizer parameters: {total_num_elements:,}\nOptimizer size: {total_size_megabytes:.0f} MB")