НачатьНачать бесплатно

Цикл обучения до и после применения Accelerator

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

Некоторые данные уже загружены:

  • 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()
Редактировать и запускать код