Adafactor con Trainer
Estás entrenando un modelo Transformer con miles de millones de parámetros para tu servicio de traducción de idiomas. Está poniendo al límite tus recursos computacionales, así que decides probar el optimizador Adafactor para reducir los requisitos de memoria en comparación con AdamW. ¡Prepara el Trainer para Adafactor!
Algunos objetos de entrenamiento ya se han cargado, como model, train_dataset, validation_dataset y compute_metrics.
Este ejercicio forma parte del curso
Entrenamiento eficiente de modelos de IA con PyTorch
Instrucciones del ejercicio
- Indica
Adafactorcomo optimizador enTrainingArguments. - Pasa el estado del optimizador para imprimir su tamaño.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# Specify Adafactor as an optimizer
training_args = TrainingArguments(output_dir="./results",
evaluation_strategy="epoch",
optim="____")
trainer = Trainer(model=model,
args=training_args,
train_dataset=train_dataset,
eval_dataset=validation_dataset,
compute_metrics=compute_metrics)
trainer.train()
# Pass in the optimizer state
total_size_megabytes, total_num_elements = compute_optimizer_size(trainer.optimizer.state.____())
print(f"\nNumber of optimizer parameters: {total_num_elements:,}\nOptimizer size: {total_size_megabytes:.0f} MB")