Loop pelatihan sebelum dan sesudah Accelerator
Anda ingin memodifikasi loop pelatihan PyTorch agar menggunakan Accelerator untuk model bahasa Anda guna menyederhanakan penerjemahan menggunakan himpunan data MPRC berisi parafrasa kalimat. Perbarui loop pelatihan untuk menyiapkan model Anda bagi pelatihan terdistribusi.
Beberapa data telah dimuat sebelumnya:
acceleratoradalah instance dariAcceleratortrain_dataloader,optimizer,model, danlr_schedulertelah didefinisikan dan disiapkan denganAccelerator
Latihan ini merupakan bagian dari kursus
Pelatihan Model AI Efisien dengan PyTorch
Instruksi latihan
- Perbarui baris
.to(device)agar Accelerator menangani penempatan perangkat. - Modifikasi perhitungan gradien agar menggunakan
Accelerator.
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
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()