Konfigurera 8-bitars Adam-optimeraren
Du märker att träningen av din Transformer-modell för realtidsöversättning inte fungerar effektivt med Adafactor. Som ett alternativ väljer du att testa en 8-bitars Adam-optimerare, som minskar minnesanvändningen med ungefär 75 % jämfört med Adam.
Biblioteket bitsandbytes har importerats som bnb, TrainingArguments har definierats som args, och optimizer_grouped_parameters har laddats in i förväg. Observera att övningen skriver ut ett varningsmeddelande om libbitsandbytes_cpu.so – du kan ignorera det varningsmeddelandet och fortsätta med övningen.
Den här övningen är en del av kursen
Effektiv AI-modellträning med PyTorch
Övningsinstruktioner
- Instansiera 8-bitars Adam-optimeraren med klassen
Adam8bitfrånbnb.optim. - Skicka in parametrarna beta1 och beta2 till 8-bitars Adam-optimeraren.
- Skicka in epsilon-parametern till 8-bitars Adam-optimeraren.
- Skriv ut indataparametrarna från 8-bitars Adam-optimeraren.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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}")