Gradient checkpointing con Trainer
Vuoi usare il gradient checkpointing per ridurre l’uso di memoria del tuo modello. Hai visto come scrivere il loop di training esplicito con Accelerator e ora vorresti usare un’interfaccia semplificata senza loop di training con Trainer. L’esercizio richiederà un po’ di tempo per l’esecuzione della chiamata a trainer.train().
Configura gli argomenti di Trainer per usare il gradient checkpointing.
Questo esercizio fa parte del corso
Efficient AI Model Training with PyTorch
Istruzioni dell'esercizio
- Usa quattro step di accumulo del gradiente in
TrainingArguments. - Abilita il gradient checkpointing in
TrainingArguments. - Passa gli argomenti di training a
Trainer.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
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()