Kom igångKom igång gratis

Adafactor med Trainer

Du tränar en Transformer-modell med miljarder parametrar för din språköversättningstjänst. Det belastar dina beräkningsresurser hårt, så du bestämmer dig för att prova optimeraren Adafactor för att minska minnesåtgången jämfört med AdamW. Förbered Trainer för Adafactor!

Några träningsobjekt har förinskapats, inklusive model, train_dataset, validation_dataset och compute_metrics.

Den här övningen är en del av kursen

Effektiv AI-modellträning med PyTorch

Visa kurs

Övningsinstruktioner

  • Ange Adafactor som optimerare i TrainingArguments.
  • Skicka in optimeringstillståndet för att skriva ut storleken.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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")  
Redigera och kör kod