Criando um ciclo de treinamento com o Accelerator
Você está pronto para implementar um ciclo de treinamento para o seu serviço de tradução de idiomas. Agora que você viu como o Accelerator
modifica um loop do PyTorch para treinamento distribuído, você pode aproveitar a classe Accelerator
em seu loop de treinamento!
Alguns dados foram pré-carregados:
accelerator
é uma instância deAccelerator
train_dataloader``optimizer
,model
, elr_scheduler
foram definidos e preparados comAccelerator
Este exercício faz parte do curso
Treinamento eficiente de modelos de IA com PyTorch
Instruções do exercício
- Chame o site
optimizer
para zerar os gradientes. - Atualize os parâmetros do modelo.
- Atualize a taxa de aprendizado do site
optimizer
.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
for batch in train_dataloader:
# Call the optimizer to zero the gradients
____.____()
inputs, targets = batch["input_ids"], batch["labels"]
outputs = model(inputs, labels=targets)
loss = outputs.loss
accelerator.backward(loss)
# Update the model's parameters
____.____()
# Update the learning rate of the optimizer
____.____()