Aan de slagBegin gratis

Adafactor met Trainer

Je traint een Transformer-model met miljarden parameters voor je vertaalservice. Dat belast je rekenbronnen flink, dus je besluit de Adafactor-optimizer te proberen om het geheugengebruik te verminderen in vergelijking met AdamW. Maak de Trainer klaar voor Adafactor!

Enkele trainingsobjecten zijn al vooraf geladen, waaronder model, train_dataset, validation_dataset en compute_metrics.

Deze oefening maakt deel uit van de cursus

Efficiënt AI-modellen trainen met PyTorch

Bekijk cursus

Oefeninstructies

  • Geef Adafactor op als optimizer in TrainingArguments.
  • Geef de optimizerstate door om de grootte af te drukken.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# 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")  
Code bewerken en uitvoeren