Aan de slagGa gratis aan de slag

Stel de 8-bit Adam-optimizer in

Je merkt dat het trainen van je Transformer-model voor realtime vertaling niet effectief leert met Adafactor. Als alternatief besluit je een 8-bit Adam-optimizer te proberen om het geheugen met ongeveer 75% te verminderen vergeleken met Adam.

De bitsandbytes-bibliotheek is geïmporteerd als bnb, TrainingArguments is gedefinieerd als args, en optimizer_grouped_parameters is vooraf geladen. Let op: de oefening print een waarschuwingsbericht over libbitsandbytes_cpu.so, maar je kunt deze waarschuwing negeren om de oefening te voltooien.

Deze oefening maakt deel uit van de cursus

Efficiënt AI-modellen trainen met PyTorch

Cursus bekijken

Oefeninstructies

  • Instantieer de 8-bit Adam-optimizer met de Adam8bit-klasse uit bnb.optim.
  • Geef de parameters beta1 en beta2 door aan de 8-bit Adam-optimizer.
  • Geef de epsilon-parameter door aan de 8-bit Adam-optimizer.
  • Print de invoerparameters van de 8-bit Adam-optimizer.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Instantiate the 8-bit Adam optimizer
adam_bnb_optim = bnb.optim.____(optimizer_grouped_parameters,
                                # Pass in the beta1 and beta2 parameters
                                betas=(args.____, args.____),
                                # Pass in the epsilon parameter
                                eps=args.____,
                                lr=args.learning_rate)

# Print the input parameters
print(f"beta1 = {args.adam_beta1}")
print(f"beta2 = {args.____}")
print(f"epsilon = {args.____}")
print(f"learning_rate = {args.learning_rate}")
Code bewerken en uitvoeren