เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

Training loop ก่อนและหลังใช้ Accelerator

ในแบบฝึกหัดนี้ จะปรับแก้ training loop ของ PyTorch ให้ใช้ Accelerator กับโมเดลภาษา เพื่อลดความซับซ้อนในการแปลโดยใช้ชุดข้อมูล MPRC ซึ่งประกอบด้วยประโยค paraphrase อัปเดต training loop เพื่อเตรียมโมเดลสำหรับการเทรนแบบกระจาย

ข้อมูลบางส่วนถูกโหลดไว้ล่วงหน้าแล้ว:

  • accelerator คือ instance ของ Accelerator
  • train_dataloader, optimizer, model และ lr_scheduler ถูกกำหนดและเตรียมพร้อมด้วย Accelerator แล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

ดูคอร์ส

คำแนะนำการฝึกหัด

  • อัปเดตบรรทัด .to(device) เพื่อให้ Accelerator จัดการการวางตำแหน่งอุปกรณ์แทน
  • แก้ไขการคำนวณ gradient ให้ใช้ 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()
แก้ไขและรันโค้ด