Adafactor mit Trainer
Du trainierst ein Transformer-Modell mit Milliarden von Parametern für deinen Übersetzungsdienst. Es belastet deine Rechenressourcen, also beschließt du, den Adafactor
Optimierer auszuprobieren, um den Speicherbedarf im Vergleich zu AdamW
zu reduzieren. Bereite den Trainer auf Adafactor
vor!
Einige Trainingsobjekte wurden bereits geladen, darunter model
, train_dataset
, validation_dataset
und compute_metrics
.
Diese Übung ist Teil des Kurses
Effizientes KI-Modelltraining mit PyTorch
Anleitung zur Übung
- Gib
Adafactor
als Optimierer inTrainingArguments
an. - Gib den Optimierungsstatus ein, um die Größe zu drucken.
Interaktive Ü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",
____="____")
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(____.____.____.values())
print(f"\nNumber of optimizer parameters: {total_num_elements:,}\nOptimizer size: {total_size_megabytes:.0f} MB")