始める無料で始める

Accelerator 導入前後のトレーニングループ

MPRCの文言い換えデータセットを使って翻訳を簡略化する言語モデルに、Accelerator を使用するよう PyTorch のトレーニングループを修正しましょう。分散トレーニングに対応できるよう、トレーニングループを更新してください。

以下のデータはあらかじめ読み込まれています。

  • acceleratorAccelerator のインスタンスです
  • train_dataloaderoptimizermodellr_scheduler はすでに定義され、Accelerator で準備済みです

この演習はコースの一部です

PyTorch による効率的な AI モデルトレーニング

コースを見る

演習の手順

  • Accelerator がデバイスへの配置を管理するように、.to(device) の行を更新してください。
  • 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()
コードを編集して実行