AdamW con Accelerator
Quieres personalizar tu bucle de entrenamiento usando Accelerator y usar AdamW como optimizador de referencia para tu modelo de traducción automática. Crea el bucle de entrenamiento para usar AdamW.
Algunos objetos de entrenamiento ya se han cargado y definido, incluidos model, train_dataloader y accelerator.
Este ejercicio forma parte del curso
Entrenamiento eficiente de modelos de IA con PyTorch
Instrucciones del ejercicio
- Prepara los objetos de entrenamiento para el entrenamiento distribuido antes del bucle.
- Actualiza los parámetros del modelo dentro del bucle de entrenamiento.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
optimizer = AdamW(params=model.parameters())
# Prepare training objects for distributed training
model, optimizer, train_dataloader = ____.____(model, optimizer, train_dataloader)
for batch in train_dataloader:
inputs, targets = batch["input_ids"], batch["labels"]
outputs = model(inputs, labels=targets)
loss = outputs.loss
accelerator.backward(loss)
# Update the model parameters
____.____()
optimizer.zero_grad()
print(f"Loss = {loss}")