ComeçarComece de graça

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

Ver curso

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()
Editar e executar o código