Configura el optimizador Adam de 8 bits
Te estás dando cuenta de que el entrenamiento de tu modelo Transformer para la traducción de idiomas en tiempo real no está aprendiendo eficazmente con Adafactor. Como alternativa, decides probar un optimizador Adam de 8 bits para reducir la memoria en aproximadamente un 75% en comparación con Adam.
La biblioteca bitsandbytes
se ha importado como bnb
, TrainingArguments
se ha definido como args
, y optimizer_grouped_parameters
se ha precargado. Ten en cuenta que el ejercicio imprime un mensaje de advertencia sobre libbitsandbytes_cpu.so
, pero puedes ignorar esta advertencia para completar el ejercicio.
Este ejercicio forma parte del curso
Entrenamiento eficiente de modelos de IA con PyTorch
Instrucciones del ejercicio
- Instala el optimizador Adam de 8 bits de la biblioteca
bitsandbytes
. - Pasa los parámetros beta1 y beta2 al optimizador Adam de 8 bits.
- Pasa el parámetro epilson al optimizador Adam de 8 bits.
- Imprime los parámetros de entrada del optimizador Adam de 8 bits.
Ejercicio interactivo práctico
Prueba este ejercicio completando el código de muestra.
# Instantiate the 8-bit Adam optimizer
adam_bnb_optim = ____.____.____(optimizer_grouped_parameters,
# Pass in the beta1 and beta2 parameters
betas=(args.____, args.____),
# Pass in the epilson parameter
eps=args.____,
lr=args.learning_rate)
# Print the input parameters
print(f"beta1 = {args.____}")
print(f"beta2 = {args.____}")
print(f"epsilon = {args.____}")
print(f"learning_rate = {args.learning_rate}")