Gradient checkpointing com Trainer
Você quer usar gradient checkpointing para reduzir o uso de memória do seu modelo. Você viu como escrever o loop de treino explícito com Accelerator e, agora, quer usar uma interface simplificada, sem loops de treino, com o Trainer. O exercício levará algum tempo para rodar devido à chamada trainer.train().
Configure os argumentos do Trainer para usar gradient checkpointing.
Este exercício faz parte do curso
Treinamento Eficiente de Modelos de IA com PyTorch
Instruções do exercício
- Use quatro etapas de acumulação de gradiente em
TrainingArguments. - Ative o gradient checkpointing em
TrainingArguments. - Passe os argumentos de treino para o
Trainer.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
training_args = TrainingArguments(output_dir="./results",
evaluation_strategy="epoch",
# Use four gradient accumulation steps
gradient_accumulation_steps=____,
# Enable gradient checkpointing
____=____)
trainer = Trainer(model=model,
# Pass in the training arguments
____=____,
train_dataset=dataset["train"],
eval_dataset=dataset["validation"],
compute_metrics=compute_metrics)
trainer.train()