ПочатиПочніть безкоштовно

Тренувальні цикли до та після Accelerator

Ви хочете змінити тренувальний цикл у PyTorch, щоб використовувати Accelerator для вашої мовної моделі та спростити переклади за допомогою набору MPRC із парафразами речень. Оновіть тренувальний цикл, щоб підготувати модель до розподіленого навчання.

Частину даних уже завантажено:

  • accelerator — це екземпляр Accelerator
  • train_dataloader, optimizer, model та lr_scheduler визначено й підготовлено за допомогою Accelerator

Ця вправа є частиною курсу

Ефективне тренування моделей ШІ з PyTorch

Переглянути курс

Інструкції до вправи

  • Оновіть рядки з .to(device), щоб Accelerator керував розміщенням на пристроях.
  • Змініть обчислення градієнтів, щоб використовувати Accelerator.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

for batch in train_dataloader:
    optimizer.zero_grad()
    inputs, targets = batch["input_ids"], batch["labels"]
    # Update the lines so Accelerator handles device placement
    inputs = inputs.to(device)
    targets = targets.to(device)
    outputs = model(inputs, labels=targets)
    loss = outputs.loss
    # Modify the gradient computation to use Accelerator
    ____.backward(____)
    optimizer.step()
    lr_scheduler.step()
Редагувати та запускати код