Construindo um loop de treino com Accelerator
Você está pronto para implementar um loop de treino para seu serviço de tradução de idiomas. Agora que você viu como o Accelerator modifica um loop do PyTorch para treinamento distribuído, pode aproveitar a classe Accelerator no seu loop de treino!
Alguns dados já foram pré-carregados:
acceleratoré uma instância deAcceleratortrain_dataloader,optimizer,modelelr_schedulerforam definidos e preparados com oAccelerator
Este exercício faz parte do curso
Treinamento Eficiente de Modelos de IA com PyTorch
Instruções do exercício
- Chame o
optimizerpara zerar os gradientes. - Atualize os parâmetros do modelo.
- Atualize a taxa de aprendizado do
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
____.____()