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á saturando tus recursos de cómputo, así que decides probar el optimizador Adafactor para reducir los requisitos de memoria en comparación con AdamW. ¡Prepara el Trainer para Adafactor!
Ya se han precargado algunos objetos de entrenamiento, incluidos 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
- Especifica
Adafactorcomo optimizador enTrainingArguments. - Pasa el estado del optimizador para imprimir el tamaño.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Specify Adafactor as an optimizer
training_args = TrainingArguments(output_dir="./results",
evaluation_strategy="epoch",
____="____")
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(____.____.____.values())
print(f"\nNumber of optimizer parameters: {total_num_elements:,}\nOptimizer size: {total_size_megabytes:.0f} MB")